Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Conversation

@guerler
Copy link
Contributor

@guerler guerler commented May 24, 2025

This PR introduces a revised mechanism for installing visualization plugins that eliminates the previous split between the Galaxy core repository and the galaxy-visualizations repository. Previously, XML files and logo assets were manually added to the Galaxy core repo, while the actual plugin code was maintained and installed from the galaxy-visualizations repository via npm. This separation can lead to confusion and potential discrepancies between the declared metadata and the functional plugin code. It also makes it cumbersome for administrators who want to add new visualizations. With the revised approach, visualizations are fully self-contained within their npm packages, including all necessary assets such as the XML file and logo file. They are installed directly into Galaxy by specifying the corresponding npm package and version, without requiring any manual intervention or coordination across repositories. This process ensures consistency, reduces maintenance overhead, and simplifies the deployment pipeline. The change is demonstrated here for the aceeditor and tabulator visualization. Moving forward we could introduce a visualization_conf.yml file to allow administrators to explicitly specify the packages and versions to be installed without having to touch the gulp file.

How to test the changes?

(Select all options that apply)

  • I've included appropriate automated tests.
  • This is a refactoring of components with existing test coverage.
  • Instructions for manual testing are as follows:
    1. [add testing steps and prerequisites here if you didn't write automated tests covering all your changes]

License

  • I agree to license these and all my past contributions to the core galaxy codebase under the MIT license.

@guerler guerler added this to the 25.1 milestone May 24, 2025
@guerler guerler force-pushed the revise_plugin_building_mechanism branch 3 times, most recently from ea54907 to fb7940e Compare May 24, 2025 22:22
@guerler guerler force-pushed the revise_plugin_building_mechanism branch from fb7940e to 24ec1e6 Compare May 24, 2025 22:23
@guerler guerler marked this pull request as ready for review May 25, 2025 00:18
Copy link
Contributor

@davelopez davelopez left a comment

Choose a reason for hiding this comment

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

Thank you @guerler! Works well in my local testing, the only thing you may still need to do is adjust the .gitignore file to exclude the installed files.

guerler and others added 2 commits May 26, 2025 08:00
@guerler guerler merged commit 06497ef into galaxyproject:dev May 26, 2025
53 of 56 checks passed
@guerler guerler deleted the revise_plugin_building_mechanism branch May 26, 2025 13:25
@guerler
Copy link
Contributor Author

guerler commented May 26, 2025

@davelopez thank you so much for the review!

@mvdbeek
Copy link
Member

mvdbeek commented May 26, 2025

The change seems fine, but I would ask y'all to consider giving your US colleagues a chance to review this during a working day before merging approved requests as the author. IMO the only reason to approve but not merge is to give someone else a chance to review, and this seems like a somewhat important change that we as a team want to agree on ? It's definitely a balance to strike (I sure also like a speedy review process), so I don't think we need to put into the rules, but please consider this in the future.

@guerler
Copy link
Contributor Author

guerler commented May 26, 2025

I appreciate the feedback and understand the concern about timing. In this case, I did not see the change as particularly risky and felt comfortable moving forward after approval, especially since we are still early in the development cycle. That said, I agree it is important to be mindful of our global team and will keep that in mind going forward. I am always happy to follow up if further adjustments are needed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants