planemo icon indicating copy to clipboard operation
planemo copied to clipboard

Planemo Roadmap - 2022/2023

Open jmchilton opened this issue 2 years ago • 1 comments

This issue is meant to sketch out project goals for the next year and a half.

Update For Modern Galaxy Features (e.g. gravity):

  • https://github.com/galaxyproject/planemo/pull/1232
  • More structured/rigorous handling of new Galaxy package releases. Should we synchronize releases with Galaxy in some way?

Harden Workflow/IWC Support:

  • https://github.com/galaxyproject/planemo/issues/1225
  • https://github.com/galaxyproject/planemo/issues/1250
  • https://github.com/galaxyproject/planemo/issues/1267
  • https://github.com/galaxyproject/planemo/issues/1166

Code and Infrastructure for Online Test Data:

  • https://github.com/galaxyproject/planemo/issues/1268 https://github.com/galaxyproject/galaxy/issues/7900

Support More Linting / Validation / Refactoring without a Running Galaxy.

  • Improve tool shed (or replacement's) APIs so that we can reason about tool states and IDs without a running Galaxy server.
  • Attempt to migrate tool state handling from galaxy.tools to galaxy.tool_util in such a way that tool state can be reasoned about inside of Planemo. This would allow better workflow and tool linting without a Galaxy runtime/API.
  • RELATED: Use improved tool state handling to implement workflow step suggestions / validation / etc... in Galaxy Language Server (https://github.com/galaxyproject/galaxy-language-server/issues)

Long Term Code Goals / Technical Debt Reduction:

  • Python 3.10 Support (implemented as part of https://github.com/galaxyproject/planemo/pull/1232)
  • Full typing throughout the codebase.
  • Documentation for how to use as a library.
  • Automated testing against each new release of Galaxy packages, automate in such a way that we can run these tests before releasing Galaxy packages.

Good Entry Points:

  • https://github.com/galaxyproject/planemo/issues/308

jmchilton avatar Sep 09 '22 14:09 jmchilton

It would be really great if there was a way of downloading of online test data for tools and workflows.

  • I would like to add https://github.com/galaxyproject/galaxy/pull/13495 (which might not be a good way to do it). And also like to mention the idea of @bgruening of an online repo for test data.
  • For tools I was wondering if one could tweek the upload/staging such that if a URL is given the upload tool would just work like if a URL is pasted?

For linter errors/warnings it would be great to have something like the PEP numbers, i.e. if each linter message would have a code. Then IUC style CI could have more fine grained control which rules are allowed to be broken. The problem to this might be that linting is in parts done in the planemo code and in parts in the Galaxy code.

bernt-matthias avatar Sep 10 '22 13:09 bernt-matthias