Skip to content

Infrastructure cleanup#400

Open
Darlokt wants to merge 4 commits into
scverse:mainfrom
Darlokt:infrastructure-cleanup
Open

Infrastructure cleanup#400
Darlokt wants to merge 4 commits into
scverse:mainfrom
Darlokt:infrastructure-cleanup

Conversation

@Darlokt
Copy link
Copy Markdown

@Darlokt Darlokt commented May 16, 2026

Hej evreyone,

I have a project depending on this project and saw there is some cleanup potential in preparation for some bigger refactors/cleanups.

This is a patch series cleaning up the projects infrastructure. Removing/consolidates unnecessary/no longer used files/configs and updating tool configs etc. in preparation for a general cleanup/restructure.

Changes:

  • Deleted .bumpversion.cfg as it is not used in the project.
  • Deleted .mypy.ini and integrated it into pyproject.toml under the tool.mypy section.
    • Bumped the python version to 3.11 in the mypy configuration to reflect the minimum supported version.
  • Updated .pre-commit-config.yaml to remove unused hooks and dependencies.
    • Removed the mirrors-prettier hook as it is conflicting with ruff and .editorconfig settings.
    • Removed the check-ast, end-of-file-fixer, mixed-line-ending and trailing-whitespace hooks as they are redundant with ruff.
    • Removed unsafe fixes from ruff
  • Cleaned up the pyproject.toml and updated tool configs
    • Split the tool.ruff configuration into multiple sections to improve readability and maintainability.
    • Updated the ruff to reflect the .editorconfig settings (indentation, line endings, etc.)
    • Set the ruff minimum python version to 3.11 to reflect the minimum supported version.
    • Converted optional dependencies into dependency groups in line with PEP 735, to improve the organization and clarity of the dependencies.
    • Added docstring convention to ruff linting config in line with project standards.
    • Removed pre dependency group as it is not different to the main dependencies and only used for .readthedocs.yaml.
    • Removed bump2version from the dev dependency group as it is not used in the project and abandoned.
  • Updated .readthedocs.yaml
    • Removed the pre dependency group from the installation command as it is not different to the main dependencies and only used for .readthedocs.yaml.
    • Updated resolver to use uv instead of pip to install dependencies, as it is faster and works with the implemented dependency groups.

Darlokt added 4 commits May 16, 2026 04:57
This commit cleans up the infrastructure and project configuration by removing unused files and updating the remaining ones.

Changes:
- Deleted `.bumpversion.cfg` as it is not used in the project.
- Deleted `.mypy.ini` and integrated it into `pyproject.toml` under the `tool.mypy` section.
  - Bumped the python version to 3.11 in the mypy configuration to reflect the minimum supported version.
- Updated `.pre-commit-config.yaml` to remove unused hooks and dependencies.
  - Removed the `mirrors-prettier` hook as it is conflicting with `ruff` and `.editorconfig` settings.
  - Removed the `check-ast`, `end-of-file-fixer`, `mixed-line-ending` and `trailing-whitespace` hooks as they are redundant with `ruff`.
- Cleaned up the `pyproject.toml` and updated tool configs
  - Split the `tool.ruff` configuration into multiple sections to improve readability and maintainability.
  - Updated the `ruff` to reflect the `.editorconfig` settings (indentation, line endings, etc.)
  - Set the `ruff` minimum python version to 3.11 to reflect the minimum supported version.
  - Converted optional dependencies into dependency groups in line with PEP 735, to improve the organization and clarity of the dependencies.
  - Removed `pre` dependency group as it is not different to the main dependencies and only used for `.readthedocs.yaml`.
  - Removed `bump2version` from the `dev` dependency group as it is not used in the project and abandoned.
- Updated `.readthedocs.yaml`
  - Removed the `pre` dependency group from the installation command as it is not different to the main dependencies and only used for `.readthedocs.yaml`.
  - Updated resolver to use `uv` instead of `pip` to install dependencies, as it is faster and works with dependency groups.
This commit adds the "docstring-convention" rule to the ruff configuration in pyproject.toml.
It enforces the use of a consistent numpydoc style for docstrings across the codebase, in line with the project's documentation standards.
This commit updates the test CI job to use dependency groups defined in the pyproject.toml file and bumps action versions.

Changes:
- Updated the test CI job to use dependency groups defined in pyproject.toml.
- Replace manual pip cache with the built-in caching mechanism of the setup-python action.
- Bumped action versions to the latest available.
@codecov-commenter
Copy link
Copy Markdown

codecov-commenter commented May 16, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 63.38%. Comparing base (a63ca08) to head (d529aeb).

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #400   +/-   ##
=======================================
  Coverage   63.38%   63.38%           
=======================================
  Files          26       26           
  Lines        3217     3217           
=======================================
  Hits         2039     2039           
  Misses       1178     1178           
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@Darlokt
Copy link
Copy Markdown
Author

Darlokt commented May 16, 2026

Fixed CI workflow. Updated it to work with dependency groups and replaced manual caching with actions/setup-python internal caching. Also bumped actions to newer versions.

@Zethson
Copy link
Copy Markdown
Member

Zethson commented May 16, 2026

Dear @Darlokt ,

this is great! The actual solution that we should aim for is #345 which includes many of the changes & improvements that you're suggesting here. SpatialData itself needs the same treatment.
Would you be interested in tackling it this way?

Let us know if this is unclear, please.

@Zethson Zethson mentioned this pull request May 16, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants