Introduce Nox for Local and CI Test Automation. Start Writing a Contributors Guide.
This MR introduces the test automation tool Nox to pystencils, and adapts its CI to use Nox. The Nox setup includes automatic detection of the CUDA version, as well as external dependencies for the documentation build.
Alongside this, a Contributors Guide section is added to the docs and populated with some basic instructions.
We use the pycodegen/nox:alpine
container for linting and type checking, and the nox:ubuntu24.04-cuda12.6
container for the testsuite and documentation build. At this time, these containers do not yet include an installation of waLBerla for testing the distributed data handling.
Also, type checking for the codegen
and jit
modules is enabled on the side.
Edited by Frederik Hennig