Go to file
Mateusz Mandera 3ccd53ce20 custom_profile_fields: Make transaction no longer durable.
Fixes ##31935.

do_update_user_custom_profile_data_if_change can't be durable as it's
invoked within `sync_ldap_user_data`, which is already in
transaction.atomic.

This change requires a few additional tweaks to untangle other related
transactions. The top level view functions up the codepath now use
durable=True. check_remove_custom_profile_field_value is called inside
do_update_user, so it no longer can be durable and should be switched to
savepoint=False. In turn, its remaining caller - the view
remove_user_custom_profile_data - gets switched to durable=True.
2024-10-14 16:30:46 -07:00
.github ci: Test upgrades from Noble and 9.0. 2024-07-26 14:25:49 -07:00
.tx
.vscode
analytics audit-log: Move subscription event types to AuditLogEventType enum. 2024-09-09 11:50:13 -07:00
api_docs user_groups: Add can_leave_group setting for user group. 2024-10-14 11:44:27 -07:00
confirmation migrations: Squash most confirmation migrations. 2024-08-23 17:15:35 -07:00
corporate analytics: Pass subgroup=None to improve indexing. 2024-10-02 14:11:44 -04:00
docs settings_org: Convert module to typescript. 2024-10-14 15:33:01 -07:00
help docs: Update keyboard shortcuts to always show "Fn" key option. 2024-10-14 15:14:10 -07:00
help-beta dependencies: Upgrade JavaScript dependencies. 2024-10-04 08:47:07 -07:00
locale i18n: Update translation data from Transifex. 2024-07-25 12:34:41 -07:00
patches dependencies: Upgrade JavaScript dependencies. 2024-10-04 08:47:07 -07:00
pgroonga migrations: Import BaseDatabaseSchemaEditor from its canonical module. 2023-03-05 14:46:28 -08:00
puppet nagios: Switch staging hosts to not page, but send a zulip. 2024-10-08 16:55:07 -07:00
requirements requirements: Upgrade Python requirements. 2024-09-24 19:27:21 -07:00
scripts restart-server: Add a --only-django for rolling Django restarts. 2024-10-08 12:53:21 -07:00
static hello: Add interactive block showing basic usage. 2024-10-10 11:42:29 -07:00
stubs/taint endpoints: Remove the has_request_variables decorator. 2024-09-05 16:02:12 -07:00
templates docs: Update existing links to use "channel" operator. 2024-10-11 17:00:23 -07:00
tools settings_org: Convert module to typescript. 2024-10-14 15:33:01 -07:00
var/puppeteer
web message_events: Remove unnecessary filtering of msg ids to remove. 2024-10-14 15:43:48 -07:00
zerver custom_profile_fields: Make transaction no longer durable. 2024-10-14 16:30:46 -07:00
zilencer settings: Add group_creator as default for can_manage_group. 2024-10-01 17:35:14 -07:00
zproject scheduled_messages: Remove separate logfile. 2024-10-04 14:22:37 -07:00
.codecov.yml
.codespellignore codespell: Fix spelling mistakes caught by codespell. 2024-05-31 14:32:33 -07:00
.editorconfig editorconfig: Use [[shell]] section for shfmt options. 2024-02-22 16:36:16 -05:00
.eslintignore web: Move web app to ‘web’ directory. 2023-02-23 16:04:17 -08:00
.eslintrc.js eslint: Fix unicorn/prefer-node-protocol. 2024-10-08 16:54:15 -07:00
.gitattributes
.gitignore tsconfig: Enable composite. 2024-06-09 12:08:03 -07:00
.gitlint lint: Update line-length for commit message to 72 in gitlint. 2023-05-01 10:35:52 -07:00
.mailmap mailmap: Canonicalize name for Kunal Sharma. 2024-07-25 11:23:44 -07:00
.npmignore
.npmrc dependencies: Switch to pnpm. 2023-03-20 15:48:29 -07:00
.prettierignore marked: Fix type stub to declare marked as a CommonJS module. 2024-06-08 00:26:38 -07:00
.pyre_configuration
.readthedocs.yaml readthedocs: Add a configuration file. 2023-02-03 16:36:54 -08:00
.sonarcloud.properties
CODE_OF_CONDUCT.md linter: Add check for comma after "e.g." in md files. 2024-07-05 15:36:24 -07:00
CONTRIBUTING.md contributor docs: Clarify how to claim a mobile issue 2024-10-03 16:45:50 -07:00
Dockerfile-postgresql docs: Fix grammar errors found by mwic. 2023-10-09 13:24:09 -07:00
LICENSE
NOTICE
README.md docs: Update Black and isort references to Ruff. 2024-07-17 18:33:21 -07:00
SECURITY.md docs: Update .html links pointing to "Upgrade Zulip" or "Modify Zulip". 2023-08-11 16:49:32 -07:00
Vagrantfile Upgrade development environment to Ubuntu 22.04. 2024-04-01 13:27:39 -07:00
manage.py ruff: Fix UP007 Use `X | Y` for type annotations. 2024-07-13 22:28:22 -07:00
package.json dependencies: Upgrade JavaScript dependencies. 2024-10-04 08:47:07 -07:00
pnpm-lock.yaml dependencies: Upgrade JavaScript dependencies. 2024-10-04 08:47:07 -07:00
pnpm-workspace.yaml help-beta: Create initial starlight project. 2024-08-02 18:18:01 -07:00
prettier.config.js
pyproject.toml restart-server: Wait until chain reload has completed. 2024-08-29 12:12:34 -07:00
stylelint.config.js dependencies: Upgrade JavaScript dependencies. 2023-07-21 15:58:42 -07:00
tsconfig.json help-beta: Create initial starlight project. 2024-08-02 18:18:01 -07:00
version.py user_groups: Add can_leave_group setting for user group. 2024-10-14 11:44:27 -07:00

README.md

Zulip overview

Zulip is an open-source team collaboration tool with unique topic-based threading that combines the best of email and chat to make remote work productive and delightful. Fortune 500 companies, leading open source projects, and thousands of other organizations use Zulip every day. Zulip is the only modern team chat app that is designed for both live and asynchronous conversations.

Zulip is built by a distributed community of developers from all around the world, with 74+ people who have each contributed 100+ commits. With over 1000 contributors merging over 500 commits a month, Zulip is the largest and fastest growing open source team chat project.

Come find us on the development community chat!

GitHub Actions build status coverage status Mypy coverage Ruff code style: prettier GitHub release docs Zulip chat Twitter GitHub Sponsors

Getting started

You may also be interested in reading our blog, and following us on Twitter and LinkedIn.

Zulip is distributed under the Apache 2.0 license.