zulip/requirements
Mateusz Mandera 65f7231dd3 docs: Refresh docs on updating python requirements.
Those docs were outdated and no longer represantative of how things
work. upgrade-python-dependencies and unupgradable.json are no longer a
thing, so the entire paragraph about them should be removed.
Then the requirements/README.md file is refreshed a bit to be more
accurate.
2020-03-18 12:14:31 -07:00
..
README.md docs: Refresh docs on updating python requirements. 2020-03-18 12:14:31 -07:00
common.in dependencies: Upgrade to Django 2.2.10. 2020-02-13 16:27:26 -08:00
dev.in tests: Replace httpretty with responses. 2020-01-22 11:56:15 -08:00
dev.txt requirements: Bump python-social-auth version. 2020-03-18 12:14:31 -07:00
docs.in docs: Upgrade recommonmark to 0.6.0, fixing issues. 2019-10-02 12:29:24 -07:00
docs.txt requirements: Upgrade all Python requirements. 2020-02-05 12:38:10 -08:00
mypy.in mypy: Upgrade from 0.730 to 0.740. 2019-11-13 12:38:45 -08:00
mypy.txt requirements: Upgrade all Python requirements. 2020-02-05 12:38:10 -08:00
pip.in requirements: Generate pip.txt from pip.in like the other *.txt files. 2019-09-23 13:23:58 -07:00
pip.txt requirements: Upgrade all Python requirements. 2020-02-05 12:38:10 -08:00
pip2.txt requirements: Upgrade all Python requirements. 2020-02-05 12:38:10 -08:00
prod.in requirements: Remove unnecessary version bounds from *.in. 2019-09-23 13:23:58 -07:00
prod.txt requirements: Bump python-social-auth version. 2020-03-18 12:14:31 -07:00
thumbor-dev.in requirements: Remove unnecessary version bounds from *.in. 2019-09-23 13:23:58 -07:00
thumbor-dev.txt requirements: Upgrade all Python requirements. 2020-02-05 12:38:10 -08:00
thumbor.in requirements: Remove unnecessary version bounds from *.in. 2019-09-23 13:23:58 -07:00
thumbor.txt requirements: Upgrade all Python requirements. 2020-02-05 12:38:10 -08:00

README.md

The dependency graph of the requirements is as follows:

dev         prod
+ +          +
| +->common<-+
v
mypy,docs

Of the files, only dev, prod, and mypy have been used in the install scripts directly. The rest are implicit dependencies.

Steps to update a lock file, e.g. to update ipython from 5.3.0 to latest version: 0. Remove entries for ipython==5.4.1 in dev.txt and prod.txt.

  1. Run ./tools/update-locked-requirements, which will generate new entries, pinned to the latest version.
  2. Increase PROVISION_VERSION in version.py.
  3. Run ./tools/provision to install the new deps and test them.
  4. Commit your changes.