zulip/requirements
Anders Kaseorg 43996106d8 requirements: Get transifex-client from apt.
In the past it has blocked Python library security updates with overly
strict version bounds, and we don’t use it as a library, only as a
binary.

Skip the PROVISION_VERSION bump because we can use the tx binary from
either location.

Signed-off-by: Anders Kaseorg <anders@zulipchat.com>
2020-03-26 21:39:04 -07:00
..
README.md docs: Refresh docs on updating python requirements. 2020-03-18 12:14:31 -07:00
common.in pypi: Upgrade Zulip's PyPI packages to version 0.6.4. 2020-03-26 17:17:33 -07:00
dev.in requirements: Get transifex-client from apt. 2020-03-26 21:39:04 -07:00
dev.txt requirements: Get transifex-client from apt. 2020-03-26 21:39:04 -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 pypi: Upgrade Zulip's PyPI packages to version 0.6.4. 2020-03-26 17:17:33 -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.