Commit Graph

46 Commits

Author SHA1 Message Date
Tim Abbott 1bc98a6f8a call_on_each_message: Remove dead 'first' parameter.
(imported from commit 06885bf8049238184226d9fc7b64345e6848931a)
2012-11-29 13:57:06 -05:00
Tim Abbott 735857008a api: Don't mutate the original request.
This causes e.g. call_on_each_message to switch to dont_block mode
after the first error.

(imported from commit b6a5a10970c987faf8017f0ddae4e0b64a513c6f)
2012-11-29 13:57:06 -05:00
Tim Abbott 7914bb78c6 do_api_query: Reduce error handling code duplication.
Also fixes bugs where the retry code wouldn't work correctly if
verbose wasn't set, prints out which API query had the error, and is
more consistent about printing something to end the "..." sequences.

(imported from commit 15c1e0e4a14c5c5559b43bafe4ec268451ee04f5)
2012-11-29 13:57:06 -05:00
Tim Abbott 0a278b55b9 api: Only retry up to 10 times on connection errors.
(imported from commit f395370120d5e7a635eec7b27e4d5ed0c48b774d)
2012-11-29 13:57:06 -05:00
Tim Abbott d23a83ee81 get_updates: Replace "failures" with the new dont_block option.
(imported from commit 2b4ecb35c4f14b6c408323662ef6f39c6485c62d)
2012-11-28 17:41:38 -05:00
Keegan McAllister ca723aed43 api/common.py: Ensure that the API key file is closed when we're done with it
(imported from commit 87a0feb52952aa76bec041d032027e7a272156fc)
2012-11-26 14:57:20 -05:00
Keegan McAllister c1994f3886 api/common.py: Reduce code duplication between API call methods
(imported from commit 4a0f1a8479c21366bf552edf98401b03bad72d9c)
2012-11-26 14:57:20 -05:00
Keegan McAllister 8576446791 Use a new-style class for HumbugAPI
(imported from commit a88366e0129dadb40b058ddd0ede64db3b6b206f)
2012-11-26 14:57:20 -05:00
Tim Abbott 3cc5973511 api: Add copyright and MIT license notices to distributed tools.
(imported from commit 9f93050f988549dc363f5a7c798c8a9fa1c01d29)
2012-11-26 12:25:38 -05:00
Tim Abbott 7314c12527 api: Read the API key from ~/.humbug-api-key by default.
(imported from commit 309469a0955969eafd78fbdf89d9651cb530010d)
2012-11-26 12:25:38 -05:00
Tim Abbott 6026c80de6 API: Add unsubscribe function.
(imported from commit 6dc55e9030770500770ce3921a4e77499d64f2d6)
2012-11-16 17:06:01 -05:00
Tim Abbott f5ccde78e3 [manual] Use "subscriptions" for {add,list}_subscriptions consistently.
This change requires a zephyr_mirror deployment when it is pushed to prod.

(imported from commit a31d6efd2db4d4617c7c6b00326be3f07c7263da)
2012-11-16 17:06:01 -05:00
Tim Abbott afc62a8e16 [manual] Uniformize the subscriptions API method names.
This requires a zephyr_mirror deployment when it is pushed to prod.

(imported from commit 6543441fb264b518f8705d7989d068a1d50ce5d6)
2012-11-16 17:06:01 -05:00
Tim Abbott 50b8195bf3 api: Fix type error updating the failures count.
(imported from commit 5733f252f676549ff817df3a7560274ecec0cd2a)
2012-11-14 15:03:49 -05:00
Zev Benjamin ef99a53465 api: Generically convert non-string values to JSON in python bindings
(imported from commit 820bc20d469832b5785b434726c81e59a3f67ea5)
2012-11-09 18:08:31 -05:00
Tim Abbott 6716126c6e api: Sometimes python-requests raises an SSLError on timeout.
(imported from commit 7f64659acf124819c04b5ecd67eaa5b5fddc71fd)
2012-11-09 16:56:14 -05:00
Tim Abbott 957a996322 api: Distinguish Requests connection errors from server 500s.
(imported from commit 1879ea4030c2441c049d9c68684b33a1d2444572)
2012-11-09 16:56:13 -05:00
Tim Abbott 8e973adb5b api: Add 55 second timeout when longpolling.
(imported from commit c5c1f9fcfa9ec5eff84f9bc7e98042f87193e98c)
2012-11-09 14:32:06 -05:00
Keegan McAllister 05c6089c40 Add get_profile to Python API bindings
(imported from commit 8f39764f4dce95e30a355cfb4ef9bf63db097160)
2012-11-07 15:34:44 -05:00
Keegan McAllister 9fd20692f8 Document why we need Requests > 0.12
(imported from commit 9c719d1bdd6446cedbb936449ad0225f387a0100)
2012-11-02 14:57:38 -04:00
Tim Abbott 2279214600 Add copyright notice to zephyr mirroring bots.
(imported from commit f3d27a032a461cf3eb92822feee3f8e790d630dd)
2012-11-02 13:49:29 -04:00
Keegan McAllister c1171c9832 Change default site in API clients
(imported from commit 185cf8e27cb6ecd1cd8ccca834d30ca0de2236b8)
2012-10-27 11:38:15 -04:00
Tim Abbott 5b4816eb55 Report failures count in API queries.
(imported from commit afb01272db6e0aa1ba10d60d651a97ce924e8cb9)
2012-10-25 17:53:23 -04:00
Tim Abbott de5d48f51f Make the client name a global property of the Humbug client.
(imported from commit 3401686986a2670b3636e99fb11761c07a934bca)
2012-10-23 11:08:27 -04:00
Tim Abbott 2374b6e16f API: Update error handling.
(imported from commit 2084975c5476a4792a633bf70469be26082da8c3)
2012-10-22 18:18:00 -04:00
Tim Abbott 7b3b4362dd [schema] Add a Client model keeping track of the sending client.
(imported from commit 31a430b1de14ce973addafd5d13ace049a8f8091)
2012-10-20 18:41:54 -04:00
Tim Abbott 3051b34bb0 Fix issues with trailing slashes in API examples URLs.
(imported from commit f557a65e36aefcdcd9e072e9144f3ec69f518192)
2012-10-18 11:32:58 -04:00
Keegan McAllister f7400fc8b4 api: Drop HTTP Digest authentication
(imported from commit 6867528cbd51a9e4a7cdacb181befcd034b90d59)
2012-10-17 18:24:15 -04:00
Keegan McAllister bc43613a10 Some import cleanup
(imported from commit 265cebb011309b9a880035ccd587a5e51554803a)
2012-10-15 16:16:10 -04:00
Keegan McAllister 52bd41bff8 api: Verify certs for real
Now that we have a CA-signed cert for the app.

(imported from commit a2d8e95ea581d9af0ba6071b222e06ca82f0612c)
2012-10-15 15:31:12 -04:00
Keegan McAllister 002e3a5a61 api: Check against the self-signed cert
(imported from commit f0444f1af206e5d7ee1c79f7486e9fe17daea0f7)
2012-10-15 13:29:47 -04:00
Tim Abbott 367f6c0a56 zephyr_mirror: Run both processes within a single application.
(imported from commit 8f379a682ede7076ddcbe046dee5be6592a5bbd9)
2012-10-12 17:35:14 -04:00
Tim Abbott 78ad6a03f2 Restart the zephyr mirroring script for new versions.
(imported from commit 860b0e120308cf190dbde2a0182e99951404cbce)
2012-10-12 15:03:42 -04:00
Tim Abbott fc99d2983a Add an API call to subscribe to a list of streams.
(imported from commit 0a5d46d5f54fb4c8ebfad8c9adb777c0b4938dfa)
2012-10-11 16:20:45 -04:00
Tim Abbott 83f494b1a4 Add API queries to show public streams and the user's subscriptions.
(imported from commit 5f24e35a9bdd1e40406e2acb0c3713a6517d139b)
2012-10-11 14:43:23 -04:00
Tim Abbott d2e0a564e1 api: Cast message ids to int before trying to compute the maximum.
(imported from commit 1723c48758711b9ace3db95d82ad91c76512ffa3)
2012-10-10 16:29:05 -04:00
Tim Abbott cfc78d6631 api: Clean up code duplication and add automatic retries on 503s.
(imported from commit 5c0654d1048a97a0f451c560544266a4261d9426)
2012-10-04 18:08:20 -04:00
Tim Abbott 33a5157afd Rewrite API to use the Python requests library.
(imported from commit 314cf906eb25ea46f580ca70852b9d3478531229)
2012-10-04 17:25:58 -04:00
Tim Abbott 2a79ff0cc8 Rename 'zephyrs' => 'messages' when formatting a message list to send to clients.
(imported from commit bfbb556f2444aca8277f54c363eccb678b6bf2dc)
2012-10-04 14:42:38 -04:00
Tim Abbott abd97578c0 Fix zephyr mirror unicode issues, hopefully once and for all.
This code successfully sends every message in our corpus of past
zephyrs.

(imported from commit 14d42ca9288e2a218eaad880691d6bd213a045ce)
2012-10-03 17:55:14 -04:00
Tim Abbott 8542dd26a8 API: Disable history in the mechanize browser.
(imported from commit 8907f3af6283ab3ac72a22e936952757af56d1c3)
2012-10-03 17:21:26 -04:00
Tim Abbott e249df896f api: Cut down a bit on the error handling verbosity.
(imported from commit b665b939f8474f0d631125ecd7c3d300e338ff3c)
2012-10-03 17:14:50 -04:00
Tim Abbott 1356bd336a zephyr_mirror: Rewrite to use the API.
(imported from commit 6d3bce15eb045f28897abb6ddcdbea8e10629a7d)
2012-10-02 17:19:42 -04:00
Tim Abbott 5a5b5de650 Rename /api/v1/get_updates to /api/v1/get_messages.
(imported from commit f856637158cf9fda64ba333b532a5941de8fcbab)
2012-10-02 16:29:34 -04:00
Tim Abbott 8319a938e1 Refactor how the API handles options.
(imported from commit caff4a0b8b2d88e5e60fe3a7727b6d4ac5f63bd0)
2012-10-02 16:21:34 -04:00
Tim Abbott 18a3888373 [schema] Add an API for sending/receiving messages.
(imported from commit 209d525dc5892fc4c392a8ced1588c838cbb17c4)
2012-10-02 15:49:25 -04:00