LoopThrough-i-j
70f457f82a
zulip: Add support for additional args for Client.call_on_each_*
.
...
- Added `**kwargs` typed `object` in the definition of
`Client.call_on_each_*` .
- Replaced `**kwargs` type from `Any` to `object` in the
definition of `Client.register`.
Fixes part of #647
2021-03-24 15:00:44 -07:00
rht
61abb4f59c
Add list_subscriptions() back for backward compatibility.
2021-03-11 00:00:56 -08:00
rht
57e8886dfe
API: Rename list_subscriptions to get_subscriptions.
2021-03-11 00:00:56 -08:00
Anders Kaseorg
503e8ed82d
zephyr: Attempt to fix types.
...
The mirror has some chance of running on Python 3 now, once the
python-zephyr patch is rebased on 0.2.1, though it’s untested.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-03-10 23:59:15 -08:00
Anders Kaseorg
34012a4015
mypy: Add stubs for zephyr.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-03-10 23:59:15 -08:00
Anders Kaseorg
717a549f4b
mypy: Prohibit unreachable code.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-03-04 15:17:09 -08:00
Anders Kaseorg
30f241a126
mypy: Remove unused type: ignore comments.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-03-04 15:09:58 -08:00
Anders Kaseorg
5b5fda2354
Fix % formatting without a tuple.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-03-04 15:04:38 -08:00
LoopThrough-i-j
3887ad102e
python-zulip-api: Drop python3.5 support.
...
Fixes Part of #655
2021-02-26 07:32:47 -08:00
LoopThrough-i-j
3e28506607
zulip-apis: Update reaction_data
type.
...
Update `reaction_data` type in add_reaction and
remove_reaction, from Dict[str, str] to Dict[str, Any]
2021-02-23 08:58:23 -08:00
Unam LN
984d9151d5
bots: Fix RSS bot for Python 3.x support.
...
- Call `super()` in the init method.
- Change return hashlib.md5 syntax to encode properly for Python 3
Signed-off-by: Manu LN <manu+github@lacavernedemanu.fr>
2020-12-22 16:34:32 -08:00
Tim Abbott
59a0a912a8
process_ccache: Update path to Zulip supervisord files.
2020-12-20 11:46:24 -08:00
Steve Howell
f100ab07aa
jabber mirror: Remove code for occupy/vacate events.
...
The server no longer sends occupy/vacate events
for streams.
The mirror should continue to work fine by processing
subsription-related events.
2020-10-20 11:21:44 -07:00
Eeshan Garg
befbb953dd
pypi: Release version 0.7.1.
2020-10-09 15:50:43 -02:30
Thomas Michelat
3630208389
api: Add binding for moving topics between streams.
...
Adds the method move_topic to the class Client that allows moving
topics between streams.
- The topic can be renamed if the new_topic argument is given
- Partial topic can be moved givent the proper message_id and
propagate_mode arguments.
- notification to old/new stream can be silenced (active by default)
2020-09-14 15:13:10 -07:00
Kartik Srivastava
1df19c0665
api: update_user_group_members should have a user_group_id parameter.
...
This avoids weirdly passing an extra field in the request, and also
makes the bindings better align with the API.
2020-08-27 12:55:21 -07:00
Preet Mishra
9a4abb9f87
zulip: Add hash_util_decode() to decode server encoded URL excerpts.
...
This adds hash_util_decode() to decode a hash_util_encode() [present in
zulip/zulip's zerver/lib/url_encoding.py [1]] encoded string.
The intent is to facilitate code sharing among various python clients
(primarily, Zulip Terminal).
The string replacement before the `unquote` is to recoup for the custom
string replacements in zulip/zulip's zerver/lib/url_encoding.py [1].
Test added.
[1] See hash_util_encode() in https://github.com/zulip/zulip/blob/master/zerver/lib/url_encoding.py .
2020-08-25 16:08:32 -07:00
rht
e992f14522
slack-bridge: Use WebClient to post message in Slack.
2020-08-25 15:55:25 -07:00
rht
47a4f258d7
slack-bridge: Update processing of members list according to new API.
2020-08-25 15:55:25 -07:00
rht
89d0dd56b9
slack-bridge: Fall back to real_name when display_name is empty.
...
This will intentionally raise exception when a real_name field of a user
is empty.
2020-08-25 15:55:25 -07:00
rht
02867979ee
bridge: Initialize bridge_with_slack.
2020-08-25 15:55:25 -07:00
Kartik Srivastava
0e98533186
api: Implement GET /users/{user_id}/subscriptions/{stream_id} endpoint.
2020-08-14 16:22:12 -07:00
rht
f529bc0d01
IRC bridge: Add documentation on nick password.
2020-08-10 17:12:04 -07:00
rht
fe2a4d6fe8
[BUGFIX] IRC bridge: Use connection initialized from aio_reactor.
...
Additionally, pin the irc library version to 18.0 because the newer
version has an error in the AioReactor:
```
File "/home/rht/code/venv/lib/python3.8/site-packages/irc/bot.py", line 108, in run
self.bot.reactor.scheduler.execute_after(intvl, self.check)
AttributeError: 'AioReactor' object has no attribute 'scheduler'
```
2020-08-10 17:12:04 -07:00
Kartik Srivastava
36071821c3
api: Update type annotation in 'remove_subscriptions'.
...
This updates the type annotation for the 'principals' argument
to accept a list of email addresses as well as user ids.
2020-08-10 16:38:39 -07:00
Alex Vandiver
9745ec9ceb
doc: Document the backoff class better.
2020-08-10 15:07:01 -07:00
Alex Vandiver
7a7cfe637e
zephyr: Mark the infinite loops as NoReturn.
2020-08-10 15:07:01 -07:00
Alex Vandiver
a20c9cc6d7
zephyr: Use exponential backoffs in retry loops.
...
This reduces the number of retries that might spam APIs.
There is some complexity here which is left un-managed -- for
instance, maybe_restart_mirroring_script does a number of restart
attempts, and then fails, but will be retried every 15s by the
surrounding `process_loop`. Previously, it would merely have looped
forever inside maybe_restart_mirroring_script.
Three loops are intentionally left as infinite `while True` loops,
that merely cap their backoff at the default 90s. Their callers do
not expect, or have any way to handle more gracefully, a failure of
the expected-infinite-loop in `process_loop` or `zulip_to_zephyr`.
They maintain their previous behavior of retrying forever, albeit more
slowly.
2020-08-10 15:07:01 -07:00
rht
8670cce8e9
Matrix bridge: Change the condition of not_from_zulip_bot.
2020-08-07 08:15:07 -04:00
Kartik Srivastava
20e7f197e3
api: Implement DELETE /realm/emoji/{emoji_name}.
2020-08-03 10:29:38 -07:00
Anders Kaseorg
396ef1d11a
Update zulipchat.com emails to zulip.com.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2020-06-11 21:06:58 -07:00
Anders Kaseorg
5f81eb3a70
Update zulipchat.com links to zulip.com.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2020-06-11 21:06:58 -07:00
Kartik Srivastava
9e9b1efdae
api: Implement PATCH /realm/profile_fields/{field_id} endpoint.
2020-05-29 17:18:25 -07:00
Kartik Srivastava
e25ebce27b
api: Implement PATCH /realm/profile_fields endpoint.
2020-05-29 17:18:25 -07:00
Kartik Srivastava
a85ac15d2d
api: Implement DELETE /realm/profile_fields/{field_id} endpoint.
2020-05-29 17:18:25 -07:00
Kartik Srivastava
22392779a3
api: Implement POST /realm/profile_fields endpoint.
2020-05-29 17:18:25 -07:00
Kartik Srivastava
30fa7c5d2f
api: Implement GET /realm/profile_fields endpoint.
2020-05-29 17:18:25 -07:00
Kartik Srivastava
16737e4ed3
api: Add get_members wrapper for get_users for backwards compatibility.
2020-05-14 11:37:23 -07:00
Kartik Srivastava
d2b9976015
api: Rename get_members to get_users.
2020-05-14 11:36:17 -07:00
neiljp (Neil Pilgrim)
540d453237
setup.py: Add Source & Documentation project_urls.
...
The only existing url points to zulip.org -> zulipchat.com
2020-05-05 09:20:50 -04:00
neiljp (Neil Pilgrim)
f2c8295fcb
requirements: Remove unnecessary install dependency upon six & typing.
...
The latest release was fully python 3.5+, making these dependencies
redundant.
2020-05-05 09:20:50 -04:00
Eeshan Garg
1dac75f979
pypi: Release version 0.7.0.
2020-04-20 23:23:58 -02:30
Eeshan Garg
4e0c963127
zulip/README.md: Add note clarifying Python 2 support.
2020-04-18 20:33:17 -07:00
Anders Kaseorg
f616b9259e
irc_mirror_backend: Remove repeated dictionary key.
...
Signed-off-by: Anders Kaseorg <anders@zulipchat.com>
2020-04-18 20:31:14 -07:00
Anders Kaseorg
17cf26aa1f
cleanup: Move line breaks before binary operators.
...
Signed-off-by: Anders Kaseorg <anders@zulipchat.com>
2020-04-18 20:31:14 -07:00
Anders Kaseorg
bd9bb0a4e8
cleanup: Fix indentation.
...
Signed-off-by: Anders Kaseorg <anders@zulipchat.com>
2020-04-18 20:31:14 -07:00
Anders Kaseorg
54b2578204
cleanup: Remove unused variables.
...
Generated by autoflake.
Signed-off-by: Anders Kaseorg <anders@zulipchat.com>
2020-04-18 20:31:14 -07:00
Anders Kaseorg
2f6623bbc4
cleanup: Remove unused imports.
...
Generated by autoflake.
Signed-off-by: Anders Kaseorg <anders@zulipchat.com>
2020-04-18 20:31:14 -07:00
Anders Kaseorg
5428c5f296
typing: Convert function type annotations to Python 3 style.
...
Generated by com2ann (slightly patched to avoid also converting
assignment type annotations, which require Python 3.6), followed by
some manual whitespace adjustment, and two fixes for use-before-define
issues:
- def set_zulip_client(self, zulipToJabberClient: ZulipToJabberBot) -> None:
+ def set_zulip_client(self, zulipToJabberClient: 'ZulipToJabberBot') -> None:
-def init_from_options(options: Any, client: Optional[str] = None) -> Client:
+def init_from_options(options: Any, client: Optional[str] = None) -> 'Client':
Signed-off-by: Anders Kaseorg <anders@zulipchat.com>
2020-04-18 20:31:14 -07:00
Anders Kaseorg
fe72f3b131
typing: Remove ‘if False’ guard for typing imports.
...
typing is in the Python 3.5 standard library.
Signed-off-by: Anders Kaseorg <anders@zulipchat.com>
2020-04-18 20:31:14 -07:00