Releases: galaxyproject/total-perspective-vortex
Releases · galaxyproject/total-perspective-vortex
v3.2.1
v3.2.0
Release Highlights
- When using multiple configs, you can now dump your merged config using the
tpv dumpcommand. docs - The
tpv dry-runcommand now has a--explainflag that provides a detailed trace of how TPV arrived at a particular scheduling decision. docs - Special tool_type tags are automatically injected to make it easier to schedule tools. For example, user-defined tools are automatically rejected from all destinations unless specifically allowed. docs
What's Changed
- Allow accepting or rejecting based on
tool_typeby @mvdbeek in #167 - Uplift to uv + py310 and parallelize tests by @nuwang in #185
- Update fastapi requirement from <0.119 to <0.121 by @dependabot[bot] in #179
- Add explain flag and merged config dump by @nuwang in #184
- Resubmit lint fix by @abretaud in #187
New Contributors
- @dependabot[bot] made their first contribution in #179
- @abretaud made their first contribution in #187
Full Changelog: v3.1.3...v3.2.0
v3.1.3
v3.1.2
v3.1.1
v3.1.0
Release Highlights
- TPV now automatically injects resource requirements specified in the tool's resource requirements section. This applies to all tools, including user-defined tools.
What's Changed
- Remove the duplicated docs section by @martenson in #164
- Remove pipe synthax only available from py3.10 by @nagoue in #165
- Implement basic version of resource requirements by @mvdbeek in #166
New Contributors
- @martenson made their first contribution in #164
- @nagoue made their first contribution in #165
Full Changelog: v3.0.1...v3.1.0
v3.0.1
v3.0.0
Breaking Changes
- A new version of the TPV shared database has been released. Therefore, please update your links to point to
https://gxy.io/tpv/db-latest.ymlif you want to preserve the older behaviour of using the latest version. Otherwise,https://gxy.io/tpv/db.ymlis now an alias forhttps://gxy.io/tpv/db-v1.yml, and will no longer be updated. Alternatively, you can usehttps://gxy.io/tpv/db-v2.yml, if you want to pin to the latest major version. We recommend this latter option for most users, as you can control the major version upgrade cycle. Refer to release notes in the TPV shared database for more information. - TPV v3.0.0 also has some breaking changes for edge cases, although most users will be unaffected.
- If you programmatically access TPV tags in python code, some breaking changes were made. Specifically, the
TagSetManagerclass has been deprecated and theTagclass - simplified. Users using only yaml scheduling tags are unaffected. To create a a new Tag instance programmatically, a name is no longer required. Simply usepulsar_tag = Tag("mytag", TagType.REQUIRE). The TagSetManager class has been replaced with the SchedulingTags class. UseSchedulingTags(require=[pulsar_tag]to replace. See here for additional context. - These changes can be caught with mypy based type-checking support in the upgraded linter. Type-check failures are treated as linter warnings, not errors, and therefore, you must use the
tpv -vv lintflag to view type-checking issues. The type-checker will warn you if you attempt to use any non-existent classes.
Release highlights
- The TPV linter now supports type-checking of Python code embedded in your yaml files, so that potential errors can be detected prior to deployment. Type-check failures are treated as linter warnings, not errors, and therefore, you must use the
tpv -vv lintflag to view type-checking issues. Internally, TPV uses mypy with strict type-checking support, and we recommend linting all your existing files and correcting any type related errors prior to deploying TPV 3.0.0 in production. - The TPV linter also warns you if any unrecognised fields are seen in your yaml config. Use
tpv -vv lintto display these warnings. You can also individually silence these errors by adding the commentnoqa: T104. - TPV now has a well-defined Pydantic schema and uses this schema internally for parsing yaml config files. A future release will add support for displaying this YAML schema.
- The dryrun command has been enhanced with support for specifying
rolesandhistory-tags. - Numerous bug fixes and internal enhancements.
What's Changed
- Enhancement for dryrun: add --roles and --history-tags arguments by @cat-bro in #142
- Fix test by @bernt-matthias in #144
- Add posibility to load multiple configs from xml job config by @bernt-matthias in #143
- config file combinations by @bernt-matthias in #145
- Fix monitoring of rules in OSX tmpdir by @mvdbeek in #147
- Add pydantic support by @nuwang in #136
- Reformat codebase by @nuwang in #137
- Allow loading tpv rules directly from YAML. by @jmchilton in #146
- Avoid regex, use like in concurrent_job_count_for_tool by @mvdbeek in #148
- Fix inheritance across config files by @nuwang in #150
- Add type checking support to linter by @nuwang in #151
- Add linting support for unexpected fields by @nuwang in #152
- Wrap tool version comparision in a function that checks for None by @cat-bro in #155
- Modernize setup to use pyproject.toml by @nuwang in #156
- Add support for linting multi file tpv configs by @nuwang in #158
- Fix linting of multi-line return type by @nuwang in #160
- Update v3 docs by @nuwang in #157
New Contributors
- @jmchilton made their first contribution in #146
Full Changelog: v2.5.0...v3.0.0