Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

release notes for 1.1.0-M1 #1204

Merged
merged 6 commits into from
May 16, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
78 changes: 5 additions & 73 deletions docs/src/main/paradox/release-notes/index.md
Original file line number Diff line number Diff line change
@@ -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).
@@@
78 changes: 78 additions & 0 deletions docs/src/main/paradox/release-notes/releases-1.0.md
Original file line number Diff line number Diff line change
@@ -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).
81 changes: 81 additions & 0 deletions docs/src/main/paradox/release-notes/releases-1.1.md
Original file line number Diff line number Diff line change
@@ -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
Loading