mirror of https://github.com/zulip/zulip.git
529da34513
Our previous OpenAPI schema validator that we implemented ourselves was useful training wheels for our understanding OpenAPI properly, and was mostly correct. But given that we've finally reached the point where our OpenAPI file accurately describes the API, it makes sense to switch to use an official OpenAPI validator. We lose some ability to do exclude rules for particular elements, but those were primarily important for us when we had a lot of them. As part of this change, we need to add `additionalProperties: false` for all of our dictonaries/objects where we've documented every parameter; otherwise the OpenAPI schema checker won't know that we expect every parameter to be documented. |
||
---|---|---|
.. | ||
README.md | ||
common.in | ||
dev.in | ||
dev.txt | ||
docs.in | ||
docs.txt | ||
mypy.in | ||
mypy.txt | ||
pip.in | ||
pip.txt | ||
pip2.in | ||
pip2.txt | ||
prod.in | ||
prod.txt | ||
thumbor-dev.in | ||
thumbor-dev.txt | ||
thumbor.in | ||
thumbor.txt |
README.md
The dependency graph of the requirements is as follows:
dev +-> prod +-> common
+
|
v
mypy,docs,pip
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 entry for ipython==5.4.1
in dev.txt.
- Run
./tools/update-locked-requirements
, which will generate new entries, pinned to the latest version. - Increase
PROVISION_VERSION
inversion.py
. - Run
./tools/provision
to install the new deps and test them. - Commit your changes.