zulip/requirements/README.md

33 lines
1.3 KiB
Markdown
Raw Normal View History

The dependency graph of the requirements is as follows:
```
py3_dev py3_prod py2_prod
+ + + + + + +
| | +->py3_common<-+ v v +>py2_common+----+
| | | + prod | + |
| | | v | v |
| | |py3_socialauth |py2_socialauth|
| v | | |
| >dev +--->common<------------+ |
| | + + |
| | v +-->emailmirror |
| |docs,moto,py3k,twisted |
| +-----------------------------------+py2_dev<+
v
mypy
```
Of the files, only py2_dev, py2_prod, py3_dev, py3_prod, and mypy have been
used in the install scripts directly. The rest are implicit dependencies.
py2_common and py3_common are locked.
Steps to update a lock file, e.g. to update ipython from 5.3.0 to 6.0.0 in
common.txt and propagate it py2_common_lock.txt and py3_common_lock:
0. Replace `ipython==5.4.1` with `ipython==6.0.0` in common.txt
1. Run './tools/update-locked-requirements'
The reason the steps to remove the `-e` is necessary is because `pip-compile`
doesn't support installing from vcs without `-e` yet.
You may track the ongoing progress here https://github.com/jazzband/pip-tools/issues/355.