2017-05-12 02:30:38 +02:00
|
|
|
The dependency graph of the requirements is as follows:
|
|
|
|
|
|
|
|
```
|
2017-08-22 06:43:19 +02:00
|
|
|
dev prod
|
|
|
|
+ + +
|
|
|
|
| +->common<-+
|
2017-05-12 02:30:38 +02:00
|
|
|
v
|
2017-08-22 23:18:23 +02:00
|
|
|
mypy,docs
|
2017-05-12 02:30:38 +02:00
|
|
|
```
|
|
|
|
|
2017-08-22 23:18:23 +02:00
|
|
|
Of the files, only dev, prod, and mypy have been used in the install
|
2017-08-09 09:45:00 +02:00
|
|
|
scripts directly. The rest are implicit dependencies.
|
2017-05-12 02:30:38 +02:00
|
|
|
|
2017-08-22 06:33:16 +02:00
|
|
|
common and dev are locked.
|
2017-05-12 02:30:38 +02:00
|
|
|
|
|
|
|
Steps to update a lock file, e.g. to update ipython from 5.3.0 to 6.0.0 in
|
2017-08-22 06:33:16 +02:00
|
|
|
common.txt and propagate it to dev_lock.txt and prod_lock.txt:
|
2017-05-12 02:30:38 +02:00
|
|
|
0. Replace `ipython==5.4.1` with `ipython==6.0.0` in common.txt
|
|
|
|
1. Run './tools/update-locked-requirements'
|
2017-08-22 19:41:03 +02:00
|
|
|
2. Run `./tools/provision` to install the new deps and test them
|
|
|
|
3. Commit your changes.
|
2017-05-12 02:30:38 +02:00
|
|
|
|
|
|
|
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.
|