Skip to content

Replace reflective operations with Byte Buddy transformations

Compare
Choose a tag to compare
@sbabcoc sbabcoc released this 26 Mar 23:09
· 33 commits to master since this release

In this release, I eliminated reflective access to private fields that were throwing access violation warnings. These were definite compatibility problems for newer JVM releases.
In addition to making JUnit Foundation compatible with Java 17+, this release also fixes some fundamental errors with the annotation proxies produced for timeout management and automatic retry related to final fields and annotation type reporting.
Finally, I extracted the class transformation code from LifecycleHooks into a new JUnitAgent class, eliminating the type restrictions the presence of this code imposed on this core interface. In a future release, I may use this new factoring to improve the type safety of this core utility class.