Contribute to the project#
Contributions and issues are most welcome! All issues and pull requests are handled through GitHub. Also, please check for any existing issues before filing a new one. If you have a great idea but it involves big changes, please file a ticket before making a pull request! We want to make sure you don’t spend your time coding something that might not fit the scope of the project.
Issue or Discussion?#
Github also offers discussions as a place to ask questions and share ideas. If your issue is open ended and it is not obvious when it can be “closed”, please raise it as a discussion instead.
Code Coverage#
While 100% code coverage does not make a library bug-free, it significantly reduces the number of easily caught bugs! Please make sure coverage remains the same or is improved by a pull request!
Developer Information#
It is recommended that developers use a vscode devcontainer. This repository contains configuration to set up a containerized development environment that suits its own needs.
Charts/podbench/values.schema.json is generated, never hand-edited: a
pre-commit hook regenerates it from values.yaml and example.values.yaml. That
hook is a shim around a helm plugin — the devcontainer image installs both it and
helm, and a checkout outside the devcontainer needs
helm plugin install https://github.com/losisin/helm-values-schema-json --version v2.5.0 before pre-commit run --all-files will pass — pinned to the hook’s
rev, because a different plugin version generates a different schema and the
disagreement lands in CI as a diff nobody wrote. Add a value by editing
values.yaml —
including the # @schema comment if it needs an enum or an item shape — and
letting the hook rewrite the JSON.
This project was created using the Diamond Light Source Copier Template for Python projects.
For more information on common tasks like setting up a developer environment, running the tests, and setting a pre-commit hook, see the template’s How-to guides.