Repository navigation
Adopt the scverse cookiecutter template 0.8.0 - #459
Merged
Merged
Conversation
Adds .cruft.json so future template releases arrive as automated update PRs, and brings the repository in line with what the template generates. The package moves to a src layout, and pyproject.toml switches to the template's layout: dependency groups for dev, test, typecheck and doc, hatch environments that define the test matrix, and the ruff, pytest, coverage and cruft configuration. The test matrix now covers the ends of the supported range, 3.12 and 3.14, and CI derives its jobs from it rather than restating them, so pyproject.toml is the only place a supported version is written down. pr_validation.yml is replaced by the template's test, build and release workflows. Linting moves to pre-commit, which gains biome, pyproject-fmt and zizmor. The issue templates, dependabot config, editorconfig, codecov config and VS Code settings come from the template as generated. The mypy configuration is left alone: the template does not run mypy, and reworking type checking is a separate job. The pre-commit hook stays and gains a hatch-check-types environment so it can also be run on its own. The existing sphinx-gallery documentation tree under docs/source is kept as well, since the template's docs layout would replace the gallery. `load_example_data` located the datasets directory relative to the package, so the src move needed a matching path change, and the GitHub fallback URL now points at scverse rather than owkin. Builds a correct wheel, and the tests, ruff, mypy and the documentation build all pass. Signed-off-by: Lukas Heumos <lukas.heumos@posteo.net>
for more information, see https://pre-commit.ci
Welcome to Codecov 🎉Once you merge this PR into your default branch, you're all set! Codecov will compare coverage reports and display results in all future pull requests. Thanks for integrating Codecov - We've got you covered ☂️ |
The version was written out in pyproject.toml and had to be bumped by hand for every release. hatch-vcs reads it from the git tag instead, so tagging is the only step. `pydeseq2.__version__` already read installed metadata, so it needs no change. Signed-off-by: Lukas Heumos <lukas.heumos@posteo.net>
The exact pin meant type checking silently stayed on an old release. mypy 2.3 passes on the current source. Signed-off-by: Lukas Heumos <lukas.heumos@posteo.net>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds
.cruft.jsonso future template releases arrive as automated update PRs, moves the package to a src layout, and takes the template's pyproject layout, pre-commit hooks and test/build/release workflows; the hatch matrix in pyproject.toml is now the only place supported Python versions are written down. The version is derived from git tags with hatch-vcs rather than hand-bumped.The mypy configuration and the existing sphinx-gallery docs tree are deliberately kept as they are, since reworking either is a separate job.
Closes #429