Akka.net v1.1.2 Release Notes

Release Date: 2016-09-21 // over 7 years ago
  • 🚀 Maintenance release for Akka.NET v1.1

    Akka.NET 1.1.2 introduces some exciting developments for Akka.NET users.

    🔧 Mono Support and Improved IPV4/6 Configuration 🚀 First, Akka.NET 1.1.2 is the first release of Akka.NET to be production-certified for Mono. We've made some changes to Akka.Remote, in particular, to design it to work within some of the confines of Mono 4.4.2. For instance, we now support the following HOCON configuration value for the default Helios TCP transport:

     helios.tcp {
          # Omitted for brevity
          transport-protocol = tcp
    
          port = 2552
    
          hostname = ""
    
          public-hostname = ""
    
          dns-use-ipv6 = false
          enforce-ip-family = false
    }
    

    🏁 helios.tcp.enforce-ip-family is a new setting added to the helios.tcp transport designed to allow Akka.Remote to function in environments that don't support IPV6. This includes Mono 4.4.2, Windows Azure WebApps, and possibly others. When this setting is turned on and dns-use-ipv6 = false, all sockets will be forced to use IPV4 only instead of dual mode. If this setting is turned on and dns-use-ipv6 = true, all sockets opened by the Helios transport will be forced to use IPV6 instead of dual-mode.

    🚀 Currently, as of Mono 4.4.2, this setting is turned on by default. Mono 4.6, when it's released, will allow dual-mode to work consistently again in the future.

    ✅ We run the entire Akka.NET test suite on Mono and all modules pass.

    Akka.Cluster Downing Providers 🔧 We've added a new feature to Akka.Cluster known as a "downing provider" - this is a pluggable strategy that you can configure via HOCON to specify how nodes in your Akka.NET cluster may automatically mark unreachable nodes as down.

    0️⃣ Out of the box Akka.Cluster only provides the default "auto-down" strategy that's been included as part of Akka.Cluster in the past. However, you can now subclass the Akka.Cluster.IDowningProvider interface to implement your own strategies, which you can then load through HOCON: