ctubbsii commented on PR #2785: URL: https://github.com/apache/thrift/pull/2785#issuecomment-1515702543
I still think it's a mistake to move backwards. We're just going to hit up against this again and need to have the conversation all over again. There is value in moving the baseline, even if we haven't yet leveraged the newer Java features. If a contributor comes along and wants to make an improvement that uses Java 11, now they need to convince the community to move to Java 11 **and** adopt their changes. If we've already moved the baseline modestly (and 8 to 11 is pretty modest), then all they need to do is convince Thrift to adopt their changes on that newer baseline. If we don't move the baseline ahead of time, then we're asking contributors to justify moving to 11 whenever they want to make a change that uses 11. Those contributors are likely to face questions like: "can you rewrite this in a Java 8 way?" or "is this really important enough of a feature to justify moving to 11?". It's extra work for every contributor to justify the baseline move for *their* changes. Projects with requirements on older Java versions can just use older Thrift releases. They *don't have to upgrade* Thrift so aggressively. If they need Java 8, they can use a version of Thrift that is appropriate for Java 8. They don't have to use the newer version. What kind of project is updating its dependencies so aggressively, but insists on its dependencies update themselves conservatively? Either those projects can update aggressively, and expect their dependencies to do the same, or they can update conservatively, and stay on the older version. Either way, it should not be a problem for Thrift to update to a newer Java version for its next release. This is no different than with other libraries. Consider Jetty. Jetty 11 uses JakartaEE (jakarta) instead of JavaEE (javax) libraries. We would obviously recognize the argument as flawed if somebody insisted that Jetty 11 continue using JavaEE libraries because JavaEE is still ubiquitous. No, those projects needing to stay using JavaEE would just use Jetty 10, and not upgrade to Jetty 11. Again, I will say it: you do not have to update. But that's *your* choice because it's better for *your* project. Thrift should still be able to update in its next releases, because that's better for the Thrift project. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
