element-hq / element-web

A glossy Matrix collaboration client for the web.
https://element.io
GNU Affero General Public License v3.0
11.25k stars 2.01k forks source link

[Epic] Sliding Sync in Element Web #22264

Open novocaine opened 2 years ago

novocaine commented 2 years ago

Why?

Sync performance is poor, both on initial and incremental syncs, and scales linearly with the number of joined rooms.

What?

We’ll integrate support for Sliding Sync which provides a sync mechanism that scales independently of the number of rooms, enabling higher performance for all syncs.

Plan

Internal references

kegsay commented 1 year ago

So this has been in Labs for a while now, and isn't on a branch anymore. At the weekly discussion today we decided that this issue can be closed when:

Johennes commented 1 year ago

Thanks @kegsay. I've updated the checklist in the description above. Do you rely on help from the app team for the remaining tasks?

Johennes commented 1 year ago

From talking to @andybalaam it sounds like the answer is no for now.

Johennes commented 1 year ago

I'm removing this from the WAT project because empirically we haven't really needed to do much / anything out of the WAT to move this forward. Consequently, there's not much value in tracking it in our roadmap.

kegsay commented 1 year ago

This is mostly on me to deploy the SS proxy to :element.io and get EW looking at .well-known. The former is blocked on OIDC support which is being deployed to :matrix.org today. The latter isn't blocked on anything and could be done by anyone, but will probably be me.

grinapo commented 1 year ago

Is it possible to labs-enable it on released EW, suing self server/ssync proxy? Anything else needed to test apart from enabling?

t3chguy commented 1 year ago

Yes @grinapo via config - https://web-docs.element.dev/Element%20Web/config.html#labs-flags

eternaleye commented 10 months ago

Does the sliding sync proxy need to be deployed on element.io? Or would it suffice for the sliding sync proxy that is deployed on matrix.org already at https://slidingsync.lab.matrix.org (and which is listed in the .well-known entry) to add the necessary CORS headers permitting Element Web to make use of it?

t3chguy commented 10 months ago

@eternaleye the sliding proxy only connects to one server, so you cannot use https://slidingsync.lab.matrix.org/ for servers other than the one it connects to, which you can check using https://slidingsync.lab.matrix.org/client/server.json "server": "https://matrix-client.matrix.org",

EdGeraghty commented 8 months ago

Hi, I wrote a patch to read the .well-known.

It's going to need a bit of TLC from someone who knows what they're doing, but this at least allows me to enable sliding sync from labs!

https://github.com/matrix-org/matrix-react-sdk/pull/12307