On Wed, 17 Nov 2021 22:05:25 GMT, Laurent Bourgès <lbour...@openjdk.org> wrote:
> Changelog for this MarlinFX 0.9.4.5 release: > > The Marlin-renderer 0.9.4.5 release provides bug fixes on Marlin's path > clipper: > - removed simple-precision (float) variant > - improved Stroker to handle huge coordinates, up to 1E15 > - improved PathClipFilter (filler) to handle huge coordinates, up to 1E15 > > > This is the Marlin-renderer 0.9.4.3 release providing few bug / enhancement > fixes in the MarlinRenderingEngine: > - Update DPQS to latest OpenJDK 14 patch > - Improve cubic curve offset computation > > > The Marlin-renderer 0.9.4.2 release provides a single long-standing bug fix > in the MarlinRenderingEngine: > - JDK-8230728, https://bugs.openjdk.java.net/browse/JDK-8230728. > > > Marlin-renderer 0.9.4.1 provides only a single bug fix in the path clipper, > reported first against JavaFX 11: > - JDK-8226789, https://bugs.openjdk.java.net/browse/JDK-8226789. > > > This is the Marlin-renderer 0.9.4 release providing an updated Dual Pivot > Quick Sort (19.05) as its internal sorter faster than the Marlin's optimized > MergeSort (x-position + edge indices) for arrays larger than 256. > > Special Thanks to Vladimir Yaroslavskiy that provided me up-to-date DPQS > 19.05 with many variants, improving almost-sorted datasets. We are > collaborating to provide a complete Sort framework (15 algorithms, many > various datasets, JMH benchmarks) publicly on github: > see https://github.com/bourgesl/nearly-optimal-mergesort-code Sorry I forgot to explain why I did not write any new test: - I wrote a quadrant test in my own project that tests this clipper bug exhaustively, using all combinations, but it was visual, not automated like a robot. - existing ClipShapeTest already validates using a fuzzy testing approach all clipper possible cases with small coords in range [-300, 300]. The new clipper algorithm in this patch still passes this hardness test on small coords, so no regression is present. I tested up to 10^6 random shapes for every test cases (order 1,2,3) + all cap/join/fill combinations. To conclude, I decided to skip writing another test for this bug. Cheers ------------- PR: https://git.openjdk.java.net/jfx/pull/674