Find a file
derAnfaenger 2736223073 bots: Make StateHandler store state on Zulip server.
This makes the StateHandler functional. To reduce the
number of server roundtrips when fetching/updating the
state, the entire state is fetched ocne at bot
initialization and cached. All changes are stored in the
cache and only saved externally after handle_message()
has been executed.

Fixes #141.
2017-11-18 08:58:47 -08:00
tools zulip_bots: Add common tests. 2017-11-14 09:39:00 -08:00
zulip zulip package: Add API functions to access state. 2017-11-18 08:58:47 -08:00
zulip_bots bots: Make StateHandler store state on Zulip server. 2017-11-18 08:58:47 -08:00
zulip_botserver bots: Make StateHandler store state on Zulip server. 2017-11-18 08:58:47 -08:00
.codecov.yml codecov: Adjust failure threshold. 2017-09-14 04:26:12 -07:00
.gitignore tools: Add mypy runner. 2017-09-15 13:24:20 +02:00
.travis.yml travis: Run mypy and linter in a single job. 2017-09-27 10:27:37 +02:00
py3_requirements.txt provision: Don't fail on mypy install for Python 2. 2017-09-15 13:24:35 +02:00
README.md README.md: Add command for running mypy. 2017-11-13 12:08:14 +01:00
requirements.txt packaging: Automate the package release process. 2017-10-05 12:01:37 -07:00

Zulip API

Build status Coverage status

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

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