Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Process name changes that come back on the sync api #4143

Closed

Conversation

zzorba
Copy link
Contributor

@zzorba zzorba commented Oct 16, 2024

In debugging code, we found that the 'name' that comes back on Room responses in sliding sync was seemingly not being processed. This caused name changes to not be reflected in the client.

  • Public API changes documented in changelogs (optional)

Signed-off-by: Daniel Salinas

@zzorba zzorba force-pushed the process_name_on_sliding_sync branch from 37c8bfd to b38ceb8 Compare October 16, 2024 22:13
@zzorba zzorba force-pushed the process_name_on_sliding_sync branch from b38ceb8 to f9b323d Compare October 16, 2024 22:19
Copy link
Member

@bnjbvr bnjbvr left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the PR, but we've namely deviated from this behavior (that we implemented in the past), because this doesn't work for unnamed DM rooms, where the server would compute a room name, based on the room members ("A and B and C"), which means the server-computed name is always in English, and doesn't fare well with i10n. Accepting this PR would be a regression in terms of that behavior; I suppose you're opening this because you ran into #4051 maybe?

@zzorba
Copy link
Contributor Author

zzorba commented Oct 17, 2024

Yes, we were seeing newly created rooms not receive their name, as well as any room whose name is changed after the initial sync not being updated.

Wouldn't it be possible to change the logic for updating the room name to consider if it is_direct and ignore the stored name in that case in favor of the dynamic localized one? Or store two cached names (server state and local based on heroes) and then prefer the one that applies when accessed?

It seems like the root of the problem here is that it is deciding which name to use during the stream processing (when state might be incomplete), rather than at display time (eventually complete).

@zzorba
Copy link
Contributor Author

zzorba commented Oct 17, 2024

Turned out this was an omission of the sliding-sync proxy go system, exposed by the recent removal of processing timeline events. Closing.

@zzorba zzorba closed this Oct 17, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants