Output Frozen Requirements in CI
Currently we generate documention without a full set of requirements. In recent changes we now have lists of requirements available in requirements files and these can be probed using pip freeze
I don't know the gi builder well enough to construct this change, but I image something like this:
requirements:
stage: test
script:
- source /root/pyenv-init
- pyenv shell 3.9.0
- tox -e py39-normal-linux
- pip freeze > full_requirements.txt
artifacts:
paths: full_requirements.txt
It could also be bundled into the sphinx documentation. The idea here is to provide windows, macOS and other packagers with a transparent list of python requirements. The freeze command above will pull in not just the labeled requirements, but also the full chain of dependancies, which can be important for many packagers who need to specify every included package. We could label both if we scripted this more, but just the flat list would be good documentation.
We've moved (are moving) to using requirements.txt, if you read this before the GUI branch is merged, it includes tox changes to use requirements.txt and looking for requirements.txt files in the other/* folders for the separated projects too. This is important for the extensions manager which has it's own python deps.