Find a file
Tim Abbott 6d8ac7c3c0 api: Check for BAD_EVENT_QUEUE_ID code.
This is the best way to do this check, since it isn't subject to i18n
modifying the strings.  The server feature was originally introduced
in zulip/zulip commit 709c3b50fcba333740bb337bac69a801dbbdc4ee.

Since it's only 1 year old and the outcome is quite bad if this check
weren't present, we preserve support for older servers.
2018-08-02 15:59:52 -07:00
tools test-bots: Make bots_to_test a set, ensuring tests are not duplicated. 2018-06-28 14:55:23 -04:00
zulip api: Check for BAD_EVENT_QUEUE_ID code. 2018-08-02 15:59:52 -07:00
zulip_bots pypi: Release version 0.5.2. 2018-07-26 21:19:12 -02:30
zulip_botserver botserver: Add tests for reading config section by bot name. 2018-07-27 13:43:42 -04:00
.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 .gitignore: Add .pytest_cache folders. 2018-06-28 14:55:23 -04: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.600. 2018-05-15 10:03:57 -07:00
README.md Consistently use Botserver instead of botserver or bot server. 2018-05-29 10:58:37 +02:00
requirements.txt test-bots: Add option to use pytest for running tests. 2018-06-09 14:13:18 -04:00

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:

    python3 ./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

    python3 ./tools/provision -p <path_to_your_python_version>
    
  5. If that succeeds, it will print end with printing the following command:

    source /.../python-zulip-api/.../activate
    

    You can run run this command to enter the virtual environment. You'll want to run this in each new shell before running commands from python-zulip-api.

  6. Once you've entered the virtualenv, you should see something like this on the terminal:

    (zulip-api-py3-venv) user@pc ~/python-zulip-api $
    

    You should now be able to run any commands/tests/etc. in this virtual environment.

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