Find a file
Tim Abbott d40328a311 api: Fix call_on_each_events handling of empty event_types.
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.
2018-04-25 23:01:37 -07:00
tools tools/deploy: Add command to receive logs for the specified bot. 2018-04-20 04:57:39 +05:30
zulip api: Fix call_on_each_events handling of empty event_types. 2018-04-25 23:01:37 -07:00
zulip_bots pypi: Release 0.4.5. 2018-04-23 18:50:56 -02:30
zulip_botserver pypi: Release 0.4.5. 2018-04-23 18:50:56 -02:30
.codecov.yml codecov: Adjust failure threshold. 2017-09-14 04:26:12 -07:00
.editorconfig Editing: Add .editorconfig from zulip/zulip (with note). 2017-12-18 07:36:40 -05:00
.gitignore tools/deploy: Add script to deploy bots on a remote bot server. 2018-03-09 06:49:19 -05:00
.travis.yml slack importer: Shift the slack data conversion files to zulip server repo. 2017-12-27 07:54:42 -05:00
mypy.ini mypy: Improve typing of bots & API; enforce no_implicit_optional. 2018-04-06 13:45:11 -04:00
py3_requirements.txt requirements: Upgrade to mypy 0.560 & adjust generics flag. 2017-12-21 18:43:42 -05:00
README.md docs: Mention Python 3 in the README. 2017-11-29 08:32:33 -08:00
requirements.txt requirements: Remove runtime dependency on mock. 2018-01-09 17:01:16 -03:30

Zulip API

Build status Coverage status

This repository contains the source code for Zulip's PyPI packages:

The source code is written in Python 3.

Development

  1. Fork and clone the Git repo: git clone https://github.com/<your_username>/python-zulip-api.git

  2. Make sure you have pip and virtualenv installed.

  3. cd into the repository cloned earlier: cd python-zulip-api

  4. 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>
    
  5. The above step, if successful, will tell you the command to "source" your virtual environment. Run that command!

  6. 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