Bck2Brwsr 0.50
From APIDesign
(3 intermediate revisions not shown.) | |||
Line 8: | Line 8: | ||
* [https://github.com/jtulach/bck2brwsr/commit/95c99ef9f90e0bc3d1d4fdac370c033ed48f1f25 StringConcatHandler] - converts the [https://openjdk.java.net/jeps/280 indy based] string concatenation into simple '''+''' of JavaScript strings | * [https://github.com/jtulach/bck2brwsr/commit/95c99ef9f90e0bc3d1d4fdac370c033ed48f1f25 StringConcatHandler] - converts the [https://openjdk.java.net/jeps/280 indy based] string concatenation into simple '''+''' of JavaScript strings | ||
- | The removal of [[RetroLambda]] is a [[good]] thing - the system was fragile. It relied on reflection and internal behavior of [[JDK]]s. However, replacing it with homemade implementation | + | The removal of [[RetroLambda]] is a [[good]] thing - the system was fragile. It relied on reflection and internal behavior of [[JDK]]s. However, replacing it with homemade implementation is a request for regressions - finding and supporting all the corner cases is going to take some time. Thanks to Johan Vos, who managed to compile JavaFX with [[Bck2Brwsr]] transpiler and reported quite a few bugs. The likehood [[Bck2Brwsr 0.50]] is going to work is now higher! |
<!-- | <!-- | ||
Line 18: | Line 18: | ||
* [https://github.com/jtulach/bck2brwsr/blob/95c99ef/rt/vm11/src/test/java/org/apidesign/bck2brwsr/vm11/NestMatesTest.java#L36 NestMatesTest.java] for JDK11 related functionality | * [https://github.com/jtulach/bck2brwsr/blob/95c99ef/rt/vm11/src/test/java/org/apidesign/bck2brwsr/vm11/NestMatesTest.java#L36 NestMatesTest.java] for JDK11 related functionality | ||
- | Thanks in advance for helping [[Bck2Brwsr]] to get better! | + | Thanks in advance for trying and helping [[Bck2Brwsr]] to get better! |
Current revision
The Bck2Brwsr project has been updated to work with 2021 technologies:
- Gradle task rewritten to be compatible with 7.0
- Support for --continuous Gradle mode has been added
- Issue 19 - support for nest based access control has been implemented
No more RetroLambda. Instead of RetroLambda there is now an abstract IndyHandler interface with two implementations:
- MetafactoryHandler - generates special JavaScript for recognized Java Closures
- StringConcatHandler - converts the indy based string concatenation into simple + of JavaScript strings
The removal of RetroLambda is a good thing - the system was fragile. It relied on reflection and internal behavior of JDKs. However, replacing it with homemade implementation is a request for regressions - finding and supporting all the corner cases is going to take some time. Thanks to Johan Vos, who managed to compile JavaFX with Bck2Brwsr transpiler and reported quite a few bugs. The likehood Bck2Brwsr 0.50 is going to work is now higher!
The easiest way to report an error is to enhance one of existing test-cases:
- SamTest.java for JDK8 closure support
- NestMatesTest.java for JDK11 related functionality
Thanks in advance for trying and helping Bck2Brwsr to get better!