{"action":"opened","issue":{"url":"https://api.github.com/repos/jupyter/nbgrader/issues/763","repository_url":"https://api.github.com/repos/jupyter/nbgrader","labels_url":"https://api.github.com/repos/jupyter/nbgrader/issues/763/labels{/name}","comments_url":"https://api.github.com/repos/jupyter/nbgrader/issues/763/comments","events_url":"https://api.github.com/repos/jupyter/nbgrader/issues/763/events","html_url":"https://github.com/jupyter/nbgrader/issues/763","id":233025978,"number":763,"title":"Convert all nbgrader subcommands to standalone objects","user":{"login":"jhamrick","id":83444,"avatar_url":"https://avatars3.githubusercontent.com/u/83444?v=3","gravatar_id":"","url":"https://api.github.com/users/jhamrick","html_url":"https://github.com/jhamrick","followers_url":"https://api.github.com/users/jhamrick/followers","following_url":"https://api.github.com/users/jhamrick/following{/other_user}","gists_url":"https://api.github.com/users/jhamrick/gists{/gist_id}","starred_url":"https://api.github.com/users/jhamrick/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jhamrick/subscriptions","organizations_url":"https://api.github.com/users/jhamrick/orgs","repos_url":"https://api.github.com/users/jhamrick/repos","events_url":"https://api.github.com/users/jhamrick/events{/privacy}","received_events_url":"https://api.github.com/users/jhamrick/received_events","type":"User","site_admin":false},"labels":[{"id":129124230,"url":"https://api.github.com/repos/jupyter/nbgrader/labels/enhancement","name":"enhancement","color":"84b6eb","default":true},{"id":195882574,"url":"https://api.github.com/repos/jupyter/nbgrader/labels/refactor","name":"refactor","color":"fef2c0","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":{"url":"https://api.github.com/repos/jupyter/nbgrader/milestones/12","html_url":"https://github.com/jupyter/nbgrader/milestone/12","labels_url":"https://api.github.com/repos/jupyter/nbgrader/milestones/12/labels","id":2231681,"number":12,"title":"0.5.0","description":"","creator":{"login":"jhamrick","id":83444,"avatar_url":"https://avatars3.githubusercontent.com/u/83444?v=3","gravatar_id":"","url":"https://api.github.com/users/jhamrick","html_url":"https://github.com/jhamrick","followers_url":"https://api.github.com/users/jhamrick/followers","following_url":"https://api.github.com/users/jhamrick/following{/other_user}","gists_url":"https://api.github.com/users/jhamrick/gists{/gist_id}","starred_url":"https://api.github.com/users/jhamrick/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jhamrick/subscriptions","organizations_url":"https://api.github.com/users/jhamrick/orgs","repos_url":"https://api.github.com/users/jhamrick/repos","events_url":"https://api.github.com/users/jhamrick/events{/privacy}","received_events_url":"https://api.github.com/users/jhamrick/received_events","type":"User","site_admin":false},"open_issues":15,"closed_issues":52,"state":"open","created_at":"2017-01-05T21:06:56Z","updated_at":"2017-06-01T22:15:06Z","due_on":null,"closed_at":null},"comments":0,"created_at":"2017-06-01T22:15:06Z","updated_at":"2017-06-01T22:15:06Z","closed_at":null,"body":"If we want to run `nbgrader assign`, `nbgrader autograde`, and `nbgrader feedback` from the notebook web app (see #555), we will also have to create standalone objects that can perform these operations without inheriting from `JupyterApp` (as was done with `nbgrader release`, `fetch`, `collect`, etc.) or shell out to the command line to run these commands. The former approach is more work, but in the long run much better I think. The reason why shelling out would be necessary is that both the notebook and nbgrader inherit from `JupyterApp`, which is a singleton, and thus both can't be instantiated at the same time."}}
{"actor":{"display_login":"jhamrick"}}