Skip to content

Commit 7f7f2c3

Browse files
committed
Polish 5.0 M6 release notes
1 parent 8d85570 commit 7f7f2c3

File tree

1 file changed

+25
-22
lines changed

1 file changed

+25
-22
lines changed

documentation/src/docs/asciidoc/release-notes-5.0.0-M6.adoc

Lines changed: 25 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,8 @@
33

44
*Date of Release:* ❓
55

6-
*Scope:* Sixth milestone release of JUnit 5 with a focus on Java 9 compatibility and
7-
additional extension APIs for JUnit Jupiter.
6+
*Scope:* Sixth milestone release of JUnit 5 with a focus on Java 9 compatibility,
7+
validation (e.g. tag syntax rules), and bug fixes.
88

99
WARNING: This is a milestone release and contains breaking changes. Please refer to the
1010
<<running-tests-ide-intellij-idea,instructions>> above to use this version in a version of
@@ -14,37 +14,40 @@ For a complete list of all _closed_ issues and pull requests for this release, c
1414
link:{junit5-repo}+/milestone/11?closed=1+[5.0 M6] milestone page in the JUnit repository
1515
on GitHub.
1616

17-
==== Java 9 compatibility
1817

19-
The main target of JUnit is Java 8. Therefore, it won't ship with compiled module
20-
descriptors. However, since <<release-notes-5.0.0-m5,milestone M5>> each artifact
21-
published by JUnit 5 ships with a stable automatic module name declared in the
22-
JAR manifest. That allows test module authors to require well-known JUnit module
23-
names, like:
18+
[[release-notes-5.0.0-m6-java-9-compatibility]]
19+
==== Java 9 Compatibility
20+
21+
The main runtime target of JUnit 5 is Java 8. Consequently, JUnit 5 artifacts do not ship
22+
with compiled module descriptors for Java 9. However, since
23+
<<release-notes-5.0.0-m5,milestone M5>> each artifact published by JUnit 5 ships with a
24+
stable `Automatic-Module-Name` declared in its JAR manifest. This allows test module
25+
authors to require well-known JUnit module names as in the following example.
2426

2527
```
2628
module foo.bar {
2729
requires org.junit.jupiter.api;
2830
}
2931
```
3032

31-
Usually it's sufficient to run tests on the class-path. There's no change between
32-
Java 8 and 9. All command line based tools and IDEs continue to work with JUnit 5
33-
_out-of-the-box_ -- if they support the JUnit Platform. If your tool of choice
34-
does not support JUnit 5 yet, you may always resort to the `ConsoleLauncher` or
35-
even to the executable `junit-platform-console-standalone` all-in-one jar.
33+
It is typically sufficient to run tests on the class path: in this regard there are no
34+
changes between Java 8 and 9. All command-line tools and IDEs continue to work with JUnit
35+
5 _out of the box_ as long as they support the JUnit Platform. If your tool of choice
36+
does not yet support the JUnit Platform, you may always resort to the `ConsoleLauncher`
37+
or even to the executable `junit-platform-console-standalone` all-in-one jar.
38+
39+
Running JUnit Jupiter tests on the module path is implemented by
40+
https://github.com/forax/pro[pro], a Java 9 compatible build tool.
3641

37-
Running JUnit Jupiter tests on the module path is implemented by *pro*, a Java 9
38-
compatible build tool. It's available at https://github.com/forax/pro
42+
*pro* supports both black-box and white-box testing. The former is used by module surface
43+
tests that only access the exported bits of the application modules. The latter uses a
44+
merged module descriptor technique that allows access to `protected` and package-private
45+
types as well as non-exported packages.
3946

40-
*pro* supports black-box and white-box testing. The former is used by module
41-
surface tests that only access the exported bits of the application modules.
42-
The latter is using a module descriptor merge-technique allowing access to
43-
`protected` and package-private types as well as not exported packages.
47+
Consult the https://github.com/forax/pro/tree/master/src/test/java[pro GitHub repository]
48+
for test module examples: `integration.pro` is a black-box test module; whereas,
49+
`com.github.forax.pro.api` and `com.github.forax.pro.helper` are white-box test modules.
4450

45-
See https://github.com/forax/pro/tree/master/src/test/java for test module
46-
examples: `integration.pro` is a black-box module, `com.github.forax.pro.api`
47-
and `com.github.forax.pro.helper` are white-box test modules.
4851

4952
[[release-notes-5.0.0-m6-junit-platform]]
5053
==== JUnit Platform

0 commit comments

Comments
 (0)