Commit Graph

64739 Commits

Author SHA1 Message Date
Anders Kaseorg
ccfb50d4dd eslint: Enable no-jquery/no-sizzle.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2025-05-18 16:22:15 -07:00
Anders Kaseorg
b5aed2a8db views-util: Avoid jQuery sizzle extension :visible.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2025-05-18 16:22:15 -07:00
Anders Kaseorg
78b75e818a user_group_edit: Avoid jQuery sizzle extensions :hidden, :visible.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2025-05-18 16:22:15 -07:00
Anders Kaseorg
8325a51750 unread_ops: Avoid jQuery sizzle extension :visible.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2025-05-18 16:22:15 -07:00
Anders Kaseorg
6c0e7b20f7 tippyjs: Avoid jQuery selector extension :visible.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2025-05-18 16:22:15 -07:00
Anders Kaseorg
642e22fbc1 stream_create: Avoid jQuery sizzle extension :visible.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2025-05-18 16:22:15 -07:00
Anders Kaseorg
acf23f73a6 sidebar_ui: Avoid jQuery sizzle extension :visible.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2025-05-18 16:22:15 -07:00
Anders Kaseorg
c248459af2 search_pill: Avoid jQuery sizzle extension :visible.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2025-05-18 16:22:15 -07:00
Anders Kaseorg
21fc5d71e1 tests: Move tests out from the middle of the Typeahead mock.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2025-05-18 16:22:15 -07:00
Anders Kaseorg
09bc4d90d3 search: Avoid jQuery sizzle extension :visible.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2025-05-18 16:22:15 -07:00
Anders Kaseorg
551c12a732 signup: Avoid jQuery sizzle extension :hidden.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2025-05-18 16:22:15 -07:00
Anders Kaseorg
ecfc3cb9a4 integrations: Avoid jQuery sizzle extension :visible.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2025-05-18 16:22:15 -07:00
Anders Kaseorg
77a92100df popover_menus_data: Avoid jQuery sizzle extension :visible.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2025-05-18 16:22:15 -07:00
Anders Kaseorg
efefa9f6ad playground_links_popover: Avoid jQuery sizzle extension :visible.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2025-05-18 16:22:15 -07:00
Anders Kaseorg
d8ba3b4ea7 navbar_menus: Avoid jQuery sizzle extension :visible.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2025-05-18 16:22:15 -07:00
Anders Kaseorg
1289e39cd5 messages_overlay_ui: Avoid jQuery sizzle extension :visible.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2025-05-18 16:22:15 -07:00
Anders Kaseorg
bfacb87cc9 message_edit: Avoid jQuery sizzle extension :visible.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2025-05-18 16:22:15 -07:00
Anders Kaseorg
abeba00569 message_actions_popover: Avoid jQuery sizzle extension :visible.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2025-05-18 16:22:15 -07:00
Anders Kaseorg
b0a5b79190 left_sidebar_tooltips: Avoid jQuery sizzle extension :visible.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2025-05-18 16:22:15 -07:00
Anders Kaseorg
26f664be69 hotkey: Avoid jQuery sizzle extension :visible.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2025-05-18 16:22:15 -07:00
Anders Kaseorg
b2c1625b0d emoji_picker: Avoid jQuery sizzle extension :visible.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2025-05-18 16:22:15 -07:00
Anders Kaseorg
4e852f1039 compose_send_menu_popover: Avoid jQuery sizzle extension :visible.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2025-05-18 16:22:15 -07:00
Anders Kaseorg
f3cb557fb2 compose_validate: Avoid jQuery sizzle extension :visible.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2025-05-18 16:22:15 -07:00
Anders Kaseorg
7c6d040fd8 compose_recipient: Avoid jQuery sizzle extension :visible.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2025-05-18 16:22:15 -07:00
Anders Kaseorg
a6a0bda258 compose_banner: Avoid jQuery sizzle extension :visible.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2025-05-18 16:22:15 -07:00
Anders Kaseorg
a360ffd7f6 compose: Move needs-empty-compose class to parent.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2025-05-18 16:22:15 -07:00
Sahil Batra
ef8f23aa05 help: Add instructions for reactivating a group. 2025-05-18 12:41:37 -07:00
Alya Abbott
d445676807 help: Update label for all channels tab. 2025-05-18 12:41:18 -07:00
Alya Abbott
eb088836a9 help: Document UI for unarchiving a channel. 2025-05-18 12:41:18 -07:00
Mateusz Mandera
9a043494fb sync_group: Fix incorrect reference to ldap_logger.
This is an obvious bug/typo introduced in
2cd6f07ffe.
2025-05-18 02:18:40 +02:00
Maneesh Shukla
4a03d73d8d presence_data: Add fallback logic for users with no presence data. 2025-05-16 15:32:50 -07:00
Rohan Gudimetla
acb12fa953 message-formatting: Document previews generated on uploading video.
This commit documents the HTML syntax generated for the previews when
a message is sent linking to an uploaded video.
2025-05-16 13:49:09 -07:00
Mateusz Mandera
a52bc4d71b slack: Handle integration bots with missing data.
We encountered the following two new cases with integration bots in
Slack imports:
1. Bots without the image_72 field in their data. Such bots should fall
   back to gravatar.
2. Bots whose bot_id is the sender of certain messages, but querying the
   bots.info endpoint returns bot_not_found error. We should create
   dummy accounts in place of such bots.
2025-05-16 13:06:28 -07:00
Mateusz Mandera
c3a138cfa8 import: Truncate channel names to MAX_NAME_LENGTH.
Some exports, such as Slack, might generate channel names longer than
our allowed maximum.
2025-05-16 13:06:28 -07:00
Mateusz Mandera
61b6e823b6 slack: Don't create duplicate reactions.
Just like in the prior commit we add similar code in `get_subscription`,
here we do this for reactions. If two Slack accounts, which will be
merged into one Zulip account, posted the same emoji reaction to a
message, we need to avoid duplication.
2025-05-16 13:06:28 -07:00
Mateusz Mandera
86f17026ac slack: Don't create duplicate subscriptions.
In 1517601e9d we added merging of accounts
with the same email address; but didn't prevent duplication of
subscriptions when two Slack accounts, merged into one Zulip account,
belong to a channel.
2025-05-16 13:06:28 -07:00
Alya Abbott
c8f47fa760 help: Tweak Slack export instructions. 2025-05-16 13:03:01 -07:00
whilstsomebody
a4e7621a2c stream_edit: Add loader to reactivate and deactivate stream modals
This commit adds a loading spinner to the confirmation modals for
reactivating and deactivating streams.

Fixes: #33917
2025-05-16 11:39:40 -07:00
whilstsomebody
012986c416 deactivate_modal: Update message in modal to indicate reversibility.
Updated the message in the deactivate channel modal from
"THis action cannot be undone" to "You can always unarchive
the channel.".
2025-05-16 11:39:40 -07:00
whilstsomebody
5c33cc9eab streams: Improve formatting of channel archive/unarchive notifications.
This commit updates the formatting of the channel archive and
unarchive notifications to make the channel name bold and clickable.
The channel name is now displayed as a Markdown link with bold
formatting, ensuring it stands out while remaining a clickable link
to the channel.
2025-05-16 11:39:40 -07:00
whilstsomebody
2780360b00 unarchive: Add support for unarchiving archived channels.
This commit adds support for unarchiving archived channels
by introducing the `is_archived` parameter to the
`PATCH /streams/{stream_id}` API endpoint. Sending a PATCH
request with `is_archived: false` will unarchive the specified
channel.
2025-05-16 11:39:40 -07:00
whilstsomebody
0c4c78a759 stream_data: Cleanup in 'mark_archived' function.
This is a cleanup commit to remove the unnecessary 'or'
condition in the 'mark_archived' function. The condition
was redundant, as the same check is already performed by
verifying whether 'sub' is undefined.
2025-05-16 11:34:56 -07:00
whilstsomebody
94077c91db settings: Do not hide "Generate email address" button when archiving.
Previously, the "generate email" UI was hidden during live-update
when archiving a stream but became visible again on reload. The
pre-commit prevents the UI from being hidden specifically in the
case of archiving and unarchiving a stream.
2025-05-16 11:34:55 -07:00
Alex Vandiver
7a8a8f5f23 puppet: Use Service for PostgreSQL restarts.
Using pg_ctlcluster leaves systemctl thinking the process aborted; and
not all instances (e.g. Docker) have systemctl.
2025-05-16 11:33:20 -07:00
Alex Vandiver
9def655564 puppet: Do not bother manually symlinking hunspell dictionaries.
This code dates back to 57b52310639a; however, this has been handled
by `postgresql-common` adding a post-install trigger to call
`pg_updatedicts` for each new PostgreSQL version, since
`postgresql-common` version 153 (February 2014).
2025-05-16 11:33:20 -07:00
Alex Vandiver
0442bb6f0e upgrade-postgresql: Slightly better error-proof post-upgrade scripts. 2025-05-16 11:33:20 -07:00
Alex Vandiver
3ab6be650b upgrade-postgresql: Explicitly ask to not start the new cluster.
Recent versions of postgresql-common's `pg_upgradecluster`, starting
with version 254, (i.e. on Ubuntu 24.04, but not 22.04) will not just
_suggest_ running the analyze, but will do so automatically.  While
somewhat helpful, it always does so with `--analyze-in-stages`, which
as noted in f77bbd3323, is actually the incorrect choice for us.
Passing `--no-start` ensures that `pg_upgradecluster` consistently
does not do any analyzing, allowing us to start the cluster manually
and then perform the analyze correctly ourselves.
2025-05-16 11:33:20 -07:00
Alex Vandiver
e13f82f048 upgrade-postgresql: Use tags to partially-apply configuration.
This uses the same technique used in 840884ec89, to only apply select
parts of the Puppet configuration.  This is more correct, and simpler,
than attempting to chop out some base puppet roles, and hack around
the `purge => true` supervisor.d configuration.
2025-05-16 11:33:20 -07:00
Alex Vandiver
2dc5c6c50e upgrade-postgresql: Only touch pgroonga_setup.sql.applied if required.
Since c8ec3dfcf6, the file must contain the version that was
configured, or we run `ALTER EXTENSION pgroonga UPDATE`; if the file
is missing, and pgroonga was previously installed, it run `CREATE
EXTENSION pgroonga` which will be an error.  If the file is present
but pgroonga was not configured, a later attempt to enable pgroonga
will incorrectly run `ALTER EXTENSION pgroonga UPDATE` instead of
`CREATE EXTENSION pgroonga`.

If the file existed on the previous version, touch it in the new
PostgreSQL version.  This will ensure that puppet will *always* run
the pgroonga update, which may be necessary in case the pgroonga
version also changed.  At worst, if the pgroonga version has not
changed, this will be a safe no-op.
2025-05-16 11:33:20 -07:00
Alex Vandiver
aa63b40f27 send_email: Enforce in tests that all send_email calls JSON-roundtrip. 2025-05-16 11:30:48 -07:00