Open natefoo opened 5 years ago
instead of the obvious thing, it converts it to a weird ID that never existed
Ok cooool. That explains some things. Agreed 2 is the optimal solution, but we can definitely do 1 in the short term.
Toolbox sections (e.g. from cvmfs + local) are going to be grouped on agreement of ID + label right? It would probably make sense to synchronize them then?
Originally we were only going to sync labels I think? But it looks like we'll have to sync IDs.
Sounds like a great idea. Can we default to something calculated from the labels? As we already have them synced?
On Fri., 7 Jun. 2019, 00:40 Nate Coraor, notifications@github.com wrote:
Originally we were only going to sync labels I think? But it looks like we'll have to sync IDs.
— You are receiving this because you are on a team that was mentioned. Reply to this email directly, view it on GitHub https://github.com/galaxyproject/usegalaxy-tools/issues/9?email_source=notifications&email_token=AANI3XSI5WQHUUB7YVJF5U3PZEOVXA5CNFSM4HT7HHQKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODXDB6DI#issuecomment-499523341, or mute the thread https://github.com/notifications/unsubscribe-auth/AANI3XWJYZA74QLEUOMQUCLPZEOVXANCNFSM4HT7HHQA .
My vote is for something like:
>>> import string
>>> label = 'Foo: Bar Baz'
>>> section_id = ''
>>> for c in label:
... section_id += (c if c in string.ascii_letters + string.digits else '_').lower()
...
>>> section_id
'foo__bar_baz'
Alternatively we can just use Galaxy's current method (label.lower().replace(' ', '_')
) but I don't like non-alphanumeric characters in the IDs.
I like your idea. I don't like non-alphas in Ids also. Let's definitely go with that. We should update the list of labels and then create the list of id's so we can start fixing our tool_confs etc again.
Sounds good for doing at GCC
Yep.. :)
On Sat, 22 Jun 2019 at 02:48, Helena Rasche notifications@github.com wrote:
Sounds good for doing at GCC
— You are receiving this because you are on a team that was mentioned. Reply to this email directly, view it on GitHub https://github.com/galaxyproject/usegalaxy-tools/issues/9?email_source=notifications&email_token=AANI3XQYCXQ6OTITPHG3XBLP3UA5ZA5CNFSM4HT7HHQKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODYI7ONY#issuecomment-504493879, or mute the thread https://github.com/notifications/unsubscribe-auth/AANI3XSWNXYJDXCCEKW6MGLP3UA5ZANCNFSM4HT7HHQA .
--
Simon Gladman | Second Lieutenant
Wyndham Vale Fire Brigade
PO Box 410 Werribee 3030
Mob. 0418 421 077
Email. simon.gladman@unimelb.edu.au simon.gladman@unimelb.edu.au
Through a series of levels ~~it turns out that instead of searching the toolbox by name/label, the label is converted to an ID with
.lower().replace(' ', '_')
and searches for that ID. If there's no match for that ID, a new section is created.
I think the proper fix would be to actually fix Galaxy and do that. I can give it a shot, this shouldn't be too hard.
Maybe fixed in https://github.com/galaxyproject/galaxy/pull/8225?
Maybe fixed in galaxyproject/galaxy#8225?
Indeed it should be! We'll still have to use IDs at least until docker-galaxy-stable is updated to 19.05. Additionally, we should probably update Galaxy so that new sections use the algorithm described above to generate the ID. That should not take long at all, however.
The docker tag exists, we should test it :)
Back in February 2019 when the usegalaxy. team were hacking together for a week we all converted our tool panels to use the same section names*. Unfortunately, it turns out, the tool installation process doesn't exactly work that way.
It looks like
tool_panel_section_label
in an Ephemeris tool yaml becomesnew_tool_panel_section_label
in the API request. Through a series of levels ~~it turns out that instead of searching the toolbox by name/label, the label is converted to an ID with.lower().replace(' ', '_')
and searches for that ID. If there's no match for that ID, a new section is created.In #8 I expected that by passing the name of an existing section (
ChIP-seq
), it would be installed in to the existing section (which happens to have IDchip_seq
). Instead, the install code searched forchip-seq
and, not finding it, created a new section with the same name/label but with IDchip-seq
.This means that for usegalaxy.* common tools we need to:
IMO the best fix in the short term is to use identical section IDs, but that's maybe a little less flexible and requires looking in a shed_tool_conf.xml any time a new tool is added, rather than just looking at the tool panel in Galaxy.
ping @galaxyproject/universe-admins