{"action":"created","issue":{"url":"https://api.github.com/repos/galaxyproject/galaxy/issues/2875","repository_url":"https://api.github.com/repos/galaxyproject/galaxy","labels_url":"https://api.github.com/repos/galaxyproject/galaxy/issues/2875/labels{/name}","comments_url":"https://api.github.com/repos/galaxyproject/galaxy/issues/2875/comments","events_url":"https://api.github.com/repos/galaxyproject/galaxy/issues/2875/events","html_url":"https://github.com/galaxyproject/galaxy/pull/2875","id":174167275,"number":2875,"title":"Link charts to external repo, adjust interface","user":{"login":"guerler","id":2105447,"avatar_url":"https://avatars.githubusercontent.com/u/2105447?v=3","gravatar_id":"","url":"https://api.github.com/users/guerler","html_url":"https://github.com/guerler","followers_url":"https://api.github.com/users/guerler/followers","following_url":"https://api.github.com/users/guerler/following{/other_user}","gists_url":"https://api.github.com/users/guerler/gists{/gist_id}","starred_url":"https://api.github.com/users/guerler/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/guerler/subscriptions","organizations_url":"https://api.github.com/users/guerler/orgs","repos_url":"https://api.github.com/users/guerler/repos","events_url":"https://api.github.com/users/guerler/events{/privacy}","received_events_url":"https://api.github.com/users/guerler/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/galaxyproject/galaxy/labels/area/visualizations","name":"area/visualizations","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/status/review","name":"status/review","color":"fbca04"}],"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":49,"closed_issues":175,"state":"open","created_at":"2016-05-19T18:04:36Z","updated_at":"2016-10-11T21:13:18Z","due_on":"2016-10-10T04:00:00Z","closed_at":null},"comments":13,"created_at":"2016-08-31T02:01:56Z","updated_at":"2016-10-12T16:17:37Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/galaxyproject/galaxy/pulls/2875","html_url":"https://github.com/galaxyproject/galaxy/pull/2875","diff_url":"https://github.com/galaxyproject/galaxy/pull/2875.diff","patch_url":"https://github.com/galaxyproject/galaxy/pull/2875.patch"},"body":"This PR connects charts with an external chart types repository. The repository is currently located at: https://github.com/guerler/galaxy-charts, it is accessed at a specific revision to ensure reproducibility. This is a temporary solution. After some discussion we decided to clone the repository locally and allow admins to decide wether to install the repo or not. I suggest to implement that in a follow up. In this PR, the chart type selection UI has been adjusted to account for a wider range and larger number of possible plugins. Appropriate credit to 3rd party library providers is given in the description of each chart type. This PR improves the handling of misconfigured chart types and missing repository files by displaying proper warnings or providing alternative options. It simplifies the model handling, storage and validation. It also enhances the export/download functionality and quality, particularly for PNGs. The remaining question is if the repository should be local or remote.\r\n\r\nEdit: Commit 1805ac8b5948ded11e154c887a2da99481ac70c6 clones the external repository into Galaxy's plugin directory. It seems to me that thats the best solution for now until viz framework plugins or git repositories can be installed through the toolshed or any other UI.\r\n\r\n![untitled](https://cloud.githubusercontent.com/assets/2105447/18138998/6fa37872-6f7d-11e6-866f-e02f26ced3a2.png)\r\n\r\n![untitled1](https://cloud.githubusercontent.com/assets/2105447/18139019/898b3da6-6f7d-11e6-96ef-38d9712d18c9.png)\r\n\r\nThis repository contains also the BioJS MSA plugin, discussed in #2861. The corresponding repository files are here: https://github.com/guerler/galaxy-charts/tree/master/src/visualizations/biojs/msa.\r\n\r\n![41be5754-6ade-11e6-8a45-19a713cecae9](https://cloud.githubusercontent.com/assets/2105447/18139228/7b5f0c5c-6f7e-11e6-95c2-702fb770ac77.png)\r\n\r\nThe repo now also contains a basic cytoscape viewer. This is a good test case to look at data formats and validation, after all users should be able to use regular tools and benefit from these visualizations. The data format does not seem to be too complicated but if it turns out that users can not easily convert their data to such a json format we might want to avoid components like these. Each visualization should have a wiki page explaining the required data formats. The wrapper files are located at https://github.com/guerler/galaxy-charts/tree/master/src/visualizations/cytoscape/basic.\r\n![cytoscape](https://cloud.githubusercontent.com/assets/2105447/18185294/f96df6fc-706a-11e6-9a27-f56289d64c4d.png)\r\n\r\nAnother new chart type is the pv protein viewer hosted at: https://github.com/biasmv/pv. It is a PDB viewer. The wrappers are located here: https://github.com/guerler/galaxy-charts/tree/master/src/visualizations/pv/viewer. Screenshot of the editor view:\r\n![pdbviewereditor](https://cloud.githubusercontent.com/assets/2105447/18193358/b7f70a8e-70aa-11e6-9bfa-1aabe327ff36.png)\r\nScreenshot of options view:\r\n![customization](https://cloud.githubusercontent.com/assets/2105447/18208628/3365c9be-70fe-11e6-99aa-fc799bd4706d.png)\r\n\r\nExample of output:\r\n![pdbviewer](https://cloud.githubusercontent.com/assets/2105447/18193336/81ee14c8-70aa-11e6-85a4-d05dc2552ff2.png)"},"comment":{"url":"https://api.github.com/repos/galaxyproject/galaxy/issues/comments/253261642","html_url":"https://github.com/galaxyproject/galaxy/pull/2875#issuecomment-253261642","issue_url":"https://api.github.com/repos/galaxyproject/galaxy/issues/2875","id":253261642,"user":{"login":"natefoo","id":286969,"avatar_url":"https://avatars.githubusercontent.com/u/286969?v=3","gravatar_id":"","url":"https://api.github.com/users/natefoo","html_url":"https://github.com/natefoo","followers_url":"https://api.github.com/users/natefoo/followers","following_url":"https://api.github.com/users/natefoo/following{/other_user}","gists_url":"https://api.github.com/users/natefoo/gists{/gist_id}","starred_url":"https://api.github.com/users/natefoo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/natefoo/subscriptions","organizations_url":"https://api.github.com/users/natefoo/orgs","repos_url":"https://api.github.com/users/natefoo/repos","events_url":"https://api.github.com/users/natefoo/events{/privacy}","received_events_url":"https://api.github.com/users/natefoo/received_events","type":"User","site_admin":false},"created_at":"2016-10-12T16:17:37Z","updated_at":"2016-10-12T16:17:37Z","body":"I agree with @jmchilton (and I'm sorry I'm late to this when @guerler has already done the work to separate this from Galaxy), this is relatively core functionality that should remain in Galaxy. In addition, we're trying to move away from the \"clone repo\" method of deployment and \"install things at startup\" dependency management, so I think it's a step in the wrong direction to install charts this way and will cause problems for installable Galaxy down the line.\r\n\r\nIf this was Python we could just package it as a separate python package or if it was Node.js we could make it installable with npm. But this is isn't either and I really don't understand the argument for making it separate (full disclosure, you can put whatever you want in a python package, so it'd be possible to have it in an sdist/wheel, but I think that's the wrong approach here)."}}
{"actor":{"display_login":"natefoo"}}