Commit graph

1348 commits

Author SHA1 Message Date
derAnfaenger 174d11ec36 lister: Make excluding directories work on Windows. 2017-09-27 11:44:20 +02:00
derAnfaenger 9ddb5518f4 tools: Remove duplicate lister.py 2017-09-27 10:49:41 +02:00
derAnfaenger 5ecc26886a travis: Run mypy and linter in a single job. 2017-09-27 10:27:37 +02:00
neiljp (Neil Pilgrim) 85f2a9e03d bots: Add basic metadata with failover, used on running only. 2017-09-25 14:39:02 -07:00
Eeshan Garg 5681b6e9e2 zulip_bots: Remove get_bot_doc_path and get_bot_logo_path.
These functions were rendered redundant by changes in our
approach on how the main repo renders docs and logos contained
in the zulip_bots package (see #6103). So, these should now be
removed.
2017-09-16 17:10:12 -02:30
Tim Abbott baa09bc26c log2zulip: Clean up extra config path and add comments.
That extra complexity isn't particularly valuable.
2017-09-15 07:04:36 -07:00
derAnfaenger b53dc5de4c log2zulip: Make paths Windows compatible. 2017-09-15 07:04:36 -07:00
derAnfaenger 761d4f44c1 log2zulip: Use default argparser. 2017-09-15 07:04:36 -07:00
derAnfaenger 3af373adc3 travis: Add mypy checker. 2017-09-15 13:24:42 +02:00
derAnfaenger 123c49291a provision: Don't fail on mypy install for Python 2. 2017-09-15 13:24:35 +02:00
derAnfaenger 3fb640a5d0 zulip: Use canonical way to require an arg in subscribe. 2017-09-15 13:24:32 +02:00
derAnfaenger a06437c4ee zulip: Use canonical way to require an arg in unsubscribe. 2017-09-15 13:24:28 +02:00
derAnfaenger 0a49638e82 mypy: Add annotations to api_examples.py 2017-09-15 13:24:24 +02:00
derAnfaenger 035f0c3268 tools: Add mypy runner.
Unless otherwise specified, `tools/run-mypy` will right now only
check annotations in core files of the `zulip` package.
2017-09-15 13:24:20 +02:00
derAnfaenger 61de5578f2 mypy: Fix annotations in core zulip files. 2017-09-15 13:24:09 +02:00
derAnfaenger 59d65309c7 zulip: Exit with info after provisioning script. 2017-09-15 03:06:17 -07:00
derAnfaenger 091f532da6 zulip-api-examples: Check and print path to script. 2017-09-15 02:06:38 -07:00
derAnfaenger 6630deda6a twitter bots: Merge twitter-bot and twitter-search-bot. 2017-09-15 00:55:01 -07:00
derAnfaenger 623557d189 zulip: Install all example scripts in the package's dir. 2017-09-14 04:46:13 -07:00
derAnfaenger 2f044b44bd zulip: Move examples to zulip/examples. 2017-09-14 04:46:13 -07:00
derAnfaenger 2f62507987 api: Add script to print path of examples directory.
Partially fixes #92.
2017-09-14 04:46:13 -07:00
derAnfaenger ae4bf8bbf4 zulip: Store examples in the package's directory. 2017-09-14 04:46:13 -07:00
derAnfaenger 54eac5e125 codecov: Adjust failure threshold.
The previous threshold was taken over from the zulip repo,
which contains much more LOC. The new threshold reflects the
size of the `python-zulip-api` repo.
2017-09-14 04:26:12 -07:00
derAnfaenger 59320f6b28 zulip: Explain use cases for generate_option_group() method. 2017-09-14 11:39:11 +02:00
derAnfaenger 631c64ca6c zulip: Move from simplejson to json.
This removes the simplejson dependency.
2017-09-14 02:26:56 -07:00
derAnfaenger 18157095c4 zulip_bots: Add unittests for run.py.
These are tests that assert the correct argument
parsing; the successful execution of bots is not verified.
2017-09-13 00:25:16 -07:00
derAnfaenger 20f01fec85 provision: Put venv activation path in quotes.
This makes the command work with Windows paths with spaces in them.
2017-09-12 16:48:37 +02:00
derAnfaenger 6aece20925 provision: Indent venv activation command. 2017-09-12 16:47:22 +02:00
derAnfaenger 3e1d9b17a4 zulip_bots: Import imp.load_source for Python < 3.5. 2017-09-12 05:21:00 -07:00
derAnfaenger ea105ffec5 tools: Add git utility scripts. 2017-09-12 02:54:10 -07:00
derAnfaenger d05e932968 log2zulip: Replace ujson with json. 2017-09-12 02:14:51 -07:00
derAnfaenger 7d1a56fb2b zulip_bot_output.py: Refactor script output.
This involves using the format() method for string
concatenation and splitting it into logical blocks.
2017-09-12 02:11:30 -07:00
derAnfaenger 517fe79e68 zulip_bot_output.py: Remove redundant get_config_info() definition. 2017-09-12 02:11:30 -07:00
derAnfaenger 438dbac12a zulip_bot_output.py: Make --path-to-bot argument positional.
This allows a user to exclusively enter a bot's name or a bot's
directory as the first and only positional argument. Therefore,
no complicated checks for multiple bot specifications are required
anymore.
Additionally, this cleans help messages and makes arguments more
accessible.
2017-09-12 02:11:30 -07:00
derAnfaenger 3a89b9f966 zulip_bot_output.py: Clear import statements. 2017-09-12 02:11:30 -07:00
derAnfaenger 2aa6201d47 zulip_bot_output.py: Rename options to args. 2017-09-12 02:11:30 -07:00
derAnfaenger c5ab72a50a zulip_bots run.py: Make --path-to-bot argument positional.
This allows a user to exclusively enter a bot's name or a bot's
directory as the first and only positional argument. Therefore,
no complicated checks for multiple bot specifications are required
anymore.
2017-09-12 02:11:30 -07:00
derAnfaenger 06c0cb82fa zulip_bots run.py: Clean help messages. 2017-09-12 02:11:30 -07:00
derAnfaenger 0a588dad55 zulip_bots run.py: Rename options to args. 2017-09-12 02:11:30 -07:00
derAnfaenger c6e7ddfb03 zulip package: Make check for provision failsafe.
It is not guaranteed that the integration scripts in
the Zulip repository even specify a `provision` option.
Therefore, checking the value of this option would fail.
Updating this with getattr and a default value.
2017-09-12 11:08:58 +02:00
derAnfaenger cb770ffee9 irc-mirror.py: Allow optional provisioning.
To do so, we need to import all required internal modules after the
script had the option to provision. The provisioning itself is then
done by zulip.init_from_options().
2017-09-12 01:39:21 -07:00
derAnfaenger 61b609e6f2 irc integration: Make IRCBot a separate module.
This will allow us to import IRCBot at a later point
in the code, necessary for provsioning support.
2017-09-12 01:39:21 -07:00
derAnfaenger 9acd9d932c irc-mirror.py: Make zulip_client an argument of IRCBot.
This is the first step towards moving IRCBot to a
separate file.
2017-09-12 01:39:21 -07:00
derAnfaenger ec18cbff26 zulip package: Add provision option for scripts.
If enabled in a script, this option will try to install dependencies
in the requirements.txt in the script's directory.
2017-09-12 01:39:21 -07:00
derAnfaenger 50d8c5f7fe zulip package: Add requirements.txt for each integration. 2017-09-12 01:39:21 -07:00
derAnfaenger ef54ea2ea6 test scripts: Outsource common code of test-botserver and test-zulip. 2017-09-12 01:27:09 -07:00
derAnfaenger 2bfba17fbd README.md: Add command for running zulip tests. 2017-09-12 01:27:09 -07:00
derAnfaenger af9178c4ed test suites: Add zulip package tests to Travis and Codecov. 2017-09-12 01:27:09 -07:00
derAnfaenger b31cf2f9a9 zulip package: Add test runner script. 2017-09-12 01:27:09 -07:00
derAnfaenger fb2aff4611 zulip package: Add unittest
As the first unittest, this creates a test directory and
abnd adds it tho the excluded pip package files.

There are two `tests` directories now, one in zulip_botserver and one in
zulip. This confuses the unittest runner, leading to failed test imports.
Therefore, we need to tell the package importer that there are multiple
tests directories, all of which should be considered for a search.
2017-09-12 01:27:09 -07:00