zulip/zerver/lib
Sahil Batra a1ac49582b streams: Optimize computing users with metadata access.
This commit updates code to optimize computing users who have
metadata access via permission groups so that we do not have
to do DB query for each stream to get recursive members for
the groups having permissions.
2025-02-14 12:00:37 -08:00
..
markdown markdown: Fix #-mention of private channel's topic made by system bots. 2025-02-12 12:50:25 -08:00
upload mime_types: Move INLINE_MIME_TYPES to prevent future import loops. 2025-01-09 09:09:13 -08:00
url_preview python: Avoid deprecated cgi module, removed in Python 3.13. 2024-10-22 10:05:01 -07:00
webhooks screenshot webhooks: Add support for multipart/form-data fixtures. 2024-12-02 18:08:58 -08:00
__init__.py
addressee.py message_send: Add support to send message with an empty topic name. 2025-01-07 17:24:00 -08:00
alert_words.py alert_words: Update remove_alert_word codepath to send event on commit. 2024-07-31 22:33:52 -07:00
async_utils.py mypy: Enable new error explicit-override. 2023-10-12 12:28:41 -07:00
attachments.py attachments: Restrict users access to attachment without message access. 2025-01-28 13:59:08 -08:00
avatar_hash.py avatars: Encode version into the filename. 2024-07-07 14:40:07 -07:00
avatar.py avatar: Add option to disable gravatars per realm. 2025-01-30 18:46:02 -08:00
bot_config.py ruff: Fix UP007 Use X | Y for type annotations. 2024-07-13 22:28:22 -07:00
bot_lib.py worker: Flag messages processed by outgoing bot. 2025-01-24 17:56:44 -08:00
bot_storage.py ruff: Fix UP007 Use X | Y for type annotations. 2024-07-13 22:28:22 -07:00
bulk_create.py message: Use new setting for checking stream posting permissions. 2025-01-07 12:17:09 -08:00
cache_helpers.py cache_helpers: Fill the narrow-user cache as well. 2025-02-13 12:40:53 -08:00
cache.py video-calls: Add Zoom Serverto Server OAuth integration. 2025-02-13 16:35:43 -08:00
camo.py typing: Apply trivial none-checks with assertions as necessary. 2022-06-23 19:25:48 -07:00
ccache.py ruff: Fix UP007 Use X | Y for type annotations. 2024-07-13 22:28:22 -07:00
compatibility.py ruff: Fix PLR6104 Use += to perform an augmented assignment directly. 2024-07-14 13:49:51 -07:00
context_managers.py ruff: Fix SIM117 Use a single with statement with multiple contexts. 2024-07-14 13:48:32 -07:00
create_user.py api: Improve handling of delivery_email in the GET /users/{email} API. 2024-10-08 18:01:49 -07:00
db_connections.py db: Split reset_queries into a new module zerver.lib.db_connections. 2024-04-17 16:49:03 -07:00
db.py ruff: Fix UP035 Import from collections.abc, typing instead. 2024-07-13 22:28:22 -07:00
debug.py ruff: Fix UP007 Use X | Y for type annotations. 2024-07-13 22:28:22 -07:00
default_streams.py default streams: Return set instead of a list. 2025-01-22 10:55:25 -08:00
dev_ldap_directory.py ruff: Fix UP007 Use X | Y for type annotations. 2024-07-13 22:28:22 -07:00
digest.py queue: Rename queue_json_publish to queue_json_publish_rollback_unsafe. 2024-12-06 09:23:02 -08:00
display_recipient.py mypy: Remove use of ValuesQuerySet and QuerySetAny. 2024-08-24 17:30:41 -07:00
domains.py ruff: Fix UP007 Use X | Y for type annotations. 2024-07-13 22:28:22 -07:00
drafts.py drafts: Update do_delete_draft to send event on commit. 2024-08-12 12:16:14 -07:00
email_mirror_helpers.py streams: Allow specifying sender during channel email generation. 2025-01-08 12:17:16 -08:00
email_mirror.py streams: Allow specifying sender during channel email generation. 2025-01-08 12:17:16 -08:00
email_notifications.py missedmessage_emails: Show EMPTY_TOPIC_FALLBACK_NAME for topic="". 2025-01-27 13:08:19 -08:00
email_validation.py ruff: Fix UP035 Import from collections.abc, typing instead. 2024-07-13 22:28:22 -07:00
emoji_utils.py emoji: Match emoji sequences in markdown. 2023-08-23 16:18:15 -07:00
emoji.py emoji: Use a non-predictable filename. 2024-07-12 13:26:47 -07:00
event_schema.py message_edit: Show typing indicator for message editing. 2025-02-12 15:08:56 -08:00
event_types.py settings: Migrate wildcard_mention_policy to group-based permission. 2025-02-12 23:21:33 -08:00
events.py settings: Migrate wildcard_mention_policy to group-based permission. 2025-02-12 23:21:33 -08:00
exceptions.py video-calls: Add Zoom Serverto Server OAuth integration. 2025-02-13 16:35:43 -08:00
export.py import-export: Rework how we write migration_status.json. 2025-01-24 17:08:37 -08:00
external_accounts.py ruff: Fix UP006 Use list instead of List for type annotation. 2024-07-13 22:28:22 -07:00
fix_unreads.py ruff: Fix UP035 Import from collections.abc, typing instead. 2024-07-13 22:28:22 -07:00
generate_test_data.py ruff: Fix PLR6104 Use += to perform an augmented assignment directly. 2024-07-14 13:49:51 -07:00
github.py python: Simplify with str.removeprefix, str.removesuffix. 2024-09-03 12:30:16 -07:00
home.py page_params: Remove bot_types field to reduce database queries. 2025-01-30 11:37:35 -08:00
html_diff.py ruff: Fix UP007 Use X | Y for type annotations. 2024-07-13 22:28:22 -07:00
html_to_text.py ruff: Fix UP035 Import from collections.abc, typing instead. 2024-07-13 22:28:22 -07:00
i18n.py ruff: Fix UP007 Use X | Y for type annotations. 2024-07-13 22:28:22 -07:00
import_realm.py import_realm: Do not enqueue thumbnails on ImageAttachment creation. 2025-01-31 14:29:57 -08:00
initial_password.py ruff: Fix UP007 Use X | Y for type annotations. 2024-07-13 22:28:22 -07:00
integrations.py integrations: Remove arguments passing default logo path values. 2025-02-01 15:38:46 -08:00
invites.py ruff: Fix UP007 Use X | Y for type annotations. 2024-07-13 22:28:22 -07:00
logging_util.py ruff: Fix UP007 Use X | Y for type annotations. 2024-07-13 22:28:22 -07:00
management.py ruff: Fix UP007 Use X | Y for type annotations. 2024-07-13 22:28:22 -07:00
mdiff.py tests: Rename the Node tests to *.cjs. 2024-11-13 09:18:56 -08:00
mention.py markdown: Fix #-mention of private channel's topic made by system bots. 2025-02-12 12:50:25 -08:00
message_cache.py fetch_messages: Add support for empty topic names. 2025-01-07 17:24:00 -08:00
message.py settings: Migrate wildcard_mention_policy to group-based permission. 2025-02-12 23:21:33 -08:00
migrate.py ruff: Fix UP035 Import from collections.abc, typing instead. 2024-07-13 22:28:22 -07:00
migration_status.py migration_status: Add parse_migration_status. 2025-01-24 17:08:37 -08:00
mime_types.py mime_types: Move INLINE_MIME_TYPES to prevent future import loops. 2025-01-09 09:09:13 -08:00
mobile_auth_otp.py ruff: Fix B905 zip() without an explicit strict= parameter. 2024-07-13 22:28:22 -07:00
muted_users.py ruff: Fix UP007 Use X | Y for type annotations. 2024-07-13 22:28:22 -07:00
name_restrictions.py python: Simplify with str.removeprefix, str.removesuffix. 2024-09-03 12:30:16 -07:00
narrow_helpers.py ruff: Fix UP035 Import from collections.abc, typing instead. 2024-07-13 22:28:22 -07:00
narrow_predicate.py ruff: Fix UP035 Import from collections.abc, typing instead. 2024-07-13 22:28:22 -07:00
narrow.py narrow: Handle use of -is:dm with channels:public. 2025-01-29 16:26:36 -08:00
notes.py ruff: Fix FURB180 Use of metaclass=abc.ABCMeta. 2024-07-14 13:53:40 -07:00
notification_data.py ruff: Fix UP035 Import from collections.abc, typing instead. 2024-07-13 22:28:22 -07:00
onboarding_steps.py topic: Add a first-time explanation for "Resolve topic". 2024-10-09 18:12:55 -07:00
onboarding.py create_user: Add 'durable=True' to the outermost transaction. 2024-10-31 09:55:01 -07:00
outgoing_http.py ruff: Fix UP007 Use X | Y for type annotations. 2024-07-13 22:28:22 -07:00
outgoing_webhook.py fetch_messages: Add support for empty topic names. 2025-01-07 17:24:00 -08:00
partial.py ruff: Fix UP035 Import from collections.abc, typing instead. 2024-07-13 22:28:22 -07:00
per_request_cache.py ruff: Fix UP035 Import from collections.abc, typing instead. 2024-07-13 22:28:22 -07:00
presence.py presence: Add history_limit_days param to the API. 2024-09-10 13:15:35 -07:00
profile.py ruff: Fix UP035 Import from collections.abc, typing instead. 2024-07-13 22:28:22 -07:00
push_notifications.py docs: Remove HostnameAlreadyInUseBouncerError.docs_url. 2025-02-13 09:49:28 -08:00
pysa.py
query_helpers.py mypy: Remove use of ValuesQuerySet and QuerySetAny. 2024-08-24 17:30:41 -07:00
queue.py queue: Rename queue_json_publish to queue_json_publish_rollback_unsafe. 2024-12-06 09:23:02 -08:00
rate_limiter.py zilencer: Add flow for a server to reclaim its registration. 2025-01-28 11:10:50 -08:00
realm_description.py
realm_icon.py settings: Make DEFAULT_LOGO_URI/DEFAULT_AVATAR_URI use staticfiles. 2023-02-14 17:17:06 -05:00
realm_logo.py ruff: Fix UP006 Use list instead of List for type annotation. 2024-07-13 22:28:22 -07:00
recipient_parsing.py scheduled_messages: Migrate to typed_endpoint. 2024-08-20 10:03:22 -07:00
recipient_users.py ruff: Fix UP035 Import from collections.abc, typing instead. 2024-07-13 22:28:22 -07:00
redis_utils.py ruff: Fix UP035 Import from collections.abc, typing instead. 2024-07-13 22:28:22 -07:00
remote_server.py zilencer: Rename registration takeover to registration transfer. 2025-01-30 14:32:36 -08:00
request.py tornado: Remove incorrect rate_limit request note. 2025-02-13 12:40:53 -08:00
response.py test_classes: Refine assert_json_success output with exception chaining. 2024-12-04 11:38:45 -08:00
rest.py tornado: Limit the width of the user queries, when they're needed. 2025-02-13 12:40:53 -08:00
retention.py retention: Add flag to ArchiveTransaction to prevent automatic deletion. 2025-02-04 11:31:13 -08:00
safe_session_cached_db.py ruff: Fix UP007 Use X | Y for type annotations. 2024-07-13 22:28:22 -07:00
scheduled_messages.py ruff: Fix UP007 Use X | Y for type annotations. 2024-07-13 22:28:22 -07:00
scim_filter.py zerver: Replace uri with url in local variables and comments. 2024-07-14 22:30:28 -07:00
scim.py scim: Add None check for email_new_value. 2024-12-21 21:06:53 -08:00
send_email.py send_email: Parse emails in a way mypy 1.14 understands. 2024-12-21 21:06:53 -08:00
server_initialization.py groups: Remove id_field_name field from GroupPermissionSetting. 2024-12-04 11:15:17 -08:00
sessions.py sessions: Use the narrow user fetch when expiring sessions. 2025-02-13 12:40:53 -08:00
singleton_bmemcached.py ruff: Fix UP006 Use list instead of List for type annotation. 2024-07-13 22:28:22 -07:00
soft_deactivation.py handle_missedmessage_emails: Update codepath to queue event on commit. 2024-12-04 12:14:23 -08:00
sounds.py ruff: Fix UP006 Use list instead of List for type annotation. 2024-07-13 22:28:22 -07:00
sqlalchemy_utils.py ruff: Fix UP035 Import from collections.abc, typing instead. 2024-07-13 22:28:22 -07:00
storage.py storage: Simplify system bot avatar logic. 2024-10-25 10:59:57 -07:00
stream_color.py ruff: Fix UP006 Use list instead of List for type annotation. 2024-07-13 22:28:22 -07:00
stream_subscription.py stream: Move bulk_get_subscriber_peer_info to subscription_info. 2025-02-11 15:09:16 -08:00
stream_topic.py ruff: Fix UP006 Use list instead of List for type annotation. 2024-07-13 22:28:22 -07:00
stream_traffic.py ruff: Fix UP007 Use X | Y for type annotations. 2024-07-13 22:28:22 -07:00
streams.py streams: Optimize computing users with metadata access. 2025-02-14 12:00:37 -08:00
string_validation.py message_send: Add support to send message with an empty topic name. 2025-01-07 17:24:00 -08:00
subdomains.py ruff: Fix UP007 Use X | Y for type annotations. 2024-07-13 22:28:22 -07:00
subscription_info.py streams: Optimize computing users with metadata access. 2025-02-14 12:00:37 -08:00
templates.py help-links: Limit billing related relative gear menu links. 2024-09-30 11:35:45 -07:00
test_classes.py users: Remove unnecessary get_api_key helper. 2025-02-13 12:40:53 -08:00
test_console_output.py ruff: Fix UP035 Import from collections.abc, typing instead. 2024-07-13 22:28:22 -07:00
test_data.source.txt Rename default branch to ‘main’. 2021-09-06 12:56:35 -07:00
test_fixtures.py migration_status: Move connection.close_all() to test_fixtures.py. 2025-01-24 17:08:37 -08:00
test_helpers.py test_message_summary: Add a basic test. 2025-01-27 12:23:40 -08:00
test_runner.py python: Simplify with str.removeprefix, str.removesuffix. 2024-09-03 12:30:16 -07:00
tex.py ruff: Fix UP007 Use X | Y for type annotations. 2024-07-13 22:28:22 -07:00
thumbnail.py import_realm: Do not enqueue thumbnails on ImageAttachment creation. 2025-01-31 14:29:57 -08:00
timeout.py ruff: Fix UP035 Import from collections.abc, typing instead. 2024-07-13 22:28:22 -07:00
timestamp.py python: Consistently use from…import for datetime. 2023-12-05 12:01:18 -08:00
timezone.py ruff: Fix UP006 Use list instead of List for type annotation. 2024-07-13 22:28:22 -07:00
topic_sqlalchemy.py narrow: Migrate legacy SQLAlchemy select syntax. 2024-07-16 14:50:30 -07:00
topic.py markdown: Convert topic links generated by "#-mentions" to permalinks. 2025-02-03 18:48:24 -08:00
transfer.py upload: Rename "upload_image_to_s3"; it is not only for images. 2024-09-09 12:40:17 -07:00
typed_endpoint_validators.py user_settings: Migrate to typed_endpoint. 2024-07-31 17:10:06 -07:00
typed_endpoint.py requirements: Upgrade Python requirements. 2025-01-14 09:42:16 -08:00
types.py stream_delete_event: Include only stream IDs in the event. 2025-01-24 17:58:32 -08:00
url_decoding.py urls: Generate narrow links in backend with "channel" operator. 2024-10-11 17:00:23 -07:00
url_encoding.py urls: Generate narrow links in backend with "channel" operator. 2024-10-11 17:00:23 -07:00
url_redirects.py help: Update for subscribe/unsubscribe user to channel terminology. 2025-02-10 15:54:35 -08:00
user_agent.py ruff: Fix UP006 Use list instead of List for type annotation. 2024-07-13 22:28:22 -07:00
user_counts.py ruff: Fix UP006 Use list instead of List for type annotation. 2024-07-13 22:28:22 -07:00
user_groups.py streams: Optimize computing users with metadata access. 2025-02-14 12:00:37 -08:00
user_message.py ruff: Fix UP007 Use X | Y for type annotations. 2024-07-13 22:28:22 -07:00
user_status.py ruff: Fix UP007 Use X | Y for type annotations. 2024-07-13 22:28:22 -07:00
user_topics.py narrow: Fix unmuted and followed topics not visible in combined feed. 2024-12-08 18:34:28 -08:00
users.py users: Remove unnecessary get_api_key helper. 2025-02-13 12:40:53 -08:00
utils.py ruff: Fix UP035 Import from collections.abc, typing instead. 2024-07-13 22:28:22 -07:00
validator.py endpoints: Remove the has_request_variables decorator. 2024-09-05 16:02:12 -07:00
widget.py python: Simplify with str.removeprefix, str.removesuffix. 2024-09-03 12:30:16 -07:00
zcommand.py python: Simplify with str.removeprefix, str.removesuffix. 2024-09-03 12:30:16 -07:00
zephyr.py python: Simplify with str.removeprefix, str.removesuffix. 2024-09-03 12:30:16 -07:00
zulip_update_announcements.py zulip_updates: Raise error to explicitly log deactivated channel case. 2025-02-05 12:22:39 -08:00