{"action":"created","comment":{"url":"https://api.github.com/repos/matz-e/lobster/pulls/comments/73385457","id":73385457,"diff_hunk":"@@ -148,6 +149,19 @@ def run(self, args):\n \n         self.config.storage.deactivate()\n \n+        process = psutil.Process()\n+        preserved = [f.name for f in args.preserve]\n+        openfiles = [f for f in process.open_files() if f.path not in preserved]\n+        openconns = process.connections()\n+\n+        if len(openconns) > 0 or len(openfiles) > 0:\n+            logger.error(\"cannot daemonize due to open files or connections\")\n+            for f in openfiles:\n+                logger.error(\"open file: {}\".format(f.path))\n+            for c in openconns:\n+                logger.error(\"open connection: {}\".format(c))\n+            raise RuntimeError(\"open files or connections\")\n+","path":"lobster/commands/process.py","position":null,"original_position":24,"commit_id":"19cb569a789489bd4e9dcda41c6de1c7b5847a95","original_commit_id":"37ded659a731c0212ca3bec771316a1ab0b76c29","user":{"login":"annawoodard","id":5114833,"avatar_url":"https://avatars.githubusercontent.com/u/5114833?v=3","gravatar_id":"","url":"https://api.github.com/users/annawoodard","html_url":"https://github.com/annawoodard","followers_url":"https://api.github.com/users/annawoodard/followers","following_url":"https://api.github.com/users/annawoodard/following{/other_user}","gists_url":"https://api.github.com/users/annawoodard/gists{/gist_id}","starred_url":"https://api.github.com/users/annawoodard/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/annawoodard/subscriptions","organizations_url":"https://api.github.com/users/annawoodard/orgs","repos_url":"https://api.github.com/users/annawoodard/repos","events_url":"https://api.github.com/users/annawoodard/events{/privacy}","received_events_url":"https://api.github.com/users/annawoodard/received_events","type":"User","site_admin":false},"body":":+1::+1::+1::+1::+1::+1::+1::+1::+1::+1::+1::+1::+1:","created_at":"2016-08-03T17:55:55Z","updated_at":"2016-08-03T17:55:55Z","html_url":"https://github.com/matz-e/lobster/pull/448#discussion_r73385457","pull_request_url":"https://api.github.com/repos/matz-e/lobster/pulls/448","_links":{"self":{"href":"https://api.github.com/repos/matz-e/lobster/pulls/comments/73385457"},"html":{"href":"https://github.com/matz-e/lobster/pull/448#discussion_r73385457"},"pull_request":{"href":"https://api.github.com/repos/matz-e/lobster/pulls/448"}}},"pull_request":{"url":"https://api.github.com/repos/matz-e/lobster/pulls/448","id":79714546,"html_url":"https://github.com/matz-e/lobster/pull/448","diff_url":"https://github.com/matz-e/lobster/pull/448.diff","patch_url":"https://github.com/matz-e/lobster/pull/448.patch","issue_url":"https://api.github.com/repos/matz-e/lobster/issues/448","number":448,"state":"open","locked":false,"title":"Rework filesystem handling","user":{"login":"matz-e","id":2151261,"avatar_url":"https://avatars.githubusercontent.com/u/2151261?v=3","gravatar_id":"","url":"https://api.github.com/users/matz-e","html_url":"https://github.com/matz-e","followers_url":"https://api.github.com/users/matz-e/followers","following_url":"https://api.github.com/users/matz-e/following{/other_user}","gists_url":"https://api.github.com/users/matz-e/gists{/gist_id}","starred_url":"https://api.github.com/users/matz-e/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/matz-e/subscriptions","organizations_url":"https://api.github.com/users/matz-e/orgs","repos_url":"https://api.github.com/users/matz-e/repos","events_url":"https://api.github.com/users/matz-e/events{/privacy}","received_events_url":"https://api.github.com/users/matz-e/received_events","type":"User","site_admin":false},"body":"Does a few things:\r\n\r\n* Clears filesystem interfaces before daemonizing\r\n* Splits the `StorageElement` class by factoring out a `FileSystem` class — now code is split along functionality, with each class having one use-case\r\n* Renames `default` to `alternative`, since the default filesystem interactions are output SE interactions, not input SE ones.\r\n\r\nI don't know anymore what I was thinking implementing the FS code in the first place? I hope this iteration makes it easier to read and a little less magical?","created_at":"2016-08-02T10:52:56Z","updated_at":"2016-08-03T17:55:55Z","closed_at":null,"merged_at":null,"merge_commit_sha":"1794cf70716d7b82dd930de3fa7e6c05f24f95ba","assignee":null,"assignees":[],"milestone":null,"commits_url":"https://api.github.com/repos/matz-e/lobster/pulls/448/commits","review_comments_url":"https://api.github.com/repos/matz-e/lobster/pulls/448/comments","review_comment_url":"https://api.github.com/repos/matz-e/lobster/pulls/comments{/number}","comments_url":"https://api.github.com/repos/matz-e/lobster/issues/448/comments","statuses_url":"https://api.github.com/repos/matz-e/lobster/statuses/19cb569a789489bd4e9dcda41c6de1c7b5847a95","head":{"label":"matz-e:solve-more-sqlite-problems","ref":"solve-more-sqlite-problems","sha":"19cb569a789489bd4e9dcda41c6de1c7b5847a95","user":{"login":"matz-e","id":2151261,"avatar_url":"https://avatars.githubusercontent.com/u/2151261?v=3","gravatar_id":"","url":"https://api.github.com/users/matz-e","html_url":"https://github.com/matz-e","followers_url":"https://api.github.com/users/matz-e/followers","following_url":"https://api.github.com/users/matz-e/following{/other_user}","gists_url":"https://api.github.com/users/matz-e/gists{/gist_id}","starred_url":"https://api.github.com/users/matz-e/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/matz-e/subscriptions","organizations_url":"https://api.github.com/users/matz-e/orgs","repos_url":"https://api.github.com/users/matz-e/repos","events_url":"https://api.github.com/users/matz-e/events{/privacy}","received_events_url":"https://api.github.com/users/matz-e/received_events","type":"User","site_admin":false},"repo":{"id":13572830,"name":"lobster","full_name":"matz-e/lobster","owner":{"login":"matz-e","id":2151261,"avatar_url":"https://avatars.githubusercontent.com/u/2151261?v=3","gravatar_id":"","url":"https://api.github.com/users/matz-e","html_url":"https://github.com/matz-e","followers_url":"https://api.github.com/users/matz-e/followers","following_url":"https://api.github.com/users/matz-e/following{/other_user}","gists_url":"https://api.github.com/users/matz-e/gists{/gist_id}","starred_url":"https://api.github.com/users/matz-e/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/matz-e/subscriptions","organizations_url":"https://api.github.com/users/matz-e/orgs","repos_url":"https://api.github.com/users/matz-e/repos","events_url":"https://api.github.com/users/matz-e/events{/privacy}","received_events_url":"https://api.github.com/users/matz-e/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/matz-e/lobster","description":"A userspace workflow management tool for harnessing non-dedicated resources for high-throughput workloads.","fork":false,"url":"https://api.github.com/repos/matz-e/lobster","forks_url":"https://api.github.com/repos/matz-e/lobster/forks","keys_url":"https://api.github.com/repos/matz-e/lobster/keys{/key_id}","collaborators_url":"https://api.github.com/repos/matz-e/lobster/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/matz-e/lobster/teams","hooks_url":"https://api.github.com/repos/matz-e/lobster/hooks","issue_events_url":"https://api.github.com/repos/matz-e/lobster/issues/events{/number}","events_url":"https://api.github.com/repos/matz-e/lobster/events","assignees_url":"https://api.github.com/repos/matz-e/lobster/assignees{/user}","branches_url":"https://api.github.com/repos/matz-e/lobster/branches{/branch}","tags_url":"https://api.github.com/repos/matz-e/lobster/tags","blobs_url":"https://api.github.com/repos/matz-e/lobster/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/matz-e/lobster/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/matz-e/lobster/git/refs{/sha}","trees_url":"https://api.github.com/repos/matz-e/lobster/git/trees{/sha}","statuses_url":"https://api.github.com/repos/matz-e/lobster/statuses/{sha}","languages_url":"https://api.github.com/repos/matz-e/lobster/languages","stargazers_url":"https://api.github.com/repos/matz-e/lobster/stargazers","contributors_url":"https://api.github.com/repos/matz-e/lobster/contributors","subscribers_url":"https://api.github.com/repos/matz-e/lobster/subscribers","subscription_url":"https://api.github.com/repos/matz-e/lobster/subscription","commits_url":"https://api.github.com/repos/matz-e/lobster/commits{/sha}","git_commits_url":"https://api.github.com/repos/matz-e/lobster/git/commits{/sha}","comments_url":"https://api.github.com/repos/matz-e/lobster/comments{/number}","issue_comment_url":"https://api.github.com/repos/matz-e/lobster/issues/comments{/number}","contents_url":"https://api.github.com/repos/matz-e/lobster/contents/{+path}","compare_url":"https://api.github.com/repos/matz-e/lobster/compare/{base}...{head}","merges_url":"https://api.github.com/repos/matz-e/lobster/merges","archive_url":"https://api.github.com/repos/matz-e/lobster/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/matz-e/lobster/downloads","issues_url":"https://api.github.com/repos/matz-e/lobster/issues{/number}","pulls_url":"https://api.github.com/repos/matz-e/lobster/pulls{/number}","milestones_url":"https://api.github.com/repos/matz-e/lobster/milestones{/number}","notifications_url":"https://api.github.com/repos/matz-e/lobster/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/matz-e/lobster/labels{/name}","releases_url":"https://api.github.com/repos/matz-e/lobster/releases{/id}","deployments_url":"https://api.github.com/repos/matz-e/lobster/deployments","created_at":"2013-10-14T20:46:05Z","updated_at":"2016-01-12T22:22:40Z","pushed_at":"2016-08-03T17:29:00Z","git_url":"git://github.com/matz-e/lobster.git","ssh_url":"git@github.com:matz-e/lobster.git","clone_url":"https://github.com/matz-e/lobster.git","svn_url":"https://github.com/matz-e/lobster","homepage":"http://lobster.crc.nd.edu","size":30129,"stargazers_count":1,"watchers_count":1,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":3,"mirror_url":null,"open_issues_count":66,"forks":3,"open_issues":66,"watchers":1,"default_branch":"master"}},"base":{"label":"matz-e:master","ref":"master","sha":"ca6741f8c0ccf2b185b8256c1c0daa2e1ef43097","user":{"login":"matz-e","id":2151261,"avatar_url":"https://avatars.githubusercontent.com/u/2151261?v=3","gravatar_id":"","url":"https://api.github.com/users/matz-e","html_url":"https://github.com/matz-e","followers_url":"https://api.github.com/users/matz-e/followers","following_url":"https://api.github.com/users/matz-e/following{/other_user}","gists_url":"https://api.github.com/users/matz-e/gists{/gist_id}","starred_url":"https://api.github.com/users/matz-e/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/matz-e/subscriptions","organizations_url":"https://api.github.com/users/matz-e/orgs","repos_url":"https://api.github.com/users/matz-e/repos","events_url":"https://api.github.com/users/matz-e/events{/privacy}","received_events_url":"https://api.github.com/users/matz-e/received_events","type":"User","site_admin":false},"repo":{"id":13572830,"name":"lobster","full_name":"matz-e/lobster","owner":{"login":"matz-e","id":2151261,"avatar_url":"https://avatars.githubusercontent.com/u/2151261?v=3","gravatar_id":"","url":"https://api.github.com/users/matz-e","html_url":"https://github.com/matz-e","followers_url":"https://api.github.com/users/matz-e/followers","following_url":"https://api.github.com/users/matz-e/following{/other_user}","gists_url":"https://api.github.com/users/matz-e/gists{/gist_id}","starred_url":"https://api.github.com/users/matz-e/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/matz-e/subscriptions","organizations_url":"https://api.github.com/users/matz-e/orgs","repos_url":"https://api.github.com/users/matz-e/repos","events_url":"https://api.github.com/users/matz-e/events{/privacy}","received_events_url":"https://api.github.com/users/matz-e/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/matz-e/lobster","description":"A userspace workflow management tool for harnessing non-dedicated resources for high-throughput workloads.","fork":false,"url":"https://api.github.com/repos/matz-e/lobster","forks_url":"https://api.github.com/repos/matz-e/lobster/forks","keys_url":"https://api.github.com/repos/matz-e/lobster/keys{/key_id}","collaborators_url":"https://api.github.com/repos/matz-e/lobster/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/matz-e/lobster/teams","hooks_url":"https://api.github.com/repos/matz-e/lobster/hooks","issue_events_url":"https://api.github.com/repos/matz-e/lobster/issues/events{/number}","events_url":"https://api.github.com/repos/matz-e/lobster/events","assignees_url":"https://api.github.com/repos/matz-e/lobster/assignees{/user}","branches_url":"https://api.github.com/repos/matz-e/lobster/branches{/branch}","tags_url":"https://api.github.com/repos/matz-e/lobster/tags","blobs_url":"https://api.github.com/repos/matz-e/lobster/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/matz-e/lobster/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/matz-e/lobster/git/refs{/sha}","trees_url":"https://api.github.com/repos/matz-e/lobster/git/trees{/sha}","statuses_url":"https://api.github.com/repos/matz-e/lobster/statuses/{sha}","languages_url":"https://api.github.com/repos/matz-e/lobster/languages","stargazers_url":"https://api.github.com/repos/matz-e/lobster/stargazers","contributors_url":"https://api.github.com/repos/matz-e/lobster/contributors","subscribers_url":"https://api.github.com/repos/matz-e/lobster/subscribers","subscription_url":"https://api.github.com/repos/matz-e/lobster/subscription","commits_url":"https://api.github.com/repos/matz-e/lobster/commits{/sha}","git_commits_url":"https://api.github.com/repos/matz-e/lobster/git/commits{/sha}","comments_url":"https://api.github.com/repos/matz-e/lobster/comments{/number}","issue_comment_url":"https://api.github.com/repos/matz-e/lobster/issues/comments{/number}","contents_url":"https://api.github.com/repos/matz-e/lobster/contents/{+path}","compare_url":"https://api.github.com/repos/matz-e/lobster/compare/{base}...{head}","merges_url":"https://api.github.com/repos/matz-e/lobster/merges","archive_url":"https://api.github.com/repos/matz-e/lobster/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/matz-e/lobster/downloads","issues_url":"https://api.github.com/repos/matz-e/lobster/issues{/number}","pulls_url":"https://api.github.com/repos/matz-e/lobster/pulls{/number}","milestones_url":"https://api.github.com/repos/matz-e/lobster/milestones{/number}","notifications_url":"https://api.github.com/repos/matz-e/lobster/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/matz-e/lobster/labels{/name}","releases_url":"https://api.github.com/repos/matz-e/lobster/releases{/id}","deployments_url":"https://api.github.com/repos/matz-e/lobster/deployments","created_at":"2013-10-14T20:46:05Z","updated_at":"2016-01-12T22:22:40Z","pushed_at":"2016-08-03T17:29:00Z","git_url":"git://github.com/matz-e/lobster.git","ssh_url":"git@github.com:matz-e/lobster.git","clone_url":"https://github.com/matz-e/lobster.git","svn_url":"https://github.com/matz-e/lobster","homepage":"http://lobster.crc.nd.edu","size":30129,"stargazers_count":1,"watchers_count":1,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":3,"mirror_url":null,"open_issues_count":66,"forks":3,"open_issues":66,"watchers":1,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/matz-e/lobster/pulls/448"},"html":{"href":"https://github.com/matz-e/lobster/pull/448"},"issue":{"href":"https://api.github.com/repos/matz-e/lobster/issues/448"},"comments":{"href":"https://api.github.com/repos/matz-e/lobster/issues/448/comments"},"review_comments":{"href":"https://api.github.com/repos/matz-e/lobster/pulls/448/comments"},"review_comment":{"href":"https://api.github.com/repos/matz-e/lobster/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/matz-e/lobster/pulls/448/commits"},"statuses":{"href":"https://api.github.com/repos/matz-e/lobster/statuses/19cb569a789489bd4e9dcda41c6de1c7b5847a95"}}}}
{"actor":{"display_login":"annawoodard"}}