Szorc: Mercurial's Journey to and Reflections on Python 3
Szorc: Mercurial's Journey to and Reflections on Python 3
Posted Jan 13, 2020 23:09 UTC (Mon) by ehiggs (subscriber, #90713)In reply to: Szorc: Mercurial's Journey to and Reflections on Python 3 by Cyberax
Parent article: Szorc: Mercurial's Journey to and Reflections on Python 3
It is absolutely true. Libraries target JDK 8 because that's what Android is stuck on. It's still a hassle and Java's type system didn't save it from the problems.
Java 9 was EOL in March 2018. Java 10 was EOL in September 2018. And if you're a commercial user of Java 8 and don't have a license with Oracle or anyone else, support was EOL in January 2019.
Posted Jan 13, 2020 23:12 UTC (Mon)
by Cyberax (✭ supporter ✭, #52523)
[Link] (4 responses)
This didn't work with Python, the transition from 2 to 3 required massive rewrites.
> And if you're a commercial user of Java 8 and don't have a license with Oracle or anyone else, support was EOL in January 2019.
Posted Jan 13, 2020 23:22 UTC (Mon)
by ehiggs (subscriber, #90713)
[Link] (1 responses)
Indeed and this is not the desired state of affairs. And Java's type system did not save it.
> This didn't work with Python, the transition from 2 to 3 required massive rewrites.
Indeed and this is not the desired state of affairs. And Python's type system did not cause it.
Posted Jan 13, 2020 23:30 UTC (Mon)
by Cyberax (✭ supporter ✭, #52523)
[Link]
> Indeed and this is not the desired state of affairs. And Python's type system did not cause it.
Posted Jan 14, 2020 3:11 UTC (Tue)
by cesarb (subscriber, #6266)
[Link] (1 responses)
Unless your package, or one of its dependencies, does bytecode manipulation and uses an old version of the bytecode manipulation library, which chokes on classes compiled for a newer JDK. Or your package depends on one of the several J2EE libraries which were removed by JDK 11 (some of them having no replacement outside of the JDK). Or your package, or one of its dependencies, chokes on the replacement of one of the several J2EE libraries which were removed by JDK 11, because it uses an old version of the bytecode manipulation library, and the replacement J2EE library was compiled for a newer JDK.
As late as the end of 2019, some packages were still announcing Java 9 compatibility fixes. For some reason, Java 9 had more compatibility issues than usual, and Java 11 made it worse by completely removing components first deprecated in the short-lived Java 9 release.
Posted Jan 14, 2020 6:12 UTC (Tue)
by ssmith32 (subscriber, #72404)
[Link]
Of course, it is doing some pretty wacky stuff. But it's the only option for some things (e.g. GCP Dataflow )
Posted Jan 15, 2020 19:52 UTC (Wed)
by nim-nim (subscriber, #34454)
[Link] (3 responses)
The Java leadership has been busy making itself irrelevant by alienating most of the rest of the IT world.
Though I wonder where that will leave all the Apache foundation Java projects. They can’t survive in a closed circuit loop forever. Scala is not the solution, its adoption outside the existing Java world is nonexistent.
Posted Jan 15, 2020 19:54 UTC (Wed)
by Cyberax (✭ supporter ✭, #52523)
[Link] (2 responses)
Posted Jan 16, 2020 9:09 UTC (Thu)
by nim-nim (subscriber, #34454)
[Link] (1 responses)
Who wants to deal with this crap forever? Easier to port to another language and let someone else fatten lawyers.
Posted Jan 16, 2020 16:20 UTC (Thu)
by Cyberax (✭ supporter ✭, #52523)
[Link]
Szorc: Mercurial's Journey to and Reflections on Python 3
The thing is, it's easy to have a library targeting JDK 8 to work on JDK 11. I have several packages that are doing that. You basically need to refrain from using JDK>8 features and you'll be fine.
Just use https://aws.amazon.com/corretto/ , it'll be supported for a loooong time.
Szorc: Mercurial's Journey to and Reflections on Python 3
Szorc: Mercurial's Journey to and Reflections on Python 3
It did. I can run JDK 8 code in JDK 11 without any modifications, mixing and matching it freely with newer versions.
Yes, they did. The string type was fundamentally changed, along with a significant chunk of the API.
Szorc: Mercurial's Journey to and Reflections on Python 3
Szorc: Mercurial's Journey to and Reflections on Python 3
Szorc: Mercurial's Journey to and Reflections on Python 3
Szorc: Mercurial's Journey to and Reflections on Python 3
Szorc: Mercurial's Journey to and Reflections on Python 3
Szorc: Mercurial's Journey to and Reflections on Python 3