d40328a311
The root issue here is that we had been using `None` as a way of encoding `event_types` as being an argument to not pass to the server in the API codebase, but the marshalling to send this over the wire didn't handle that possibility correctly. This was incorrectly "fixed" in 409bb587429ec4dcb1220a8ed85ec1618ffde0ed; the root cause of the issue was the refactor to the new approach for registering API endpoints. |
||
---|---|---|
tools | ||
zulip | ||
zulip_bots | ||
zulip_botserver | ||
.codecov.yml | ||
.editorconfig | ||
.gitignore | ||
.travis.yml | ||
mypy.ini | ||
py3_requirements.txt | ||
README.md | ||
requirements.txt |
Zulip API
This repository contains the source code for Zulip's PyPI packages:
zulip
: PyPI package for Zulip's API bindings.zulip_bots
: PyPI package for Zulip's bots and bots API.zulip_botserver
: PyPI package for Zulip's Flask bot server.
The source code is written in Python 3.
Development
-
Fork and clone the Git repo:
git clone https://github.com/<your_username>/python-zulip-api.git
-
Make sure you have pip and virtualenv installed.
-
cd
into the repository cloned earlier:cd python-zulip-api
-
Run:
./tools/provision
This sets up a virtual Python environment in
zulip-api-py<your_python_version>-venv
, where<your_python_version>
is your default version of Python. If you would like to specify a different Python version, run./tools/provision -p <path_to_your_python_version>
-
The above step, if successful, will tell you the command to "source" your virtual environment. Run that command!
-
You should now be able to run all the tests within this virtualenv.
Running tests
To run the tests for
-
zulip: run
./tools/test-zulip
-
zulip_bots: run
./tools/test-bots
-
zulip_botserver: run
./tools/test-botserver
To run the linter, type:
./tools/lint
To check the type annotations, run:
./tools/run-mypy