New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Tool form section tag #35
Conversation
This is an automated message. Thanks for your contribution, a Trello card to track this issue has been created. Apply this patch for testing. |
- Add example tool for testing (section.xml). - Implement popular flat group style test cases for section elements (first example in section.xml). - Implement nested groupping style test cases for section elements (section example in section.xml).
Opened PR to your branch implementing tool testing functionality. |
Awesome. Thx. |
A couple things - this looks like this will end the old tool form? I am nervous about that because we haven't implemented an upload widget for the new tool form - right? Also have you checked out |
Thx for the comments. I think that the upload tool parameter should be deprecated since it is not a clean solution. Instead users should upload files through the regular UI. Regarding the tool shed form mako, the best solution is probably to extend the current mako and then later this year consider to rewrite the tool shed UI without makos at all. |
We can also remove the form-preview functionality from the TS and just redirect (or show a modal) to a specialized usegalaxy.org/preview?tool_id=xxxxxxxx service. |
Tool testing sections.
Conflicts: lib/galaxy/tools/test.py
👍 |
…ol_form_section_tag Conflicts: lib/galaxy/tools/__init__.py
@guerler -- This disables the old tool form completely, removing the 'toolform_upgrade' conditional from tool_form.mako. Is that intentional, or is it left over from your testing? |
@@ -3,455 +3,22 @@ | |||
${h.js("libs/bibtex", "libs/jquery/jquery-ui")} | |||
${h.css('base', 'jquery-ui/smoothness/jquery-ui')} | |||
|
|||
## skip new tool form code if disabled | |||
%if util.string_as_bool(trans.app.config.get('toolform_upgrade', True)): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
(the line in question, per my comment below -- intentional?)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, this disables the old tool form for good. Currently we are building both tool forms in parallel. Since sections are not supported in the old tool form, we can either integrate them or disable the old tool form for good which would allow us to clean up the code and remove the associated makos all together. However, as John pointed out the latter has the consequence that the upload and ftp tool parameters will be deprecated.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ahh, got it -- I hadn't put it together that John was talking about this when he said 'end the old tool form', somehow. Super short deprecation warning, we probably need to handle this and not just purge it all quite yet?
Discussed with @guerler offline a bit, but this can't go as-is since it removes capabilities that still need to be reproduced in the new tool form, and it disables the old one. Path forward is going to be to implement the missing features in the new tool form so there's no functionality loss and everything is fully backwards compatible, and then (and only then) disable the old tool form and remove it from the codebase. |
So this PR made me nervous - but this statement "no functionality loss and everything is fully backwards compatible" also makes me nervous in the other direction. Is composite uploads what need to be preserved or is having a upload widget that can be embedded a tool? |
I think what we were leaning towards was an upload widget. @guerler -- want to comment w/ plans? |
I really have very mixed feelings - but if the intention is to continue to support composite uploads - we should restore a link to the old upload form on main - because currently there is no link and we are telling people these datatypes are no longer supported https://biostar.usegalaxy.org/p/11371/. No reason to lose the goodwill now and then have to support these indefinitely anyway :). |
@jmchilton this biostar link was hopefully only referring to PLED files and the tools developed at this time. We need to upload composite datatypes also in GalaxyP - wiff - scream, run, hide! |
Believe me @bgruening I want a usable wiff datatype in Galaxy - I am just not sure two or three datatypes warrant another 1 or 2 months of @guerler's time. They may be - I really have no clue though. |
I think composite datatypes are important. |
Also worth reading... https://www.mail-archive.com/galaxy-dev@lists.galaxyproject.org/msg00024.html |
@jmchilton this I can not judge. Just wanted to point out that there are some rare cases. |
@jxtx Did you intend to say "uploading of composite datatypes are important" - that is the stakes of this - not removing them completely. |
I think it is probably worth spending the effort to make them uploadable now. |
@jxtx Awesome - if you think it is time well spent - my conscience is clear. |
So it seems that we have two issues here: 1. the composite uploads and 2. the upload/ftp tool parameter. For the composite uploads I wonder if we can provide a tool which combines files uploaded through the regular upload modal into composite datatypes? Regarding the upload/ftp tool parameter (which is only used in one case within the toolshed) I would look out for a workaround i.e. by simply replacing them with regular dataset selectors and asking the user to use the regular upload modal maybe? |
Regarding 2.: Since no one in the toolshed (one outcommented attempt excluded) is using neither the file nor the ftpfile tool parameters, we actually might want to deprecate them. The alternative would be to fix and rewrite them such that they properly work incl. in the workflow editor. Instead we could ask the community if anyone is using these parameter types outside the tool shed. Depending on the number of responses, users should be able to simply adjust their tools by using regular dataset selectors. |
Since this seems to be a separate discussion. I have re-activated the tool form fall back option for this PR. |
Awesome - thanks @guerler. |
This seems like a pretty reasonable way to do it that'll fall in line with the way collections are built. |
Composite datasets and collections are different in so many ways, allowing upload of the individual parts and then combining them is probably not feasible, since it is quite possible for the individual parts to not be uploadable e.g., random generic "binary content not allowed", whereas if uploaded as the composite datatype the individual files together are valid for the datatype. Also, the case of uploading a composite datatype piecemeal will waste disk space/usage, and part of the reason that we have composite datasets in many cases is that the individual items "are not useful by themselves". Also, any tool to combine them will need to use the same/similar underlying logic as the current uploading of these -- that is allowing setting metadata, modifying the names of files, etc. |
In reference to no longer supporting certain input types, the ToolShed is not the end-all-be all of tool availability. Many tools written by individuals may not ever make it to the ToolShed, but that doesn't mean they should stop working, or that we should force them to change their tool to use different parameter types. We have also stated in the past that we would maintain backwards compatibility, specifically with respect to tool definitions. |
Point well articulated on composite datatypes - I was trying to explain that last week out-of-band but you did a much better job. As for preserving
From the outside, my impression was that |
This is right. |
Unfortunately, they are listed on https://wiki.galaxyproject.org/Admin/Tools/ToolConfigSyntax
|
I think the entirety of its documentation being literally |
This documentation is poor and we've gotten quite better at documenting things, but I'd be remiss to not point out that some documentation does exist. That being said, I don't actually like these parameters to be used by 'non-built in' tools (e.g. upload). Tools should be working on Datasets and not uploaded files. |
I suspect they were only placed on that page because someone pulled every possible value out with the intent that they should be addressed somehow at some point. However, I don't believe we ever intended for any of those file params to be used directly in a tool. |
This is a pretty good discussion. Thx for all the input. |
Fix require inclusion scoping in analysis.js
…lo_ocF0MxQg bug_master/trello_ocF0MxQg
GROMACS datatypes
This adds a section grouping tag to tool form parameters as discussed in https://trello.com/c/KxlQK0FB/587-ui-tools-provide-methods-for-visually-grouping-parameters.
The format is: section name="NAME" title="TITLE" expanded="True/False"