From e243d3cb782f1cad166be7b27ea38465352d0b05 Mon Sep 17 00:00:00 2001 From: Adam Janovsky Date: Mon, 4 Apr 2022 21:31:27 +0200 Subject: docs to new requirements --- CONTRIBUTING.md | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 9ce96222..d539f656 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -16,7 +16,14 @@ Our [Dockerfile](https://github.com/crocs-muni/sec-certs/blob/main/docker/Docker - Some imported libraries have non-trivial dependencies to resolve: - [pdftotext](https://github.com/jalan/pdftotext) requires [Poppler](https://poppler.freedesktop.org/) to be installed. We've experienced issues with older versions of Poppler (`0.x`), make sure to install `20.x` version of these libraries. - [graphviz](https://pypi.org/project/graphviz/) requires `graphviz` to be on the path -- + +### Requirements + +Requirements are maintained with [pip-tools](https://github.com/jazzband/pip-tools). The main ideas are: +- List actual dependencies in `.in` files inside [requirements](requirements) folder without pinning them. +- Those dependencies are loaded into [setup.py](setup.py) file. +- Additionally, [compile.sh](requirements/compile.sh) script is used to compile pinned versions of requirements that reside in `.txt` files in the same folder. +- Tests, linting and Docker all run against this reproducible environment of pinned requirements. ## Branches and releases -- cgit v1.3.1