{"action":"created","comment":{"url":"https://api.github.com/repos/Dallinger/Dallinger/pulls/comments/203138190","pull_request_review_id":137968939,"id":203138190,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIwMzEzODE5MA==","diff_hunk":"@@ -602,27 +608,46 @@ def end_experiment(self):\n         return True\n \n     def events_for_replay(self, session=None, target=None):\n-        \"\"\"Be default we return all infos in order for replay\"\"\"\n+        \"\"\"Returns an ordered list of \"events\" for replaying.\n+        Experiments may override this method to provide custom\n+        replay logic. The \"events\" returned by this method will be passed\n+        to :meth:`~Experiment.replay_event`. The default implementation\n+        simply returns all :class:`~dallinger.models.Info` objects in the\n+        order they were created.\n+        \"\"\"\n         if session is None:\n             session = self.session\n         return session.query(Info).order_by(Info.creation_time)\n \n     def replay_event(self, event):\n+        \"\"\"Stub method to replay an event returned by\n+        :meth:`~Experiment.events_for_replay`.\n+        Experiments must override this method to provide replay support.\n+        \"\"\"\n         pass\n \n     def replay_start(self):\n+        \"\"\"Stub method for starting an experiment replay.\n+        Experiments must override this method to provide replay support.\n+        \"\"\"\n         pass\n \n     def replay_finish(self):\n+        \"\"\"Stub method for ending an experiment replay.\n+        Experiments must override this method to provide replay support.\n+        \"\"\"\n         pass\n \n     def replay_started(self):\n+        \"\"\"Returns `True` if an experiment replay has started.\"\"\"\n         return True\n \n     def is_complete(self):\n         \"\"\"Method for custom determination of experiment completion.\n-        Return None to use the experiment server default, otherwise\n-        `True` or `False`\"\"\"\n+        Experiments should override this to provide custom experiment","path":"dallinger/experiment.py","position":79,"original_position":79,"commit_id":"dcbcad333b45fc1780806dd885b690f0bd490013","original_commit_id":"ce59d030001916c106d5281cee87f0ce4df53ad8","user":{"login":"alecpm","id":202854,"node_id":"MDQ6VXNlcjIwMjg1NA==","avatar_url":"https://avatars3.githubusercontent.com/u/202854?v=4","gravatar_id":"","url":"https://api.github.com/users/alecpm","html_url":"https://github.com/alecpm","followers_url":"https://api.github.com/users/alecpm/followers","following_url":"https://api.github.com/users/alecpm/following{/other_user}","gists_url":"https://api.github.com/users/alecpm/gists{/gist_id}","starred_url":"https://api.github.com/users/alecpm/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/alecpm/subscriptions","organizations_url":"https://api.github.com/users/alecpm/orgs","repos_url":"https://api.github.com/users/alecpm/repos","events_url":"https://api.github.com/users/alecpm/events{/privacy}","received_events_url":"https://api.github.com/users/alecpm/received_events","type":"User","site_admin":false},"body":"You had me worried for a moment!","created_at":"2018-07-17T18:47:02Z","updated_at":"2018-07-17T18:47:02Z","html_url":"https://github.com/Dallinger/Dallinger/pull/1139#discussion_r203138190","pull_request_url":"https://api.github.com/repos/Dallinger/Dallinger/pulls/1139","author_association":"CONTRIBUTOR","_links":{"self":{"href":"https://api.github.com/repos/Dallinger/Dallinger/pulls/comments/203138190"},"html":{"href":"https://github.com/Dallinger/Dallinger/pull/1139#discussion_r203138190"},"pull_request":{"href":"https://api.github.com/repos/Dallinger/Dallinger/pulls/1139"}},"in_reply_to_id":202840786},"pull_request":{"url":"https://api.github.com/repos/Dallinger/Dallinger/pulls/1139","id":201460576,"node_id":"MDExOlB1bGxSZXF1ZXN0MjAxNDYwNTc2","html_url":"https://github.com/Dallinger/Dallinger/pull/1139","diff_url":"https://github.com/Dallinger/Dallinger/pull/1139.diff","patch_url":"https://github.com/Dallinger/Dallinger/pull/1139.patch","issue_url":"https://api.github.com/repos/Dallinger/Dallinger/issues/1139","number":1139,"state":"closed","locked":false,"title":"Add documentation for python Experiment API","user":{"login":"alecpm","id":202854,"node_id":"MDQ6VXNlcjIwMjg1NA==","avatar_url":"https://avatars3.githubusercontent.com/u/202854?v=4","gravatar_id":"","url":"https://api.github.com/users/alecpm","html_url":"https://github.com/alecpm","followers_url":"https://api.github.com/users/alecpm/followers","following_url":"https://api.github.com/users/alecpm/following{/other_user}","gists_url":"https://api.github.com/users/alecpm/gists{/gist_id}","starred_url":"https://api.github.com/users/alecpm/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/alecpm/subscriptions","organizations_url":"https://api.github.com/users/alecpm/orgs","repos_url":"https://api.github.com/users/alecpm/repos","events_url":"https://api.github.com/users/alecpm/events{/privacy}","received_events_url":"https://api.github.com/users/alecpm/received_events","type":"User","site_admin":false},"body":"Improve documentation for `dallinger` python API for running experiments.\r\n\r\n## Description\r\nThis PR extends the python module documentation to provide information about running\r\nexperiments repeatably and registering experiments. It also makes some changes to\r\nexisting API documents to facilitate cross-linking API documentation.\r\n\r\n## Motivation and Context\r\nImplements [ScrumDo Story 358](https://app.scrumdo.com/projects/story_permalink/1600084)\r\n\r\n## Testing\r\nIdeally, one would test this by pulling down the branch, `cd docs; make html; open build/html/python_module.html` and reviewing the HTML output, along with the source changes.","created_at":"2018-07-14T17:13:12Z","updated_at":"2018-07-17T18:47:02Z","closed_at":"2018-07-17T18:39:31Z","merged_at":"2018-07-17T18:39:31Z","merge_commit_sha":"9031a8e8357893fef3ffbc29364c18e74e0a5fcd","assignee":null,"assignees":[],"requested_reviewers":[{"login":"suchow","id":613981,"node_id":"MDQ6VXNlcjYxMzk4MQ==","avatar_url":"https://avatars2.githubusercontent.com/u/613981?v=4","gravatar_id":"","url":"https://api.github.com/users/suchow","html_url":"https://github.com/suchow","followers_url":"https://api.github.com/users/suchow/followers","following_url":"https://api.github.com/users/suchow/following{/other_user}","gists_url":"https://api.github.com/users/suchow/gists{/gist_id}","starred_url":"https://api.github.com/users/suchow/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/suchow/subscriptions","organizations_url":"https://api.github.com/users/suchow/orgs","repos_url":"https://api.github.com/users/suchow/repos","events_url":"https://api.github.com/users/suchow/events{/privacy}","received_events_url":"https://api.github.com/users/suchow/received_events","type":"User","site_admin":false}],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/Dallinger/Dallinger/pulls/1139/commits","review_comments_url":"https://api.github.com/repos/Dallinger/Dallinger/pulls/1139/comments","review_comment_url":"https://api.github.com/repos/Dallinger/Dallinger/pulls/comments{/number}","comments_url":"https://api.github.com/repos/Dallinger/Dallinger/issues/1139/comments","statuses_url":"https://api.github.com/repos/Dallinger/Dallinger/statuses/dcbcad333b45fc1780806dd885b690f0bd490013","head":{"label":"Dallinger:stories/358-python-api-doc","ref":"stories/358-python-api-doc","sha":"dcbcad333b45fc1780806dd885b690f0bd490013","user":{"login":"Dallinger","id":19244232,"node_id":"MDEyOk9yZ2FuaXphdGlvbjE5MjQ0MjMy","avatar_url":"https://avatars2.githubusercontent.com/u/19244232?v=4","gravatar_id":"","url":"https://api.github.com/users/Dallinger","html_url":"https://github.com/Dallinger","followers_url":"https://api.github.com/users/Dallinger/followers","following_url":"https://api.github.com/users/Dallinger/following{/other_user}","gists_url":"https://api.github.com/users/Dallinger/gists{/gist_id}","starred_url":"https://api.github.com/users/Dallinger/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Dallinger/subscriptions","organizations_url":"https://api.github.com/users/Dallinger/orgs","repos_url":"https://api.github.com/users/Dallinger/repos","events_url":"https://api.github.com/users/Dallinger/events{/privacy}","received_events_url":"https://api.github.com/users/Dallinger/received_events","type":"Organization","site_admin":false},"repo":{"id":67452779,"node_id":"MDEwOlJlcG9zaXRvcnk2NzQ1Mjc3OQ==","name":"Dallinger","full_name":"Dallinger/Dallinger","owner":{"login":"Dallinger","id":19244232,"node_id":"MDEyOk9yZ2FuaXphdGlvbjE5MjQ0MjMy","avatar_url":"https://avatars2.githubusercontent.com/u/19244232?v=4","gravatar_id":"","url":"https://api.github.com/users/Dallinger","html_url":"https://github.com/Dallinger","followers_url":"https://api.github.com/users/Dallinger/followers","following_url":"https://api.github.com/users/Dallinger/following{/other_user}","gists_url":"https://api.github.com/users/Dallinger/gists{/gist_id}","starred_url":"https://api.github.com/users/Dallinger/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Dallinger/subscriptions","organizations_url":"https://api.github.com/users/Dallinger/orgs","repos_url":"https://api.github.com/users/Dallinger/repos","events_url":"https://api.github.com/users/Dallinger/events{/privacy}","received_events_url":"https://api.github.com/users/Dallinger/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/Dallinger/Dallinger","description":"Laboratory automation for the behavioral and social sciences; human culture on a chip.","fork":false,"url":"https://api.github.com/repos/Dallinger/Dallinger","forks_url":"https://api.github.com/repos/Dallinger/Dallinger/forks","keys_url":"https://api.github.com/repos/Dallinger/Dallinger/keys{/key_id}","collaborators_url":"https://api.github.com/repos/Dallinger/Dallinger/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/Dallinger/Dallinger/teams","hooks_url":"https://api.github.com/repos/Dallinger/Dallinger/hooks","issue_events_url":"https://api.github.com/repos/Dallinger/Dallinger/issues/events{/number}","events_url":"https://api.github.com/repos/Dallinger/Dallinger/events","assignees_url":"https://api.github.com/repos/Dallinger/Dallinger/assignees{/user}","branches_url":"https://api.github.com/repos/Dallinger/Dallinger/branches{/branch}","tags_url":"https://api.github.com/repos/Dallinger/Dallinger/tags","blobs_url":"https://api.github.com/repos/Dallinger/Dallinger/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/Dallinger/Dallinger/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/Dallinger/Dallinger/git/refs{/sha}","trees_url":"https://api.github.com/repos/Dallinger/Dallinger/git/trees{/sha}","statuses_url":"https://api.github.com/repos/Dallinger/Dallinger/statuses/{sha}","languages_url":"https://api.github.com/repos/Dallinger/Dallinger/languages","stargazers_url":"https://api.github.com/repos/Dallinger/Dallinger/stargazers","contributors_url":"https://api.github.com/repos/Dallinger/Dallinger/contributors","subscribers_url":"https://api.github.com/repos/Dallinger/Dallinger/subscribers","subscription_url":"https://api.github.com/repos/Dallinger/Dallinger/subscription","commits_url":"https://api.github.com/repos/Dallinger/Dallinger/commits{/sha}","git_commits_url":"https://api.github.com/repos/Dallinger/Dallinger/git/commits{/sha}","comments_url":"https://api.github.com/repos/Dallinger/Dallinger/comments{/number}","issue_comment_url":"https://api.github.com/repos/Dallinger/Dallinger/issues/comments{/number}","contents_url":"https://api.github.com/repos/Dallinger/Dallinger/contents/{+path}","compare_url":"https://api.github.com/repos/Dallinger/Dallinger/compare/{base}...{head}","merges_url":"https://api.github.com/repos/Dallinger/Dallinger/merges","archive_url":"https://api.github.com/repos/Dallinger/Dallinger/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/Dallinger/Dallinger/downloads","issues_url":"https://api.github.com/repos/Dallinger/Dallinger/issues{/number}","pulls_url":"https://api.github.com/repos/Dallinger/Dallinger/pulls{/number}","milestones_url":"https://api.github.com/repos/Dallinger/Dallinger/milestones{/number}","notifications_url":"https://api.github.com/repos/Dallinger/Dallinger/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/Dallinger/Dallinger/labels{/name}","releases_url":"https://api.github.com/repos/Dallinger/Dallinger/releases{/id}","deployments_url":"https://api.github.com/repos/Dallinger/Dallinger/deployments","created_at":"2016-09-05T21:46:04Z","updated_at":"2018-07-17T18:40:05Z","pushed_at":"2018-07-17T18:40:03Z","git_url":"git://github.com/Dallinger/Dallinger.git","ssh_url":"git@github.com:Dallinger/Dallinger.git","clone_url":"https://github.com/Dallinger/Dallinger.git","svn_url":"https://github.com/Dallinger/Dallinger","homepage":"http://docs.dallinger.io/","size":8404,"stargazers_count":49,"watchers_count":49,"language":"Python","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":17,"mirror_url":null,"archived":false,"open_issues_count":165,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"forks":17,"open_issues":165,"watchers":49,"default_branch":"master"}},"base":{"label":"Dallinger:master","ref":"master","sha":"c33ed3928cd041b62db54b39cb1ce1924c211bab","user":{"login":"Dallinger","id":19244232,"node_id":"MDEyOk9yZ2FuaXphdGlvbjE5MjQ0MjMy","avatar_url":"https://avatars2.githubusercontent.com/u/19244232?v=4","gravatar_id":"","url":"https://api.github.com/users/Dallinger","html_url":"https://github.com/Dallinger","followers_url":"https://api.github.com/users/Dallinger/followers","following_url":"https://api.github.com/users/Dallinger/following{/other_user}","gists_url":"https://api.github.com/users/Dallinger/gists{/gist_id}","starred_url":"https://api.github.com/users/Dallinger/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Dallinger/subscriptions","organizations_url":"https://api.github.com/users/Dallinger/orgs","repos_url":"https://api.github.com/users/Dallinger/repos","events_url":"https://api.github.com/users/Dallinger/events{/privacy}","received_events_url":"https://api.github.com/users/Dallinger/received_events","type":"Organization","site_admin":false},"repo":{"id":67452779,"node_id":"MDEwOlJlcG9zaXRvcnk2NzQ1Mjc3OQ==","name":"Dallinger","full_name":"Dallinger/Dallinger","owner":{"login":"Dallinger","id":19244232,"node_id":"MDEyOk9yZ2FuaXphdGlvbjE5MjQ0MjMy","avatar_url":"https://avatars2.githubusercontent.com/u/19244232?v=4","gravatar_id":"","url":"https://api.github.com/users/Dallinger","html_url":"https://github.com/Dallinger","followers_url":"https://api.github.com/users/Dallinger/followers","following_url":"https://api.github.com/users/Dallinger/following{/other_user}","gists_url":"https://api.github.com/users/Dallinger/gists{/gist_id}","starred_url":"https://api.github.com/users/Dallinger/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Dallinger/subscriptions","organizations_url":"https://api.github.com/users/Dallinger/orgs","repos_url":"https://api.github.com/users/Dallinger/repos","events_url":"https://api.github.com/users/Dallinger/events{/privacy}","received_events_url":"https://api.github.com/users/Dallinger/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/Dallinger/Dallinger","description":"Laboratory automation for the behavioral and social sciences; human culture on a chip.","fork":false,"url":"https://api.github.com/repos/Dallinger/Dallinger","forks_url":"https://api.github.com/repos/Dallinger/Dallinger/forks","keys_url":"https://api.github.com/repos/Dallinger/Dallinger/keys{/key_id}","collaborators_url":"https://api.github.com/repos/Dallinger/Dallinger/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/Dallinger/Dallinger/teams","hooks_url":"https://api.github.com/repos/Dallinger/Dallinger/hooks","issue_events_url":"https://api.github.com/repos/Dallinger/Dallinger/issues/events{/number}","events_url":"https://api.github.com/repos/Dallinger/Dallinger/events","assignees_url":"https://api.github.com/repos/Dallinger/Dallinger/assignees{/user}","branches_url":"https://api.github.com/repos/Dallinger/Dallinger/branches{/branch}","tags_url":"https://api.github.com/repos/Dallinger/Dallinger/tags","blobs_url":"https://api.github.com/repos/Dallinger/Dallinger/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/Dallinger/Dallinger/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/Dallinger/Dallinger/git/refs{/sha}","trees_url":"https://api.github.com/repos/Dallinger/Dallinger/git/trees{/sha}","statuses_url":"https://api.github.com/repos/Dallinger/Dallinger/statuses/{sha}","languages_url":"https://api.github.com/repos/Dallinger/Dallinger/languages","stargazers_url":"https://api.github.com/repos/Dallinger/Dallinger/stargazers","contributors_url":"https://api.github.com/repos/Dallinger/Dallinger/contributors","subscribers_url":"https://api.github.com/repos/Dallinger/Dallinger/subscribers","subscription_url":"https://api.github.com/repos/Dallinger/Dallinger/subscription","commits_url":"https://api.github.com/repos/Dallinger/Dallinger/commits{/sha}","git_commits_url":"https://api.github.com/repos/Dallinger/Dallinger/git/commits{/sha}","comments_url":"https://api.github.com/repos/Dallinger/Dallinger/comments{/number}","issue_comment_url":"https://api.github.com/repos/Dallinger/Dallinger/issues/comments{/number}","contents_url":"https://api.github.com/repos/Dallinger/Dallinger/contents/{+path}","compare_url":"https://api.github.com/repos/Dallinger/Dallinger/compare/{base}...{head}","merges_url":"https://api.github.com/repos/Dallinger/Dallinger/merges","archive_url":"https://api.github.com/repos/Dallinger/Dallinger/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/Dallinger/Dallinger/downloads","issues_url":"https://api.github.com/repos/Dallinger/Dallinger/issues{/number}","pulls_url":"https://api.github.com/repos/Dallinger/Dallinger/pulls{/number}","milestones_url":"https://api.github.com/repos/Dallinger/Dallinger/milestones{/number}","notifications_url":"https://api.github.com/repos/Dallinger/Dallinger/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/Dallinger/Dallinger/labels{/name}","releases_url":"https://api.github.com/repos/Dallinger/Dallinger/releases{/id}","deployments_url":"https://api.github.com/repos/Dallinger/Dallinger/deployments","created_at":"2016-09-05T21:46:04Z","updated_at":"2018-07-17T18:40:05Z","pushed_at":"2018-07-17T18:40:03Z","git_url":"git://github.com/Dallinger/Dallinger.git","ssh_url":"git@github.com:Dallinger/Dallinger.git","clone_url":"https://github.com/Dallinger/Dallinger.git","svn_url":"https://github.com/Dallinger/Dallinger","homepage":"http://docs.dallinger.io/","size":8404,"stargazers_count":49,"watchers_count":49,"language":"Python","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":17,"mirror_url":null,"archived":false,"open_issues_count":165,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"forks":17,"open_issues":165,"watchers":49,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/Dallinger/Dallinger/pulls/1139"},"html":{"href":"https://github.com/Dallinger/Dallinger/pull/1139"},"issue":{"href":"https://api.github.com/repos/Dallinger/Dallinger/issues/1139"},"comments":{"href":"https://api.github.com/repos/Dallinger/Dallinger/issues/1139/comments"},"review_comments":{"href":"https://api.github.com/repos/Dallinger/Dallinger/pulls/1139/comments"},"review_comment":{"href":"https://api.github.com/repos/Dallinger/Dallinger/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/Dallinger/Dallinger/pulls/1139/commits"},"statuses":{"href":"https://api.github.com/repos/Dallinger/Dallinger/statuses/dcbcad333b45fc1780806dd885b690f0bd490013"}},"author_association":"CONTRIBUTOR"}}
{"actor":{"display_login":"alecpm"}}