Skip to content

Commit

Permalink
Freeze requirements data per python version
Browse files Browse the repository at this point in the history
Rather than using the same (default) python for all of the
requirements files in `requirements/*.in`, specify it more strictly
by making each supported python version map out to a set of
requirements files.

The mapping is that for any `requirements/foo.in`, we produce
`requirements/py{major}.{minor}/foo.txt` for all python versions we
support. `major.minor` aligns with the `{py_dot_ver}` available under
`tox`, making it trivially easy to then refer to these built
requirements from `tox.ini`.

There is one tweak to pin back the version of `pip` under py3.7 in
order to support an older pip-tools version.
  • Loading branch information
sirosen committed Aug 16, 2023
1 parent 073bf87 commit 6b556ec
Show file tree
Hide file tree
Showing 27 changed files with 1,182 additions and 27 deletions.
85 changes: 85 additions & 0 deletions requirements/py3.10/docs.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
#
# This file is autogenerated by pip-compile with Python 3.10
# by the following command:
#
# tox p -m freezedeps
#
alabaster==0.7.13
# via sphinx
babel==2.12.1
# via sphinx
beautifulsoup4==4.12.2
# via furo
certifi==2023.7.22
# via requests
charset-normalizer==3.2.0
# via requests
docutils==0.20.1
# via sphinx
furo==2023.7.26
# via -r docs.in
idna==3.4
# via requests
imagesize==1.4.1
# via sphinx
jinja2==3.1.2
# via sphinx
markupsafe==2.1.3
# via jinja2
packaging==23.1
# via sphinx
pygments==2.16.1
# via
# furo
# sphinx
pyyaml==6.0.1
# via responses
requests==2.31.0
# via
# responses
# sphinx
responses==0.23.3
# via -r docs.in
snowballstemmer==2.2.0
# via sphinx
soupsieve==2.4.1
# via beautifulsoup4
sphinx==7.1.2
# via
# -r docs.in
# furo
# sphinx-basic-ng
# sphinx-copybutton
# sphinx-design
# sphinx-issues
# sphinxcontrib-applehelp
# sphinxcontrib-devhelp
# sphinxcontrib-htmlhelp
# sphinxcontrib-qthelp
# sphinxcontrib-serializinghtml
sphinx-basic-ng==1.0.0b2
# via furo
sphinx-copybutton==0.5.2
# via -r docs.in
sphinx-design==0.5.0
# via -r docs.in
sphinx-issues==3.0.1
# via -r docs.in
sphinxcontrib-applehelp==1.0.7
# via sphinx
sphinxcontrib-devhelp==1.0.5
# via sphinx
sphinxcontrib-htmlhelp==2.0.4
# via sphinx
sphinxcontrib-jsmath==1.0.1
# via sphinx
sphinxcontrib-qthelp==1.0.6
# via sphinx
sphinxcontrib-serializinghtml==1.1.8
# via sphinx
types-pyyaml==6.0.12.11
# via responses
urllib3==2.0.4
# via
# requests
# responses
58 changes: 58 additions & 0 deletions requirements/py3.10/test-mindeps.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
#
# This file is autogenerated by pip-compile with Python 3.10
# by the following command:
#
# tox p -m freezedeps
#
certifi==2023.7.22
# via requests
cffi==1.15.1
# via cryptography
chardet==3.0.4
# via requests
coverage==7.3.0
# via -r test.in
cryptography==3.3.1
# via -r test-mindeps.in
exceptiongroup==1.1.3
# via pytest
execnet==2.0.2
# via pytest-xdist
idna==2.8
# via requests
iniconfig==2.0.0
# via pytest
packaging==23.1
# via pytest
pluggy==1.2.0
# via pytest
pycparser==2.21
# via cffi
pyjwt==2.0.0
# via -r test-mindeps.in
pytest==7.4.0
# via
# -r test.in
# pytest-xdist
pytest-xdist==3.3.1
# via -r test.in
pyyaml==6.0.1
# via responses
requests==2.22.0
# via
# -r test-mindeps.in
# responses
responses==0.23.1
# via -r test.in
six==1.16.0
# via cryptography
tomli==2.0.1
# via pytest
types-pyyaml==6.0.12.11
# via responses
typing-extensions==4.0.0
# via -r test-mindeps.in
urllib3==1.25.11
# via
# requests
# responses
44 changes: 44 additions & 0 deletions requirements/py3.10/test.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
#
# This file is autogenerated by pip-compile with Python 3.10
# by the following command:
#
# tox p -m freezedeps
#
certifi==2023.7.22
# via requests
charset-normalizer==3.2.0
# via requests
coverage==7.3.0
# via -r test.in
exceptiongroup==1.1.3
# via pytest
execnet==2.0.2
# via pytest-xdist
idna==3.4
# via requests
iniconfig==2.0.0
# via pytest
packaging==23.1
# via pytest
pluggy==1.2.0
# via pytest
pytest==7.4.0
# via
# -r test.in
# pytest-xdist
pytest-xdist==3.3.1
# via -r test.in
pyyaml==6.0.1
# via responses
requests==2.31.0
# via responses
responses==0.23.3
# via -r test.in
tomli==2.0.1
# via pytest
types-pyyaml==6.0.12.11
# via responses
urllib3==2.0.4
# via
# requests
# responses
45 changes: 45 additions & 0 deletions requirements/py3.10/typing-mindeps.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
#
# This file is autogenerated by pip-compile with Python 3.10
# by the following command:
#
# tox p -m freezedeps
#
certifi==2023.7.22
# via requests
charset-normalizer==3.2.0
# via requests
idna==3.4
# via requests
mypy==1.4.0
# via -r typing.in
mypy-extensions==1.0.0
# via mypy
pyyaml==6.0.1
# via responses
requests==2.31.0
# via responses
responses==0.23.3
# via -r typing.in
tomli==2.0.1
# via mypy
types-cryptography==3.3.23.2
# via types-jwt
types-docutils==0.20.0.3
# via -r typing.in
types-jwt==0.1.3
# via -r typing.in
types-pyyaml==6.0.12.11
# via responses
types-requests==2.31.0.2
# via -r typing.in
types-urllib3==1.26.25.14
# via types-requests
typing-extensions==4.0.0
# via
# -r typing-mindeps.in
# -r typing.in
# mypy
urllib3==2.0.4
# via
# requests
# responses
44 changes: 44 additions & 0 deletions requirements/py3.10/typing.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
#
# This file is autogenerated by pip-compile with Python 3.10
# by the following command:
#
# tox p -m freezedeps
#
certifi==2023.7.22
# via requests
charset-normalizer==3.2.0
# via requests
idna==3.4
# via requests
mypy==1.5.1
# via -r typing.in
mypy-extensions==1.0.0
# via mypy
pyyaml==6.0.1
# via responses
requests==2.31.0
# via responses
responses==0.23.3
# via -r typing.in
tomli==2.0.1
# via mypy
types-cryptography==3.3.23.2
# via types-jwt
types-docutils==0.20.0.3
# via -r typing.in
types-jwt==0.1.3
# via -r typing.in
types-pyyaml==6.0.12.11
# via responses
types-requests==2.31.0.2
# via -r typing.in
types-urllib3==1.26.25.14
# via types-requests
typing-extensions==4.7.1
# via
# -r typing.in
# mypy
urllib3==2.0.4
# via
# requests
# responses
12 changes: 6 additions & 6 deletions requirements/docs.txt → requirements/py3.11/docs.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
# This file is autogenerated by pip-compile with Python 3.11
# by the following command:
#
# tox run -e freezedeps
# tox p -m freezedeps
#
alabaster==0.7.13
# via sphinx
Expand Down Expand Up @@ -65,17 +65,17 @@ sphinx-design==0.5.0
# via -r docs.in
sphinx-issues==3.0.1
# via -r docs.in
sphinxcontrib-applehelp==1.0.6
sphinxcontrib-applehelp==1.0.7
# via sphinx
sphinxcontrib-devhelp==1.0.4
sphinxcontrib-devhelp==1.0.5
# via sphinx
sphinxcontrib-htmlhelp==2.0.3
sphinxcontrib-htmlhelp==2.0.4
# via sphinx
sphinxcontrib-jsmath==1.0.1
# via sphinx
sphinxcontrib-qthelp==1.0.5
sphinxcontrib-qthelp==1.0.6
# via sphinx
sphinxcontrib-serializinghtml==1.1.7
sphinxcontrib-serializinghtml==1.1.8
# via sphinx
types-pyyaml==6.0.12.11
# via responses
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,15 @@
# This file is autogenerated by pip-compile with Python 3.11
# by the following command:
#
# tox run -e freezedeps
# tox p -m freezedeps
#
certifi==2023.7.22
# via requests
cffi==1.15.1
# via cryptography
chardet==3.0.4
# via requests
coverage==7.2.7
coverage==7.3.0
# via -r test.in
cryptography==3.3.1
# via -r test-mindeps.in
Expand Down
4 changes: 2 additions & 2 deletions requirements/test.txt → requirements/py3.11/test.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,13 @@
# This file is autogenerated by pip-compile with Python 3.11
# by the following command:
#
# tox run -e freezedeps
# tox p -m freezedeps
#
certifi==2023.7.22
# via requests
charset-normalizer==3.2.0
# via requests
coverage==7.2.7
coverage==7.3.0
# via -r test.in
execnet==2.0.2
# via pytest-xdist
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
# This file is autogenerated by pip-compile with Python 3.11
# by the following command:
#
# tox run -e freezedeps
# tox p -m freezedeps
#
certifi==2023.7.22
# via requests
Expand All @@ -22,7 +22,7 @@ responses==0.23.3
# via -r typing.in
types-cryptography==3.3.23.2
# via types-jwt
types-docutils==0.20.0.1
types-docutils==0.20.0.3
# via -r typing.in
types-jwt==0.1.3
# via -r typing.in
Expand Down
6 changes: 3 additions & 3 deletions requirements/typing.txt → requirements/py3.11/typing.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,15 @@
# This file is autogenerated by pip-compile with Python 3.11
# by the following command:
#
# tox run -e freezedeps
# tox p -m freezedeps
#
certifi==2023.7.22
# via requests
charset-normalizer==3.2.0
# via requests
idna==3.4
# via requests
mypy==1.5.0
mypy==1.5.1
# via -r typing.in
mypy-extensions==1.0.0
# via mypy
Expand All @@ -22,7 +22,7 @@ responses==0.23.3
# via -r typing.in
types-cryptography==3.3.23.2
# via types-jwt
types-docutils==0.20.0.1
types-docutils==0.20.0.3
# via -r typing.in
types-jwt==0.1.3
# via -r typing.in
Expand Down
Loading

0 comments on commit 6b556ec

Please sign in to comment.