-
Notifications
You must be signed in to change notification settings - Fork 12
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #150 from googlefonts/requirements
Use python-version-specific requirements.txt instead of single generic requirements.txt
- Loading branch information
Showing
12 changed files
with
250 additions
and
29 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -6,3 +6,4 @@ build/ | |
dist/ | ||
.eggs/ | ||
src/picosvg/_version.py | ||
.tox/ |
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
# This file only declares the top-level development requirements. | ||
# Run `pip-compile-all.sh` to generate the concrete py3*-requirements.txt | ||
# files that are used to set up the tox and CI environments. | ||
|
||
black | ||
pytest | ||
# As of November 2020, pytype requires: Python <3.9, >=3.6 | ||
# https://pypi.org/project/pytype/2020.11.23 | ||
pytype; python_version < '3.9' |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
# Only list here top-level runtime dependencies. | ||
# Run `pip-compile-all.sh` to generate the concrete py3*-requirements.txt | ||
# files that are used to set up the tox and CI environments. | ||
dataclasses>=0.7; python_version < '3.7' | ||
lxml>=4.0 | ||
skia-pathops>=0.4.1 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,56 @@ | ||
#!/bin/bash | ||
# Runs pip-compile to freeze requirements.txt for all supported pythons | ||
# that are listed in the tox.ini default envlist. | ||
# It is recommended to run this every time any top-level requirements in either | ||
# install-requirements.in or dev-requirements.in are added, removed or changed. | ||
# The script must be run from the same directory where tox.ini file is located, | ||
# and it requires that all the supported python3.X binaries are installed | ||
# locally and available on $PATH. | ||
# It also requires that the venv module is present in all of them, in order to | ||
# create the temporary virtual environment where to install pip-compile. | ||
# On most python distributions venv is part of the standard library, however on | ||
# some Linux distros (e.g. Debian) it needs to be installed separately. | ||
|
||
set -e | ||
|
||
TMPDIR="$(mktemp -d)" | ||
|
||
function compile_requirements { | ||
local python_cmd=${1} | ||
echo "Updating ${python_cmd}-requirements.txt" | ||
|
||
"${python_cmd}" -m venv "${TMPDIR}/${python_cmd}-venv" | ||
|
||
local venv_bin="${TMPDIR}/${python_cmd}-venv/bin" | ||
local pip_cmd="${venv_bin}/pip" | ||
"${pip_cmd}" install -qq pip-tools | ||
|
||
local pip_compile_cmd="${venv_bin}/pip-compile" | ||
"${pip_compile_cmd}" -q --upgrade \ | ||
-o requirements/${python_cmd}-requirements.txt \ | ||
requirements/install-requirements.in \ | ||
requirements/dev-requirements.in | ||
} | ||
|
||
[ -f "tox.ini" ] || { echo "ERROR: tox.ini file not found" ; exit 1; } | ||
|
||
running=false | ||
# `tox -l` prints all the environments listed in the tox.ini's default 'envlist' | ||
for toxenv in $(tox -l); do | ||
if [[ $toxenv =~ py([0-9])([0-9]+) ]]; then | ||
version_major=${BASH_REMATCH[1]} | ||
version_minor=${BASH_REMATCH[2]} | ||
compile_requirements "python${version_major}.${version_minor}" & | ||
running=true | ||
fi | ||
done | ||
|
||
if $running; then | ||
sleep 0.5 | ||
echo "Please wait while all the requirements files are updated..." | ||
wait | ||
echo "Done!" | ||
fi | ||
|
||
# clean up after us before leaving | ||
rm -r "${TMPDIR}" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,34 @@ | ||
# | ||
# This file is autogenerated by pip-compile | ||
# To update, run: | ||
# | ||
# pip-compile --output-file=requirements/python3.6-requirements.txt requirements/dev-requirements.in requirements/install-requirements.in | ||
# | ||
appdirs==1.4.4 # via black | ||
attrs==20.3.0 # via pytest, pytype | ||
black==20.8b1 # via -r requirements/dev-requirements.in | ||
click==7.1.2 # via black | ||
dataclasses==0.8 ; python_version < "3.7" # via -r requirements/install-requirements.in, black | ||
decorator==4.4.2 # via networkx | ||
importlab==0.5.1 # via pytype | ||
importlib-metadata==3.1.0 # via pluggy, pytest | ||
iniconfig==1.1.1 # via pytest | ||
lxml==4.6.2 # via -r requirements/install-requirements.in | ||
mypy-extensions==0.4.3 # via black | ||
networkx==2.5 # via importlab | ||
ninja==1.10.0.post2 # via pytype | ||
packaging==20.7 # via pytest | ||
pathspec==0.8.1 # via black | ||
pluggy==0.13.1 # via pytest | ||
py==1.9.0 # via pytest | ||
pyparsing==2.4.7 # via packaging | ||
pytest==6.1.2 # via -r requirements/dev-requirements.in | ||
pytype==2020.11.23 ; python_version < "3.9" # via -r requirements/dev-requirements.in | ||
pyyaml==5.3.1 # via pytype | ||
regex==2020.11.13 # via black | ||
six==1.15.0 # via importlab, pytype | ||
skia-pathops==0.5.1.post1 # via -r requirements/install-requirements.in | ||
toml==0.10.2 # via black, pytest | ||
typed-ast==1.4.1 # via black, pytype | ||
typing-extensions==3.7.4.3 # via black | ||
zipp==3.4.0 # via importlib-metadata |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,33 @@ | ||
# | ||
# This file is autogenerated by pip-compile | ||
# To update, run: | ||
# | ||
# pip-compile --output-file=requirements/python3.7-requirements.txt requirements/dev-requirements.in requirements/install-requirements.in | ||
# | ||
appdirs==1.4.4 # via black | ||
attrs==20.3.0 # via pytest, pytype | ||
black==20.8b1 # via -r requirements/dev-requirements.in | ||
click==7.1.2 # via black | ||
decorator==4.4.2 # via networkx | ||
importlab==0.5.1 # via pytype | ||
importlib-metadata==3.1.0 # via pluggy, pytest | ||
iniconfig==1.1.1 # via pytest | ||
lxml==4.6.2 # via -r requirements/install-requirements.in | ||
mypy-extensions==0.4.3 # via black | ||
networkx==2.5 # via importlab | ||
ninja==1.10.0.post2 # via pytype | ||
packaging==20.7 # via pytest | ||
pathspec==0.8.1 # via black | ||
pluggy==0.13.1 # via pytest | ||
py==1.9.0 # via pytest | ||
pyparsing==2.4.7 # via packaging | ||
pytest==6.1.2 # via -r requirements/dev-requirements.in | ||
pytype==2020.11.23 ; python_version < "3.9" # via -r requirements/dev-requirements.in | ||
pyyaml==5.3.1 # via pytype | ||
regex==2020.11.13 # via black | ||
six==1.15.0 # via importlab, pytype | ||
skia-pathops==0.5.1.post1 # via -r requirements/install-requirements.in | ||
toml==0.10.2 # via black, pytest | ||
typed-ast==1.4.1 # via black, pytype | ||
typing-extensions==3.7.4.3 # via black | ||
zipp==3.4.0 # via importlib-metadata |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
# | ||
# This file is autogenerated by pip-compile | ||
# To update, run: | ||
# | ||
# pip-compile --output-file=requirements/python3.8-requirements.txt requirements/dev-requirements.in requirements/install-requirements.in | ||
# | ||
appdirs==1.4.4 # via black | ||
attrs==20.3.0 # via pytest, pytype | ||
black==20.8b1 # via -r requirements/dev-requirements.in | ||
click==7.1.2 # via black | ||
decorator==4.4.2 # via networkx | ||
importlab==0.5.1 # via pytype | ||
iniconfig==1.1.1 # via pytest | ||
lxml==4.6.2 # via -r requirements/install-requirements.in | ||
mypy-extensions==0.4.3 # via black | ||
networkx==2.5 # via importlab | ||
ninja==1.10.0.post2 # via pytype | ||
packaging==20.7 # via pytest | ||
pathspec==0.8.1 # via black | ||
pluggy==0.13.1 # via pytest | ||
py==1.9.0 # via pytest | ||
pyparsing==2.4.7 # via packaging | ||
pytest==6.1.2 # via -r requirements/dev-requirements.in | ||
pytype==2020.11.23 ; python_version < "3.9" # via -r requirements/dev-requirements.in | ||
pyyaml==5.3.1 # via pytype | ||
regex==2020.11.13 # via black | ||
six==1.15.0 # via importlab, pytype | ||
skia-pathops==0.5.1.post1 # via -r requirements/install-requirements.in | ||
toml==0.10.2 # via black, pytest | ||
typed-ast==1.4.1 # via black, pytype | ||
typing-extensions==3.7.4.3 # via black |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,24 @@ | ||
# | ||
# This file is autogenerated by pip-compile | ||
# To update, run: | ||
# | ||
# pip-compile --output-file=requirements/python3.9-requirements.txt requirements/dev-requirements.in requirements/install-requirements.in | ||
# | ||
appdirs==1.4.4 # via black | ||
attrs==20.3.0 # via pytest | ||
black==20.8b1 # via -r requirements/dev-requirements.in | ||
click==7.1.2 # via black | ||
iniconfig==1.1.1 # via pytest | ||
lxml==4.6.2 # via -r requirements/install-requirements.in | ||
mypy-extensions==0.4.3 # via black | ||
packaging==20.7 # via pytest | ||
pathspec==0.8.1 # via black | ||
pluggy==0.13.1 # via pytest | ||
py==1.9.0 # via pytest | ||
pyparsing==2.4.7 # via packaging | ||
pytest==6.1.2 # via -r requirements/dev-requirements.in | ||
regex==2020.11.13 # via black | ||
skia-pathops==0.5.1.post1 # via -r requirements/install-requirements.in | ||
toml==0.10.2 # via black, pytest | ||
typed-ast==1.4.1 # via black | ||
typing-extensions==3.7.4.3 # via black |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters