diff --git a/docs/src/main/paradox/release-notes/index.md b/docs/src/main/paradox/release-notes/index.md index ac6573282a5..c81b99e20b8 100644 --- a/docs/src/main/paradox/release-notes/index.md +++ b/docs/src/main/paradox/release-notes/index.md @@ -1,78 +1,10 @@ # Release Notes -## 1.0.3-M1 -This is milestone release and is aimed at testing some new support for users who want to add Pekko nodes to an existing Akka cluster. This support is experimental. This release should not be used in production. +@@toc { depth=1 } -### Bug Fixes +@@@ index -* Fix StackOverflowError in ByteStringBuilder.addAll ([PR903](https://github.com/apache/pekko/pull/903)) -* Fix issue with possible int overflow in snapshot interval calculation ([PR1088](https://github.com/apache/pekko/pull/1088)) +* [1.1 Releases](releases-1.1.md) +* [1.0 Releases](releases-1.0.md) -### Other Changes - -* Change the manager name to use `pekko` in the name ([PR587](https://github.com/apache/pekko/pull/587)) -* Support interacting with Akka Remote and Cluster nodes ([PR765](https://github.com/apache/pekko/pull/765), [PR1112](https://github.com/apache/pekko/pull/1112)) - * See the [wiki notes](https://cwiki.apache.org/confluence/display/PEKKO/Pekko+Akka+Compatibility) about uptaking this -* Change noisy logging in DNS handler ([PR835](https://github.com/apache/pekko/pull/835)) -* Support reading akka-persistence snapshots ([PR837](https://github.com/apache/pekko/pull/837), [PR841](https://github.com/apache/pekko/pull/841)) -* Fix deprecation version on GraphApply ([PR877](https://github.com/apache/pekko/pull/877)) -* Reject zero and negative periodic tasks schedule ([PR887](https://github.com/apache/pekko/pull/887)) - -## 1.0.2 -A minor bug fix release. - -### Bug Fixes - -* Do not render env variables when logging configs. This relates to the optional config `pekko.log-config-on-start`. We do not recommend logging configs in production environments. ([PR771](https://github.com/apache/pekko/pull/771)) -* Allow `pekko-actor-testkit-typed` to work with slf4j-api v2.0.x. ([PR784](https://github.com/apache/pekko/pull/784)) - -### Additional Changes - -* Deprecate statefulMapConcat ([#601](https://github.com/apache/pekko/issues/601)) -* Add section on using Scala 3 Union types to eliminate msg adapters ([PR741](https://github.com/apache/pekko/pull/741)) - -## 1.0.1 -A minor bug fix release. The class renaming described below (`#491`) is not expected to affect anyone -upgrading from version 1.0.0 but it is strongly recommended that Apache Pekko users switch to the 1.0.1 -release when it becomes available. - -### Bug Fixes - -* Issue with class name of package private object `PekkoPduProtobufCodec$` ([#491](https://github.com/apache/pekko/issues/491)) - -## 1.0.0 -Apache Pekko 1.0.0 is based on Akka 2.6.20. Pekko came about as a result of Lightbend's decision to make future -Akka releases under a [Business Software License](https://www.lightbend.com/blog/why-we-are-changing-the-license-for-akka), -a license that is not compatible with Open Source usage. - -Apache Pekko has changed the package names, among other changes. Config names have changed to use `pekko` instead -of `akka` in their names. The default ports for pekko-remote have changed to avoid clashing with the akka-remote -defaults. Users switching from Akka to Pekko should read our @ref:[Migration Guide](../migration/index.md). - -Generally, we have tried to make it as easy as possible to switch existing Akka 2.6 based projects over to using -Pekko 1.0. - -We have gone through the code base and have tried to properly acknowledge all third party source code in the -Apache Pekko code base. If anyone believes that there are any instances of third party source code that is not -properly acknowledged, please get in touch. - -### Bug Fixes -We haven't had to fix many bugs that were in Akka 2.6.20. - -* Optimized JsonFraming breaks existing functionality in v2.6.20 ([PR44](https://github.com/apache/pekko/pull/44)) -* Use random IDs in Async DNS Resolver. This change was made due to [CVE-2023-31442](https://akka.io/security/akka-async-dns-2023-31442.html) in Akka. ([#384](https://github.com/apache/pekko/issues/384)) -* Include critical TLS fix from Akka 2.6.21 ([#442](https://github.com/apache/pekko/issues/442)) - -### Dependency Upgrades -We have tried to limit the changes to third party dependencies that are used in Pekko 1.0.0. These are some exceptions: - -* Scala 3.3.0 is the minimum Scala 3 version supported. Scala 2.12 and 2.13 are still supported. -* Jackson 2.14.3 ([#7](https://github.com/apache/pekko/issues/7)) -* protobuf-java 3.16.3 ([PR390](https://github.com/apache/pekko/pull/390)) -* reactive-streams 1.0.4 -* scala-java8-compat 1.0.2 - it is now only a dependency if you are using Scala 2.12. It is no longer used by Pekko when Scala 2.13 or 3 are used. -* ssl-config 0.6.1 ([PR394](https://github.com/apache/pekko/pull/394)) -* scalatest 3.2.14. Pekko users who have existing tests based on Akka Testkit may need to migrate their tests due to the scalatest upgrade. The [scalatest 3.2 release notes](https://www.scalatest.org/release_notes/3.2.0) have a detailed description of the changes needed. - -### Known Issues -* The Pekko tests run well in our GitHub Actions continuous integration setup but can be hard to get running locally. We are adding improvements and they can be tracked among our GitHub issues using the [make-tests-easier-to-run](https://github.com/apache/pekko/issues?q=label%3Amake-tests-easier-to-run+) label). +@@@ diff --git a/docs/src/main/paradox/release-notes/releases-1.0.md b/docs/src/main/paradox/release-notes/releases-1.0.md new file mode 100644 index 00000000000..d02700badff --- /dev/null +++ b/docs/src/main/paradox/release-notes/releases-1.0.md @@ -0,0 +1,78 @@ +# Release Notes (1.0.x) + +## 1.0.3-M1 +This is milestone release and is aimed at testing some new support for users who want to add Pekko nodes to an existing Akka cluster. This support is experimental. This release should not be used in production. + +### Bug Fixes + +* Fix StackOverflowError in ByteStringBuilder.addAll ([PR903](https://github.com/apache/pekko/pull/903)) +* Fix issue with possible int overflow in snapshot interval calculation ([PR1088](https://github.com/apache/pekko/pull/1088)) + +### Other Changes + +* Change the manager name to use `pekko` in the name ([PR587](https://github.com/apache/pekko/pull/587)) +* Support interacting with Akka Remote and Cluster nodes ([PR765](https://github.com/apache/pekko/pull/765), [PR1112](https://github.com/apache/pekko/pull/1112)) + * See the [wiki notes](https://cwiki.apache.org/confluence/display/PEKKO/Pekko+Akka+Compatibility) about uptaking this +* Change noisy logging in DNS handler ([PR835](https://github.com/apache/pekko/pull/835)) +* Support reading akka-persistence snapshots ([PR837](https://github.com/apache/pekko/pull/837), [PR841](https://github.com/apache/pekko/pull/841)) +* Fix deprecation version on GraphApply ([PR877](https://github.com/apache/pekko/pull/877)) +* Reject zero and negative periodic tasks schedule ([PR887](https://github.com/apache/pekko/pull/887)) + +## 1.0.2 +A minor bug fix release. + +### Bug Fixes + +* Do not render env variables when logging configs. This relates to the optional config `pekko.log-config-on-start`. We do not recommend logging configs in production environments. ([PR771](https://github.com/apache/pekko/pull/771)) +* Allow `pekko-actor-testkit-typed` to work with slf4j-api v2.0.x. ([PR784](https://github.com/apache/pekko/pull/784)) + +### Additional Changes + +* Deprecate statefulMapConcat ([#601](https://github.com/apache/pekko/issues/601)) +* Add section on using Scala 3 Union types to eliminate msg adapters ([PR741](https://github.com/apache/pekko/pull/741)) + +## 1.0.1 +A minor bug fix release. The class renaming described below (`#491`) is not expected to affect anyone +upgrading from version 1.0.0 but it is strongly recommended that Apache Pekko users switch to the 1.0.1 +release when it becomes available. + +### Bug Fixes + +* Issue with class name of package private object `PekkoPduProtobufCodec$` ([#491](https://github.com/apache/pekko/issues/491)) + +## 1.0.0 +Apache Pekko 1.0.0 is based on Akka 2.6.20. Pekko came about as a result of Lightbend's decision to make future +Akka releases under a [Business Software License](https://www.lightbend.com/blog/why-we-are-changing-the-license-for-akka), +a license that is not compatible with Open Source usage. + +Apache Pekko has changed the package names, among other changes. Config names have changed to use `pekko` instead +of `akka` in their names. The default ports for pekko-remote have changed to avoid clashing with the akka-remote +defaults. Users switching from Akka to Pekko should read our @ref:[Migration Guide](../migration/index.md). + +Generally, we have tried to make it as easy as possible to switch existing Akka 2.6 based projects over to using +Pekko 1.0. + +We have gone through the code base and have tried to properly acknowledge all third party source code in the +Apache Pekko code base. If anyone believes that there are any instances of third party source code that is not +properly acknowledged, please get in touch. + +### Bug Fixes +We haven't had to fix many bugs that were in Akka 2.6.20. + +* Optimized JsonFraming breaks existing functionality in v2.6.20 ([PR44](https://github.com/apache/pekko/pull/44)) +* Use random IDs in Async DNS Resolver. This change was made due to [CVE-2023-31442](https://akka.io/security/akka-async-dns-2023-31442.html) in Akka. ([#384](https://github.com/apache/pekko/issues/384)) +* Include critical TLS fix from Akka 2.6.21 ([#442](https://github.com/apache/pekko/issues/442)) + +### Dependency Upgrades +We have tried to limit the changes to third party dependencies that are used in Pekko 1.0.0. These are some exceptions: + +* Scala 3.3.0 is the minimum Scala 3 version supported. Scala 2.12 and 2.13 are still supported. +* Jackson 2.14.3 ([#7](https://github.com/apache/pekko/issues/7)) +* protobuf-java 3.16.3 ([PR390](https://github.com/apache/pekko/pull/390)) +* reactive-streams 1.0.4 +* scala-java8-compat 1.0.2 - it is now only a dependency if you are using Scala 2.12. It is no longer used by Pekko when Scala 2.13 or 3 are used. +* ssl-config 0.6.1 ([PR394](https://github.com/apache/pekko/pull/394)) +* scalatest 3.2.14. Pekko users who have existing tests based on Akka Testkit may need to migrate their tests due to the scalatest upgrade. The [scalatest 3.2 release notes](https://www.scalatest.org/release_notes/3.2.0) have a detailed description of the changes needed. + +### Known Issues +* The Pekko tests run well in our GitHub Actions continuous integration setup but can be hard to get running locally. We are adding improvements and they can be tracked among our GitHub issues using the [make-tests-easier-to-run](https://github.com/apache/pekko/issues?q=label%3Amake-tests-easier-to-run+) label). diff --git a/docs/src/main/paradox/release-notes/releases-1.1.md b/docs/src/main/paradox/release-notes/releases-1.1.md new file mode 100644 index 00000000000..fd95a708f12 --- /dev/null +++ b/docs/src/main/paradox/release-notes/releases-1.1.md @@ -0,0 +1,81 @@ +# Release Notes (1.1.x) + +## 1.1.0-M1 + +Release notes for Apache Pekko 1.1.0-M1. See [GitHub Milestone](https://github.com/apache/pekko/milestone/2?closed=1) for fuller list of changes. +As with all milestone releases, this release is not recommended for production use - it is designed to allow users to try out the changes in a test environment. + +### 1.0.x changes + +Apache Pekko 1.1.0-M1 contains all of the changes that have been released in the @ref:[1.0.x releases](releases-1.0.md) up to and including v1.0.3-M1. + +### Bug Fixes + +* in TlsActor, flush data to user only after handshake has finished ([PR1128](https://github.com/apache/pekko/pull/1128)) +* proper path when promise actor terminated quickly ([PR1156](https://github.com/apache/pekko/pull/1156)) +* TcpDnsClient cannot recover if registration on TcpConnection times out ([PR1183](https://github.com/apache/pekko/pull/1183)) +* Fix uncaught decider exception in Split with Supervision.resumingDecider ([PR1207](https://github.com/apache/pekko/pull/1207)) +* Pull instead of throw exception in groupBy operator ([PR1210](https://github.com/apache/pekko/pull/1210)) +* Fix ByteIterator indexWhere method ([PR1282](https://github.com/apache/pekko/pull/1282)) + +### Additional APIs + +* Add asInputStream to ByteString ([PR1085](https://github.com/apache/pekko/pull/1085)) +* Add new indexOf functions to ByteString for byte lookups ([PR1247](https://github.com/apache/pekko/pull/1247)) +* Add create method to PFBuilder ([PR947](https://github.com/apache/pekko/pull/947)) +* Add missing create method to javadsl Graph ([PR1230](https://github.com/apache/pekko/pull/1230)) + +The Stream API has been updated to add some extra functions. + +* add collectFirst stream operator ([PR984](https://github.com/apache/pekko/pull/984)) +* add collectWhile stream operator ([PR964](https://github.com/apache/pekko/pull/964)) +* add dimap stream operator ([PR942](https://github.com/apache/pekko/pull/942)) +* add flatten stream operator ([PR937](https://github.com/apache/pekko/pull/937)) +* add flattenMerge stream operator ([PR1045](https://github.com/apache/pekko/pull/1045)) +* add foldWhile stream operator ([PR1012](https://github.com/apache/pekko/pull/1012)) +* add mapAsyncPartitioned / mapAsyncPartitionedUnordered stream operators ([PR561](https://github.com/apache/pekko/pull/561), [PR676](https://github.com/apache/pekko/pull/676)) +* add mapWithResource stream operator ([PR931](https://github.com/apache/pekko/pull/931), [PR1053](https://github.com/apache/pekko/pull/1053)) +* add onErrorComplete stream operator ([PR913](https://github.com/apache/pekko/pull/913)) +* add support for `for` comprehensions ([PR935](https://github.com/apache/pekko/pull/935)) +* add Sink.exists operator ([PR990](https://github.com/apache/pekko/pull/990)) +* add Sink.forall operator ([PR989](https://github.com/apache/pekko/pull/989)) +* add Source.iterate operator ([PR1244](https://github.com/apache/pekko/pull/1244)) +* added extra retry operators that allow users to provide a predicate to decide whether to retry based on the exception ([PR1269](https://github.com/apache/pekko/pull/1269)) + +The Stream Testkit Java DSL has some extra functions. + +* Add more Java DSL functions to StreamTestKit to better match the Scala DSL ([PR1186](https://github.com/apache/pekko/pull/1186)) +* Add expectNextN to StreamTestKit for javadsl ([PR962](https://github.com/apache/pekko/pull/962)) + +### Removed + +* The pekko-protobuf jar is no longer published. The pekko-protobuf-v3 jar is still published ([PR489](https://github.com/apache/pekko/pull/489)) + +### Other Changes + +* Scala 2 inline optimizer has been enabled +* Support `fork-join-executor.maximum-pool-size` config ([PR485](https://github.com/apache/pekko/pull/485)) +* Classic Remoting was updated to use Netty 4 instead of Netty 3 ([PR643](https://github.com/apache/pekko/pull/643)) +* Replace SubstreamCancelStrategy with SupervisionDecider for Split ([PR252](https://github.com/apache/pekko/pull/252)) +* Support Jackson StreamReadConstraints and StreamWriteConstraints ([PR564](https://github.com/apache/pekko/pull/564)) +* Support configuration for Jackson Recycler Pool ([PR1192](https://github.com/apache/pekko/pull/1192)) +* pekko-multi-node-testkit was changed to use Netty 4 instead of Netty 3 ([PR539](https://github.com/apache/pekko/pull/539)) +* add junit5 support to pekko-testkit-typed ([PR751](https://github.com/apache/pekko/pull/751)) +* Fix maybe throw for MinimalStage (Stream Unfold). ([PR822](https://github.com/apache/pekko/pull/822)) +* Add dedicated stream timeout exceptions for timeout related operators ([PR861](https://github.com/apache/pekko/pull/861)) +* Reimplement MapConcat operator without statefulMapConcat. ([PR902](https://github.com/apache/pekko/pull/902)) +* Make SingleConsumerMultiProducer the default mailbox for stream. ([PR917](https://github.com/apache/pekko/pull/917)) +* Rework PhiAccrualFailureDetector to enable monitoring of interval. ([PR1137](https://github.com/apache/pekko/pull/1137)) +* Remove the deprecation of statefulMapConcat operator. ([PR1147](https://github.com/apache/pekko/pull/1147)) +* Add AbruptStreamTerminationException as super class of some related exceptions. ([PR1201](https://github.com/apache/pekko/pull/1201)) +* For Pekko Persistence DurableState API, a new DeleteRevisionException has been added and the aim is to have implementations fail with that exception if a deleteObject does not delete exactly one record for that revision. ([PR1271](https://github.com/apache/pekko/pull/1271)) +* Some performance changes in the Stream code ([PR48](https://github.com/apache/pekko/pull/48), [PR49](https://github.com/apache/pekko/pull/49), [PR278](https://github.com/apache/pekko/pull/278), [PR363](https://github.com/apache/pekko/pull/363), [PR408](https://github.com/apache/pekko/pull/408), [PR872](https://github.com/apache/pekko/pull/872), [PR923](https://github.com/apache/pekko/pull/923), [PR983](https://github.com/apache/pekko/pull/983), [PR1001](https://github.com/apache/pekko/pull/1001), [PR1027](https://github.com/apache/pekko/pull/1027), [PR1249](https://github.com/apache/pekko/pull/1249), [PR1250](https://github.com/apache/pekko/pull/1250)) + +### Dependency Changes + +Most of the dependency changes are small patch level upgrades. Some exceptions include: + +* The protobuf-java code that is shaded and released as pekko-protobuf-v3 has been upgraded to protobuf-java 3.25.3 +* slf4j was updated to v2 ([PR748](https://github.com/apache/pekko/pull/748)) +* upgrade from netty 3 to netty 4 (pekko-remote and pekko-multi-node-testkit) +* Jackson 2.17.1