facebookarchive / nuclide

An open IDE for web and native mobile development, built on top of Atom
https://nuclide.io
Other
7.79k stars 682 forks source link

Version parity between client and server is overtly strict. #1613

Closed bdowling closed 5 years ago

bdowling commented 5 years ago

Issue and Steps to Reproduce

Upgrading the client and server when you may have multiple users/locations involved can be extremely challenging with the current 1to1 version parity.

Are there any plans to adapt the versioning so that the client and server can work within "ranges" and/or only have truly incompatible changes prevent the client from connecting to the server? I know the current approach may be easier to define/code with the rapid release cycles, but it is not easy on the consumers.

Expected Behavior

A more flexible approach on this would be beneficial.

Dayjo commented 5 years ago

Really agree with this.

Any minor change requires full uninstall and re-install on the server which is quite jarring when there's lots of developers using it. I like to keep stuff up to date, but it requires all developers to update their IDEs all at the same time, and then not work for a few minutes while the server is uninstalled and re-installed.

semmypurewal commented 5 years ago

Yeah, we definitely feel your pain. This is, in part, due to our stateful RPC framework.

We've talked a lot about approaches to making this work, but they all involve migrating away from our current approach to RPC. That's a long-term project, though, and won't be finished soon. :(