Skip to content
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

Unify and Abstract Code for Checking if File Looks Like a Tool #1368

Merged
merged 4 commits into from Dec 22, 2015

Conversation

jmchilton
Copy link
Member

The toolshed, toolbox, and planemo all used different methods for quickly checking if a file is supposed to look like a tool previously. This unifies them into a single looks_like_a_tool method. Additionally, this makes the method more correct by handling the "enable_beta_tool_formats" config option.

This PR also pulls in some some updates to the dictified representation of tools from my downstream work on dynamically splitting and merging collections using datatype methods. Even if we never expose the YAML format externally - that use of dynamically building a tool per datatype demonstrates the utility of allowing Galaxy to use the format internally. The real utility though is one of code design, helping ensure there is a strict differentiation between the layout of tools in a file and Galaxy's abstract description (the Tool class).

…-tool XML files.

A single abstraction will allow toolbox and planemo to deal with other kinds of tools in the future, and the stronger preconditions should eliminate some busy error logging when monitoring a tool directory.
Default is off obviously, so for instance the tool shed will never think unsupported beta tools are real tools.
Order of inputs and outputs in Galaxy is important, so preserve this order if using dictionary-style (both available) for inputs and/or outputs.
@martenson
Copy link
Member

I like this a lot, I will give it another shot of review later today but am close to merging it.

@bgruening
Copy link
Member

👍

@martenson
Copy link
Member

looks like a looks_like_a_tool to me, thanks @jmchilton

martenson added a commit that referenced this pull request Dec 22, 2015
Unify and Abstract Code for Checking if File Looks Like a Tool
@martenson martenson merged commit f874d55 into galaxyproject:dev Dec 22, 2015
@jmchilton jmchilton modified the milestone: 16.01 Jan 5, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/tools area/toolshed kind/enhancement kind/refactoring cleanup or refactoring of existing code, no functional changes
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants