zulip/zerver/lib
Steve Howell 378062cc83 performance: Avoid call to access_stream_by_id.
We already trust ids that are put on our queue
for deferred work. For example, see the code for
"mark_stream_messages_as_read_for_everyone"

We now pass stream_recipient_id when we queue
up work for do_mark_stream_messages_as_read.

This generally saves about 3 queries per
user when we unsubscribe them from a stream.
2020-10-16 12:58:11 -07:00
..
markdown python: Catch specific exceptions from requests. 2020-10-11 16:11:41 -07:00
url_preview url_preview: Only extract img tags with an `src`. 2020-08-18 14:26:21 -04:00
webhooks docs: Add spaces to “check out”, “log in”, “set up”, “sign up” as verbs. 2020-10-13 15:47:13 -07:00
__init__.py
actions.py performance: Avoid call to access_stream_by_id. 2020-10-16 12:58:11 -07:00
addressee.py addressee: Remove redundant casts. 2020-06-22 17:11:42 -07:00
alert_words.py python: Rewrite dict() as {}. 2020-09-02 11:15:41 -07:00
attachments.py python: Sort imports with isort. 2020-06-11 16:45:32 -07:00
avatar.py python: Convert more percent formatting to Python 3.6 f-strings. 2020-06-14 23:27:22 -07:00
avatar_hash.py python: Sort imports with isort. 2020-06-11 16:45:32 -07:00
bot_config.py python: Rewrite dict() as {}. 2020-09-02 11:15:41 -07:00
bot_lib.py python: Rewrite dict() as {}. 2020-09-02 11:15:41 -07:00
bot_storage.py test_service_bot_system: Fix type: ignore issues. 2020-06-30 18:58:23 -07:00
bulk_create.py populate_db: Add emoji reactions to development environment database. 2020-09-23 16:10:37 -07:00
cache.py python: Use standard secrets module to generate random tokens. 2020-09-09 15:52:57 -07:00
cache_helpers.py sessions: Fix type: ignore issues. 2020-06-30 18:58:23 -07:00
camo.py python: Sort imports with isort. 2020-06-11 16:45:32 -07:00
ccache.py python: Fix misuse of Optional types for optional parameters. 2020-06-13 15:31:27 -07:00
context_managers.py python: Sort imports with isort. 2020-06-11 16:45:32 -07:00
create_user.py python: Replace ujson with orjson. 2020-08-11 10:55:12 -07:00
data_types.py event_schema: Add documentation and rename a few functions. 2020-09-25 12:53:00 -07:00
db.py python: Sort imports with isort. 2020-06-11 16:45:32 -07:00
debug.py python: Sort imports with isort. 2020-06-11 16:45:32 -07:00
dev_ldap_directory.py python: Convert more percent formatting to Python 3.6 f-strings. 2020-06-14 23:27:22 -07:00
digest.py digest: Support digest of web public streams for guest users. 2020-09-25 16:11:04 -07:00
display_recipient.py api: Remove (sender_)short_name from message APIs. 2020-07-17 11:15:14 -07:00
domains.py python: Sort imports with isort. 2020-06-11 16:45:32 -07:00
email_mirror.py email_mirror: Change root logger to zerver.lib.email_mirror. 2020-09-12 10:53:56 -07:00
email_mirror_helpers.py python: Sort imports with isort. 2020-06-11 16:45:32 -07:00
email_notifications.py email: Remove unused `log_digest_event` function. 2020-10-08 20:35:53 -07:00
email_validation.py isort: Enable black profile. 2020-09-02 11:00:07 -07:00
emoji.py python: Replace ujson with orjson. 2020-08-11 10:55:12 -07:00
error_notify.py Error reporting emails: Indicate user role. 2020-08-03 13:35:51 -07:00
event_schema.py event_schema: Add comments to top of the file. 2020-09-28 12:19:28 -07:00
events.py events: Stop sending occupy/vacate events. 2020-10-14 10:53:10 -07:00
exceptions.py webhooks: Remove repetitive argument to UnsupportedWebhookEventType. 2020-09-10 17:47:21 -07:00
export.py docs: Add spaces to “check out”, “log in”, “set up”, “sign up” as verbs. 2020-10-13 15:47:13 -07:00
external_accounts.py request: Improve validator type so mypy can check it against REQ. 2020-06-20 22:29:15 -07:00
fix_unreads.py pointer: Remove fix_pre_pointer fixing logic. 2020-06-18 12:55:59 -07:00
generate_test_data.py python: Replace ujson with orjson. 2020-08-11 10:55:12 -07:00
home.py performance: Avoid computing page_params.streams in webapp. 2020-10-14 10:53:10 -07:00
hotspots.py python: Pre-fix a few spots for better Black formatting. 2020-09-03 17:51:09 -07:00
html_diff.py html_diff: Really return str, not bytes. 2020-08-07 11:12:32 -07:00
html_to_text.py python: Replace None defaults with empty collections where appropriate. 2020-06-13 15:31:27 -07:00
i18n.py i18n: Move locale select logic in home to i18n.py. 2020-10-02 14:56:20 -07:00
import_realm.py import: Reuse get_last_message_id() helper. 2020-10-13 11:28:17 -07:00
initial_password.py python: Sort imports with isort. 2020-06-11 16:45:32 -07:00
integrations.py integrations: Re-add Canarytoken integration. 2020-07-20 15:34:40 -07:00
logging_util.py webhooks: Add a missing format for the realm. 2020-09-22 15:11:48 -07:00
management.py management: Use signal.pause to sleep forever. 2020-10-07 16:15:19 -07:00
mdiff.py docs: Capitalize Markdown consistently. 2020-08-11 10:23:06 -07:00
mention.py python: Sort imports with isort. 2020-06-11 16:45:32 -07:00
message.py import: Reuse get_last_message_id() helper. 2020-10-13 11:28:17 -07:00
migrate.py python: Sort imports with isort. 2020-06-11 16:45:32 -07:00
mobile_auth_otp.py python: Replace unnecessary intermediate lists with generators. 2020-09-02 11:15:41 -07:00
name_restrictions.py python: Pre-fix a few spots for better Black formatting. 2020-09-03 17:51:09 -07:00
narrow.py message_fetch: Allow access to web-public msgs for unauth users. 2020-08-12 16:39:02 -07:00
onboarding.py onboarding: Move send_welcome_bot_response to onboarding. 2020-09-03 17:41:08 -07:00
outgoing_webhook.py python: Catch JSONDecodeError instead of ValueError when decoding JSON. 2020-08-12 11:59:59 -07:00
presence.py python: Tweak some magic trailing commas to avoid Black bugs. 2020-09-03 17:51:09 -07:00
profile.py decorator: Strengthen types of signature-preserving decorators. 2020-06-30 18:58:23 -07:00
push_notifications.py python: Prefer kwargs form of dict.update. 2020-09-03 17:51:09 -07:00
pysa.py python: Sort imports with isort. 2020-06-11 16:45:32 -07:00
queue.py python: Catch BaseException when we need to clean something up. 2020-10-11 16:16:16 -07:00
rate_limiter.py python: Sort imports with isort. 2020-06-11 16:45:32 -07:00
realm_description.py refactor: Rename convert to markdown_convert. 2020-07-06 12:39:59 -07:00
realm_icon.py python: Sort imports with isort. 2020-06-11 16:45:32 -07:00
realm_logo.py realm_logo: Return default logo for realms on LIMITED plan. 2020-06-18 17:46:26 -07:00
redis_utils.py python: Use standard secrets module to generate random tokens. 2020-09-09 15:52:57 -07:00
remote_server.py python: Replace ujson with orjson. 2020-08-11 10:55:12 -07:00
request.py python: Catch specific exceptions from orjson. 2020-10-11 16:11:41 -07:00
response.py python: Replace ujson with orjson. 2020-08-11 10:55:12 -07:00
rest.py webhooks: Rename is_webhook to allow_webhook_access. 2020-09-22 15:11:48 -07:00
retention.py realm: Fix strict_optional errors. 2020-07-06 11:25:48 -07:00
send_email.py docs: Fix some spelling errors. 2020-10-13 15:47:13 -07:00
server_initialization.py database: Remove short_name from UserProfile. 2020-07-17 11:15:15 -07:00
sessions.py sessions: Fix type: ignore issues. 2020-06-30 18:58:23 -07:00
soft_deactivation.py soft_deactivation: Fix typo in logging output. 2020-09-28 12:12:04 -07:00
sqlalchemy_utils.py python: Sort imports with isort. 2020-06-11 16:45:32 -07:00
statistics.py python: Sort imports with isort. 2020-06-11 16:45:32 -07:00
storage.py docs: Merge front-end-build-process with html-css. 2019-10-23 13:08:36 -07:00
stream_recipient.py python: Rewrite dict() as {}. 2020-09-02 11:15:41 -07:00
stream_subscription.py performance: Use SubInfo when removing subscribers. 2020-10-16 12:58:11 -07:00
stream_topic.py python: Sort imports with isort. 2020-06-11 16:45:32 -07:00
streams.py performance: Optimize filter_stream_authorization. 2020-10-13 18:54:55 -04:00
subdomains.py python: Sort imports with isort. 2020-06-11 16:45:32 -07:00
test_classes.py events: Stop sending occupy/vacate events. 2020-10-14 10:53:10 -07:00
test_console_output.py tests: Add extra console output detection in test-backend output. 2020-08-27 11:39:53 -07:00
test_data.source.txt docs: Capitalize Markdown consistently. 2020-08-11 10:23:06 -07:00
test_fixtures.py tests: Remove three references to Casper in the comments. 2020-09-18 15:13:40 -07:00
test_helpers.py tests: Add cache_tries_captured helper. 2020-10-15 15:12:01 -07:00
test_runner.py test_runner: Monkey-patch to allow using multiprocessing in tests. 2020-09-14 16:22:23 -07:00
tex.py python: Convert subprocess.Popen.communicate to run or check_output. 2020-09-03 17:42:35 -07:00
thumbnail.py python: Sort imports with isort. 2020-06-11 16:45:32 -07:00
timeout.py python: Sort imports with isort. 2020-06-11 16:45:32 -07:00
timestamp.py timestamp: Remove datetime_to_precise_timestamp for datetime.timestamp. 2020-07-31 22:10:14 -07:00
timezone.py docs: Capitalize Markdown consistently. 2020-08-11 10:23:06 -07:00
topic.py topic: Reorder topic history functions. 2020-08-25 17:03:48 -07:00
topic_mutes.py python: Tweak some magic trailing commas to avoid Black bugs. 2020-09-03 17:51:09 -07:00
transfer.py import_realm: Close the memcached connection before forking. 2020-10-01 11:20:39 -07:00
type_debug.py decorator: Replace type: ignore with cast, avoid Any. 2020-06-30 18:58:23 -07:00
types.py api: Remove (sender_)short_name from message APIs. 2020-07-17 11:15:14 -07:00
unminify.py python: Manually convert more percent-formatting to f-strings. 2020-06-14 23:27:22 -07:00
upload.py emoji-upload: Fix transparency issues on GIF emoji upload. 2020-10-11 16:23:07 -07:00
url_encoding.py python: Sort imports with isort. 2020-06-11 16:45:32 -07:00
user_agent.py user_agent: Compile the regular expression. 2020-02-14 10:26:37 -08:00
user_groups.py python: Replace unnecessary intermediate lists with generators. 2020-09-02 11:15:41 -07:00
user_status.py python: Rewrite dict() as {}. 2020-09-02 11:15:41 -07:00
users.py get_raw_user_data: Support acting_user=None. 2020-09-23 12:07:06 -07:00
utils.py mypy: Use str in statsd_key. 2020-09-29 16:49:10 -07:00
validator.py python: Replace ujson with orjson. 2020-08-11 10:55:12 -07:00
widget.py python: Sort imports with isort. 2020-06-11 16:45:32 -07:00
zcommand.py python: Rewrite dict() as {}. 2020-09-02 11:15:41 -07:00
zephyr.py python: Sort imports with isort. 2020-06-11 16:45:32 -07:00