Skip to content

Commit

Permalink
Prune Release Notes for 5.5
Browse files Browse the repository at this point in the history
Closes #1935
  • Loading branch information
sbrannen committed Jun 30, 2019
1 parent 571d90b commit 4d3b0a5
Show file tree
Hide file tree
Showing 6 changed files with 53 additions and 109 deletions.
6 changes: 1 addition & 5 deletions documentation/src/docs/asciidoc/release-notes/index.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -15,11 +15,7 @@ authors as well as build tool and IDE vendors.

include::../link-attributes.adoc[]

include::release-notes-5.5.0-RC2.adoc[]

include::release-notes-5.5.0-RC1.adoc[]

include::release-notes-5.5.0-M1.adoc[]
include::release-notes-5.5.0.adoc[]

include::release-notes-5.4.2.adoc[]

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,14 +21,14 @@ No changes.

==== Bug Fixes

* Parameterized tests no longer throw an `ArrayStoreException` when creating human-readable
test names.
* Parameterized tests no longer throw an `ArrayStoreException` when creating
human-readable display names.


[[release-notes-5.4.2-junit-vintage]]
=== JUnit Vintage

==== Bug Fixes

* Safeguard against `Runners` that only report tests as failed but not as started or
finished such as Spock in case of failures during data-provider preparation.
* Safeguard against a `Runner` that only reports tests as failed but not as started or
finished, such as Spock in case of failures during data-provider preparation.

This file was deleted.

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,25 +1,35 @@
[[release-notes-5.5.0-RC1]]
== 5.5.0-RC1
[[release-notes-5.5.0]]
== 5.5.0

*Date of Release:* June 6, 2019
*Date of Release:* June 30, 2019

*Scope:*

* Declarative `@Timeout` support
* New `InvocationInterceptor` extension API
* New `LifecycleMethodExecutionExceptionHandler` extension API
* Additional Kotlin friendly assertions
* Deprecation of script-based conditions (`@EnabledIf` and `@DisabledIf`)
* Configurable test discovery implementation for `TestEngine` authors
* Explicit Java module descriptors
* Deprecation of script-based conditions (`@EnabledIf`/`@DisabledIf`)
* Various minor improvements and bug fixes

For a complete list of all _closed_ issues and pull requests for this release, consult the
link:{junit5-repo}+/milestone/37?closed=1+[5.5 RC1] milestone page in the JUnit repository
link:{junit5-repo}+/milestone/34?closed=1+[5.5 M1],
link:{junit5-repo}+/milestone/37?closed=1+[5.5 RC1],
link:{junit5-repo}+/milestone/41?closed=1+[5.5 RC2], and
link:{junit5-repo}+/milestone/40?closed=1+[5.4 GA] milestone pages in the JUnit repository
on GitHub.


[[release-notes-5.5.0-RC1-junit-platform]]
[[release-notes-5.5.0-junit-platform]]
=== JUnit Platform

==== New Features and Improvements

* Configurable test discovery implementation that can be reused by different test engines
(see Javadoc of the `{junit-platform-engine-support-discovery}` package).
* New `isFinal()` and `isNotFinal()` methods in `ModifierSupport`.

==== Bug Fixes

* A custom `ClassLoader` created for additional `--class-path` entries passed to the
Expand All @@ -37,13 +47,13 @@ on GitHub.
meta-annotations on other repeatable annotations.
* New `AnnotationSupport.findRepeatableAnnotations()` variant that accepts a
`java.util.Optional<? extends AnnotatedElement>` argument.
* Exceptions thrown by `TestExecutionListeners` no longer cause test execution to abort.
Instead, they will be logged as warnings now.
* An exception thrown by a `TestExecutionListener` no longer causes test execution to
abort. Instead, such exceptions will be logged as warnings now.
* New `MethodSource.from()` variant that accepts `String, String, Class<?>...` as
arguments.


[[release-notes-5.5.0-RC1-junit-jupiter]]
[[release-notes-5.5.0-junit-jupiter]]
=== JUnit Jupiter

==== Bug Fixes
Expand All @@ -52,31 +62,46 @@ on GitHub.
an `OutOfMemoryError` if the executables in the dynamic tests retain references to
objects consuming large amounts of memory. Technically speaking, JUnit Jupiter no longer
retains references to instances of `DynamicTest` after they have been executed.
* Extensions registered programmatically using `@RegisterExtension` on fields of test
classes now work correctly for tests in contained `@Nested` test classes. Previously,
such extensions were registered multiple times for each test method in `@Nested` classes.

==== Deprecations and Breaking Changes

* Script-based condition APIs and their supporting implementations are deprecated with
the intent to remove them in JUnit Jupiter 5.6. Users should instead rely on a
combination of other built-in conditions or create and use a custom implementation of
`ExecutionCondition` to evaluate the same conditions.
* Script-based condition APIs and their supporting implementations are deprecated with the
intent to remove them in JUnit Jupiter 5.6. Users should instead rely on a combination
of other built-in conditions or create and use a custom implementation of
`ExecutionCondition` to support the same conditions.

==== New Features and Improvements

* Support for declarative timeouts using `@Timeout` or configuration parameters (see
<<../user-guide/index.adoc#writing-tests-declarative-timeouts, User Guide>> for details)
<<../user-guide/index.adoc#writing-tests-declarative-timeouts, User Guide>> for details).
* The `JRE` enum used with `@EnabledOnJre` and `@DisabledOnJre` now supports Java 14.
* Expected and actual values are now supplied for failed `boolean` assertions for enhanced
IDE and reporting support -- for example, when `assertTrue()` or `assertFalse()` fails.
* New overloaded variants of `Assertions.assertLinesMatch(...)` that accept a `String` or
a `Supplier<String>` for a custom failure message.
* Failure messages for `Assertions.assertLinesMatch(...)` now emit each expected and
actual line in a dedicated line.
* New Kotlin friendly `assertDoesNotThrow`, `assertTimeout`, and `assertTimeoutPreemptively`
assertions have been added as top-level functions in the `org.junit.jupiter.api` package.
* New Kotlin-friendly `assertDoesNotThrow()`, `assertTimeout()`, and
`assertTimeoutPreemptively()` assertions have been added as top-level functions in the
`org.junit.jupiter.api` package.
* Parameterized tests now support implicit conversion from a `String` to the following
`java.time` types: `Duration`, `Period`, `MonthDay`, `ZoneId`, and `ZoneOffset`.
* `@ValueSource` now additionally supports literal values of type `boolean` for
parameterized tests.
* New `emptyValue` attribute in `@CsvSource` and `@CsvFileSource`.
* Display names for test methods generated by the `ReplaceUnderscores`
`DisplayNameGenerator` no longer include empty parentheses for test methods that do not
declare any parameters.
* New `junit.jupiter.displayname.generator.default` configuration parameter to set the
default `DisplayNameGenerator` that will be used unless `@DisplayName` or
`@DisplayNameGeneration` is present.
* New `junit.jupiter.execution.parallel.mode.classes.default` configuration parameter
allows to run top-level classes in parallel but their methods sequentially or vice versa
(see <<../user-guide/index.adoc#writing-tests-parallel-execution, User Guide>> for
details).
* `MethodOrderer.Random` now generates a default random seed only once and prints it to
the log in order to allow reproducible builds.
* Methods ordered with `MethodOrderer.Random` now execute using the `SAME_THREAD`
Expand All @@ -89,24 +114,21 @@ on GitHub.
* Private fields annotated with `@RegisterExtension` are no longer silently ignored.
Instead the corresponding test class or test method will now fail with an exception
informing the user of the configuration error.
* All methods in the `TestWatcher` API are now interface `default` methods with empty
implementations.
* New `InvocationInterceptor` extension API (see
<<../user-guide/index.adoc#extensions-intercepting-invocations, User Guide>> for
details).
* New `LifecycleMethodExecutionExceptionHandler` extension API for handling exceptions
thrown during the execution of `@BeforeAll`, `@BeforeEach`, `@AfterEach`, and
`@AfterAll` lifecycle methods (see
<<../user-guide/index.adoc#extensions-exception-handling, User Guide>> for details).
* All methods in the `TestWatcher` API are now interface `default` methods with empty
implementations.
* A custom test source for a `DynamicContainer` or `DynamicTest` may now be a method URI
-- for example, `method:org.example.MyTestClass#myTestMethod()`.
* New `junit.jupiter.execution.parallel.mode.classes.default` configuration parameter
allows to run top-level classes in parallel but their methods sequentially or vice versa
(see <<../user-guide/index.adoc#writing-tests-parallel-execution, User Guide>> for
details).
* A new `getOrDefault()` convenience method has been added to `ExtensionContext.Store`.


[[release-notes-5.5.0-RC1-junit-vintage]]
[[release-notes-5.5.0-junit-vintage]]
=== JUnit Vintage

==== New Features and Improvements
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,9 @@ public class SwingEdtInterceptor implements InvocationInterceptor {
public void interceptTestMethod(Invocation<Void> invocation,
ReflectiveInvocationContext<Method> invocationContext,
ExtensionContext extensionContext) throws Throwable {

AtomicReference<Throwable> throwable = new AtomicReference<>();

SwingUtilities.invokeAndWait(() -> {
try {
invocation.proceed();
Expand Down

0 comments on commit 4d3b0a5

Please sign in to comment.