🚧 Under Construction
This project is currently under development. Please check back later for updates.
This is the repository for nightskycam_images
,
a python package for managing images captured by the camera-RaspberryPi systems of the nightskycam project.
These images are managed in a filesystem.
Its functions include:
- managing images (and related data) in a filesystem
- generating thumbnail images
- generating summary videos.
- Operating system: Linux or macOS
- Python 3.9+
Dependency management with pip
is easier to set up than with poetry
, but the optional dependency-groups are not installable with pip
.
- Create and activate a new Python virtual environment:
python3 -m venv --copies venv source venv/bin/activate
- Update
pip
and build package:pip install -U pip # optional but always advised pip install . # -e option for editable mode
Dependency management with poetry
is required for the installation of the optional dependency-groups.
-
Install poetry.
-
Install dependencies for package (also automatically creates project's virtual environment):
poetry install
-
Install
dev
dependency group:poetry install --with dev
-
Activate project's virtual environment:
poetry shell
-
Optional: Set up pre-commit git hook (automatic
isort
andblack
formatting):pre-commit install
The hook will now run automatically on
git commit
. It is not recommended, but the hook can be bypassed with the option--no-verify
.The hook can also be manually run with:
# Force checking all files (instead of only changed files). pre-commit run --all-files
To install test
dependency group:
poetry install --with test
To run the tests:
python -m pytest
To extract coverage data:
- Get code coverage by measuring how much of the code is executed when running the tests:
coverage run -m pytest
- View coverage results:
# Option 1: simple report in terminal. coverage report # Option 2: nicer HTML report. coverage html # Open resulting 'htmlcov/index.html' in browser.