{"action":"created","issue":{"url":"https://api.github.com/repos/galaxyproject/galaxy/issues/2899","repository_url":"https://api.github.com/repos/galaxyproject/galaxy","labels_url":"https://api.github.com/repos/galaxyproject/galaxy/issues/2899/labels{/name}","comments_url":"https://api.github.com/repos/galaxyproject/galaxy/issues/2899/comments","events_url":"https://api.github.com/repos/galaxyproject/galaxy/issues/2899/events","html_url":"https://github.com/galaxyproject/galaxy/issues/2899","id":175260821,"number":2899,"title":"Reach parity of the old WF controller and the API","user":{"login":"martenson","id":1814954,"avatar_url":"https://avatars.githubusercontent.com/u/1814954?v=3","gravatar_id":"","url":"https://api.github.com/users/martenson","html_url":"https://github.com/martenson","followers_url":"https://api.github.com/users/martenson/followers","following_url":"https://api.github.com/users/martenson/following{/other_user}","gists_url":"https://api.github.com/users/martenson/gists{/gist_id}","starred_url":"https://api.github.com/users/martenson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/martenson/subscriptions","organizations_url":"https://api.github.com/users/martenson/orgs","repos_url":"https://api.github.com/users/martenson/repos","events_url":"https://api.github.com/users/martenson/events{/privacy}","received_events_url":"https://api.github.com/users/martenson/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/galaxyproject/galaxy/labels/area/workflows","name":"area/workflows","color":"006b75"},{"url":"https://api.github.com/repos/galaxyproject/galaxy/labels/kind/enhancement","name":"kind/enhancement","color":"84b6eb"},{"url":"https://api.github.com/repos/galaxyproject/galaxy/labels/kind/refactoring","name":"kind/refactoring","color":"84b6eb"}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":{"url":"https://api.github.com/repos/galaxyproject/galaxy/milestones/5","html_url":"https://github.com/galaxyproject/galaxy/milestones/16.10","labels_url":"https://api.github.com/repos/galaxyproject/galaxy/milestones/5/labels","id":1777285,"number":5,"title":"16.10","description":"Tentative freeze date for Galaxy 16.10 release","creator":{"login":"martenson","id":1814954,"avatar_url":"https://avatars.githubusercontent.com/u/1814954?v=3","gravatar_id":"","url":"https://api.github.com/users/martenson","html_url":"https://github.com/martenson","followers_url":"https://api.github.com/users/martenson/followers","following_url":"https://api.github.com/users/martenson/following{/other_user}","gists_url":"https://api.github.com/users/martenson/gists{/gist_id}","starred_url":"https://api.github.com/users/martenson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/martenson/subscriptions","organizations_url":"https://api.github.com/users/martenson/orgs","repos_url":"https://api.github.com/users/martenson/repos","events_url":"https://api.github.com/users/martenson/events{/privacy}","received_events_url":"https://api.github.com/users/martenson/received_events","type":"User","site_admin":false},"open_issues":46,"closed_issues":93,"state":"open","created_at":"2016-05-19T18:04:36Z","updated_at":"2016-09-06T14:24:42Z","due_on":"2016-10-10T04:00:00Z","closed_at":null},"comments":7,"created_at":"2016-09-06T14:24:41Z","updated_at":"2016-09-06T16:16:35Z","closed_at":null,"body":"When we merged #2077 and #2895 we introduced a technical debt that is caused by non-equivalency of old workflow controller and the workflow API. The GUI now temporarily talks to an inferior internal endpoint and the improvements of such is either limited or will introduce more inconsistency.\r\n\r\nWe should gather a list of disparities and fix them before 16.10 so we can remove the /api_internal/ route.\r\n\r\n@guerler @jmchilton @dannon @blankenberg @natefoo please help me make this list, I took the initial set from @guerler's [comment](https://github.com/galaxyproject/galaxy/pull/2077#issuecomment-223062827)\r\n\r\n- [ ] Sending the outputs to one or multiple new histories\r\n- [ ] Linked batchmode\r\n- [ ] Unlinked batchmode\r\n- [ ] Support for workflow parameters\r\n- [ ] Support for data selection within steps\r\n- [ ] Support for resolving output dataset ids and names\r\n- [ ] Unaddressed queuing effect that the history does not auto-refresh anymore\r\n\r\nAnd the initial answers from @jmchilton's [comment](https://github.com/galaxyproject/galaxy/pull/2077#issuecomment-223107706) \r\n\r\n>> Support for workflow parameters\r\n\r\n> This is supported I believe - https://github.com/galaxyproject/galaxy/blob/dev/test/api/test_workflows.py#L1324.\r\n\r\n>> Sending the outputs to one or multiple new histories\r\n\r\n> I don't think you should build a WorkflowRunConfig directly - there is an existing abstraction that both API endpoints use and it seems to cover this functionality:\r\n> https://github.com/galaxyproject/galaxy/blob/dev/lib/galaxy/workflow/run_request.py#L214\r\n> build_workflow_run_config would also cover workflow parameters if used properly.\r\n \r\n>> Linked batchmode\r\n>> Unlinked batchmode\r\n\r\n> The implementation here is okay and could probably be adapted in the invocation API? I wish it reused the tools stuff and I wish there logic wasn't placed\r\n\r\n>> Support for data selection within steps\r\n\r\n> If this works - my intuition suggests either you are not properly backgrounding the workflow or encoded IDs are being saved to the database. I can fix the invocation endpoint to accept these - but previous @dannon and I purposely decided that we should discontinue support for non-input data selection. I don't know if his opinions have changed - but mine have't - it is a mistake to allow it. I've outlined how I believe it should be approached - but if you do not wish to do that and insist the API needs to support the data parameters we hoped to deprecate - I will begrudgingly update build_workflow_run_config and the invocation endpoint to allow this (will require a database migration I believe).\r\n\r\n>> Support for resolving output dataset ids and names\r\n>> Unaddressed queuing effect that the history does not auto-refresh anymore\r\n\r\n> This needs to be resolved longer term (there is an open issue about limitations regarding history updates - fixing it at the history level would help dynamic tool outputs, collection stuff, GIEs that publish to the history, this workflow endpoint, etc...) - but as a basic starting point the invocation landing page could take the invocation ID and poll the workflow and update the history as new datasets are created. Do you want me to do the UI for that?"},"comment":{"url":"https://api.github.com/repos/galaxyproject/galaxy/issues/comments/245004368","html_url":"https://github.com/galaxyproject/galaxy/issues/2899#issuecomment-245004368","issue_url":"https://api.github.com/repos/galaxyproject/galaxy/issues/2899","id":245004368,"user":{"login":"jmchilton","id":216771,"avatar_url":"https://avatars.githubusercontent.com/u/216771?v=3","gravatar_id":"","url":"https://api.github.com/users/jmchilton","html_url":"https://github.com/jmchilton","followers_url":"https://api.github.com/users/jmchilton/followers","following_url":"https://api.github.com/users/jmchilton/following{/other_user}","gists_url":"https://api.github.com/users/jmchilton/gists{/gist_id}","starred_url":"https://api.github.com/users/jmchilton/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jmchilton/subscriptions","organizations_url":"https://api.github.com/users/jmchilton/orgs","repos_url":"https://api.github.com/users/jmchilton/repos","events_url":"https://api.github.com/users/jmchilton/events{/privacy}","received_events_url":"https://api.github.com/users/jmchilton/received_events","type":"User","site_admin":false},"created_at":"2016-09-06T16:16:35Z","updated_at":"2016-09-06T16:16:35Z","body":"One could imagine unpacking and repacking the dict - but I worked through this - there are actually tables WorkflowRequestToInputDatasetAssociation and WorkflowRequestToInputDatasetCollectionAssociation that allow for real referential integrity. It is a better solution - and it kills me that they will be ignored."}}
{"actor":{"display_login":"jmchilton"}}