Skip to content

Maintenance

Philipp Niedermayer edited this page Dec 19, 2025 · 9 revisions

Dependencies

Dependencies are managed with pip-compile, and CI is set up to update them regularly. See .github/workflows/dependencies.yaml. It will open PRs once in a while to keep dependencies updated. The workflow can also manually be triggered from the GitHub actions page at https://github.com/xsuite/xplt/actions/workflows/dependencies.yaml

Add new dependencies

  • Add package dependencies in pyproject.toml (consider using optional-dependencies)
  • Add further dependencies for the example notebooks in requirements/examples.in (package dependencies are added by default)
  • Add further dependencies for testing in requirements/tests.in (package and example dependencies are added by default)
  • Add further dependencies for building the sphinx docs in requirements/sphinx.in (package and example dependencies are added by default)

Push it to the dev branch, this will trigger CI to update the generated *.txt files for you. Do not push changes to the generated *.txt files manually, they will be overwritten during the next CI run!

Add/update python versions

  • Add python version in .github/workflows/dependencies.yaml and push to a new branch
  • Run the workflow manually at https://github.com/xsuite/xplt/actions/workflows/dependencies.yaml against the new branch
  • This will generate requirements files for the new python version and open a PR
  • In that PR, add python version in .github/workflows/test.yaml and .github/workflows/dependencies.yaml, push and wait for CI to pass (or fix it)

Clone this wiki locally