Project Dependencies#
Although this project contains pure Python code, it needs other dependencies to work correctly:
Python installation dependencies
Minimum dependencies that the program can run at all.
Testing dependencies
Dependencies used for testing.
Documentation Dependencies
For building the documentation.
System dependencies
These are explained in this topic.
All of the above points (except for the last one) are defined in the pyproject.toml
file.
Operating System#
The code is developed on openSUSE, but should work on any Linux distribution. The project will support MacOS too. It’s currently not planned to support Windows.
Note
If you use a different OS than Linux, dependency resolution may be challenging. Either the required package is not available for your OS or it is hard to get it right.
You may have a better experience developing in a virtual machine running openSUSE or using a Docker container.
Python#
The minimal Python version is defined in the pyproject.toml
file. It’s strongly recommended to have the Python versions managed by uv.
Editor#
You can use any editor you like. Rudimentary support is available for VSCode.
External tools#
daps: our tool to build documentation. This is an obligatory requirement. This adds other dependencies.
uv, the Python package manager. This is explained in Helper Tools.
make is used to build the documentation.
jing: for validation the XML configuration files.
gh: optional tool for interacting with GitHub, see GitHub CLI.
XML configuration#
Formerly known as the Docserv XML configs. These configuration files defines the products, their releases, their lifecycle status and more.
Clone the GL://susedoc/docserv-config or use the RNC schema from src/docbuild/config/xml/data/ to create this configuration.