Best practice: set tool version on wrapper or on tool level?
Hi all, I am writing a wrapper around Razers mapper. Currentty, Razers has three versions, the latest being razers3. Since it's under development, what is the best way to deal with new versions? - write a different tool config for every version, giving them different ids like 'razers3', 'razers4'. These tools will appear all simultaneously in the tool box. Every version needs to be installed independently from the toolshed. - or write a tool config with id 'razers' and set a version in the xml <version_command>. Then when a new version comes out, I update the wrapper completely to match the new version. In this way a user can select the different versions can be selected at the top of the tool parameters page in Galaxy, right? How should I deal with naming the version: follow the config file I wrote (version 1.0.0 for razer3, 2.0.0 for razers4 - can cause confusion though.) - or write a wrapper for the tool 'razers' in general, parsing the selection of which version to use to the wrapper, and deal with it over there? I hope I explained my issue clearly. Thanks, Joachim -- Joachim Jacob, PhD Rijvisschestraat 120, 9052 Zwijnaarde Tel: +32 9 244.66.34 Bioinformatics Training and Services (BITS) http://www.bits.vib.be @bitsatvib
On Thu, Sep 27, 2012 at 11:32 AM, Joachim Jacob <joachim.jacob@vib.be> wrote:
Hi all,
I am writing a wrapper around Razers mapper. Currentty, Razers has three versions, the latest being razers3.
Since it's under development, what is the best way to deal with new versions?
- write a different tool config for every version, giving them different ids like 'razers3', 'razers4'. These tools will appear all simultaneously in the tool box. Every version needs to be installed independently from the toolshed.
- or write a tool config with id 'razers' and set a version in the xml <version_command>. Then when a new version comes out, I update the wrapper completely to match the new version. In this way a user can select the different versions can be selected at the top of the tool parameters page in Galaxy, right? How should I deal with naming the version: follow the config file I wrote (version 1.0.0 for razer3, 2.0.0 for razers4 - can cause confusion though.)
- or write a wrapper for the tool 'razers' in general, parsing the selection of which version to use to the wrapper, and deal with it over there?
I hope I explained my issue clearly.
Thanks, Joachim
I think that using a single wrapper only really makes sense when the underlying tool's command line API doesn't change. Even then, for major version jumps I personally would think a separate tool in Galaxy makes more sense. After all, you would expect potentially different output between versions. i.e. I would lean to separate wrappers for razers3, razers4 etc. I'm looking at a similar issue with MIRA, but there is an additional complication here that the newest version also changes the MIRA command line interface extensively. Peter
participants (2)
-
Joachim Jacob
-
Peter Cock