{"action":"created","issue":{"url":"https://api.github.com/repos/artefactual/archivematica/issues/339","labels_url":"https://api.github.com/repos/artefactual/archivematica/issues/339/labels{/name}","comments_url":"https://api.github.com/repos/artefactual/archivematica/issues/339/comments","events_url":"https://api.github.com/repos/artefactual/archivematica/issues/339/events","html_url":"https://github.com/artefactual/archivematica/pull/339","id":119832779,"number":339,"title":"MCPClient: Accept KeyboardInterrupt in main thread","user":{"login":"sevein","id":606459,"avatar_url":"https://avatars.githubusercontent.com/u/606459?v=3","gravatar_id":"","url":"https://api.github.com/users/sevein","html_url":"https://github.com/sevein","followers_url":"https://api.github.com/users/sevein/followers","following_url":"https://api.github.com/users/sevein/following{/other_user}","gists_url":"https://api.github.com/users/sevein/gists{/gist_id}","starred_url":"https://api.github.com/users/sevein/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sevein/subscriptions","organizations_url":"https://api.github.com/users/sevein/orgs","repos_url":"https://api.github.com/users/sevein/repos","events_url":"https://api.github.com/users/sevein/events{/privacy}","received_events_url":"https://api.github.com/users/sevein/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2015-12-01T23:30:25Z","updated_at":"2015-12-04T19:24:59Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/artefactual/archivematica/pulls/339","html_url":"https://github.com/artefactual/archivematica/pull/339","diff_url":"https://github.com/artefactual/archivematica/pull/339.diff","patch_url":"https://github.com/artefactual/archivematica/pull/339.patch"},"body":"I know that we are not cleaning up our daemon threads but IMO that is a different\r\nbattle. What I want to achieve now is to listen to keyboard interrupt signals,\r\nwhich is necessary when you are not using a supervisor and you are attached to\r\nthe process, e.g. when you are running the interpreter directly in a container."},"comment":{"url":"https://api.github.com/repos/artefactual/archivematica/issues/comments/162059297","html_url":"https://github.com/artefactual/archivematica/pull/339#issuecomment-162059297","issue_url":"https://api.github.com/repos/artefactual/archivematica/issues/339","id":162059297,"user":{"login":"Hwesta","id":3166226,"avatar_url":"https://avatars.githubusercontent.com/u/3166226?v=3","gravatar_id":"","url":"https://api.github.com/users/Hwesta","html_url":"https://github.com/Hwesta","followers_url":"https://api.github.com/users/Hwesta/followers","following_url":"https://api.github.com/users/Hwesta/following{/other_user}","gists_url":"https://api.github.com/users/Hwesta/gists{/gist_id}","starred_url":"https://api.github.com/users/Hwesta/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Hwesta/subscriptions","organizations_url":"https://api.github.com/users/Hwesta/orgs","repos_url":"https://api.github.com/users/Hwesta/repos","events_url":"https://api.github.com/users/Hwesta/events{/privacy}","received_events_url":"https://api.github.com/users/Hwesta/received_events","type":"User","site_admin":false},"created_at":"2015-12-04T19:24:59Z","updated_at":"2015-12-04T19:24:59Z","body":"Does this have ramifications for how long an interrupt takes to process (up to 100 seconds)? What happens to Exceptions that aren't SystemExit or KeboardInterrupt in the old vs new way?  I assume SystemExit & KeyboardInterrupt both terminate the process in the new way - what happened before?"}}