zulip/requirements
Bennet Sunder 7c5f316cb8 alert_words: Performance improvements in looking for alert_words.
This commit leverages the ahocorasick algorithm to build a set of user_ids
that have their alert_words present in the message. It runs in linear time
of the order of length of the input message as opposed to number of
alert_words. This is after building a ahocorasick Automaton which runs
in O(number of alert_words in entire realm) which is usually cached.
2019-03-01 15:36:39 -08:00
..
README.md requirements: Improve README's format. 2018-05-26 06:26:14 -07:00
common.in alert_words: Performance improvements in looking for alert_words. 2019-03-01 15:36:39 -08:00
dev.in requirements: Upgrade pyflakes. 2019-02-01 07:26:13 -08:00
dev.txt alert_words: Performance improvements in looking for alert_words. 2019-03-01 15:36:39 -08:00
docs.in requirements: Upgrade Sphinx to 1.8.3. 2019-01-07 10:30:49 -08:00
docs.txt requirements: Upgrade argon2-cffi from 18.3.0 to 19.1.0. 2019-01-30 09:50:33 -08:00
mypy.in dependencies: Upgrade mypy to version 0.650. 2018-12-09 22:20:12 -08:00
mypy.txt dependencies: Upgrade mypy to version 0.650. 2018-12-09 22:20:12 -08:00
pip.txt requirements: Upgrade setuptools from 40.6.3 to 40.7.1. 2019-01-30 09:50:43 -08:00
prod.in requirements: Upgrade uWSGI to 2.0.17.1. 2018-07-31 11:13:22 -07:00
prod.txt alert_words: Performance improvements in looking for alert_words. 2019-03-01 15:36:39 -08:00
thumbor.in thumbor requirements: Upgrade virtualenv-clone from 0.4.0 to 0.5.1. 2019-01-30 09:50:43 -08:00
thumbor.txt thumbor requirements: Upgrade virtualenv-clone from 0.4.0 to 0.5.1. 2019-01-30 09:50:43 -08:00
unupgradable.json requirements: Fix JSON syntax in unupgradables.json. 2019-01-30 07:30:31 +00: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.

common and dev are locked.

Steps to update a lock file, e.g. to update ipython from 5.3.0 to 6.0.0 in common.in and propagate it to dev.txt and prod.txt: 0. Replace ipython==5.4.1 with ipython==6.0.0 in common.in.

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