From 22ca76ba2b5133c938ca679b5887d1ac9691bce1 Mon Sep 17 00:00:00 2001 From: Evy Kassirer Date: Wed, 20 Aug 2025 20:49:20 -0700 Subject: [PATCH] stream_data: Delete partial_subscribers off of sub creation attrs. Followup to https://github.com/zulip/zulip/pull/34960#discussion_r2176959839 --- web/src/stream_data.ts | 10 ++++------ web/tests/stream_data.test.cjs | 1 - 2 files changed, 4 insertions(+), 7 deletions(-) diff --git a/web/src/stream_data.ts b/web/src/stream_data.ts index 13e7917b7e..4a16063365 100644 --- a/web/src/stream_data.ts +++ b/web/src/stream_data.ts @@ -1075,9 +1075,11 @@ export function create_sub_from_server_data( // a copy of the object with `_.omit(attrs, 'subscribers')`, but `_.omit` is // slow enough to show up in timings when you have 1000s of streams. - const subscriber_user_ids = attrs.subscribers; + const full_data = attrs.partial_subscribers === undefined; + const subscriber_user_ids = full_data ? attrs.subscribers : attrs.partial_subscribers; delete attrs.subscribers; + delete attrs.partial_subscribers; sub = { render_subscribers: !realm.realm_is_zephyr_mirror_realm || attrs.invite_only, @@ -1104,11 +1106,7 @@ export function create_sub_from_server_data( stream_ids_by_name.set(sub.name, sub.stream_id); sub_store.add_hydrated_sub(sub.stream_id, sub); - if (attrs.partial_subscribers !== undefined) { - peer_data.set_subscribers(sub.stream_id, attrs.partial_subscribers, false); - } else { - peer_data.set_subscribers(sub.stream_id, subscriber_user_ids ?? []); - } + peer_data.set_subscribers(sub.stream_id, subscriber_user_ids ?? [], full_data); return sub; } diff --git a/web/tests/stream_data.test.cjs b/web/tests/stream_data.test.cjs index 7cb56aecc0..6cbb9dc39a 100644 --- a/web/tests/stream_data.test.cjs +++ b/web/tests/stream_data.test.cjs @@ -1271,7 +1271,6 @@ test("create_sub", () => { const antarctica_sub = stream_data.create_sub_from_server_data(antarctica); assert.ok(antarctica_sub); assert.equal(antarctica_sub.color, "#76ce90"); - assert.deepEqual(antarctica_sub.partial_subscribers, [1, 2, 3]); }); test("creator_id", ({override}) => {