The TL;DR for all this stuff is probably: For Google Cloud users, overall I'd expect service-specific issues to crop up more than gRPC compatibility issues. For example, if you want to use a new service, the library may only support Java 11+. But you really want a plan to upgrade to Java 11 and beyond.
Thank you so much for the email. We really do want to hear trouble caused, as otherwise there's no feedback loop. Sorry for the delay, your email was just brought to my attention.
In your specific case, it looks like IBM's Java 11 was
only recently made available? That's a bit worrisome, as it only buys you 1.5 more years, as end of Premier Support of Java 11 is rapidly approaching. I'm going to need to keep an eye on that. But you aren't
blocked, right? It is just "gotta move quickly"?
I'll note that practically speaking I doubt we'll actually drop Java 8 in March. I mainly wanted people to realize that we could, because we really need to have these conversations now and then when we delay it is perceived as niceness :-). I expect gRPC will wait until ~June before dropping Java 8, because dropping Java 8 hasn't been on user's radar until recently.
But that may not hold for the rest of the Google client libraries. You as a Google Cloud library consumer are intended to be insulated from gRPC, so you should really only need to track the Google Cloud libraries.
gRPC v1.44.0 is still compatible with v1.0.0. A backward incompatible change would be a big deal and probably need a multi-year migration process. I know of no features currently discussed that would need to break the protocol. (Sure, a new feature may need both sides to be upgraded to be used, but then you just wouldn't benefit from the feature.) I wouldn't be concerned about protocol breakages in the low-single-digit years time frame.
There could, however, be behavior changes which don't impact correctness but could impact performance or similar. This is less likely about gRPC specific implementation but instead the HTTP/2 ecosystem or auth or $SOME_OTHER_NON_GRPC_BUT_RELATED topic. These are managed by the Google service support policies. Google will almost certainly try to avoid these, but if something crops up you'd go through the Google support processes. Not speaking authoritatively, but if there's a case of 1-5% performance decrease, then that just may be the price paid. But something like a 75% decrease is more like a service deprecation with notifications, etc. Google can track usage of the old versions via the User-Agent.