Closed bengtan closed 5 years ago
(Not sure where else to put this. I don't want to put it on Slack, but I also didn't want to create yet another github discussion ticket.)
It turns out we may be able to avoid creating a third 'experimental' app. Here goes.
In order to develop against the next
server (which has the 'full graphQL, no XMPP' code), we'll:
next
serverand develop on the master
branch.
All new features and changes go onto the master
branch (for 4.0.0 and onwards) by default.
If, however, we need to implement bugfixes for 3.10.0, we'll create a 3.10.x
branch at the 3.10.0
commit point and merge to 3.10.x
.
For now, we'll try to only merge changes to one branch, either master
or 3.10.x
.
When the 'remove-XMPP' Epic is stable enough, on the master
branch, we'll
and evaluate how to port any changes (if any) from 3.10.x
onto master
. Either we merge from 3.10.x
to master
, or we individually merge all the PRs-on-3.10.x onto master
(and then discard 3.10.x
). Or something.
Hopefully, if all goes well, there will be very few changes on 3.10.x
that need to go onto master
, and reconciliation won't be complex.
If we really need to (ie. things get more complicated than expected), we still have the option of creating a third 'experimental' app. But let's hold that in reserve.
Add:
RNBGL
lookup (user search?)
We don't use lookup
in the front-end code so we probably don't need to worry about the GraphQL equivalent.
shareBot
is no longer used (replaced by inviteBot
)
Cross-posting:
LGTM. Great to check that box on the checklist
https://github.com/hippware/rn-chat/pull/3139#pullrequestreview-182822034
Besides removing XMPP and replacing with GraphQL, we also have to make other changes because the app is pointing to the next
server.
The next
server has a lot of new stuff and changes. I'm putting such tickets (ie. RNBGL) here for lack of a better place.
Status update:
Only major thing left is GraphQL presence. There's also some changes for conversations/messages but expected to be minor.
There are also some minor 'clean-up'-ish things to be done.
Some bug reports have started filtering in. Those should (hopefully) be minor as well.
We're soon reaching the point where we can just track existing sub-tickets, and treat bug reports as general tickets, and no longer have to track this Epic itself.
@southerneer has submitted a PR for online presence so I ticked the checkbox for it. Presuming it's a good PR, that's all the XMPP replacements done. After it's merged, we can consider this Epic to be done, and just track individual (sub-)tickets.
That PR is still WIP. Hopefully I can figure out the problem today.
Yay. Online presence has been merged (I just ticked the checkbox). So all the subsystems are done. Just one or two stray subtickets left.
This is effectively done. The remaining tickets are either Waiting for Deployment, can be tracked individually, and/or aren't actually related to XMPP/GraphQL.
So this can be closed.
From a visual scan of HybridTransport.ts, I compiled a rough list of things to be done.
I also added some things that I didn't see in HybridTransport.ts but that I thought of. These are marked with *.
Own user
register
,testRegister
)Other users
requestProfiles
(of other users)loadRelations
(followers/followees?)Image handling
Remaining bot API
removeBotPost
,publishBotPost
,loadBotPosts
)Messages
Misc
RNBGL *
Some of these may be spun out as sub-tickets.
(Disclaimer: Please note this is a rough list which is likely to change over time.)
FYI, the parts which are 'separate universes for XMPP and GraphQL' are: conversations, messages and online presence.