Skip to content

new tool: galaxy wrappers for the pcdl physicell data lader command line commands #7034

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

Open
wants to merge 17 commits into
base: main
Choose a base branch
from

Conversation

elmbeech
Copy link

@elmbeech elmbeech commented Jun 8, 2025

FOR CONTRIBUTOR:

  • [ yes] I have read the CONTRIBUTING.md document and this tool is appropriate for the tools-iuc repo.
  • [ yes] License permits unrestricted use (educational + commercial)
  • [ yes] This PR adds a new tool or tool collection
  • [ no] This PR updates an existing tool or tool collection
  • [ no] This PR does something else (explain below)

Copy link
Member

@bgruening bgruening left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@elmbeech thanks! I added a few comments that apply for all tools. I think a macro file and a proper formatting will help a lot for further reivew.

Please have a look at the Galaxy Language Server, it has some build-in tools for auto-formatting.

<requirement type="package" version="3.3.7">pcdl</requirement>
</requirements>

<stdio> <exit_code range=":" level="log" description="hello world!"/> </stdio>
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

hello world is not a good description :)
But I guess this entire line can be removed

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

hi @bgruening ,
thank you for reviewing!

unfortunately, this line cannot be removed.
if you write a python package with command line hocks, the python output is piped to sterr.
if i remove this line, galaxy thinks it always caught an error when the script runs successfully.
this is why i have to catch all exit_codes as log.
i agree, hello world! is not a good description.
i will change this to catch python script output.

would this be acceptable?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think what you are looking for is https://docs.galaxyproject.org/en/latest/dev/schema.html#error-detection e.g. detect_errors="exit_code" on the command tag. See other Python based tools here in IUC.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No, exactly not.
As you can see, if I do so an error is detected, even if there is none.
image

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ok, that mean that your tool is reporting an error code of 1, is that the case?

For any other tool, text on stderr is not a problem, you can instruct Galaxy to only react on error codes, not text on stderr.

Copy link
Author

@elmbeech elmbeech Jun 9, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

no it is not reporting an error code of 1.
as you can see, in this particular command (which in the pcdl command line version just output to the screen) , the bash line is catching the standard error with 2> and is writing this to version.txt.
and galaxy interpret this as error code 1.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i followed this instruction in the galaxy documentation:

@elmbeech
Copy link
Author

elmbeech commented Jun 9, 2025

I think this is what you mean with "langauage server".
Looks like i have to check my implementation with vscode .
ok, i can do that.

Could you please point me to what you mean with "macro"?
Thank you!

@bgruening
Copy link
Member

I think this is what you mean with "langauage server". Looks like i have to check my implementation with vscode . ok, i can do that.

* https://github.com/galaxyproject/galaxy-language-server

Could you please point me to what you mean with "macro"? Thank you!

Sure. https://planemo.readthedocs.io/en/latest/writing_advanced.html#macros-reusable-elements
e.g. here: https://github.com/galaxyproject/tools-iuc/blob/main/tools/bedtools/macros.xml

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants