Skip to content

Commit 80477d3

Browse files
authored
docs: remove stale Java 8/11 framing now that JDK 17 is the minimum (#3487)
Motivation: Pekko 2.0.x requires JDK 17 as the minimum supported runtime (see release-notes/releases-2.0.md and project/JdkOptions.scala), a hard break from the 1.x line which supported Java 8+. Several doc pages and one reference.conf comment still carried Java 8/11-era framing that no longer applies to the current major version. Modification: - remoting-artery.md: reworded the Aeron `--add-opens` note and the Flight Recorder section, which claimed JFR is enabled by "detecting JDK 11" even though there is no such runtime detection in FlightRecorderLoader.scala - it is controlled purely by the `pekko.java-flight-recorder.enabled` config flag. - remote-security.md: dropped a TLS cipher caveat about Java 8 runtimes, which are no longer supported. - stream/reactive-streams-interop.md: removed Java-8-specific Reactive Streams artifact/JavaFlowSupport caveats. - persistence.md, typed/cluster-sharding.md, typed/distributed-data.md: reworded the LevelDB/LMDB `--add-opens` notes so they no longer frame JDK 17 as an optional/special case. - actor/src/main/resources/reference.conf: fixed the same stale "JDK 11 or later" framing in the java-flight-recorder comment, which is snip-included into docs/src/main/paradox/general/configuration-reference.md. Result: Doc pages and the flight-recorder config comment reflect the current JDK 17+ baseline instead of pre-2.0 Java 8/11 assumptions. Tests: - Not run - docs and comment-only changes. References: None - identified while auditing docs/src/main/paradox for content out of date relative to the current Pekko version and JDK support.
1 parent 0f67661 commit 80477d3

7 files changed

Lines changed: 22 additions & 19 deletions

File tree

actor/src/main/resources/reference.conf

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -102,8 +102,8 @@ pekko {
102102
# by setting this property to `off`.
103103
fail-mixed-versions = on
104104

105-
# Some modules (remoting only right now) can emit custom events to the Java Flight Recorder if running
106-
# on JDK 11 or later. If you for some reason do not want that, it can be disabled and switched to no-ops
105+
# Some modules (remoting only right now) can emit custom events to the Java Flight Recorder.
106+
# If you for some reason do not want that, it can be disabled and switched to no-ops
107107
# with this toggle.
108108
java-flight-recorder {
109109
enabled = true

docs/src/main/paradox/persistence.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -862,9 +862,10 @@ in your Pekko configuration. Also note that for the LevelDB Java port, you will
862862
version="0.9"
863863
}
864864

865-
@@@ note { title="Java 17" }
865+
@@@ note
866866

867-
When using LevelDB with Java 17 you have to add JVM flag `--add-opens=java.base/java.nio=ALL-UNNAMED`.
867+
LevelDB requires the JVM flag `--add-opens=java.base/java.nio=ALL-UNNAMED` on the JDK 17+ runtimes required by
868+
this Pekko version.
868869

869870
@@@
870871

docs/src/main/paradox/remote-security.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ For TLS 1.3, these are good options:
6565

6666
* TLS_AES_128_GCM_SHA256
6767
* TLS_AES_256_GCM_SHA384
68-
* TLS_CHACHA20_POLY1305_SHA256 (may not be supported on Java 8 runtimes)
68+
* TLS_CHACHA20_POLY1305_SHA256
6969

7070
You should always check the latest information about security and algorithm recommendations before configuring your
7171
system.

docs/src/main/paradox/remoting-artery.md

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -43,9 +43,10 @@ The Aeron dependency needs to be explicitly added if using the `aeron-udp` trans
4343
version2="$aeron_version$"
4444
}
4545

46-
@@@ note { title="Java 17" }
46+
@@@ note
4747

48-
When using Aeron with Java 17 you have to add JVM flag `--add-opens=java.base/sun.nio.ch=ALL-UNNAMED`.
48+
Aeron requires the JVM flag `--add-opens=java.base/sun.nio.ch=ALL-UNNAMED` on the JDK 17+ runtimes required by
49+
this Pekko version.
4950

5051
@@@
5152

@@ -754,8 +755,9 @@ Any space used in the mount will count towards your container's memory usage.
754755

755756
### Flight Recorder
756757

757-
When running on JDK 11 Artery specific flight recording is available through the [Java Flight Recorder (JFR)](https://openjdk.java.net/jeps/328).
758-
The flight recorder is automatically enabled by detecting JDK 11 but can be disabled if needed by setting `pekko.java-flight-recorder.enabled = false`.
758+
Artery specific flight recording is available through the [Java Flight Recorder (JFR)](https://openjdk.java.net/jeps/328),
759+
which is included in all JDK versions supported by Pekko. It is automatically enabled but can be disabled if needed
760+
by setting `pekko.java-flight-recorder.enabled = false`.
759761

760762
Low overhead Artery specific events are emitted by default when JFR is enabled, higher overhead events needs a custom settings template and are not enabled automatically with the `profiling` JFR template.
761763
To enable those create a copy of the `profiling` template and enable all `Pekko` sub category events, for example through the JMC GUI.

docs/src/main/paradox/stream/reactive-streams-interop.md

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -19,18 +19,16 @@ To use Pekko Streams, add the module to your project:
1919
Pekko Streams implements the [Reactive Streams](https://www.reactive-streams.org/) standard for asynchronous stream processing with non-blocking
2020
back pressure.
2121

22-
Since Java 9 the APIs of Reactive Streams has been included in the Java Standard library, under the `java.util.concurrent.Flow`
23-
namespace. For Java 8 there is instead a separate Reactive Streams artifact with the same APIs in the package `org.reactivestreams`.
22+
Since Java 9 the APIs of Reactive Streams has been included in the Java Standard library, under the `java.util.concurrent.Flow`
23+
namespace. There is also a separate Reactive Streams artifact with the same APIs in the package `org.reactivestreams`.
2424

2525
Pekko streams provides interoperability for both these two API versions, the Reactive Streams interfaces directly through factories on the
26-
regular `Source` and `Sink` APIs. For the Java 9 and later built in interfaces there is a separate set of factories in
26+
regular `Source` and `Sink` APIs. For the `java.util.concurrent.Flow` built in interfaces there is a separate set of factories in
2727
@scala[`org.apache.pekko.stream.scaladsl.JavaFlowSupport`]@java[`org.apache.pekko.stream.javadsl.JavaFlowSupport`].
2828

2929
In the following samples the standalone Reactive Stream API factories has been used but each such call can be replaced with the
3030
corresponding method from `JavaFlowSupport` and the JDK @scala[`java.util.concurrent.Flow._`]@java[`java.util.concurrent.Flow.*`] interfaces.
3131

32-
Note that it is not possible to use `JavaFlowSupport` on Java 8 since the needed interfaces simply is not available in the Java standard library.
33-
3432
The two most important interfaces in Reactive Streams are the `Publisher` and `Subscriber`.
3533

3634
Scala

docs/src/main/paradox/typed/cluster-sharding.md

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -669,10 +669,11 @@ Reasons for disabling:
669669

670670
For supporting remembered entities in an environment without disk storage use `eventsourced` mode instead.
671671

672-
@@@ note { title="Java 17" }
672+
@@@ note
673673

674-
When using `remember-entities-store=ddata` the remember entities store is persisted to disk by LMDB.
675-
When running with Java 17 you have to add JVM flags `--add-opens=java.base/sun.nio.ch=ALL-UNNAMED --add-opens=java.base/java.nio=ALL-UNNAMED`.
674+
When using `remember-entities-store=ddata` the remember entities store is persisted to disk by LMDB, which requires
675+
the JVM flags `--add-opens=java.base/sun.nio.ch=ALL-UNNAMED --add-opens=java.base/java.nio=ALL-UNNAMED` on the JDK 17+
676+
runtimes required by this Pekko version.
676677

677678
@@@
678679

docs/src/main/paradox/typed/distributed-data.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -679,9 +679,10 @@ possible to replace that with another implementation by implementing the actor p
679679
`org.apache.pekko.cluster.ddata.DurableStore` and defining the `pekko.cluster.distributed-data.durable.store-actor-class`
680680
property for the new implementation.
681681

682-
@@@ note { title="Java 17" }
682+
@@@ note
683683

684-
When using LMDB with Java 17 you have to add JVM flags `--add-opens=java.base/sun.nio.ch=ALL-UNNAMED --add-opens=java.base/java.nio=ALL-UNNAMED`.
684+
LMDB requires the JVM flags `--add-opens=java.base/sun.nio.ch=ALL-UNNAMED --add-opens=java.base/java.nio=ALL-UNNAMED`
685+
on the JDK 17+ runtimes required by this Pekko version.
685686

686687
@@@
687688

0 commit comments

Comments
 (0)