-
Notifications
You must be signed in to change notification settings - Fork 24
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
Increase CI sensitivity by testing both lowest-direct and highest dependency resolution strategy #640
base: main
Are you sure you want to change the base?
Conversation
…endency resolution strategy
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #640 +/- ##
==========================================
- Coverage 99.23% 91.09% -8.14%
==========================================
Files 21 21
Lines 1573 1573
Branches 427 335 -92
==========================================
- Hits 1561 1433 -128
- Misses 10 136 +126
- Partials 2 4 +2
|
has the benefit of running CI with required deps only
the py 3.12 CI run is failing due to a
based on
looks like jobflow depends on |
Hi @janosh, thanks for this. I'm a bit confused about what's happening here. If you use resolution strategy="highest" and the strict optional dependencies at the same time, won't this just use the pinned versions in strict? I think testing the pinned versions in strict is useful btw, but happy to add additional dependency tests on top of this. |
@janosh I can't tell from your error message what exactly the build error is but if |
@utf that's right and hence be equivalent to CI as it runs prior to this PR. the 3-fold matrix strategy does the following - { python: "3.9", resolution: highest, extras: "tests,strict" } # this is equivalent to the previous CI run before this PR
- { python: "3.10", resolution: lowest-direct, extras: "tests" } # test oldest allowed versions
- { python: "3.11", resolution: highest, extras: tests } # test latest released versions though i just noticed a typo in the middle case (which incorrectly used @tschaume doesn't look like it, definitely not not ipykernel, nor notebook. should i submit a PR or will you bump |
@utf looks like the new CI is working. it found |
only failing CI job now is code coverage which supposedly fell by 8%. makes no sense since no new code was added in this PR... |
@janosh feel free to go ahead and submit a PR with maggma. @Andrew-S-Rosen and @rkingsbury might have some feedback and would be able to merge your PR. |
@utf i think this is ready to go except that the coverage seems to be thrown off by the use of - { python: "3.9", resolution: highest, extras: "tests,strict" } # this is equivalent to the previous CI run before this PR
- { python: "3.10", resolution: lowest-direct, extras: "tests" } # test oldest allowed versions
- { python: "3.11", resolution: highest, extras: tests } # test latest released versions |
@utf any chance you could update the required CI checks to match the new names including |
Bumps [pydantic](https://github.com/pydantic/pydantic) from 2.9.1 to 2.9.2. - [Release notes](https://github.com/pydantic/pydantic/releases) - [Changelog](https://github.com/pydantic/pydantic/blob/main/HISTORY.md) - [Commits](pydantic/pydantic@v2.9.1...v2.9.2) --- updated-dependencies: - dependency-name: pydantic dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [maggma](https://github.com/materialsproject/maggma) from 0.69.3 to 0.69.4. - [Release notes](https://github.com/materialsproject/maggma/releases) - [Changelog](https://github.com/materialsproject/maggma/blob/main/docs/CHANGELOG.md) - [Commits](materialsproject/maggma@v0.69.3...v0.69.4) --- updated-dependencies: - dependency-name: maggma dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [maggma](https://github.com/materialsproject/maggma) from 0.69.3 to 0.69.4. - [Release notes](https://github.com/materialsproject/maggma/releases) - [Changelog](https://github.com/materialsproject/maggma/blob/main/docs/CHANGELOG.md) - [Commits](materialsproject/maggma@v0.69.3...v0.69.4) --- updated-dependencies: - dependency-name: maggma dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [ipython](https://github.com/ipython/ipython) from 8.27.0 to 8.28.0. - [Release notes](https://github.com/ipython/ipython/releases) - [Commits](ipython/ipython@8.27.0...8.28.0) --- updated-dependencies: - dependency-name: ipython dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [pydantic](https://github.com/pydantic/pydantic) from 2.9.1 to 2.9.2. - [Release notes](https://github.com/pydantic/pydantic/releases) - [Changelog](https://github.com/pydantic/pydantic/blob/main/HISTORY.md) - [Commits](pydantic/pydantic@v2.9.1...v2.9.2) --- updated-dependencies: - dependency-name: pydantic dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [sphinx](https://github.com/sphinx-doc/sphinx) from 8.0.2 to 8.1.3. - [Release notes](https://github.com/sphinx-doc/sphinx/releases) - [Changelog](https://github.com/sphinx-doc/sphinx/blob/master/CHANGES.rst) - [Commits](sphinx-doc/sphinx@v8.0.2...v8.1.3) --- updated-dependencies: - dependency-name: sphinx dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [maggma](https://github.com/materialsproject/maggma) from 0.69.4 to 0.70.0. - [Release notes](https://github.com/materialsproject/maggma/releases) - [Changelog](https://github.com/materialsproject/maggma/blob/main/docs/CHANGELOG.md) - [Commits](materialsproject/maggma@v0.69.4...v0.70.0) --- updated-dependencies: - dependency-name: maggma dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [python-ulid](https://github.com/mdomke/python-ulid) from 2.7.0 to 3.0.0. - [Release notes](https://github.com/mdomke/python-ulid/releases) - [Changelog](https://github.com/mdomke/python-ulid/blob/main/CHANGELOG.rst) - [Commits](mdomke/python-ulid@2.7.0...3.0.0) --- updated-dependencies: - dependency-name: python-ulid dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [pydantic-settings](https://github.com/pydantic/pydantic-settings) from 2.5.2 to 2.6.0. - [Release notes](https://github.com/pydantic/pydantic-settings/releases) - [Commits](pydantic/pydantic-settings@v2.5.2...v2.6.0) --- updated-dependencies: - dependency-name: pydantic-settings dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [monty](https://github.com/materialsvirtuallab/monty) from 2024.7.30 to 2024.10.21. - [Release notes](https://github.com/materialsvirtuallab/monty/releases) - [Changelog](https://github.com/materialsvirtuallab/monty/blob/master/docs/changelog.md) - [Commits](https://github.com/materialsvirtuallab/monty/commits/v2024.10.21) --- updated-dependencies: - dependency-name: monty dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [ipython](https://github.com/ipython/ipython) from 8.28.0 to 8.29.0. - [Release notes](https://github.com/ipython/ipython/releases) - [Commits](ipython/ipython@8.28.0...8.29.0) --- updated-dependencies: - dependency-name: ipython dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [pydash](https://github.com/dgilland/pydash) from 8.0.3 to 8.0.4. - [Changelog](https://github.com/dgilland/pydash/blob/develop/CHANGELOG.rst) - [Commits](dgilland/pydash@v8.0.3...v8.0.4) --- updated-dependencies: - dependency-name: pydash dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [pydantic-settings](https://github.com/pydantic/pydantic-settings) from 2.6.0 to 2.6.1. - [Release notes](https://github.com/pydantic/pydantic-settings/releases) - [Commits](pydantic/pydantic-settings@v2.6.0...v2.6.1) --- updated-dependencies: - dependency-name: pydantic-settings dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [pytest-cov](https://github.com/pytest-dev/pytest-cov) from 5.0.0 to 6.0.0. - [Changelog](https://github.com/pytest-dev/pytest-cov/blob/master/CHANGELOG.rst) - [Commits](pytest-dev/pytest-cov@v5.0.0...v6.0.0) --- updated-dependencies: - dependency-name: pytest-cov dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Updates the requirements on [versioningit](https://github.com/jwodder/versioningit) to permit the latest version. - [Release notes](https://github.com/jwodder/versioningit/releases) - [Changelog](https://github.com/jwodder/versioningit/blob/master/CHANGELOG.md) - [Commits](jwodder/versioningit@v1.0.0...v3.1.2) --- updated-dependencies: - dependency-name: versioningit dependency-type: direct:production ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
related PRs: materialsproject/pymatgen#3852 + CederGroupHub/chgnet#159
the benefit of this kind of CI setup is that it ensures the full range of allowed version ranges in
pyproject.toml
actually work. e.g. resolution strategyhighest
could have failed since the latest versions ofjobflow
dependencies weren't tested before