Join GitHub today
GitHub is home to over 31 million developers working together to host and review code, manage projects, and build software together.Sign up
riot uses unstable APIs #5325
There are a whole bunch of places in the js-sdk which call apis under the /unstable/ prefix; these are in turn used by riot-web. The ENTIRE POINT of unstable is to denote APIs which you can't rely on because they might change.
So WTF are we doing using them in released versions of riot?
referenced this issue
Oct 26, 2017
Here's a list of things known to be using the /unstable prefix in the js-sdk:
It looks like APIs that are in synapse unstable but not r0 are:
In other words, I think the answer to the question above is the CAS endpoints and 3pid deletion.
This is only true as of matrix-org/synapse#2579 (which has not yet been released). Before that I think that all of the things in the top list (except possibly /account/deactivate ?) were unstable-only.
If supporting old versions of riot is something we've committed to do, then releasing versions of riot dependent on unstable APIs effectively commits us to supporting those unstable APIs in their current shape (rendering them stable by accident and not by choice).
Which is obviously terrible.
But, if we have already released those versions of Riot, then I don't see the particular need to block 0.14 on this issue. Certainly it's a high priority techincal debt maintenance item that needs to be resolved, and certainly each released version of Riot with these dependencies only makes the number of human users dependent on those unstable APIs greater which is undoubtably a BadThing.
But since this problem wouldn't be resolved by simply fixing our /unstable dependencies in 0.14, I'm going to bias towards this not being a release-blocker for 0.14. I will moot it for consideration in 0.15, though.
@richvdh I hope that makes sense - if you want to fist fight me on this we can schedule some time tomorrow