Commit Graph

673 Commits

Author SHA1 Message Date
Joy Chen 77938f6247 mypy: Annotate *bots/githook-post-receive* 2016-12-03 15:58:22 -06:00
Joy Chen 97a9fea89d delete check_output backport: Python 2.6 no longer supported 2016-12-03 15:57:20 -06:00
nikolay abc2ff4a06 pep8: Fix many rule E128 violations.
[Tweaked by tabbott to adjust some approaches used in wrapping]
2016-12-03 13:33:31 -08:00
bulat22101 a6f91064a2 pep8: Fix E129 violations 2016-12-03 10:56:36 -08:00
bulat22101 adebc75740 pep8: Fix E502 violations 2016-12-03 10:56:36 -08:00
Juan Verhook 1923045ca6 Annotate api/zulip/__init__.py.
Note that we still can't run mypy against this file and other files,
because of how the interface is dynamically created via _register.  We
will need to change that or use a stub file to make it possible to
annotate this.

This was tweaked by tabbott to fix some bugs.
2016-12-02 18:26:47 -08:00
Sidhant Bhavnani 8c0c12c1d9 pep8: Fix E303 violations. 2016-12-02 15:34:11 -08:00
AZtheAsian 7e14fe65ab pep8: fix E202 violations 2016-12-01 23:06:02 -08:00
AZtheAsian c23f9e0df7 pep8: Fix E111 violations 2016-12-01 14:18:11 -08:00
Rafid Aslam c5316b4002 lint: Fix E127 pep8 violations.
Fix pep8: E127 continuation line over-indented for visual indent
style issue.
2016-12-01 10:23:55 -08:00
Rafid Aslam 41bd88d5ed pep8: Fix E301 pep8 violations.
Fix "E301: expected (1 or 2) blank line" pep8 violations.
2016-11-29 08:51:44 -08:00
Rafid Aslam 7a2282986a pep8: Fix E225 pep8 violations. 2016-11-28 15:21:15 -08:00
Tim Abbott 6b42b12768 twitter-search-bot: Line-wrap very long lines. 2016-11-26 21:24:05 -08:00
Tomasz Kolek b7dfcadf33 Document ZULIP SITE param in twitter bots. 2016-11-26 19:30:45 -08:00
Tomasz Kolek 6d36eb00b6 integrations: Change default ZULIP_SITE to https://zulip.example.com.
Modified:
    asana
    basecamp
    codebase
    git
    jira
    svn
    trac
2016-11-26 19:30:32 -08:00
Tomasz Kolek 2c252de311 Add documentation for changing SITE param in perforce configuration. 2016-11-26 19:24:24 -08:00
Anders Kaseorg 573ec14955 Remove shebang line from non-scripts
Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2016-11-26 13:20:22 -08:00
Anders Kaseorg d1dc2cf30e Mark scripts executable
Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2016-11-26 13:20:22 -08:00
bungeye 87c62a6937 Update twitter-bot to use latest python-twitter API. 2016-11-17 11:17:58 -08:00
Tim Abbott 57e7b741b6 rss-bot: Fix incorrect use of zulip.generate_option_group.
The fields set by the automatic option group all have `zulip_` at the
start of their names.
2016-11-14 22:48:28 -08:00
paxapy 6d93b3b60c lint: Fix E703 pep8 violations. 2016-11-09 15:18:35 -08:00
umkay c43a15ed18 api: Add default protocol for localhost.
Add default "http://" to site argument locally if it is not specified
in an api call.

This fixes a problem where if you didn't manually specify `http://`
when connecting to a development server, the API bindings would hang
trying to connect using HTTPS.
2016-11-03 18:09:26 -07:00
reyha 68f2c66b12 API bindings: Raise error if site param not defined.
Stops defaulting the site parameter to the now-nonexistent
https://zulip.com, and ask the user to enter the site via --site or
~/.zuliprc if not provided.

Fixes #2039.
2016-10-25 18:08:46 -07:00
Tim Abbott 497d1c1f4e twitter bots: Update to use current python-twitter.
It appears that twitter has changed several of its APIs.
2016-10-17 23:21:39 -07:00
Tim Abbott 4a4664d268 mypy: Remove a bunch of now-unnecessary type: ignore annotations.
Since mypy and typeshed have advanced a lot over the last several
months, we no longer need these `type: ignore` annotations.
2016-10-17 11:48:34 -07:00
Tim Abbott 400e3b7dba Annotate API scripts. 2016-10-15 22:36:10 -07:00
Tim Abbott 97a2e53992 post-receive: Revert buggy Python 3 import changes.
This reverts commit 0af154a301.
2016-09-27 21:18:29 -07:00
Tim Abbott 95fbd5ba31 Update zulip.com/integrations link to point to zulipchat.com.
zulip.com will stop running at some point in the near future, and we
don't want these links to break.
2016-08-22 17:26:41 -07:00
Tim Abbott 0219aba2b2 api: Annotate setup.py and fix import. 2016-08-04 15:57:03 -07:00
Alex Dehnert b0f037eb82 Add support for client certs to the Python API.
This adds support for passing a client cert (in the format expected by the
`requests` library) to the `Client` constructor, as well as for specifying
one on the command line or in .zuliprc (through new `client_cert` and
`client_cert_key` options).
2016-07-19 14:40:26 -07:00
Taranjeet a137bf15ed Wrap some lines with length greater than 120.
With some tweaks by tabbott.
2016-07-06 14:35:16 -07:00
Eklavya Sharma a9fa78fc4a api/zulip/__init__.py: Make compatible with newer mypy. 2016-06-27 21:00:09 +05:30
Nathan Florea 85c0da67a4 Changed make_request lambda to more readable function. 2016-06-03 09:17:04 -07:00
Nathan Florea 2e4283f60a api: Remove some mutable default arguments.
This could be more succinct with a conditional expression, but this is
easier to read.
2016-06-03 09:16:52 -07:00
Eklavya Sharma 94e4b39112 Replace python2.7 by python everywhere. 2016-05-29 05:03:08 -07:00
Eklavya Sharma 149938d468 Change shebangs from python2.7 to python. 2016-05-29 05:03:08 -07:00
Eklavya Sharma 66bb6394e5 Make api/zulip/__init__.py pass mypy check. 2016-05-18 17:10:17 +05:30
Tim Abbott 54022ac204 Fix unnecessary whitespace between , and ). 2016-05-04 14:16:53 -07:00
David Payne ece96ef3fe Jira's "issue created" message should @-notify the assignee. 2016-04-20 10:54:30 -07:00
Tim Abbott a1b306f9ce Finish purging 'fromt typing import *' from Zulip codebase. 2016-04-07 14:11:21 -07:00
Eklavya Sharma 0af154a301 Apply Python 3 futurize transform libfuturize.fixes.fix_absolute_import. 2016-04-05 13:22:51 -07:00
Tim Abbott 2c1377319f Add type: ignore for mypy __cmp__ bug. 2016-04-03 15:40:24 -07:00
Tim Abbott 5d5976e4ae Add PEP-484 type annotations to api/.
It's not clear this is net constructive since it makes our API
bindings harder to install.
2016-04-03 15:40:23 -07:00
Tim Abbott 8c0b110e9a Add python-typing dependency. 2016-03-30 21:50:25 -07:00
Ashish 2050f5c7fa Add API example for fetching historical messages.
Fixes: #269.
2016-03-29 19:04:43 -07:00
Eklavya Sharma 9e3c3e14f5 Partially apply Python 3 libmodernize.fixes.fix_dict_six.
Refer to #256
2016-03-19 15:52:58 -07:00
Eklavya Sharma 7b8cb105bf Apply Python 3 futurize transform libmodernize.fixes.fix_imports_six
Refer to #256
2016-03-10 22:03:30 -08:00
Eklavya Sharma e83a2c8cc2 Apply Python 3 futurize transform libmodernize.fixes.fix_basestring
Refer to #256
2016-03-10 22:02:27 -08:00
Eklavya Sharma c59185e119 Apply Python 3 futurize transform libfuturize.fixes.fix_print_with_import
Refer #256
2016-03-10 22:02:17 -08:00
Eklavya Sharma e2d5ec1868 Apply Python 3 futurize transform lib2to3.fixes.fix_ws_comma 2016-03-10 22:02:04 -08:00
Eklavya Sharma 4fb549abe8 Apply Python 3 futurize transform lib2to3.fixes.fix_idioms
Refer to #256
2016-03-10 22:02:01 -08:00
Eklavya Sharma ab7287474e Apply Python 3 futurize transform lib2to3.fixes.fix_has_key
Refer to #256
2016-03-10 22:01:55 -08:00
Eklavya Sharma f3d387e727 Apply Python 3 futurize transform lib2to3.fixes.fix_except 2016-03-10 22:01:50 -08:00
Tim Abbott 5bacda3662 python3: Fix usage of .keys()/.values() to handle iterators.
This fixes the places where we use the result of .keys(), .items(),
and .values() that wouldn't work with an iterator to wrap them with
list().
2016-01-26 21:11:25 -08:00
Tim Abbott 1f44417fc1 Switch to using Python 3 style division everywhere.
Also add testing for this to our Python 3 compatibility test suite.
2016-01-26 21:09:43 -08:00
Tim Abbott 6528b18ad3 Switch all urllib/urlparse usage to six.moves.urllib.
This provides Python 2+3 compatibility for our use of urllib.

Also add a test to avoid future regressions.
2016-01-26 21:09:43 -08:00
Tim Abbott 52f9574047 Fix missing python-six dependency for Zulip API. 2016-01-26 21:09:42 -08:00
Tim Abbott 700055c194 Apply modernize transform libmodernize.fixes.fix_file.
This replaces use of file() with open() which is python 3 compatible,
and also adds it to our python 3 support test suite.
2016-01-26 21:09:42 -08:00
Tim Abbott 529d7a2877 Release API version 0.2.5. 2016-01-23 11:38:47 -08:00
Tim Abbott 515249ce0a trac: Cleanup documentation of TRAC_NOTIFY_FIELDS. 2016-01-09 20:21:39 -08:00
Tim Abbott a79e89b28f Cleanup remaining usage of % comprehensions without explicit tuples. 2015-12-05 15:29:42 -08:00
Tim Abbott f6f8f1fe36 Use new-style classes consistently for Python 3 support.
Also add the fixer for this to our list of fixers we check.
2015-11-04 08:01:52 -08:00
Tim Abbott 33295180a9 Apply Python 3 futurize transform libmodernize.fixes.fix_unicode_type. 2015-11-01 09:35:06 -08:00
Tim Abbott 607eedfc25 Apply Python 3 futurize transform libmodernize.fixes.fix_zip. 2015-11-01 09:35:06 -08:00
Tim Abbott f7878a61e1 Apply Python 3 futurize transform libmodernize.fixes.fix_xrange_six. 2015-11-01 09:35:06 -08:00
Tim Abbott 3b185ad4de Apply Python 3 futurize transform libmodernize.fixes.fix_input_six. 2015-11-01 09:26:17 -08:00
Tim Abbott 2ea0663a4a Apply Python 3 futurize transform libmodernize.fixes.fix_imports_six. 2015-11-01 09:26:16 -08:00
Tim Abbott 651b011514 Apply Python 3 futurize transform libmodernize.fixes.fix_basestring. 2015-11-01 09:26:16 -08:00
Tim Abbott f3783fb4a1 Apply Python 3 futurize transform libfuturize.fixes.fix_print_with_import. 2015-11-01 09:26:16 -08:00
Tim Abbott f97649b35c Apply Python 3 futurize transform libfuturize.fixes.fix_next_call. 2015-11-01 09:26:16 -08:00
Tim Abbott 43abd83d1c Apply Python 3 futurize transform lib2to3.fixes.fix_ws_comma. 2015-11-01 09:26:14 -08:00
Tim Abbott 2b61c0203d Apply Python 3 futurize transform lib2to3.fixes.fix_repr. 2015-11-01 09:25:49 -08:00
Tim Abbott 2398a370e2 Apply Python 3 futurize transform lib2to3.fixes.fix_ne. 2015-11-01 09:25:49 -08:00
Tim Abbott 06f6ee6566 Apply Python 3 futurize transform lib2to3.fixes.fix_idioms. 2015-11-01 09:25:47 -08:00
Tim Abbott e9243d0f0b Apply Python 3 futurize transform lib2to3.fixes.fix_has_key. 2015-11-01 08:10:01 -08:00
Tim Abbott 5ce6a3c8f9 Apply Python 3 futurize transform lib2to3.fixes.fix_funcattrs. 2015-11-01 08:09:54 -08:00
Shane Kearns 6e3426fe10 python api: allow control over the server certificate verification
The --insecure option ("insecure=true" in .zuliprc) disables
verification entirely, similar to other tools like curl.

The --cert_bundle ("cert_bundle=<file>" in .zuliprc) allows
a file to be specified containing the CA certificates to verify
against.
When using self-signed certificates, the server's public key
can be used as the only cerificate in the file.

This change incidentally fixes an issue where the "site" parameter
in .zuliprc was ignored when specifying --user and --api-key on
the command line.

Fixes: #104
2015-10-31 21:20:34 -07:00
Bernhard Morgenstern dd2ccff22b Fix indentation for Trac ticket description changes.
Before this fix, the "to" was included in the markdown blocks.
2015-10-22 15:02:35 -07:00
Steven Oud d5435fad1d Consistently use /usr/bin/env python2.7 in shebangs and commands. 2015-10-21 22:58:21 +00:00
Waseem Daher 6bb9b129f7 Update Zulip support email to zulip-devel@googlegroups.com.
Ideally some of these templates should really point to the
local installation's support email address, but this is a
good start.

Exceptions:
* Where to report security incidents
* MIT Zephyr-related pages
* zulip.com terms and conditions
2015-09-29 17:59:47 -07:00
Tim Abbott 3caa743951 rss: Support feeds that don't provide any sort of timestamp.
(imported from commit 9acc9dad7543a0e0a6bc2e71360b7017c3c7c63d)
2015-09-25 03:57:51 -07:00
Tim Abbott b3dfacae19 Change API example usernames to use example.com domain.
(imported from commit 41b7be58735df0ea3d3a3daf23bc0f78606abc0d)
2015-09-19 18:12:02 -07:00
Tim Abbott eca3c3bfaa Add api/examples/print-events.
(imported from commit 8c0e3f7809f06e4aff3bd8c0640479819853c418)
2015-09-19 18:05:21 -07:00
Tim Abbott 16e0f21687 Fix a bunch of Zulip Voyager related comments.
(imported from commit 176e875cbc310ba00d6137930ddb718bd68f1866)
2015-08-21 10:40:54 -07:00
David Roe e3f38acbce Enterprise => Voyager.
(imported from commit 41b9a67301aeaf5fd40bbbb8f34a326ca98431fd)
2015-08-21 10:33:35 -07:00
David Roe f79adf830f deployed => production
(imported from commit 2d7b0a7a73b0c84b32634a88af1e0d666139d4ff)
2015-08-21 10:33:35 -07:00
Jonathan Dahan 6f77e68622 Add GET /export endpoint, which dumps important tables in json.
Meant to be used in tandem with the manage.py import command.
The following sensitive data is scrubbed:

  * user api keys
  * user password hashes
  * stream email keys
  * invite-only streams
  * messages from invite-only streams
  * messages from users from other domains

(imported from commit 8e58dcdcb80ef1c7127d3ab15accf40c6187633f)
2015-08-19 15:31:08 -07:00
Zev Benjamin 4e1d86f775 Handle platform.system() throwing an IOError
This can happen if the calling process is handling SIGCHLD.  See
http://bugs.python.org/issue9127

We ran into this in the zephyr_mirror.

(imported from commit 80fade2274714b7c2c4b9fe38c66a1db8cc63234)
2014-05-20 17:29:29 -07:00
Jason Michalski 672603d6cd Add missing logger
(imported from commit e27d78f04fb8cb60b0cbdf4a544a047265abf9d5)
2014-04-28 19:51:04 -04:00
Zev Benjamin 1e7994d97d api: Add an option to backoff classes for making the passage of time count as a success
The idea here is that for usages like in the zephyr mirror bot:

  backoff = RandomExponentialBackoff()
  while backoff.keep_going():
      print "Starting zephyr mirroring bot"
      try:
          subprocess.call(args)
      except:
          traceback.print_exc()
      backoff.fail()

we want it to be the case that the mirror bot running for a while counts as a
success so that the bot doesn't have a finite number of crashes over its entire
lifetime.  We only want the mirror bot to stop retrying if it fails too many
times in a row.

(imported from commit 7b10704d3ce9a5ffb3472cbb4dfa168c9c05ae7a)
2014-04-23 11:31:04 -07:00
Zev Benjamin 7ed182c08f Move backoff classes to the Zulip API
(imported from commit 76c5d499874f0397c505ab3fcda631a1a46847b6)
2014-04-23 11:31:03 -07:00
Jessica McKellar fa1333c026 integrations: make Codebase dependency on python-dateutil explicit.
requests is already required generally by the API bindings.

(imported from commit 216c7031def710aac415cca755dbe2454514decb)
2014-03-14 20:48:48 -04:00
Jessica McKellar fa461e86fd integrations: make Asana dependency on python-dateutil explicit.
(imported from commit 354b42f68e3d1f980649993bad4dbe4ff79a11d6)
2014-03-14 20:48:48 -04:00
Zev Benjamin 4fbe78d037 api: Expose function for getting the default Zulip config file
(imported from commit 89d6b48f9393670429aa960ad0ff27f030166e34)
2014-03-03 17:30:58 -05:00
Zev Benjamin 64b0550f58 api: Add get_subscribers method
(imported from commit 801021768431a04cfecf146b58f4d118e1dc7508)
2014-03-03 17:29:54 -05:00
Zev Benjamin 5ba0b6b633 api: Disambiguate the names of Zulip options
(imported from commit 67525764cc2f2a26081640063e2d78852f6229ca)
2014-03-03 17:29:52 -05:00
Zev Benjamin 213c0b49bc api: Let generate_option_group prepend a prefix to added options
(imported from commit 41cdd90a83914139c92cb3ea649cb5653f56d4ca)
2014-03-03 17:29:52 -05:00
Zev Benjamin 5696ff5ce6 api: Clarify that the API option group is for the Zulip API
(imported from commit e471fb60c04c4cf8d5e1ceb8cbd639dc3460fc48)
2014-03-03 17:29:52 -05:00
Jessica McKellar da757b7195 Update copyright to 2014.
(imported from commit 733baed61e26be0c07a7e7a605618087df6b0866)
2014-02-04 15:51:53 -05:00
Luke Faraone a9faaecb97 API release 0.2.4
(imported from commit 42145c829f5bd2282b72c2658f19766cf2346a2b)
2014-01-11 15:52:21 -05:00
Jessica McKellar aa36b7fb5f Document our RSS integration.
(imported from commit 61e956705b526b4bbeb3a0908d00ebd92d216395)
2014-01-02 13:39:32 -05:00
Tim Abbott 71ad82b6aa Add support for event queues with an included narrow.
This will allow us to substantially decrease the server-side work that
we do to support our Mirroring systems (since the personal mirrors can
request only messages that user sent) and also is what we need to
support a single-stream Zulip widget that we embed in webpages.

(imported from commit 055f2e9a523920719815181f8fdb44d3384e4a34)
2013-12-12 17:36:39 -05:00
Waseem Daher 419a3d3098 Shorter topics for git/svn integration.
(imported from commit 6c9822f6ba383d885e48d3bb64c30e49ea8cf1e5)
2013-12-11 12:20:42 -05:00
Tim Abbott 6721c465c9 Add admin API endpoint for creating users.
(imported from commit a8b919c7d21b28dfd75b6b95736a375874ead15f)
2013-12-10 13:21:33 -05:00
Luke Faraone dc6ae6dc15 Specify client in User-agent in our Jira integration.
(imported from commit e436478c6fd2836c06faa90ddb1ca5641d3f61e4)
2013-12-09 11:47:54 -05:00
Luke Faraone 1b5c1ac021 Update style of client strings.
(imported from commit 1516461cf53b2715de68e01f16bb8a8cc33c48ad)
2013-12-09 11:47:52 -05:00
Luke Faraone 663d7483f2 Add a version number to our Perforce integration.
(imported from commit 402f7a1e57aa1c77255cdc5c58a081a8b209a65d)
2013-12-09 11:47:20 -05:00
Luke Faraone a49c48a53b api: Let users of init_from_options specify a default client.
This way command-line scripts that use our `optparse` populator can
still specify a custom client without munging their `parser` object.

(imported from commit df8d28a46a4d4574523b106030dbfed2d9ac931e)
2013-12-09 11:47:20 -05:00
Luke Faraone bb3c6ce173 api: Specify a default client of ZulipPython/version
(imported from commit 366d0e81a67f6a993fb0e9539d51e593c7863299)
2013-12-09 11:47:20 -05:00
Luke Faraone a119a22988 api: Provide an informative User-agent instead of a client parameter
We previously sent our client type to the server as a GET/POST parameter
of "client=<something>", most commonly "client=API: Python".

We switch here to providing the same information as a User-agent header
sent on each request, which is more standards-compliant.

Also added is some data about the platform the user is using. If your
client string was set to "MyLittleZulip/1.0", the resultant string could
look something like this:
    MyLittleZulip/1.0 (Ubuntu; 12.04)

(imported from commit 39fd187a8f9d4b3c9b63fc623e0836e57a4099ca)
2013-12-09 11:47:20 -05:00
Luke Faraone 479e3bfbd0 Perforce integration.
This is designed to be run as a "change-commit" trigger. See [Perforce's
documentation][1] on how to set up a trigger for your platform.

[1]: http://www.perforce.com/perforce/r12.1/manuals/cmdref/triggers.html

Closes trac #1034.

(imported from commit d94fa4e50637ade2847a96eab8c5514de3811c24)
2013-12-06 11:54:38 -05:00
Luke Faraone 08973733a7 [third] Disable git_p4's usage of git configuration
Since we're using the module outside of a git repository context we
don't have a git config to reference. Instead, we'll just use the
environment variables we're passed.

(imported from commit 8ae707d5d60eb700052e0ee89e7d36c660e00bb6)
2013-12-06 11:54:38 -05:00
Luke Faraone a0595e8c60 [third] Import git's P4 command.
From github.com/git/git@34022ba

License: Expat

(imported from commit 995439bf2fc458ef7ed73fd7ea9add77abacbc53)
2013-12-06 11:54:38 -05:00
Waseem Daher b815203b0b Add "client" string to Nagios integration.
(imported from commit 0e42d297b5be668da9b28c9970621a1f9a4229ca)
2013-12-05 18:06:13 -05:00
Waseem Daher a4111a2426 Add 'client' string to our missing integrations.
Not done: Jira, Nagios

(imported from commit 3e2505653b377f8c307745e507bdc40e980dca05)
2013-12-05 17:51:21 -05:00
Tim Abbott 5d454afb74 api: Add support for setting site in mercurial integration.
(imported from commit 697f4697af27be6f4eddd6ddbf7affbc8739cffe)
2013-12-04 16:30:57 -05:00
Tim Abbott 44386b3615 api: Document options required for use with Zulip Enterprise.
(imported from commit 59f136cf0f1a5d9509bec054b060ab44695b77e0)
2013-12-04 16:30:51 -05:00
Tim Abbott 4e52ecce0f api: Update documentation on ZULIP_SITE option.
(imported from commit 82109dc08847240440f90524343c0f9562e4a0bf)
2013-12-04 15:14:15 -05:00
Tim Abbott 02304ca4a0 Remove api/examples/curl-examples.
It's out of date and we've never distributed it anyway.

(imported from commit 884e302ea4f55f9b3f986694a786cc5c17128e71)
2013-12-04 15:10:54 -05:00
Waseem Daher ca85e5bc51 Link to our API page from the Github repo README.md
(imported from commit 2dfa7a3bf27a15f1f43ee2ecef5d501c17669bde)
2013-12-02 13:18:04 -05:00
Jessica McKellar 3459962e69 API release 0.2.3.
(imported from commit 80591f61785b492b2ec8897bb2a2e5eff8e089fc)
2013-11-27 13:15:21 -05:00
Luke Faraone 1202cacffd setup.cfg to run install_data on API install
Previously, users of setuptools would get our data embedded in eggs.
Eggs are horrible things, but more importantly our package data should
be free, in a well-known albeit system-dependant path that is
independent of the package.

By specifying [install_data][1] as an alias of install, we assure that
our data (examples, integrations, etc) are placed in $data/share as
$DEITY intended.

Alternative suggestions included force-adding "--old-and-unmanageable",
which would invoke the distutils-style install command, but that had the
unfortunate side effect of turning off eggs and dependency resolution
altogether.

We could also use "--single-version-externally-managed", but I think
that was designed to be used by package managers, not by us.

In any case, both of the above were fragile and might break if the user
specified additional options to setup.py.

In closing, Python module management is horrible. See [this][2],
[this][3], and [this][4] for info about the status quo, and [this][5]
for information about crack to be smoked later down the road. Don't even
get me started about [PEP 427 -- Python wheels][6].

[1]: http://docs.python.org/2/distutils/commandref.html#install-data
[2]: http://lucumr.pocoo.org/2012/6/22/hate-hate-hate-everywhere/
[3]: http://stackoverflow.com/a/6522905/90777
[4]: http://python-notes.boredomandlaziness.org/en/latest/pep_ideas/core_packaging_api.html
[5]: https://python-packaging-user-guide.readthedocs.org/en/latest/future.html
[6]: http://www.python.org/dev/peps/pep-0427/

(imported from commit 6cf1bd2b8f5a60b2f02f5d11094e4a41cc5e48aa)
2013-11-26 13:26:31 -05:00
Jessica McKellar 5b01dadfd3 rss-bot: handle feeds that don't have a title.
(imported from commit 2d95ee0cd85ac25a7c0241ce1747509e2f9c6be6)
2013-11-22 11:28:19 -05:00
Tim Abbott 630cfd72f1 Deregister event queues when done in our Nagios scripts.
(imported from commit a1f73403163323e1dd9eda2f5269e94c60abdd1a)
2013-11-20 18:34:16 -05:00
Tim Abbott 968c393826 Use the new !avatar syntax in our git integration.
(imported from commit e00bc63f6fb1944ed206b3ede5431ac2b1ae1ac2)
2013-11-20 13:10:43 -05:00
Jessica McKellar 1e1a0ee0e9 Add basic Asana integration.
Due to limitations in their API, we have to poll and check for
creation and completion events.

(imported from commit be65e507fac16a7f8ad3dc57b2af9c4b98aacf39)
2013-11-19 13:30:34 -05:00
Tim Abbott be48e6ab15 Update paths to rss-bot.
(imported from commit ab6ea5e881593c8533680323bf525faacc2ddfec)
2013-11-18 08:11:06 -05:00
Tim Abbott 6971a0f4cc Fix rss-bot parsing of feeds that don't specify a post ID.
(imported from commit 67fdb8b92b39fc14c81b87b7fa8089964c07be8b)
2013-11-18 08:11:06 -05:00
Tim Abbott fce97df972 api: Fix our handling of the --site option.
Tested that the following all do the same thing after this patch:

--site=https://ls-dev.zulip.net
--site=https://ls-dev.zulip.net/
--site=https://ls-dev.zulip.net/api
--site=https://ls-dev.zulip.net/api/

(imported from commit 785c005e4b4be3621d7d330a0173023ab2c77a4d)
2013-11-15 11:10:25 -05:00
Tim Abbott 68dcc760c3 Clean up some unused imports.
(imported from commit 0c5d8e2a55ba1b8909ba807fee3afe863dcdc226)
2013-11-04 11:51:17 -05:00
Luke Faraone c71166f116 api: Include MANIFEST.in
This should have been included in an earlier commit.

(imported from commit 683f3dbbe8730cc588836b7b27a881a50caa284d)
2013-11-01 12:08:04 -04:00
Luke Faraone 7b6e584336 Remove accidentally left-in import of zulip in setup.py.
This is **actually** 0.2.2 :)

(imported from commit 4ae69809b550d76b7c3bdf7b1420b25b6e41f73b)
2013-10-31 16:27:59 -04:00
Luke Faraone 3be10e50ef API 0.2.2 release.
(imported from commit 891ab7549e96c30dceb70bb18add1cd533fafd36)
2013-10-31 16:23:03 -04:00
Luke Faraone e872cae552 Increment copyright year.
(imported from commit d42dfd080807a11d898a1c7b96b9f048e20bccf8)
2013-10-31 16:23:03 -04:00
Luke Faraone de42c2a86c Switch to four-spaces indentation in setup.py
(imported from commit 621e5755e8cfd7117e012f4245de0916e45060bb)
2013-10-31 16:23:03 -04:00
Luke Faraone 8f6e4c4163 Update support email address
(imported from commit 3265ea2ec037093bd883a440fe9f8c6d72642a31)
2013-10-31 16:22:51 -04:00
Rory Kirchner b33819c16e Added a stream class for use with the logging module.
License assent:
    https://github.com/zulip/python-zulip/pull/3#issuecomment-18182458

(imported from commit 9faf9dd147032b1e56b113bc0f0d729a653e1e49)
2013-10-31 16:22:51 -04:00
Luke Faraone cb00186c6a Optionally use setuptools if it is installed.
Thanks to to github.com/roryk for the suggestion.

(imported from commit 9e4365dc56f1bc2f1a1a49be4a7b662d94bf42a9)
2013-10-31 16:22:51 -04:00
Rory Kirchner aa17018a38 Parse __version__ from __init__.py
This way we don't crash if dependencies aren't installed.

License assent:
    https://github.com/zulip/python-zulip/pull/3#issuecomment-18182458

(imported from commit f1aa37e97c60a06234c004ada48e08984a085d6f)
2013-10-31 16:22:51 -04:00
Jessica McKellar b7fa44bed3 Add a first pass at Mercurial changegroup (hg push) integration.
(imported from commit 94c91aed6282a2fffcd7753a06dc68a298b7bdc7)
2013-10-29 09:58:04 -04:00
Tim Abbott 901a5c342c Use os.path directly rather than sometimes importing it separately.
(imported from commit 48486c4ea64d02a15faeebb0f490d31e9b113d62)
2013-10-28 15:44:13 -04:00
Tim Abbott 924c5fea24 api: Add support for specifying client using zulip.init_from_options.
(imported from commit f92db44af606d67d5a1dcc9c978cee0d079d466d)
2013-10-21 14:37:36 -04:00
Jessica McKellar 387bdb01c2 twitter-search-bot: update the path to the bot in the help.
(imported from commit c1097685870029d9f6e7d0ba5a9e61912cf00885)
2013-10-16 21:26:01 -04:00
Jessica McKellar 6e6e054024 twitter-search-bot: add the version requirement for twitter-python to the help.
(imported from commit dbee40c3081e50b07a80a297691acf98f4aaf89a)
2013-10-16 21:26:01 -04:00
Jessica McKellar 8bc6e61071 twitter-search-bot: Consistently capitalize Twitter.
(imported from commit 1c8f0b526d0112c05c91b69a77081ec361da538c)
2013-10-16 21:26:01 -04:00
Leo Franchi eb23464eaa Add support for discussion comments in Codebase mirror
(imported from commit 9b37cbf4209ad607966053af9c1ef9979c2d6205)
2013-10-15 09:38:38 -04:00
Zev Benjamin 46350c5dd8 codebase: Truncate subjects to 60 characters
(imported from commit db5ba1a8af80f2060aec03b3ba1d9e0f3e75c0b3)
2013-10-08 18:54:03 -04:00
Zev Benjamin 4dbedaf1fb codebase: Fix URLs
(imported from commit 664de2e6ad78d07498c7ad8813049d1e07c5b379)
2013-10-08 18:53:42 -04:00
Tim Abbott ac01b0ed19 git integration: Linkify our commits to point to GitLab.
(imported from commit e8d3c107842680dec9bc6aa84f9548c0f879785d)
2013-10-08 17:21:57 -04:00
Tim Abbott 70c666c3c6 [manual] Rename humbug@humbughq.com to zulip@zulip.com.
This requires renaming the account in Google Apps at the time we
deploy this; we'll probably want to do this during off hours to avoid
any user-visible downtime.

This also updates some related email addresses.

(imported from commit fce7629b359a4f278bbf7815c8d177a8fa0484fe)
2013-10-08 08:57:29 -04:00