OTP 21 Release Candidate 2 available for testing

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

OTP 21 Release Candidate 2 available for testing

Henrik Nord X

OTP 21 Release Candidate 2

This is the second of two planned release candidates before the OTP 21 release.

As we move closer to OTP 21 we aim to improve the quality and stability of the release candidate.

So this candidate is mostly the same as the first one, but with bug-fixes and improvements to the new features mentioned before.

The intention with this release is that you as users try it and give us feedback

Erlang/OTP 21 is a new major release with new features, improvements as well as incompatibilities.

Potential Incompatibilities

  • All Corba applications are now moved from the OTP repository
  • A new Corba repository will be created https://github.com/erlang
  • New applications ftp and tftp, moved from inets
  • ssl no longer supports 3_DES cipher suites or RSA-key exchange cipher suites by default
  • erlang:monitor on a primitive node (erl_interface, jinterface, etc) will no longer fail with badarg exception. Instead a monitor will be created, but it will only supervise the connection to the node.

 Highlights

 Erts:

  • Enhanced IO scalability
  • Support for usage of distribution controller processes for alternative transports, routing etc
  • compact instructions on 64bit systems for code below 4GB 20% less memory for loaded code
  • Rewrite of the efile-driver with NIFs and "Dirty schedulers" resulting in faster file operations
  • non-smp VM removed
  • link and monitor optimized for scalability
  • os:getenv/putenv now work on thread-safe emulation. No longer in sync with libc getenv(3). Manual synchronization will be needed.

Compiler:

  • Misc compiler optimizations including contributions from the Elixir team resulting in 10% improvements in benchmarks
  • "Tuple calls" have been removed from the run-time system.
  • Code such as f({ok, Val}) -> {ok, Val} is now automatically rewritten to f({ok, Val} = Tuple) -> Tuple. this reduces code size, execution time, and removed GC pressure.
  • More information in stacktrace from a number of operators
  • erlang:get_stacktrace/0 deprecated to be replaced with try ... catch C:R:Stacktrace -> ...
  • Creation of small maps with literal keys optimized.

Security:

  • DTLS support in SSL
  • Enhanced support for distribution over TLS
  • "unsecure" ciphers removed from defaults in SSL and SSH.
  • A new option value defined to facilitate implementing exec servers. Old option kept for compatibility, but now gives errors on stderror.

Standard libraries:

  • New API for logging, logger
  • New uri_string module for parsing URIs according to "The standard"
  • New function lists:search(list,fun/1) -> {ok, Value} | false
  • Changed default behaviour of .erlang loading. escript, erlc, dialyzer and typer no longer load an .erlang at all.

For more details see
http://erlang.org/download/otp_src_21.0-rc2.readme

Pre built versions for Windows can be fetched here:
http://erlang.org/download/otp_win32_21.0-rc2.exe
http://erlang.org/download/otp_win64_21.0-rc2.exe

Online documentation can be browsed here:
http://erlang.org/documentation/doc-10.0-rc2/doc

The Erlang/OTP source can also be found at GitHub on the official Erlang repository,

https://github.com/erlang/otp

tag:

OTP-21.0-rc2

 

Thank you for all your contributions!





_______________________________________________
erlang-questions mailing list
[hidden email]
http://erlang.org/mailman/listinfo/erlang-questions
Reply | Threaded
Open this post in threaded view
|

Re: OTP 21 Release Candidate 2 available for testing

Loïc Hoguin-3
Looks good!

The issues I had with rc1 are all gone and everything went fine on
Alpine, Arch Linux, CentOS, Debian, FreeBSD, OSX and Ubuntu.

I had a little difficulty building on OSX. When I had libjpeg 9c it
asked for 8d, and when I switched to 8d it asked for 9c. But that's
probably an issue with my environment, not an issue with OTP. Making
both .dylib files available fixed it. Still putting it here just in case
this rings a bell.

On 05/30/2018 11:06 AM, Henrik Nord X wrote:

>
>   OTP 21 Release Candidate 2
>
> This is the second of two planned release candidates before the OTP 21
> release.
>
> As we move closer to OTP 21 we aim to improve the quality and stability
> of the release candidate.
>
> So this candidate is mostly the same as the first one, but with
> bug-fixes and improvements to the new features mentioned before.
>
> The intention with this release is that you as users try it and give us
> feedback
>
> Erlang/OTP 21 is a new major release with new features, improvements as
> well as incompatibilities.
>
>
>     Potential Incompatibilities
>
>   * All Corba applications are now moved from the OTP repository
>   * A new Corba repository will be created https://github.com/erlang
>   * New applications ftp and tftp, moved from inets
>   * ssl no longer supports 3_DES cipher suites or RSA-key exchange
>     cipher suites by default
>   * erlang:monitor on a primitive node (erl_interface, jinterface, etc)
>     will no longer fail with badarg exception. Instead a monitor will be
>     created, but it will only supervise the connection to the node.
>
>
>       Highlights
>
>
>         Erts:
>
>   * Enhanced IO scalability
>   * Support for usage of distribution controller processes for
>     alternative transports, routing etc
>   * compact instructions on 64bit systems for code below 4GB 20% less
>     memory for loaded code
>   * Rewrite of the efile-driver with NIFs and "Dirty schedulers"
>     resulting in faster file operations
>   * non-smp VM removed
>   * link and monitor optimized for scalability
>   * os:getenv/putenv now work on thread-safe emulation. No longer in
>     sync with libc getenv(3). Manual synchronization will be needed.
>
>
>       Compiler:
>
>   * Misc compiler optimizations including contributions from the Elixir
>     team resulting in 10% improvements in benchmarks
>   * "Tuple calls" have been removed from the run-time system.
>   * Code such as |f({ok, Val}) -> {ok, Val}| is now automatically
>     rewritten to |f({ok, Val} = Tuple) -> Tuple.| this reduces code
>     size, execution time, and removed GC pressure.
>   * More information in stacktrace from a number of operators
>   * |erlang:get_stacktrace/0| deprecated to be replaced with |try ...
>     catch C:R:Stacktrace -> ...|
>   * Creation of small maps with literal keys optimized.
>
>
>       Security:
>
>   * DTLS support in SSL
>   * Enhanced support for distribution over TLS
>   * "unsecure" ciphers removed from defaults in SSL and SSH.
>   * A new option value defined to facilitate implementing exec servers.
>     Old option kept for compatibility, but now gives errors on stderror.
>
>
>       Standard libraries:
>
>   * New API for logging, logger
>   * New uri_string module for parsing URIs according to "The standard"
>   * New function lists:search(list,fun/1) -> {ok, Value} | false
>   * Changed default behaviour of .erlang loading. escript, erlc,
>     dialyzer and typer no longer load an .erlang at all.
>
> For more details see
> http://erlang.org/download/otp_src_21.0-rc2.readme
>
> Pre built versions for Windows can be fetched here:
> http://erlang.org/download/otp_win32_21.0-rc2.exe
> http://erlang.org/download/otp_win64_21.0-rc2.exe
>
> Online documentation can be browsed here:
> http://erlang.org/documentation/doc-10.0-rc2/doc
>
> The Erlang/OTP source can also be found at GitHub on the official Erlang
> repository,
>
> https://github.com/erlang/otp
>
> tag:
>
> OTP-21.0-rc2 <https://github.com/erlang/otp/releases/tag/OTP-21.0-rc2>
>
> Thank you for all your contributions!
>
>
>
>
>
>
> _______________________________________________
> erlang-questions mailing list
> [hidden email]
> http://erlang.org/mailman/listinfo/erlang-questions
>

--
Loïc Hoguin
https://ninenines.eu
_______________________________________________
erlang-questions mailing list
[hidden email]
http://erlang.org/mailman/listinfo/erlang-questions