zulip/requirements
Eeshan Garg 148bb4db09 requirements: Update requirements/ to install bots/API packages.
This is required, since we just reorganized the python-zulip-api
repository into 3 packages.

A nice side effect is that we get to eliminate some now-unnecessary
code for editing sys.path.
2017-07-18 00:10:30 -07:00
..
README.md Lock the recursive requirements in common.txt via pip-compile. 2017-07-05 23:47:07 -07:00
common.txt requirements: Update requirements/ to install bots/API packages. 2017-07-18 00:10:30 -07:00
dev.txt requirements: Use the python-zulip-api repo for API bindings. 2017-07-06 12:24:38 -07:00
docs.txt requirements: Upgrade Sphinx to 1.6.2. 2017-06-19 06:40:18 -04:00
emailmirror.txt Lock the recursive requirements in common.txt via pip-compile. 2017-07-05 23:47:07 -07:00
ipython.txt requirements: Upgrade pathlib2 to 2.3.0.. 2017-06-19 06:40:18 -04:00
moto.txt requirements: Upgrade moto to latest version. 2017-06-21 19:05:50 -04:00
mypy.txt mypy: Upgrade to latest version of mypy. 2017-05-23 10:42:44 -07:00
pip.txt Use requirements file for pip/setuptools/wheels in venv setup. 2017-06-19 16:37:50 -04:00
prod.txt requirements: Use the python-zulip-api repo for API bindings. 2017-07-06 12:24:38 -07:00
py2_common.txt requirements: Upgrade python-ldap to 2.4.39. 2017-06-19 06:40:18 -04:00
py2_common_lock.txt requirements: Update requirements/ to install bots/API packages. 2017-07-18 00:10:30 -07:00
py2_dev.txt Lock the recursive requirements in common.txt via pip-compile. 2017-07-05 23:47:07 -07:00
py2_prod.txt Lock the recursive requirements in common.txt via pip-compile. 2017-07-05 23:47:07 -07:00
py2_socialauth.txt requirements: Upgrade python-social-auth. 2017-06-15 14:44:38 -07:00
py3_common.txt requirements: Move common includes to py2/py3, not dev/prod. 2017-05-13 22:09:42 -07:00
py3_common_lock.txt requirements: Update requirements/ to install bots/API packages. 2017-07-18 00:10:30 -07:00
py3_dev.txt Lock the recursive requirements in common.txt via pip-compile. 2017-07-05 23:47:07 -07:00
py3_prod.txt Lock the recursive requirements in common.txt via pip-compile. 2017-07-05 23:47:07 -07:00
py3_socialauth.txt requirements: Upgrade python-social-auth. 2017-06-15 14:44:38 -07:00
py3k.txt requirements: Upgrade typing to 3.6.1. 2017-04-21 18:13:58 -07:00
scrapy.txt Lock the recursive requirements in common.txt via pip-compile. 2017-07-05 23:47:07 -07:00
twisted.txt requirements: Upgrade zope.interface to 4.4.2. 2017-06-19 06:40:18 -04:00

README.md

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.