use pip-compile to pin dev requirements

This commit is contained in:
David Lord 2020-05-23 14:03:11 -07:00
parent 8e2fb4633e
commit eea31f29a5
No known key found for this signature in database
GPG Key ID: 7A1C87E3F5BC42A8
13 changed files with 137 additions and 29 deletions

View File

@ -1,11 +1,11 @@
repos:
- repo: https://github.com/asottile/pyupgrade
rev: v2.1.0
rev: v2.4.3
hooks:
- id: pyupgrade
args: ["--py36-plus"]
- repo: https://github.com/asottile/reorder_python_imports
rev: v2.1.0
rev: v2.3.0
hooks:
- id: reorder-python-imports
name: Reorder Python imports (src, tests)
@ -16,14 +16,14 @@ repos:
hooks:
- id: black
- repo: https://gitlab.com/pycqa/flake8
rev: 3.7.9
rev: 3.8.2
hooks:
- id: flake8
additional_dependencies:
- flake8-bugbear
- flake8-implicit-str-concat
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v2.5.0
rev: v3.1.0
hooks:
- id: check-byte-order-marker
- id: trailing-whitespace

View File

@ -1,8 +1,8 @@
version: 2
python:
install:
- requirements: requirements/docs.txt
- method: pip
path: .
- requirements: docs/requirements.txt
sphinx:
builder: dirhtml

View File

@ -97,9 +97,8 @@ First time setup
.. code-block:: text
$ pip install -e ".[dev]"
$ pip install -e . -r requirements/dev.txt
- Install the `pre-commit framework`_.
- Install the pre-commit hooks.
.. code-block:: text

View File

@ -2,6 +2,7 @@ include CHANGES.rst
include CONTRIBUTING.rst
include LICENSE.rst
include tox.ini
include requirements/*.txt
graft artwork
graft docs
prune docs/_build

View File

@ -1,5 +0,0 @@
Sphinx~=3.0.0
Pallets-Sphinx-Themes~=1.2.3
sphinxcontrib-log-cabinet~=1.0.1
sphinx-issues~=1.2.0
packaging~=20.3

5
requirements/dev.in Normal file
View File

@ -0,0 +1,5 @@
-r docs.in
-r tests.in
pip-tools
pre-commit
tox

59
requirements/dev.txt Normal file
View File

@ -0,0 +1,59 @@
#
# This file is autogenerated by pip-compile
# To update, run:
#
# pip-compile requirements/dev.in
#
alabaster==0.7.12 # via sphinx
appdirs==1.4.4 # via virtualenv
attrs==19.3.0 # via pytest
babel==2.8.0 # via sphinx
blinker==1.4 # via -r requirements/tests.in
certifi==2020.4.5.1 # via requests
cfgv==3.1.0 # via pre-commit
chardet==3.0.4 # via requests
click==7.1.2 # via pip-tools
distlib==0.3.0 # via virtualenv
docutils==0.16 # via sphinx
filelock==3.0.12 # via tox, virtualenv
greenlet==0.4.15 # via -r requirements/tests.in
identify==1.4.16 # via pre-commit
idna==2.9 # via requests
imagesize==1.2.0 # via sphinx
jinja2==2.11.2 # via sphinx
markupsafe==1.1.1 # via jinja2
more-itertools==8.3.0 # via pytest
nodeenv==1.3.5 # via pre-commit
packaging==20.4 # via -r requirements/docs.in, pallets-sphinx-themes, pytest, sphinx, tox
pallets-sphinx-themes==1.2.3 # via -r requirements/docs.in
pip-tools==5.1.2 # via -r requirements/dev.in
pluggy==0.13.1 # via pytest, tox
pre-commit==2.4.0 # via -r requirements/dev.in
py==1.8.1 # via pytest, tox
pygments==2.6.1 # via sphinx
pyparsing==2.4.7 # via packaging
pytest==5.4.2 # via -r requirements/tests.in
python-dotenv==0.13.0 # via -r requirements/tests.in
pytz==2020.1 # via babel
pyyaml==5.3.1 # via pre-commit
requests==2.23.0 # via sphinx
six==1.15.0 # via packaging, pip-tools, tox, virtualenv
snowballstemmer==2.0.0 # via sphinx
sphinx-issues==1.2.0 # via -r requirements/docs.in
sphinx==3.0.3 # via -r requirements/docs.in, pallets-sphinx-themes, sphinx-issues, sphinxcontrib-log-cabinet
sphinxcontrib-applehelp==1.0.2 # via sphinx
sphinxcontrib-devhelp==1.0.2 # via sphinx
sphinxcontrib-htmlhelp==1.0.3 # via sphinx
sphinxcontrib-jsmath==1.0.1 # via sphinx
sphinxcontrib-log-cabinet==1.0.1 # via -r requirements/docs.in
sphinxcontrib-qthelp==1.0.3 # via sphinx
sphinxcontrib-serializinghtml==1.1.4 # via sphinx
toml==0.10.1 # via pre-commit, tox
tox==3.15.1 # via -r requirements/dev.in
urllib3==1.25.9 # via requests
virtualenv==20.0.21 # via pre-commit, tox
wcwidth==0.1.9 # via pytest
# The following packages are considered to be unsafe in a requirements file:
# pip
# setuptools

5
requirements/docs.in Normal file
View File

@ -0,0 +1,5 @@
Pallets-Sphinx-Themes
packaging
Sphinx
sphinx-issues
sphinxcontrib-log-cabinet

36
requirements/docs.txt Normal file
View File

@ -0,0 +1,36 @@
#
# This file is autogenerated by pip-compile
# To update, run:
#
# pip-compile requirements/docs.in
#
alabaster==0.7.12 # via sphinx
babel==2.8.0 # via sphinx
certifi==2020.4.5.1 # via requests
chardet==3.0.4 # via requests
docutils==0.16 # via sphinx
idna==2.9 # via requests
imagesize==1.2.0 # via sphinx
jinja2==2.11.2 # via sphinx
markupsafe==1.1.1 # via jinja2
packaging==20.4 # via -r requirements/docs.in, pallets-sphinx-themes, sphinx
pallets-sphinx-themes==1.2.3 # via -r requirements/docs.in
pygments==2.6.1 # via sphinx
pyparsing==2.4.7 # via packaging
pytz==2020.1 # via babel
requests==2.23.0 # via sphinx
six==1.15.0 # via packaging
snowballstemmer==2.0.0 # via sphinx
sphinx-issues==1.2.0 # via -r requirements/docs.in
sphinx==3.0.3 # via -r requirements/docs.in, pallets-sphinx-themes, sphinx-issues, sphinxcontrib-log-cabinet
sphinxcontrib-applehelp==1.0.2 # via sphinx
sphinxcontrib-devhelp==1.0.2 # via sphinx
sphinxcontrib-htmlhelp==1.0.3 # via sphinx
sphinxcontrib-jsmath==1.0.1 # via sphinx
sphinxcontrib-log-cabinet==1.0.1 # via -r requirements/docs.in
sphinxcontrib-qthelp==1.0.3 # via sphinx
sphinxcontrib-serializinghtml==1.1.4 # via sphinx
urllib3==1.25.9 # via requests
# The following packages are considered to be unsafe in a requirements file:
# setuptools

4
requirements/tests.in Normal file
View File

@ -0,0 +1,4 @@
pytest
blinker
greenlet
python-dotenv

18
requirements/tests.txt Normal file
View File

@ -0,0 +1,18 @@
#
# This file is autogenerated by pip-compile
# To update, run:
#
# pip-compile requirements/tests.in
#
attrs==19.3.0 # via pytest
blinker==1.4 # via -r requirements/tests.in
greenlet==0.4.15 # via -r requirements/tests.in
more-itertools==8.3.0 # via pytest
packaging==20.4 # via pytest
pluggy==0.13.1 # via pytest
py==1.8.1 # via pytest
pyparsing==2.4.7 # via packaging
pytest==5.4.2 # via -r requirements/tests.in
python-dotenv==0.13.0 # via -r requirements/tests.in
six==1.15.0 # via packaging
wcwidth==0.1.9 # via pytest

View File

@ -15,16 +15,5 @@ setup(
"itsdangerous>=0.24",
"click>=5.1",
],
extras_require={
"dotenv": ["python-dotenv"],
"dev": [
"pytest",
"coverage",
"tox",
"sphinx",
"pallets-sphinx-themes",
"sphinxcontrib-log-cabinet",
"sphinx-issues",
],
},
extras_require={"dotenv": ["python-dotenv"]},
)

View File

@ -8,10 +8,7 @@ skip_missing_interpreters = true
[testenv]
deps =
pytest
greenlet
blinker
python-dotenv
-r requirements/tests.txt
lowest: Werkzeug==0.15.5
lowest: Jinja2==2.10
@ -36,5 +33,5 @@ skip_install = true
commands = pre-commit run --all-files --show-diff-on-failure
[testenv:docs]
deps = -r docs/requirements.txt
deps = -r requirements/docs.txt
commands = sphinx-build -W -b html -d {envtmpdir}/doctrees docs {envtmpdir}/html