{"action":"created","issue":{"url":"https://api.github.com/repos/scitran/api/issues/108","labels_url":"https://api.github.com/repos/scitran/api/issues/108/labels{/name}","comments_url":"https://api.github.com/repos/scitran/api/issues/108/comments","events_url":"https://api.github.com/repos/scitran/api/issues/108/events","html_url":"https://github.com/scitran/api/pull/108","id":122633539,"number":108,"title":"Snapshots","user":{"login":"rentzso","id":1427389,"avatar_url":"https://avatars.githubusercontent.com/u/1427389?v=3","gravatar_id":"","url":"https://api.github.com/users/rentzso","html_url":"https://github.com/rentzso","followers_url":"https://api.github.com/users/rentzso/followers","following_url":"https://api.github.com/users/rentzso/following{/other_user}","gists_url":"https://api.github.com/users/rentzso/gists{/gist_id}","starred_url":"https://api.github.com/users/rentzso/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rentzso/subscriptions","organizations_url":"https://api.github.com/users/rentzso/orgs","repos_url":"https://api.github.com/users/rentzso/repos","events_url":"https://api.github.com/users/rentzso/events{/privacy}","received_events_url":"https://api.github.com/users/rentzso/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":6,"created_at":"2015-12-17T00:14:07Z","updated_at":"2016-01-28T22:43:16Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/scitran/api/pulls/108","html_url":"https://github.com/scitran/api/pull/108","diff_url":"https://github.com/scitran/api/pull/108.diff","patch_url":"https://github.com/scitran/api/pull/108.patch"},"body":"The main goal of this change is to enable a client to take a copy(snapshot) of a project at a certain point in time.\r\nAll the ids of project, sessions and acquisitions are changed. The key of the original project is stored in the key 'original' of its copy.\r\n\r\nSnapshots are essentially immutable. They can be removed, but the only property that can be modified is the public flag.\r\n\r\n### New routes\r\n\r\n#### create a snapshot for the project \\<project_id\\>\r\nmethod: POST \r\npath: api/snapshots?project=\\<project_id\\>\r\n\r\n#### get all the project snapshots\r\nmethod: GET\r\npath: api/snapshots/projects\r\n\r\n#### get all the snapshots for a project id\r\nmethod: GET\r\npath: api/projects/\\<_id\\>/snapshots\r\n\r\n#### get the details of a project/session/acquisition that belongs to a snapshot\r\nmethod: GET\r\npath: api/snapshots/(projects|sessions|acquisition)/\\<_id\\>\r\n\r\n#### get all the sessions in a project snapshot\r\nmethod: GET\r\npath: api/snapshots/projects/\\<project_id\\>/sessions\r\n\r\n#### get all the acquisitions in a session snapshot\r\nmethod: GET\r\npath: api/snapshots/sessions/\\<session_id\\>/acquisitions\r\n\r\n#### delete the project snapshot with all its sessions and acquisitions\r\nmethod: DELETE\r\npath: api/snapshots/projects/\\<project_id\\>\r\n\r\n#### publish or unpublish the project snapshot, all its sessions and acquisitions\r\nmethod: PUT\r\npath: api/snapshots/projects/\\<project_id\\>/public\r\nbody: {'value': True/False}"},"comment":{"url":"https://api.github.com/repos/scitran/api/issues/comments/176460960","html_url":"https://github.com/scitran/api/pull/108#issuecomment-176460960","issue_url":"https://api.github.com/repos/scitran/api/issues/108","id":176460960,"user":{"login":"constellates","id":4325905,"avatar_url":"https://avatars.githubusercontent.com/u/4325905?v=3","gravatar_id":"","url":"https://api.github.com/users/constellates","html_url":"https://github.com/constellates","followers_url":"https://api.github.com/users/constellates/followers","following_url":"https://api.github.com/users/constellates/following{/other_user}","gists_url":"https://api.github.com/users/constellates/gists{/gist_id}","starred_url":"https://api.github.com/users/constellates/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/constellates/subscriptions","organizations_url":"https://api.github.com/users/constellates/orgs","repos_url":"https://api.github.com/users/constellates/repos","events_url":"https://api.github.com/users/constellates/events{/privacy}","received_events_url":"https://api.github.com/users/constellates/received_events","type":"User","site_admin":false},"created_at":"2016-01-28T22:43:16Z","updated_at":"2016-01-28T22:43:16Z","body":"Yea I'm still getting the same 500 error as when I change the code. Here's the trace from the log.\r\n\r\n\t  return super(RequestHandler, self).dispatch()\r\n\tFile \"/usr/local/lib/python2.7/dist-packages/webapp2.py\", line 572, in dispatch\r\n\t  return self.handle_exception(e, self.app.debug)\r\n\tFile \"/usr/local/lib/python2.7/dist-packages/webapp2.py\", line 570, in dispatch\r\n\t  return method(*args, **kwargs)\r\n\tFile \"/srv/scitran/api/handlers/snapshothandler.py\", line 65, in create\r\n      permchecker = self._get_permchecker(container, container)\r\n\tFile \"/srv/scitran/api/handlers/containerhandler.py\", line 349, in _get_permchecker\r\n\t  permchecker = self.config['permchecker']\r\n\tAttributeError: 'SnapshotHandler' object has no attribute 'config'"}}