1- [[release-notes-5.12.0-M1 ]]
2- == 5.12.0-M1
1+ [[release-notes-5.12.0]]
2+ == 5.12.0
33
4- *Date of Release:* January 31 , 2025
4+ *Date of Release:* February 21 , 2025
55
66*Scope:*
77
2020* Parallel execution support in JUnit Vintage engine
2121* Numerous bug fixes and other enhancements
2222
23- For a complete list of all _closed_ issues and pull requests for this release, consult the
24- link:{junit5-repo}+/milestone/75?closed=1+[5.12.0-M1] milestone page in the
25- JUnit repository on GitHub.
23+ For a complete list of all _closed_ issues and pull requests for this release, consult the link:{junit5-repo}+/milestone/75?closed=1+[5.12.0-M1],
24+ link:{junit5-repo}+/milestone/88?closed=1+[5.12.0-RC1],
25+ link:{junit5-repo}+/milestone/90?closed=1+[5.12.0-RC2], and
26+ link:{junit5-repo}+/milestone/89?closed=1+[5.12.0] milestone pages in the JUnit repository
27+ on GitHub.
2628
2729
28- [[release-notes-5.12.0-M1- overall-improvements]]
30+ [[release-notes-5.12.0-overall-improvements]]
2931=== Overall Improvements
3032
31- [[release-notes-5.12.0-M1- overall-new-features-and-improvements]]
33+ [[release-notes-5.12.0-overall-new-features-and-improvements]]
3234==== New Features and Improvements
3335
3436* All affected JAR files now include `native-image.properties` files that contain the
35- `--initialize-at-build-time` option to avoid breakages in GraalVM projects when updating
36- to newer versions of JUnit.
37+ `--initialize-at-build-time` option to avoid breakages in GraalVM projects when updating
38+ to newer versions of JUnit.
3739
3840
39- [[release-notes-5.12.0-M1- junit-platform]]
41+ [[release-notes-5.12.0-junit-platform]]
4042=== JUnit Platform
4143
42- [[release-notes-5.12.0-M1- junit-platform-deprecations-and-breaking-changes]]
44+ [[release-notes-5.12.0-junit-platform-deprecations-and-breaking-changes]]
4345==== Deprecations and Breaking Changes
4446
4547* `SearchOption` and `AnnotationSupport.findAnnotation(Class, Class, SearchOption)` from
4648 `junit-platform-commons` have been deprecated.
4749
48- [[release-notes-5.12.0-M1- junit-platform-new-features-and-improvements]]
50+ [[release-notes-5.12.0-junit-platform-new-features-and-improvements]]
4951==== New Features and Improvements
5052
5153* `ConsoleLauncher` now accepts multiple values for all `--select` options.
@@ -88,12 +90,14 @@ JUnit repository on GitHub.
8890 implementation for scanning the classpath for classes and resources.
8991* New `AnnotationSupport.findAnnotation(Class, Class, List)` method to support searching
9092 for an annotation on an inner class and its runtime enclosing instance types.
93+ * New `TestDescriptor.orderChildren(UnaryOperator<List<TestDescriptor>> orderer)`
94+ method to order children in place
9195
9296
93- [[release-notes-5.12.0-M1- junit-jupiter]]
97+ [[release-notes-5.12.0-junit-jupiter]]
9498=== JUnit Jupiter
9599
96- [[release-notes-5.12.0-M1- junit-jupiter-bug-fixes]]
100+ [[release-notes-5.12.0-junit-jupiter-bug-fixes]]
97101==== Bug Fixes
98102
99103* Provide _runtime_ enclosing types of `@Nested` test classes and contained test methods
@@ -103,8 +107,10 @@ JUnit repository on GitHub.
103107* `@DisplayNameGeneration` annotations are now discovered on the _runtime_ enclosing types
104108 of `@Nested` test classes instead of the compile-time enclosing class in which the
105109 `@Nested` class was _declared_.
110+ * Fix handling of "junctions" on Windows during `@TempDir` cleanup: junctions will no
111+ longer be followed when deleting directories and broken junctions will be deleted.
106112
107- [[release-notes-5.12.0-M1- junit-jupiter-deprecations-and-breaking-changes]]
113+ [[release-notes-5.12.0-junit-jupiter-deprecations-and-breaking-changes]]
108114==== Deprecations and Breaking Changes
109115
110116* When injecting `TestInfo` into test class constructors, the `TestInfo` now contains data
@@ -119,7 +125,7 @@ JUnit repository on GitHub.
119125 entries for the test class, you can implement a `@BeforeAll` lifecycle method and inject
120126 `TestReporter` into that method.
121127
122- [[release-notes-5.12.0-M1- junit-jupiter-new-features-and-improvements]]
128+ [[release-notes-5.12.0-junit-jupiter-new-features-and-improvements]]
123129==== New Features and Improvements
124130
125131* Kotlin contracts for Kotlin-specific assertion methods in `Assertions`.
@@ -165,14 +171,21 @@ JUnit repository on GitHub.
165171* Auto-registered extensions can now be
166172 <<../user-guide/index.adoc#extensions-registration-automatic-filtering, filtered>> using
167173 include and exclude patterns that can be specified as configuration parameters.
174+ * `JRE`-based conditions such as `@EnabledOnJre` and `@DisabledForJreRange` now support
175+ arbitrary Java versions. See the
176+ <<../user-guide/index.adoc#writing-tests-conditional-execution-jre, User Guide>> for
177+ details.
178+ * The `@TempDir` extension now warns during cleanup when deleting symlinks that target
179+ locations outside the temporary directory to signal that the target file or directory is
180+ _not_ deleted, only the link to it.
168181
169182
170- [[release-notes-5.12.0-M1- junit-vintage]]
183+ [[release-notes-5.12.0-junit-vintage]]
171184=== JUnit Vintage
172185
173- [[release-notes-5.12.0-M1- junit-vintage-new-features-and-improvements]]
186+ [[release-notes-5.12.0-junit-vintage-new-features-and-improvements]]
174187==== New Features and Improvements
175188
176- * Support for executing top-level test classes in parallel. Please refer to the
189+ * Added support for executing test classes and/or methods in parallel. Please refer to the
177190 <<../user-guide/index.adoc#migrating-from-junit4-parallel-execution, User Guide>> for
178191 more information.
0 commit comments