This library can be installed via pip using pip install aveas_openlabel
or with poetry using poetry add aveas_openlabel
.
The documentation with minimal examples can be found here: understand-ai.github.io/aveas_openlabel/
This package uses Poetry, a tool for dependency management and packaging.
Please install it via the official installer from here.
In the root of the repository, you install all dependencies into a virtual environment using poetry install
.
This repository employs several tools to ensure a constant and good code quality.
Black is a code formatter that we use to assure consistent code style across our projects.
Use it in-between, or after your code changes, via poetry run black .
in the root directory of this repository.
Merge requests will only be merge-able if black has nothing to complain about.
Mypy is a static type checker for Python.
Is assures type safety throughout our code and is necessary to ensure that our AVEAS OpenLABEL format is consistent
with the base ASAM OpenLABEL format.
Mypy can be run with poetry run mypy .
in the root directory of this repository.
Merge requests will only be merge-able if MyPy has nothing to complain about.
Ruff is a Python linter and code formatter.
It can be run with poetry run ruff .
in the root directory of this repository.
Please write docstrings for the class itself and each of its class variables. For inspiration of what to write into the docstring, look at the description of the object or field in the official ASAM OpenLABEL spec (link). The docstrings allow the use of reStructuredText (link).
We are using pydoctor to automatically generate documentation from the docstrings in our code.
The documentation generation can be run using poetry run pydoctor
and is written in the directory documentation/
in the root of this repository.
If administrator privileges required for this operation under MS Windows and poetry is not installed for the administrator account, poetry can be run from Powershell via:
Start-Process poetry -ArgumentList "run pydoctor" -Verb runAs
The documentation is ignored from Git, as it is better to generate it by hand from the latest commit.