aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorAdam Janovsky2022-04-04 21:31:27 +0200
committerAdam Janovsky2022-04-04 21:31:27 +0200
commite243d3cb782f1cad166be7b27ea38465352d0b05 (patch)
treebbeeccf0480f33cabb2e439b6d84734192fdaca1
parent0cedcd01c9e7db3f797be98914eec5a8393602e5 (diff)
downloadsec-certs-e243d3cb782f1cad166be7b27ea38465352d0b05.tar.gz
sec-certs-e243d3cb782f1cad166be7b27ea38465352d0b05.tar.zst
sec-certs-e243d3cb782f1cad166be7b27ea38465352d0b05.zip
docs to new requirements
-rw-r--r--CONTRIBUTING.md9
1 files changed, 8 insertions, 1 deletions
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