Let it crash

Jul 06

Team Blog moved to blog.akka.io

Dear hakkers,
we decided to move the Akka Team blog to the blog.akka.io.

The Let it Crash blog will remain as-is for archival purposes, as many of the posts (especially some from the Summer of Blog) are top quality and still very relevant nowadays.

Nov 27

Akka 2.4.1 Released

Dear hAkkers,

We—the Akka committers—are pleased to be able to announce the availability of Akka 2.4.1.

This release contains a few important fixes and improvements:

The complete list of closed tickets can be found in the 2.4.1 github issues milestone.

Akka 2.4.1 is released for Scala 2.11, 2.12.0-M3 and Java 8.

Migrating from Older Relases

When migrating an existing project from Akka 2.3.x please have a look at the migration guide.

Additional Release Details

The artifacts comprising this release have been published to https://oss.sonatype.org/content/repositories/releases/ and also to Maven Central. In addition, we adopted the sbt standard of encoding the Scala binary version in the artifact name, i.e. the core actor package’s artifactId is “akka-actor_2.11”.

Credits

commits added removed
 22    1636     411 Patrik Nordwall
  8     542      57 Konrad Malawski
  7    1418     151 Johan Andrén
  7     246     815 Andrea
  5       9       9 Markus Hauck
  2      57      65 Martynas Mickevičius
  2     580       5 Anton Karamanov
  2      58      11 Roland Kuhn
  2       6       6 kukido
  2       2       2 Jaca777
  2      34       7 Jan Ypma
  1      35       4 Evgeny Shepelyuk
  1      19       1 Nils-Helge Garli Hegvik
  1       3       3 Stefan Wachter
  1      30       7 Heiko Seeberger
  1     903      16 Kailuo Wang
  1       2       2 michaelom
  1     342       9 Henry Mai
  1      33      18 Krzysztof Bochenek
  1       4       4 cheehau.lim
  1      17       4 lolski
  1      14       3 Marcin Sosnicki
  1       7       0 Martin Grotzke
  1     242      14 Endre Sándor Varga
  1     127      21 Michal Lacko
  1      74       3 Ievgenii.Shepeliuk
  1       0       1 Oleg

Happy hAkking!

Nov 06

Akka Stream and Http 2.0-M1 Released!

https://akka.io/news/2015/11/05/akka-streams-2.0-M1-released.html

Sep 30

Akka 2.4.0 Released

Dear hAkkers,

we—the Akka committers—are proud to announce the final release of Akka 2.4.0.

The key features of the 2.4.0 release are:

Things that will be included in upcoming 2.4.x releases

The Java API and the documentation for Akka Typed will be added. The Scala API was released in 2.4.0 in order to gather early feedback on this rather exciting new module.

We will incorporate Streams & HTTP once ready (to become an experimental module, as usual) into 2.4.x. Note that you can use Akka Streams 1.0 together with Akka 2.4.0.

Binary Compatibility

Akka 2.4.x is backwards binary compatible with previous 2.3.x versions (exceptions listed below). This means that the new JARs are a drop-in replacement for the old one (but not the other way around) as long as your build does not enable the inliner (Scala-only restriction). It should be noted that Scala 2.11.x is is not binary compatible with Scala 2.10.x, which means that Akka’s binary compatibility property only holds between versions that were built for a given Scala version—akka-actor_2.11-2.4.0.jar is compatible with akka-actor_2.11-2.3.14.jar but not with akka-actor_2.10-2.3.14.jar.

Binary compatibility is not maintained for the following:

Being binary compatible means that applications and libraries built on top of Akka 2.3.x continue to work with Akka 2.4.x without recompilation (subject to the conditions below), which implies that Akka Streams & HTTP as well as Play Framework 2.4 can be combined with Akka 2.4.

The dependency to Netty has been updated from version 3.8.0.Final to 3.10.3.Final. The changes in those versions might not be fully binary compatible, but we believe that it will not be a problem in practice. No changes were needed to the Akka source code for this update. Users of libraries that depend on 3.8.0.Final that break with 3.10.3.Final should be able to manually downgrade the dependency to 3.8.0.Final and Akka will still work with that version.

The dependency to Typesafe Config has been updated from 1.2.1 to 1.3.0 which should be binary compatible for the vast majority users, except for obscure edge cases as its changelog points out. This change was made in order in order to use new JDK8 specific features in the library as well as to align Akka with Play which is now also depending on 1.3.0.

Migration Guide

When migrating a code base to 2.4 please refer to the migration guide in order to profit from some of the improvements.

Old Akka Persistence plugins released for 2.3 are not compatible with the changes that were done in 2.4. We kindly ask the Akka Persistence plugin maintainers to migrate and release for 2.4.0. Even though there are rather many API changes since 2.3 in the Persistence plugin API it should not be difficult to migrate. See the Persistence Plugin APIs section in the migration guide.

We have carefully made changes in Akka Persistence with the goal that events stored with Akka Persistence 2.3.14 should still be possible to replay with 2.4.x, i.e. no lost data. Specific journal implementations may of course violate that goal.

General Remarks

357 issues were closed since 2.3.0. The complete list can be found in the 2.4-M1, 2.4-M2, 2.4-M3, 2.4.0-RC1, 2.4.0-RC2, 2.4.0-RC3 and 2.4.0 github issues milestones.

Thanks to the Community! For this release we had the help of 134 committers. For the full stats see the announcement on the website.

Happy hakking!

Sep 25

Akka Monitoring from Typesafe and Takipi

Typesafe Reactive Monitoring Beta Program is announced today.

The first release is specifically geared towards monitoring of Akka, with as little performance overhead as possible. Takipi is the first third-party monitoring solution to be supported.

Try it out!

Sep 17

Akka 2.4.0-RC3 Released

Dear hAkkers,

we—the Akka committers—are pleased to be able to announce the availability of Akka 2.4.0-RC3 (THIRD RELEASE CANDIDATE). This is what we intend to ship as 2.4.0 final unless issues are found, so please test it thoroughly and report back. Failures are important to hear about, but praise also does not hurt :-)

Since the last release candidate two weeks ago we have mostly improved the documentation, but there are few other changes also:

The complete list of closed tickets can be found in the 2.4.0-RC3 github issues milestone.

The key features of the 2.4.0 release are:

Things that are Known Missing

We will not be able to complete the Java API and the documentation for Akka Typed for 2.4.0, but the Scala API will be released in order to gather early feedback on this rather exciting new module.

We will incorporate Streams & HTTP once ready (to become an experimental module, as usual) into 2.4.x at a later time. Note that you can use Akka Streams 1.0 together with Akka 2.4.0-RC3.

Binary Compatibility

Akka 2.4.x is backwards binary compatible with previous 2.3.x versions (exceptions listed below). This means that the new JARs are a drop-in replacement for the old one (but not the other way around) as long as your build does not enable the inliner (Scala-only restriction). It should be noted that Scala 2.11.x is is not binary compatible with Scala 2.10.x, which means that Akka’s binary compatibility property only holds between versions that were built for a given Scala version—akka-actor_2.11-2.4.0-RC3.jar is compatible with akka-actor_2.11-2.3.14.jar but not with akka-actor_2.10-2.3.14.jar.

Binary compatibility is not maintained for the following:

Being binary compatible means that applications and libraries built on top of Akka 2.3.x continue to work with Akka 2.4.x without recompilation (subject to the conditions below), which implies that Akka Streams & HTTP as well as Play Framework 2.4 can be combined with Akka 2.4.

The dependency to Netty has been updated from version 3.8.0.Final to 3.10.3.Final. The changes in those versions might not be fully binary compatible, but we believe that it will not be a problem in practice. No changes were needed to the Akka source code for this update. Users of libraries that depend on 3.8.0.Final that break with 3.10.3.Final should be able to manually downgrade the dependency to 3.8.0.Final and Akka will still work with that version.

The dependency to Typesafe Config has been updated from 1.2.1 to 1.3.0 which should be binary compatible for the vast majority users, except for obscure edge cases as its changelog points out. This change was made in order in order to use new JDK8 specific features in the library as well as to align Akka with Play which is now also depending on 1.3.0.

Migration Guide

When migrating a code base to 2.4 please refer to the migration guide in order to profit from some of the improvements.

Old Akka Persistence plugins released for 2.3 are not compatible with the changes that were done in 2.4-M2. This is a good time for Akka Persistence plugin maintainers to migrate and release a preview for 2.4.0-RC3. Even though there are rather many API changes since 2.3 in the Persistence plugin API it should not be difficult to migrate. See the Persistence Plugin APIs section in the migration guide.

We have carefully made changes in Akka Persistence with the goal that events stored with Akka Persistence 2.3.14 should still be possible to replay with 2.4.x, i.e. no lost data. Specific journal implementations may of course violate that goal.

General Remarks

Please do what you usually do so well: try out this release candidate and report back when things break, not work as advertised, feel strange, or even when you are happy :-) Especially concerning binary compatibility we will need help from the community (you!) since we cannot run all possible programs ourselves; we base our BC efforts on the MiMa plugin but that is no perfect guarantee that everything will work out of the box.

The artifacts comprising this release have been published to https://oss.sonatype.org/content/repositories/releases/ and also to Maven Central. In addition, we adopted the sbt standard of encoding the Scala binary version in the artifact name, i.e. the core actor package’s artifactId is “akka-actor_2.11” or “akka-actor_2.12.0-M2”, respectively.

33 issues were closed since 2.4.0-RC2. The complete list of closed tickets can be found in the 2.4.0-RC3 github issues milestone.

Credits

commits added removed
   26    4460    1360 Patrik Nordwall
    9     500     106 Johan Andrén
    2       5       3 Konrad Malawski
    2       3       2 Jamie
    1      21       6 Marek Kadek
    1       1       0 luben karavelov
    1      39       9 Daryl Odnert

Happy hAkking!

Sep 15

Understanding Akka’s Recommended Practice for Actor Creation in Scala

Our friends at Cake Solutions wrote a nice article explaining the why behind the recommended way to declare Actor Props.

Sep 04

Akka 2.4.0-RC2 Released

Dear hAkkers,

we—the Akka committers—are pleased to be able to announce the availability of Akka 2.4.0-RC2 (SECOND RELEASE CANDIDATE). This is what we intend to ship as 2.4.0 final unless issues are found, so please test it thoroughly and report back. Failures are important to hear about, but praise also does not hurt :-)

We would like to send a special thanks to Akka Persistence plugin maintainers for their feedback and reported issues. Thank you Brian Scully, Christopher Batey and Martin Krasser.

Since the last release candidate two weeks ago the main changes are:

The complete list of closed tickets can be found in the 2.4.0-RC2 github issues milestone.

The key features of the 2.4.0 release are:

Things that are Known Missing

The Persistence schema evolution section of the documentation has not yet been ported to Java, but the text and illustrations of the Scala version apply to both languages. We will complete this before 2.4.0 final.

We will most likely not be able to complete the Java API and the documentation for Akka Typed for 2.4.0, but the Scala API will be released in order to gather early feedback on this rather exciting new module.

We will incorporate Streams & HTTP once ready (to become an experimental module, as usual) into 2.4.x at a later time. Note that you can use Akka Streams 1.0 together with Akka 2.4.0-RC2.

Binary Compatibility

Akka 2.4.x is backwards binary compatible with previous 2.3.x versions (exceptions listed below). This means that the new JARs are a drop-in replacement for the old one (but not the other way around) as long as your build does not enable the inliner (Scala-only restriction). It should be noted that Scala 2.11.x is is not binary compatible with Scala 2.10.x, which means that Akka’s binary compatibility property only holds between versions that were built for a given Scala version—akka-actor_2.11-2.4.0-RC2.jar is compatible with akka-actor_2.11-2.3.12.jar but not with akka-actor_2.10-2.3.12.jar.

Binary compatibility is not maintained for the following:

Being binary compatible means that applications and libraries built on top of Akka 2.3.x continue to work with Akka 2.4.x without recompilation (subject to the conditions below), which implies that Akka Streams & HTTP as well as Play Framework 2.4 can be combined with Akka 2.4.

The dependency to Netty has been updated from version 3.8.0.Final to 3.10.3.Final. The changes in those versions might not be fully binary compatible, but we believe that it will not be a problem in practice. No changes were needed to the Akka source code for this update. Users of libraries that depend on 3.8.0.Final that break with 3.10.3.Final should be able to manually downgrade the dependency to 3.8.0.Final and Akka will still work with that version.

The dependency to Typesafe Config has been updated from 1.2.1 to 1.3.0 which should be binary compatible for the vast majority users, except for obscure edge cases as its changelog points out. This change was made in order in order to use new JDK8 specific features in the library as well as to align Akka with Play which is now also depending on 1.3.0.

Migration Guide

When migrating a code base to 2.4 please refer to the migration guide in order to profit from some of the improvements.

Old Akka Persistence plugins released for 2.3 are not compatible with the changes that were done in 2.4-M2. This is a good time for Akka Persistence plugin maintainers to migrate and release a preview for 2.4.0-RC2. Even though there are rather many API changes since 2.3 in the Persistence plugin API it should not be difficult to migrate. See the Persistence Plugin APIs section in the migration guide.

We have carefully made changes in Akka Persistence with the goal that events stored with Akka Persistence 2.3.12 should still be possible to replay with 2.4.x, i.e. no lost data. Specific journal implementations may of course violate that goal.

General Remarks

Please do what you usually do so well: try out this release candidate and report back when things break, not work as advertised, feel strange, or even when you are happy :-) Especially concerning binary compatibility we will need help from the community (you!) since we cannot run all possible programs ourselves; we base our BC efforts on the MiMa plugin but that is no perfect guarantee that everything will work out of the box.

The artifacts comprising this release have been published to https://oss.sonatype.org/content/repositories/releases/ and also to Maven Central. In addition, we adopted the sbt standard of encoding the Scala binary version in the artifact name, i.e. the core actor package’s artifactId is “akka-actor_2.11” or “akka-actor_2.12.0-M2”, respectively.

17 issues were closed since 2.4.0-RC1. The complete list of closed tickets can be found in the 2.4.0-RC2 github issues milestone.

Credits

commits added removed
   14     919     296 Patrik Nordwall
    6      59      27 Konrad Malawski
    1       1       1 Ankush Khanna
    1       0       5 Marek Kadek
    1      20      19 Ostapenko Evgeniy
    1     303      19 Veiga Ortiz, Héctor
    1      13      13 Yaroslav Klymko
    1       1       1 Brendan McAdams
    1     110       0 Endre Sándor Varga
    1   56148    7695 Roland Kuhn

Happy hAkking!

Robert Budźko: Akka Streams and Apache Camel

Robert explains how simple it is (already!) to integrate Akka Streams with Apache Camel.

Sep 03

Akka 2.3.13 Released

Dear hAkkers,

We—the Akka committers—are pleased to be able to announce the availability of Akka 2.3.13. This is the 13th maintenance release of the 2.3 branch. This release contains a few important fixes:

Akka 2.3.13 is released for Scala 2.10 and 2.11. This release is backwards binary compatible with all previous 2.3.x versions which means that the new JARs are a drop-in replacement for the old one (but not the other way around) as long as your build does not enable the inliner (Scala-only restriction). Always make sure to use at least the latest version required by any of your project’s dependencies.

Migrating from Older Relases

When migrating an existing project from Akka 2.2.x please have a look at the migration guide.

Additional Release Details

The artifacts comprising this release have been published to https://oss.sonatype.org/content/repositories/releases/ and also to Maven Central. In addition, we adopted the sbt standard of encoding the Scala binary version in the artifact name, i.e. the core actor package’s artifactId is “akka-actor_2.10” or “akka-actor_2.11”, respectively.

The complete list of closed tickets can be found in the 2.3.12 github issues milestone.

Credits

commits added removed
    5     231     134 Patrik Nordwall
    1       2       0 Luben Karavelov
    1       4       0 Konrad Malawski
    1     110       0 Endre Sándor Varga
    1       1       1 Ankush Khanna
    1       1       1 Rafał Sujak

Happy hAkking!