Skip to content
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

[build] Pending enhancements to development infrastructure #1829

Open
15 tasks
egparedes opened this issue Jan 28, 2025 · 0 comments
Open
15 tasks

[build] Pending enhancements to development infrastructure #1829

egparedes opened this issue Jan 28, 2025 · 0 comments
Labels
infrastructure Issues concerning the development environment and build dependencies

Comments

@egparedes
Copy link
Contributor

egparedes commented Jan 28, 2025

Track possible enhancements to the development infrastructure after the #1813 PR bringing new tools (e.g. uv, nox) is merged.

  • Bump ruff to the newest version and tackle the format changes it brings
  • Update license header to remove the current year from the copyright
  • Add tests folder to pre-commit ruff hook
  • Add more linting rules to ruff config. Pointers:
  • Rename requires_ marks to uses_ or with_ (e.g. requires_dace -> uses_dace or with_dace, requires_gpu -> uses_gpu or with_gpu)
  • Rename package_pytestmarks to recursive_pytestmark
  • Bump tach version and try to get rid of the circular dependency issue by creating finer grain modules
  • Add versioning infrastructure relying on git tags as the source of truth for versions (e.g. versioningit)
  • Discuss use of .python-version file in the repo as main python version selector
  • Add macos system to the daily CI action
  • Evaluate dependencies-action GitHub action to avoid merging PRs depending on unmerged changes
  • Review the Dockerfiles used in CI and clean them up to leverage uv when possible. Some pointers:
  • Fix doc generation settings and add CI action to test it
  • Rediscuss the strategy to use for tests with optional dependencies like dace
    • use only importorskip()
    • use only custom marks
    • use both combined
    • other options
  • Rediscuss use of fail-fast: false on matrix tests. Pointers:
@egparedes egparedes added the infrastructure Issues concerning the development environment and build dependencies label Jan 28, 2025
egparedes added a commit that referenced this issue Jan 29, 2025
Modernize development infrastructure to use newer python tools. The `uv`
(https://docs.astral.sh/uv/) tool is used as project management tool,
`nox` (https://nox.thea.codes/) replaces `tox` as the project test
runner, custom scripts and `cog` snippets are replaced by a central
`dev-tasks.py` tool with multiple commands.

Additionally, documentation and CI workflows are updated accordingly and
some tests which were not properly executed properly are fixed.

Other related tasks to enhance the development infrastructure which
could be done after this PR is merged are being tracked in issue #1829
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
infrastructure Issues concerning the development environment and build dependencies
Projects
None yet
Development

No branches or pull requests

1 participant