mirror of
https://github.com/encode/django-rest-framework.git
synced 2024-11-13 05:06:53 +03:00
Merge pull request #2568 from tomchristie/requirements-refactor
Requirements refactor.
This commit is contained in:
commit
466bbbb308
|
@ -166,6 +166,16 @@ When a translator has finished translating their work needs to be downloaded fro
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
## Project requirements
|
||||||
|
|
||||||
|
All our test requirements are pinned to exact versions, in order to ensure that our test runs are reproducible. We maintain the requirements in the `requirements` directory. The requirements files are referenced from the `tox.ini` configuration file, ensuring we have a single source of truth for package versions used in testing.
|
||||||
|
|
||||||
|
You can check if there are any packages available at a newer version, by using the `pip-review` tool.
|
||||||
|
|
||||||
|
Package upgrades should generally be treated as isolated pull requests. Also note that the `pip-dump` command does not work gracefully with our requirements layout style, so any edits should be made manually.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
## Project ownership
|
## Project ownership
|
||||||
|
|
||||||
The PyPI package is owned by `@tomchristie`. As a backup `@j4mie` also has ownership of the package.
|
The PyPI package is owned by `@tomchristie`. As a backup `@j4mie` also has ownership of the package.
|
||||||
|
|
|
@ -1,21 +1,13 @@
|
||||||
# Minimum Django version
|
# The base set of requirements for REST framework is actually
|
||||||
Django>=1.4.11
|
# just Django, but for the purposes of development and testing
|
||||||
|
# there are a number of packages that it is useful to install.
|
||||||
|
|
||||||
# Test requirements
|
# Laying these out as seperate requirements files, allows us to
|
||||||
pytest-django==2.8.0
|
# only included the relevent sets when running tox, and ensures
|
||||||
pytest==2.6.4
|
# we are only ever declaring out dependancies in one place.
|
||||||
pytest-cov==1.6
|
|
||||||
flake8==2.2.2
|
|
||||||
|
|
||||||
# Optional packages
|
-r requirements/requirements-optionals.txt
|
||||||
markdown>=2.1.0
|
-r requirements/requirements-testing.txt
|
||||||
django-guardian==1.2.4
|
-r requirements/requirements-documentation.txt
|
||||||
django-filter>=0.9.2
|
-r requirements/requirements-codestyle.txt
|
||||||
|
-r requirements/requirements-packaging.txt
|
||||||
# wheel for PyPI installs
|
|
||||||
wheel==0.24.0
|
|
||||||
# twine for secured PyPI uploads
|
|
||||||
twine==1.4.0
|
|
||||||
|
|
||||||
# MkDocs for documentation previews/deploys
|
|
||||||
mkdocs==0.11.1
|
|
||||||
|
|
3
requirements/requirements-codestyle.txt
Normal file
3
requirements/requirements-codestyle.txt
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
# PEP8 code linting, which we run on all commits.
|
||||||
|
flake8==2.3.0
|
||||||
|
pep8==1.6.2
|
2
requirements/requirements-documentation.txt
Normal file
2
requirements/requirements-documentation.txt
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
# MkDocs to build our documentation.
|
||||||
|
mkdocs==0.11.1
|
4
requirements/requirements-optionals.txt
Normal file
4
requirements/requirements-optionals.txt
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
# Optional packages which may be used with REST framework.
|
||||||
|
markdown==2.5.2
|
||||||
|
django-guardian==1.2.5
|
||||||
|
django-filter==0.9.2
|
11
requirements/requirements-packaging.txt
Normal file
11
requirements/requirements-packaging.txt
Normal file
|
@ -0,0 +1,11 @@
|
||||||
|
# Wheel for PyPI installs.
|
||||||
|
wheel==0.24.0
|
||||||
|
|
||||||
|
# Twine for secured PyPI uploads.
|
||||||
|
twine==1.4.0
|
||||||
|
|
||||||
|
# Transifex client for managing translation resources.
|
||||||
|
transifex-client==0.10
|
||||||
|
|
||||||
|
# The pip-review tool for checking package upgrades.
|
||||||
|
pip-tools==0.3.5
|
3
requirements/requirements-testing.txt
Normal file
3
requirements/requirements-testing.txt
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
# PyTest for running the tests.
|
||||||
|
pytest==2.6.4
|
||||||
|
pytest-django==2.8.0
|
13
tox.ini
13
tox.ini
|
@ -15,18 +15,17 @@ deps =
|
||||||
django16: Django==1.6.3 # Should track minimum supported
|
django16: Django==1.6.3 # Should track minimum supported
|
||||||
django17: Django==1.7.2 # Should track maximum supported
|
django17: Django==1.7.2 # Should track maximum supported
|
||||||
django18alpha: https://www.djangoproject.com/download/1.8a1/tarball/
|
django18alpha: https://www.djangoproject.com/download/1.8a1/tarball/
|
||||||
django-guardian==1.2.4
|
-rrequirements/requirements-testing.txt
|
||||||
pytest-django==2.8.0
|
-rrequirements/requirements-optionals.txt
|
||||||
django-filter==0.9.2
|
|
||||||
markdown>=2.1.0
|
|
||||||
|
|
||||||
[testenv:py27-flake8]
|
[testenv:py27-flake8]
|
||||||
deps =
|
deps =
|
||||||
pytest==2.6.4
|
-rrequirements/requirements-testing.txt
|
||||||
flake8==2.2.2
|
-rrequirements/requirements-codestyle.txt
|
||||||
commands = ./runtests.py --lintonly
|
commands = ./runtests.py --lintonly
|
||||||
|
|
||||||
[testenv:py27-docs]
|
[testenv:py27-docs]
|
||||||
deps =
|
deps =
|
||||||
mkdocs>=0.11.1
|
-rrequirements/requirements-testing.txt
|
||||||
|
-rrequirements/requirements-documentation.txt
|
||||||
commands = mkdocs build
|
commands = mkdocs build
|
||||||
|
|
Loading…
Reference in New Issue
Block a user