GitHub PullRequestEvent at 2014-06-06 08:20:10
Repository: ocl
Actor: meyerj
Payload: {"action":"closed","number":7,"pull_request":{"url":"https://api.github.com/repos/orocos-toolchain/ocl/pulls/7","id":14563651,"html_url":"https://github.com/orocos-toolchain/ocl/pull/7","diff_url":"https://github.com/orocos-toolchain/ocl/pull/7.diff","patch_url":"https://github.com/orocos-toolchain/ocl/pull/7.patch","issue_url":"https://api.github.com/repos/orocos-toolchain/ocl/issues/7","number":7,"state":"closed","title":"taskbrowser: install signal handler for SIGINT and disabled signal handling in readline","user":{"login":"meyerj","id":2506837,"avatar_url":"https://avatars.githubusercontent.com/u/2506837?","gravatar_id":"60e1cdbdab11fbc1fd1648eafd624642","url":"https://api.github.com/users/meyerj","html_url":"https://github.com/meyerj","followers_url":"https://api.github.com/users/meyerj/followers","following_url":"https://api.github.com/users/meyerj/following{/other_user}","gists_url":"https://api.github.com/users/meyerj/gists{/gist_id}","starred_url":"https://api.github.com/users/meyerj/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/meyerj/subscriptions","organizations_url":"https://api.github.com/users/meyerj/orgs","repos_url":"https://api.github.com/users/meyerj/repos","events_url":"https://api.github.com/users/meyerj/events{/privacy}","received_events_url":"https://api.github.com/users/meyerj/received_events","type":"User","site_admin":false},"body":"This patch installs a signal handler for SIGINT in the TaskBrowser so that it shutdowns cleanly on Ctrl+C or if the process is interrupted by its parent process (e.g. when running in roslaunch). Until now an interactive deployer just terminates the application without proper cleanup in this case.\r\n\r\nTo make this work it was necessary to disable the signal handlers in libreadline by setting the global variable `rl_catch_signals` to 0. I am not sure which other drawbacks this might have. The TaskBrowser itself only handles SIGINT and SIGWINCH.\r\n\r\nAborting the current command line with Ctrl-C is still broken for some reason. It also fails if I just ignore the SIGINT signal in the TaskBrowser in order to not terminate the application immediately without further patches and with the `rl_catch_signals` set to 1, while the readline documentation says that its signal handler should abort the current input line on SIGINT (by calling `void rl_free_line_state (void)`). Might be a bug in readline?\r\n\r\nThe current behavior is that SIGINT only terminates the application if the input line is empty and prints `^C` otherwise.","created_at":"2014-04-09T17:23:07Z","updated_at":"2014-06-06T08:20:10Z","closed_at":"2014-06-06T08:20:10Z","merged_at":"2014-06-06T08:20:09Z","merge_commit_sha":"800b96cf7e4aef4ba4381710889d904d3603c71d","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/orocos-toolchain/ocl/pulls/7/commits","review_comments_url":"https://api.github.com/repos/orocos-toolchain/ocl/pulls/7/comments","review_comment_url":"https://api.github.com/repos/orocos-toolchain/ocl/pulls/comments/{number}","comments_url":"https://api.github.com/repos/orocos-toolchain/ocl/issues/7/comments","statuses_url":"https://api.github.com/repos/orocos-toolchain/ocl/statuses/1236f0c0db08ed9cc45f24bf387f1655c932caec","head":{"label":"meyerj:taskbrowser-signals","ref":"taskbrowser-signals","sha":"1236f0c0db08ed9cc45f24bf387f1655c932caec","user":{"login":"meyerj","id":2506837,"avatar_url":"https://avatars.githubusercontent.com/u/2506837?","gravatar_id":"60e1cdbdab11fbc1fd1648eafd624642","url":"https://api.github.com/users/meyerj","html_url":"https://github.com/meyerj","followers_url":"https://api.github.com/users/meyerj/followers","following_url":"https://api.github.com/users/meyerj/following{/other_user}","gists_url":"https://api.github.com/users/meyerj/gists{/gist_id}","starred_url":"https://api.github.com/users/meyerj/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/meyerj/subscriptions","organizations_url":"https://api.github.com/users/meyerj/orgs","repos_url":"https://api.github.com/users/meyerj/repos","events_url":"https://api.github.com/users/meyerj/events{/privacy}","received_events_url":"https://api.github.com/users/meyerj/received_events","type":"User","site_admin":false},"repo":{"id":15085714,"name":"ocl","full_name":"meyerj/ocl","owner":{"login":"meyerj","id":2506837,"avatar_url":"https://avatars.githubusercontent.com/u/2506837?","gravatar_id":"60e1cdbdab11fbc1fd1648eafd624642","url":"https://api.github.com/users/meyerj","html_url":"https://github.com/meyerj","followers_url":"https://api.github.com/users/meyerj/followers","following_url":"https://api.github.com/users/meyerj/following{/other_user}","gists_url":"https://api.github.com/users/meyerj/gists{/gist_id}","starred_url":"https://api.github.com/users/meyerj/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/meyerj/subscriptions","organizations_url":"https://api.github.com/users/meyerj/orgs","repos_url":"https://api.github.com/users/meyerj/repos","events_url":"https://api.github.com/users/meyerj/events{/privacy}","received_events_url":"https://api.github.com/users/meyerj/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/meyerj/ocl","description":"Orocos Component Library","fork":true,"url":"https://api.github.com/repos/meyerj/ocl","forks_url":"https://api.github.com/repos/meyerj/ocl/forks","keys_url":"https://api.github.com/repos/meyerj/ocl/keys{/key_id}","collaborators_url":"https://api.github.com/repos/meyerj/ocl/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/meyerj/ocl/teams","hooks_url":"https://api.github.com/repos/meyerj/ocl/hooks","issue_events_url":"https://api.github.com/repos/meyerj/ocl/issues/events{/number}","events_url":"https://api.github.com/repos/meyerj/ocl/events","assignees_url":"https://api.github.com/repos/meyerj/ocl/assignees{/user}","branches_url":"https://api.github.com/repos/meyerj/ocl/branches{/branch}","tags_url":"https://api.github.com/repos/meyerj/ocl/tags","blobs_url":"https://api.github.com/repos/meyerj/ocl/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/meyerj/ocl/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/meyerj/ocl/git/refs{/sha}","trees_url":"https://api.github.com/repos/meyerj/ocl/git/trees{/sha}","statuses_url":"https://api.github.com/repos/meyerj/ocl/statuses/{sha}","languages_url":"https://api.github.com/repos/meyerj/ocl/languages","stargazers_url":"https://api.github.com/repos/meyerj/ocl/stargazers","contributors_url":"https://api.github.com/repos/meyerj/ocl/contributors","subscribers_url":"https://api.github.com/repos/meyerj/ocl/subscribers","subscription_url":"https://api.github.com/repos/meyerj/ocl/subscription","commits_url":"https://api.github.com/repos/meyerj/ocl/commits{/sha}","git_commits_url":"https://api.github.com/repos/meyerj/ocl/git/commits{/sha}","comments_url":"https://api.github.com/repos/meyerj/ocl/comments{/number}","issue_comment_url":"https://api.github.com/repos/meyerj/ocl/issues/comments/{number}","contents_url":"https://api.github.com/repos/meyerj/ocl/contents/{+path}","compare_url":"https://api.github.com/repos/meyerj/ocl/compare/{base}...{head}","merges_url":"https://api.github.com/repos/meyerj/ocl/merges","archive_url":"https://api.github.com/repos/meyerj/ocl/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/meyerj/ocl/downloads","issues_url":"https://api.github.com/repos/meyerj/ocl/issues{/number}","pulls_url":"https://api.github.com/repos/meyerj/ocl/pulls{/number}","milestones_url":"https://api.github.com/repos/meyerj/ocl/milestones{/number}","notifications_url":"https://api.github.com/repos/meyerj/ocl/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/meyerj/ocl/labels{/name}","releases_url":"https://api.github.com/repos/meyerj/ocl/releases{/id}","created_at":"2013-12-10T18:33:38Z","updated_at":"2014-06-06T08:20:10Z","pushed_at":"2014-05-10T20:58:01Z","git_url":"git://github.com/meyerj/ocl.git","ssh_url":"git@github.com:meyerj/ocl.git","clone_url":"https://github.com/meyerj/ocl.git","svn_url":"https://github.com/meyerj/ocl","homepage":null,"size":7600,"stargazers_count":0,"watchers_count":0,"language":"C++","has_issues":false,"has_downloads":true,"has_wiki":true,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"orocos-toolchain:master","ref":"master","sha":"852569032485ac9869117af12f0edebb6288c984","user":{"login":"orocos-toolchain","id":2902399,"avatar_url":"https://avatars.githubusercontent.com/u/2902399?","gravatar_id":"9c1c41f8d7a724638c7eb98badb1f9cd","url":"https://api.github.com/users/orocos-toolchain","html_url":"https://github.com/orocos-toolchain","followers_url":"https://api.github.com/users/orocos-toolchain/followers","following_url":"https://api.github.com/users/orocos-toolchain/following{/other_user}","gists_url":"https://api.github.com/users/orocos-toolchain/gists{/gist_id}","starred_url":"https://api.github.com/users/orocos-toolchain/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/orocos-toolchain/subscriptions","organizations_url":"https://api.github.com/users/orocos-toolchain/orgs","repos_url":"https://api.github.com/users/orocos-toolchain/repos","events_url":"https://api.github.com/users/orocos-toolchain/events{/privacy}","received_events_url":"https://api.github.com/users/orocos-toolchain/received_events","type":"Organization","site_admin":false},"repo":{"id":6884038,"name":"ocl","full_name":"orocos-toolchain/ocl","owner":{"login":"orocos-toolchain","id":2902399,"avatar_url":"https://avatars.githubusercontent.com/u/2902399?","gravatar_id":"9c1c41f8d7a724638c7eb98badb1f9cd","url":"https://api.github.com/users/orocos-toolchain","html_url":"https://github.com/orocos-toolchain","followers_url":"https://api.github.com/users/orocos-toolchain/followers","following_url":"https://api.github.com/users/orocos-toolchain/following{/other_user}","gists_url":"https://api.github.com/users/orocos-toolchain/gists{/gist_id}","starred_url":"https://api.github.com/users/orocos-toolchain/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/orocos-toolchain/subscriptions","organizations_url":"https://api.github.com/users/orocos-toolchain/orgs","repos_url":"https://api.github.com/users/orocos-toolchain/repos","events_url":"https://api.github.com/users/orocos-toolchain/events{/privacy}","received_events_url":"https://api.github.com/users/orocos-toolchain/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/orocos-toolchain/ocl","description":"Orocos Component Library","fork":false,"url":"https://api.github.com/repos/orocos-toolchain/ocl","forks_url":"https://api.github.com/repos/orocos-toolchain/ocl/forks","keys_url":"https://api.github.com/repos/orocos-toolchain/ocl/keys{/key_id}","collaborators_url":"https://api.github.com/repos/orocos-toolchain/ocl/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/orocos-toolchain/ocl/teams","hooks_url":"https://api.github.com/repos/orocos-toolchain/ocl/hooks","issue_events_url":"https://api.github.com/repos/orocos-toolchain/ocl/issues/events{/number}","events_url":"https://api.github.com/repos/orocos-toolchain/ocl/events","assignees_url":"https://api.github.com/repos/orocos-toolchain/ocl/assignees{/user}","branches_url":"https://api.github.com/repos/orocos-toolchain/ocl/branches{/branch}","tags_url":"https://api.github.com/repos/orocos-toolchain/ocl/tags","blobs_url":"https://api.github.com/repos/orocos-toolchain/ocl/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/orocos-toolchain/ocl/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/orocos-toolchain/ocl/git/refs{/sha}","trees_url":"https://api.github.com/repos/orocos-toolchain/ocl/git/trees{/sha}","statuses_url":"https://api.github.com/repos/orocos-toolchain/ocl/statuses/{sha}","languages_url":"https://api.github.com/repos/orocos-toolchain/ocl/languages","stargazers_url":"https://api.github.com/repos/orocos-toolchain/ocl/stargazers","contributors_url":"https://api.github.com/repos/orocos-toolchain/ocl/contributors","subscribers_url":"https://api.github.com/repos/orocos-toolchain/ocl/subscribers","subscription_url":"https://api.github.com/repos/orocos-toolchain/ocl/subscription","commits_url":"https://api.github.com/repos/orocos-toolchain/ocl/commits{/sha}","git_commits_url":"https://api.github.com/repos/orocos-toolchain/ocl/git/commits{/sha}","comments_url":"https://api.github.com/repos/orocos-toolchain/ocl/comments{/number}","issue_comment_url":"https://api.github.com/repos/orocos-toolchain/ocl/issues/comments/{number}","contents_url":"https://api.github.com/repos/orocos-toolchain/ocl/contents/{+path}","compare_url":"https://api.github.com/repos/orocos-toolchain/ocl/compare/{base}...{head}","merges_url":"https://api.github.com/repos/orocos-toolchain/ocl/merges","archive_url":"https://api.github.com/repos/orocos-toolchain/ocl/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/orocos-toolchain/ocl/downloads","issues_url":"https://api.github.com/repos/orocos-toolchain/ocl/issues{/number}","pulls_url":"https://api.github.com/repos/orocos-toolchain/ocl/pulls{/number}","milestones_url":"https://api.github.com/repos/orocos-toolchain/ocl/milestones{/number}","notifications_url":"https://api.github.com/repos/orocos-toolchain/ocl/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/orocos-toolchain/ocl/labels{/name}","releases_url":"https://api.github.com/repos/orocos-toolchain/ocl/releases{/id}","created_at":"2012-11-27T13:45:35Z","updated_at":"2014-06-06T08:20:10Z","pushed_at":"2014-06-06T08:20:09Z","git_url":"git://github.com/orocos-toolchain/ocl.git","ssh_url":"git@github.com:orocos-toolchain/ocl.git","clone_url":"https://github.com/orocos-toolchain/ocl.git","svn_url":"https://github.com/orocos-toolchain/ocl","homepage":null,"size":8238,"stargazers_count":1,"watchers_count":1,"language":"C++","has_issues":true,"has_downloads":true,"has_wiki":true,"forks_count":6,"mirror_url":null,"open_issues_count":2,"forks":6,"open_issues":2,"watchers":1,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/orocos-toolchain/ocl/pulls/7"},"html":{"href":"https://github.com/orocos-toolchain/ocl/pull/7"},"issue":{"href":"https://api.github.com/repos/orocos-toolchain/ocl/issues/7"},"comments":{"href":"https://api.github.com/repos/orocos-toolchain/ocl/issues/7/comments"},"review_comments":{"href":"https://api.github.com/repos/orocos-toolchain/ocl/pulls/7/comments"},"review_comment":{"href":"https://api.github.com/repos/orocos-toolchain/ocl/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/orocos-toolchain/ocl/pulls/7/commits"},"statuses":{"href":"https://api.github.com/repos/orocos-toolchain/ocl/statuses/1236f0c0db08ed9cc45f24bf387f1655c932caec"}},"merged":true,"mergeable":null,"mergeable_state":"unknown","merged_by":{"login":"meyerj","id":2506837,"avatar_url":"https://avatars.githubusercontent.com/u/2506837?","gravatar_id":"60e1cdbdab11fbc1fd1648eafd624642","url":"https://api.github.com/users/meyerj","html_url":"https://github.com/meyerj","followers_url":"https://api.github.com/users/meyerj/followers","following_url":"https://api.github.com/users/meyerj/following{/other_user}","gists_url":"https://api.github.com/users/meyerj/gists{/gist_id}","starred_url":"https://api.github.com/users/meyerj/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/meyerj/subscriptions","organizations_url":"https://api.github.com/users/meyerj/orgs","repos_url":"https://api.github.com/users/meyerj/repos","events_url":"https://api.github.com/users/meyerj/events{/privacy}","received_events_url":"https://api.github.com/users/meyerj/received_events","type":"User","site_admin":false},"comments":0,"review_comments":0,"commits":4,"additions":65,"deletions":9,"changed_files":2}}