Commit Graph

64828 Commits

Author SHA1 Message Date
Anders Kaseorg
71fbc93c03 popover_menus: Avoid jQuery sizzle extension :visible.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2025-05-22 10:40:15 -07:00
Anders Kaseorg
42b05fdd5f navbar_menus: Avoid jQuery sizzle extension :visible.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2025-05-22 10:40:15 -07:00
Alex Vandiver
df74c54f38 find_account: Fix HTML version of email.
This was broken in the refactor in 0078310be7.
2025-05-22 10:31:21 -07:00
Alex Vandiver
198a5a8294 email_senders: Handle a None realm_id.
Some codepaths send an event with `realm_id=None` -- which we still
must trim out of the event, even if we do not add a `realm` value for
them.
2025-05-22 10:30:39 -07:00
Anders Kaseorg
42360c9477 production-build: Bump es-check language version to es2022.
Some checks failed
Code scanning / CodeQL (push) Has been cancelled
Zulip production suite / Ubuntu 22.04 production build (push) Has been cancelled
Zulip CI / ${{ matrix.name }} (zulip/ci:bookworm, true, false, Debian 12 (Python 3.11, backend + documentation), bookworm) (push) Has been cancelled
Zulip CI / ${{ matrix.name }} (zulip/ci:jammy, false, true, Ubuntu 22.04 (Python 3.10, backend + frontend), jammy) (push) Has been cancelled
Zulip CI / ${{ matrix.name }} (zulip/ci:noble, false, false, Ubuntu 24.04 (Python 3.12, backend), noble) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:bookworm, --test-custom-db, Debian 12 production install with custom db name and user, bookworm) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:jammy, , Ubuntu 22.04 production install and PostgreSQL upgrade with pgroonga, jammy) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:noble, , Ubuntu 24.04 production install, noble) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:bookworm-7.0, 7.0 Version Upgrade, bookworm) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:bookworm-8.0, 8.0 Version Upgrade, bookworm) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:jammy-6.0, 6.0 Version Upgrade, jammy) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:noble-10.0, 10.0 Version Upgrade, noble) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:noble-9.0, 9.0 Version Upgrade, noble) (push) Has been cancelled
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2025-05-21 16:30:07 -07:00
PieterCK
201a71b575 mattermost_import: Except error when converting messages HTML.
This adds a try-except block when running html2text when processing raw
messages from HTML to markdown.

convert_html_to_text is added mainly for testing convinience. We don't
have any sample of Mattermosts' problematic content that could trigger
this sort of error yet, so the test mocks convert_html_to_text to raise
error instead.
2025-05-21 16:08:30 -07:00
PieterCK
45b396393f mattermost_import: Log when processing messages.
This logs a line for every batch of messages processed by
process_list_in_batches.
2025-05-21 16:08:30 -07:00
Lauryn Menard
8830373c9e demo-orgs: Disable allowing users to join until owner email set.
Until a demo organization creator sets an email address, we want to
restrict other users from joining the organization. Therefore, we
disable changing the "invite_required" setting for the organization
until they set their email address. Otherwise, the owner could
share the demo organization URL with someone and they could create
an account via the homepage.

Checks the demo organization owner delivery email address state
on the server-side.

Disables updating the organization setting in the web app UI.
2025-05-21 15:52:38 -07:00
Lauryn Menard
c9592c62f8 demo-orgs: Check owner email state when changing subdomain.
Enforce checking the demo organization owner delivery email on
the server-side when converting the organization to a permanent
organization via changing the subdomain.
2025-05-21 15:52:38 -07:00
Karl Stolley
eec8045b6b user_circles: Adjust offline circle for gray highlight. 2025-05-21 15:27:22 -07:00
Karl Stolley
70f32138df typeahead: Match active colors to dropdown items. 2025-05-21 15:27:22 -07:00
Karl Stolley
e406b7a013 user_circles: Bump offline contrast in typeahead highlight. 2025-05-21 15:27:22 -07:00
Karl Stolley
fd49c20b58 user_circles: Bump up offline-circle contrast. 2025-05-21 15:27:22 -07:00
Karl Stolley
6192341830 thumbnails: Use more muted background, high-contrast hover. 2025-05-21 15:23:24 -07:00
Karl Stolley
115411ca4a markdown: Present message embeds with logical props. 2025-05-21 15:19:08 -07:00
Karl Stolley
753fb56b31 markdown: Present blockquotes with logical props. 2025-05-21 15:19:08 -07:00
Karl Stolley
eedcb2cfe4 browserslist: Add support for logical props.
Co-authored-by: Anders Kaseorg <anders@zulip.com>
2025-05-21 15:19:08 -07:00
Lauryn Menard
2fac27afb9 demo-orgs: Check owner email for missed message emails.
It is possible that a demo organization owner will receive a direct
message from a bot when they haven't yet added an email to their
account, e.g., the Notification bot sends a reminder about watching
the intro to Zulip onboarding video.

Adds a check and early return in handle_missedmessage_emails for
this demo organization owner case.
2025-05-21 12:56:27 -07:00
Vector73
c5c1b79580 tools: Update docs for create-api-changelog tool. 2025-05-21 12:04:45 -07:00
Alya Abbott
98b90a8da1 updates: Add update message (level=16). 2025-05-21 07:33:32 -07:00
Kislay Verma
92467f232f buddy_data: Clean up unnecessary rewires in test.
Instead of rewiring `narrow_state` functions, we create appropriate
filters to organically use the code paths during tests.

Fixes part of #32326.
2025-05-20 17:03:00 -07:00
Kislay Verma
5f86ac6e36 buddy_data: Fix error in test.
The test `get_conversation_participants` didn't need
rewiring in the first place.

The filter was not properly created - the field `channel_id`
was wrongly being used instead of `stream_id`.

Once the filter was fixed, the code automatically returned
 the expected stream_id and topic, without rewiring.

This eliminated the use of override_rewire in that test.

Fixes part of #32326.
2025-05-20 17:03:00 -07:00
Kislay Verma
b3fd46050e typeahead_helper: Clean un unnecessary rewires in test.
Instead of rewiring `compose_state`, we use its functions
to organically obtain the stream name etc as desired.

Fixes part of #32326.
2025-05-20 17:03:00 -07:00
Kislay Verma
059d72c908 pill_typeahead: Clean up unnecessary rewires in test.
This commit effectively shifts the mocking to a
lower level by mocking `typeahead_list_item.hbs`
instead of higher-level functions like `render_person`,
`render_user_group` and `render_stream`. This helps
eliminate the rewiring of those functions.

These functions are rigorously tested in
`typeahead_helper.test.cjs`.

Fixes part of #32326.
2025-05-20 17:03:00 -07:00
Kislay Verma
7f6e0aced1 drafts: Clean up unnecessary rewires in test.
This commit removes unnecessary use of override_rewire
in drafts.test.cjs, and creates data instead of mocking
functions returning that data.

It helped eliminate `stream_data.rewire_get_color` and
`sub_store.rewire_get`.

Fixes part of #32326.
2025-05-20 17:03:00 -07:00
Lauryn Menard
28b1a071fe demo-orgs: Schedule onboarding/welcome emails when owner adds email.
When a demo organization creator confirms their email change for
their account, we now schedule the series of onboarding emails
via enqueue_welcome_emails.

If a demo organization is deactivated/deleted before the emails
are sent, any scheduled emails are deleted as part of that process.

We use the current datetime for getting the onboarding schedule
for the onboarding emails in this case, instead of the datetime the
user joined/created the organization.
2025-05-20 16:25:51 -07:00
Prakhar Pratyush
bf325ff6b2 hotkey: Fix toggle compose preview (Alt+P) hotkey.
The hotkey for 'Toggle compose preview' was not working due to
a small logical bug introduced in 26f664be69.

We were calling `compose.show_preview_area()` when the compose
is already in preview mode, instead of `compose.clear_preview_area()`.

This commit fixes the bug.
2025-05-20 16:22:01 -07:00
Aman Agrawal
a9b51f80ba people: Defer loading user data during app load.
This should greatly reduce the symptoms of a bug where a stale
realm_users cache (missing a newly created user) results in the web
client missing the new user and throwing exceptions.
2025-05-20 13:55:48 -07:00
Aman Agrawal
f94b1d444e echo: Use ID instead of email to access user data.
This is required for just testing the changes and not
required for working of the app.
2025-05-20 13:55:48 -07:00
Tim Abbott
30866ce562 api: Increment API feature level to 389. 2025-05-20 13:25:06 -07:00
Sahil Batra
222ccac765 register: Include folder data for web public streams for spectators.
Spectators would only receive data for channel folders that have
at least one web-public stream.
2025-05-20 13:25:06 -07:00
Sahil Batra
509a84403b streams: Refactor get_web_public_streams_queryset.
This commit updates code to not prefetch group setting
fields using select_related as we do not need to
prefetch these settings for all the cases and we instead
prefetch these in callers whenever needed.
2025-05-20 13:25:06 -07:00
Sahil Batra
2f34e6d24c streams: Add API support to update folder of a stream.
Fixes part of #31972.
2025-05-20 13:25:06 -07:00
Sahil Batra
75ac85ff4c python: Add pydantic-partials dependency. 2025-05-20 13:25:06 -07:00
Sahil Batra
ec96fc9659 streams: Allow adding newly created channels to folders.
Fixes part of #31972.
2025-05-20 13:25:06 -07:00
Sahil Batra
202bebda89 streams: Add folder foreign key to Stream table.
This commit also adds "folder_id" field in stream and subscription
objects.

Fixes part of #31972.
2025-05-20 13:25:06 -07:00
Sahil Batra
5de0f265bd channel_folders: Add support to update channel folders.
Fixes part of #31972.
2025-05-20 13:25:06 -07:00
Sahil Batra
e93667cc06 channel_folders: Add API endpoint to get all channel folders.
Fixes part of #31972.
2025-05-20 13:25:06 -07:00
Sahil Batra
332abd9e91 channel_folder: Add API to create a channel folder.
This commit also includes code to include channel_folders
data in register response.

Fixes part of #31972.
2025-05-20 13:25:06 -07:00
Sahil Batra
350f6a1fa1 streams: Add ChannelFolder table.
Fixes part of #31972.
2025-05-20 13:25:06 -07:00
Evy Kassirer
e2b90176ee buddy_list: Clear search bar when the narrow changes. 2025-05-20 13:16:04 -07:00
apoorvapendse
9912109e82 setup_docs: Add troubleshooting steps for WSL2.
This commit adds steps to troubleshoot errors encountered
because of certain services like postgresql not starting
on WSL2.

The common reason behind this is port conflicts with other
services running on some other WSL2 instance or the host
Windows system.

This commit provides a guide to handle these issues, and
also provides some additional tips to WSL2 users to avoid
facing these issues in the future.

Fixes #32718.
2025-05-20 10:53:21 -07:00
apoorvapendse
5b4f9a42b7 setup_docs: Use operating system tabs for troubleshooting errors. 2025-05-20 10:53:21 -07:00
Apoorva Pendse
24b47dd263 setup_docs: Extract common Windows VM errors to a shared file.
The assumption here is that VirtualBox is used only for Windows. This
is because we do not mention VirtualBox for Unix based platforms prior
to this troubleshooting errors section.

Prep for organizing common errors into operating systems tabs.
2025-05-20 10:53:21 -07:00
Apoorva Pendse
c51542e44c setup_docs: Extract common unix errors to a shared file.
Prep for organizing common errors into operating system tabs.
2025-05-20 10:53:21 -07:00
apoorvapendse
3116925a6f setup_docs: Extract common vagrant errors to a shared file.
This change is done as a prerequisite step to
eventually add tabs for different platforms
for the troubleshooting section.

The reason behind making this change is to group
the errors common to vagrant setup when using
either docker or VirtualBox backends which would
make it convenient to maintain in the future.
2025-05-20 10:53:21 -07:00
apoorvapendse
713bdb85d0 setup_docs: Update troubleshooting intro for Vagrant and WSL. 2025-05-20 10:53:21 -07:00
apoorvapendse
34d8f83cf5 setup_docs: Capitalize information points.
Fixes: https://github.com/zulip/zulip/pull/32719#discussion_r2081928031.
2025-05-20 10:53:21 -07:00
apoorvapendse
82846f89ca setup_docs: Deduplicate bug reporting steps.
This removes the bug reporting steps from
the intro of the setup tutorial, as it
is already present in the `Troubleshooting
and common errors` section.
2025-05-20 10:53:21 -07:00
Sahil Batra
ba1780c6b2 hash_util: Redirect '#groups/new' to '#groups/your' on limited plans.
This commit adds code to redirect '#groups/new' to '#groups/your'
if realm is on limited plan like we do when user does not have
permission to create groups.
2025-05-20 10:45:13 -07:00