Find a file
Eeshan Garg 543eb396b9 zulip/README: Specify the required Python version.
We recently dropped support for Python versions less than 3.5.
Since the README is also used as the project description on our
PyPI homepage, we need to be more explicit about what version of
Python our bindings require.
2020-04-16 19:35:54 -07:00
tools Squash py3_requirements.txt into requirements.txt. 2020-04-03 08:18:08 -04:00
zulip zulip/README: Specify the required Python version. 2020-04-16 19:35:54 -07:00
zulip_bots pypi_packages: Use README files for long descriptions. 2020-04-16 19:35:54 -07:00
zulip_botserver pypi_packages: Use README files for long descriptions. 2020-04-16 19:35:54 -07: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 swp files (for vim). 2018-10-11 10:36:00 -04:00
.travis.yml Travis: Remove test-py2-legacy-support. 2020-04-03 08:18:08 -04:00
LICENSE docs: Add more proper LICENSE and THIRDPARTY files. 2020-03-22 16:52:19 -07:00
mypy.ini mypy: Improve typing of bots & API; enforce no_implicit_optional. 2018-04-06 13:45:11 -04:00
NOTICE docs: Add more proper LICENSE and THIRDPARTY files. 2020-03-22 16:52:19 -07:00
README.md docs: Add tools/test-lib to README. 2018-12-09 11:16:30 -08:00
requirements.txt Squash py3_requirements.txt into requirements.txt. 2020-04-03 08:18:08 -04:00
THIRDPARTY docs: Add more proper LICENSE and THIRDPARTY files. 2020-03-22 16:52:19 -07: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

This is part of the Zulip open source project; see the contributing guide and commit guidelines.

  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 end with printing the following command:

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

    You can 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-lib && ./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