zulip/zerver/lib
Alex Vandiver 7de527f3bc soft_deactivation: Use much faster bulk_insert_all_ums.
As noted in the docstring for `bulk_insert_ums`, this is at least one
order of magnitude faster than using `bulk_create`.  This also
includes a `ON CONFLICT DO NOTHING` which allows multiple
soft-reactivations to run at once without failing.  We also adjust the
update of `last_active_message_id` to be safe against races.
2024-03-26 10:52:37 -07:00
..
markdown help: Add "View stream subscribers" page. 2024-03-05 10:22:18 -08:00
upload requirements: Upgrade Python requirements. 2024-01-29 10:41:54 -08:00
url_preview ruff: Fix RUF022 `__all__` is not sorted. 2024-03-01 09:30:04 -08:00
webhooks mypy: Enable new error explicit-override. 2023-10-12 12:28:41 -07:00
__init__.py
addressee.py zulip_updates: Send zulip updates based on zulip_update_*_level. 2024-03-20 11:48:06 -07:00
alert_words.py models: Extract zerver.models.alert_words. 2023-12-16 22:08:44 -08:00
async_utils.py mypy: Enable new error explicit-override. 2023-10-12 12:28:41 -07:00
attachments.py models: Move some functions to zerver.lib.attachments. 2023-12-16 22:08:44 -08:00
avatar.py python: Consistently use from…import for urllib.parse. 2023-12-05 13:03:07 -08:00
avatar_hash.py
bot_config.py ruff: Fix UP032 Use f-string instead of `format` call. 2023-08-02 15:58:55 -07:00
bot_lib.py ruff: Fix PLW0108 Lambda may be unnecessary. 2024-03-01 09:30:04 -08:00
bot_storage.py ruff: Fix UP032 Use f-string instead of `format` call. 2024-03-21 08:59:17 -07:00
bulk_create.py models: Extract zerver.models.groups. 2023-12-16 22:08:44 -08:00
cache.py caches: Only take the realm_id, not the Realm, as a cache key function. 2024-03-04 16:35:57 -08:00
cache_helpers.py caches: Only take the realm_id, not the Realm, as a cache key function. 2024-03-04 16:35:57 -08:00
camo.py
ccache.py requirements: Upgrade Python requirements. 2024-01-29 10:41:54 -08:00
compatibility.py python: Consistently use from…import for datetime. 2023-12-05 12:01:18 -08:00
context_managers.py context_managers: Open file in write mode in lockfile_nonblocking. 2024-03-06 10:35:02 -08:00
create_user.py models: Extract zerver.models.realms. 2023-12-16 22:08:44 -08:00
data_types.py python: Elide unnecessary list wrappers. 2023-09-13 12:41:23 -07:00
db.py test_helpers: Fix logging in cursor_executemany mock. 2023-11-15 15:27:54 -08:00
debug.py
default_streams.py streams: Pass stream_weekly_traffic field in stream objects. 2023-08-06 18:06:42 -07:00
dev_ldap_directory.py python: Reformat with Ruff formatter. 2024-02-29 17:07:16 -08:00
digest.py models: Extract zerver.models.streams. 2023-12-16 22:08:44 -08:00
display_recipient.py refactor: Replace HUDDLE with DIRECT_MESSAGE_GROUP. 2024-03-21 16:39:33 -07:00
domains.py
drafts.py python: Reformat with Ruff formatter. 2024-02-29 17:07:16 -08:00
email_mirror.py refactor: Replace HUDDLE with DIRECT_MESSAGE_GROUP. 2024-03-21 16:39:33 -07:00
email_mirror_helpers.py
email_notifications.py refactor: Replace HUDDLE with DIRECT_MESSAGE_GROUP. 2024-03-21 16:39:33 -07:00
email_validation.py email_validation: Merge two implementations of a disposable-email check. 2024-02-27 10:19:23 -08:00
emoji.py models: Extract zerver.models.realm_emoji. 2023-12-16 22:08:44 -08:00
emoji_utils.py emoji: Match emoji sequences in markdown. 2023-08-23 16:18:15 -07:00
event_schema.py custom_profile_fields: Add "required" parameter to the profile fields. 2024-03-21 10:48:54 -07:00
events.py events: Change format of authentication_methods realm_update_dict event. 2024-03-05 11:48:58 -08:00
exceptions.py zilencer: Improve json error when plan doesn't allow push notifs. 2024-02-07 10:36:33 -08:00
export.py refactor: Replace HUDDLE with DIRECT_MESSAGE_GROUP. 2024-03-21 16:39:33 -07:00
external_accounts.py python: Reformat with Ruff formatter. 2024-02-29 17:07:16 -08:00
fix_unreads.py ruff: Fix PERF401 Use a list comprehension to create a transformed list. 2023-08-07 17:23:55 -07:00
generate_test_data.py requirements: Upgrade Python requirements. 2024-01-29 10:41:54 -08:00
github.py
home.py remote_billing: Make "plan management" always available. 2024-03-05 11:53:51 -08:00
hotspots.py onboarding: Show one-time modal to introduce recent conversations view. 2024-03-19 09:32:59 -07:00
html_diff.py
html_to_text.py widgets: Rename confusing attribute name in `tabbed_sections.py`. 2023-08-31 11:55:28 -07:00
i18n.py i18n: Fix default language for users created via API/LDAP. 2023-10-01 21:10:13 +02:00
import_realm.py import: Skip "active" check, and analytics, for crossrealm bots. 2024-03-25 10:21:48 -07:00
initial_password.py
integrations.py integrations: Create incoming webhook for GitHub Sponsors. 2024-02-07 09:52:03 -08:00
logging_util.py mypy: Enable new error explicit-override. 2023-10-12 12:28:41 -07:00
management.py models: Extract zerver.models.clients. 2023-12-16 22:08:44 -08:00
mdiff.py
mention.py models: Extract zerver.models.streams. 2023-12-16 22:08:44 -08:00
message.py messages: Only check the UserMessage row if necessary. 2024-03-22 09:30:17 -07:00
message_cache.py refactor: Replace HUDDLE with DIRECT_MESSAGE_GROUP. 2024-03-21 16:39:33 -07:00
migrate.py migration: Make 'rename_indexes_constraints' a lib function. 2023-12-06 18:19:20 -08:00
mobile_auth_otp.py
muted_users.py python: Consistently use from…import for datetime. 2023-12-05 12:01:18 -08:00
name_restrictions.py name_restrictions: Reserve additional subdomains. 2024-02-07 12:10:00 -08:00
narrow.py refactor: Replace HUDDLE with DIRECT_MESSAGE_GROUP. 2024-03-21 16:39:33 -07:00
narrow_helpers.py requirements: Upgrade Python requirements. 2024-01-29 10:41:54 -08:00
notes.py requirements: Upgrade Python requirements. 2024-01-29 10:41:54 -08:00
notification_data.py models: Extract zerver.models.scheduled_jobs. 2023-12-16 22:08:44 -08:00
onboarding.py zulip_updates: Send zulip updates based on zulip_update_*_level. 2024-03-20 11:48:06 -07:00
outgoing_http.py outgoing_http: Support fractional-second timeouts. 2024-03-15 15:34:12 -07:00
outgoing_webhook.py message: Split MessageDict and friends into its own file. 2024-02-14 12:27:03 -08:00
per_request_cache.py per-request caches: Add per_request_cache library. 2023-08-11 11:09:34 -07:00
presence.py models: Move query_for_ids to zerver.lib.query_helpers. 2023-12-16 22:08:44 -08:00
profile.py
push_notifications.py notifications: Shorten string for redacted content. 2024-03-22 09:37:51 -07:00
pysa.py
query_helpers.py models: Move query_for_ids to zerver.lib.query_helpers. 2023-12-16 22:08:44 -08:00
queue.py requirements: Upgrade Python requirements. 2024-01-29 10:41:54 -08:00
rate_limiter.py mypy: Enable new error explicit-override. 2023-10-12 12:28:41 -07:00
realm_description.py
realm_icon.py
realm_logo.py
recipient_parsing.py request: Extract out methods from 'scheduled_messages' to reuse. 2023-10-10 17:15:28 -07:00
recipient_users.py refactor: Replace HUDDLE with DIRECT_MESSAGE_GROUP. 2024-03-21 16:39:33 -07:00
redis_utils.py
remote_server.py push-bouncer: Exclude LoggingCountStats with partial data. 2024-02-26 17:53:12 -08:00
request.py python: Reformat with Ruff formatter. 2024-02-29 17:07:16 -08:00
response.py mypy: Enable new error explicit-override. 2023-10-12 12:28:41 -07:00
rest.py python: Reformat with Ruff formatter. 2024-02-29 17:07:16 -08:00
retention.py refactor: Replace HUDDLE with DIRECT_MESSAGE_GROUP. 2024-03-21 16:39:33 -07:00
safe_session_cached_db.py mypy: Enable new error explicit-override. 2023-10-12 12:28:41 -07:00
scheduled_messages.py models: Extract zerver.models.scheduled_jobs. 2023-12-16 22:08:44 -08:00
scim.py models: Extract zerver.models.realms. 2023-12-16 22:08:44 -08:00
scim_filter.py
send_email.py send_email: Distinct emails means distinct, case-insensitively. 2024-01-04 10:46:53 -08:00
server_initialization.py backends: Implementation of restricting certain backends by plan. 2024-03-05 11:48:58 -08:00
sessions.py models: Extract zerver.models.users. 2023-12-16 22:08:44 -08:00
singleton_bmemcached.py
soft_deactivation.py soft_deactivation: Use much faster bulk_insert_all_ums. 2024-03-26 10:52:37 -07:00
sounds.py
sqlalchemy_utils.py mypy: Enable new error explicit-override. 2023-10-12 12:28:41 -07:00
storage.py mypy: Enable new error explicit-override. 2023-10-12 12:28:41 -07:00
stream_color.py
stream_subscription.py streams: Send user creation events on adding subscribers. 2023-11-21 23:58:45 -08:00
stream_topic.py
stream_traffic.py python: Consistently use from…import for datetime. 2023-12-05 12:01:18 -08:00
streams.py streams: Remove a lie from the docstring. 2024-02-14 12:27:03 -08:00
string_validation.py lib: Rename *topic local variables to *topic_name. 2024-01-15 09:40:43 -08:00
subdomains.py python: Consistently use from…import for urllib.parse. 2023-12-05 13:03:07 -08:00
subscription_info.py models: Extract zerver.models.streams. 2023-12-16 22:08:44 -08:00
templates.py
test_classes.py messages: Use overloads to only return a user_message if needed. 2024-03-22 09:30:17 -07:00
test_console_output.py mypy: Enable new error explicit-override. 2023-10-12 12:28:41 -07:00
test_data.source.txt
test_fixtures.py
test_helpers.py refactor: Replace HUDDLE with DIRECT_MESSAGE_GROUP. 2024-03-21 16:39:33 -07:00
test_runner.py mypy: Enable new error explicit-override. 2023-10-12 12:28:41 -07:00
tex.py katex: Replace subprocess call with minimal external service. 2024-03-15 15:34:12 -07:00
thumbnail.py
timeout.py mypy: Enable new error explicit-override. 2023-10-12 12:28:41 -07:00
timestamp.py python: Consistently use from…import for datetime. 2023-12-05 12:01:18 -08:00
timezone.py
topic.py topic: Fix history order for topic moves. 2024-02-20 21:30:32 -08:00
transfer.py uploads: Allow uploads to set storage class. 2023-07-19 16:19:34 -07:00
typed_endpoint.py python: Reformat with Ruff formatter. 2024-02-29 17:07:16 -08:00
types.py custom_profile_fields: Add "required" parameter to the profile fields. 2024-03-21 10:48:54 -07:00
url_encoding.py lib: Rename *topic local variables to *topic_name. 2024-01-15 09:40:43 -08:00
url_redirects.py help: Migrate configure-notification-bot help page to a new URL. 2024-03-20 11:48:06 -07:00
user_agent.py
user_counts.py python: Elide unnecessary list wrappers. 2023-09-13 12:41:23 -07:00
user_groups.py ruff: Fix PERF403 Use a dictionary comprehension instead of a for-loop. 2024-03-01 09:30:04 -08:00
user_message.py user_message: Use INSERT ... ON CONFLICT for historical UM creation. 2024-03-26 10:52:37 -07:00
user_status.py users: Update presence and user status code to support restricted users. 2023-11-21 23:58:45 -08:00
user_topics.py lib: Rename *topic local variables to *topic_name. 2024-01-15 09:40:43 -08:00
users.py refactor: Replace HUDDLE with DIRECT_MESSAGE_GROUP. 2024-03-21 16:39:33 -07:00
utils.py
validator.py timezone: Only look up canonical time zones from the system. 2024-03-01 17:38:08 -08:00
widget.py widgets: Fix bug where a new line right after /todo broke rendering. 2023-09-08 15:39:07 -07:00
zcommand.py ruff: Fix UP032 Use f-string instead of `format` call. 2023-08-02 15:58:55 -07:00
zephyr.py
zulip_update_announcements.py zulip_updates: Send zulip updates based on zulip_update_*_level. 2024-03-20 11:48:06 -07:00