RAIMAD Astronomical Instrument MAsk Designer
Read the documentation at RAIDOC.
Browse RAIMAD packages at RAIDEX.
PyPI page: https://pypi.org/project/raimad/
We use Ruff, MyPy, unit tests, and coverage.py to ensure code quality.
-
Unit tests can be run with
python -m unittest
from the root of this repo. Unit tests MUST PASS in all supported python versions. -
Running
mypy --strict src/raimad
from the root of this repo with the latest supported version of Python must report no problems. mypy problems detected under older versions of Python can be ignored.- Only
src/raimad
files need to pass mypy checks. Tests and benchmarks are exempt.
- Only
-
Running
ruff check
should return no errors. We're not there yet, there are still some files with incorrectly formatted / missing docstrings. -
coverage.py can be a good tool for estimating how much of the codebase is covered by unit tests. We are aiming for 100% coverage, but it is not yet a requirement.
RAIMAD is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 3 of the License only.
RAIMAD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with RAIMAD. If not, see https://www.gnu.org/licenses/.
Copyright (c) 2024, maybetree.