[erlang-questions] [ANN] Erlang/OTP 18.0-rc1 is available for testing.

Kenneth Lundin kenneth.lundin@REDACTED
Thu Mar 26 17:32:40 CET 2015

Erlang/OTP 18.0-rc1 is available for testing.

This is an alpha release, which will be followed by a planned beta
release in May and a final OTP 18.0 product release in June 2015.

Between the alpha and beta and final release there will be new updates of
the master branch with corrections and minor new features.
Occasionally there might be new tags which we in that
case will communicate and ask you to test.

Erlang/OTP 18.0 is a new major release with new features, quite a few
(characteristics) improvements, as well as a few incompatibilities.

See the Release Notes and the documentation for more details.

We would like to ask you to build and test the alpha release and send us
your feedback as soon as possible, so that we can make the necessary
corrections before OTP 18.0-rc2 and OTP 18.0, respectively.

The release contains many changes; thus, some unexpected incompatibilities
or issues may have slipped through our tests.
Please try to build and run your current products/applications and let us
know about any problems.

*IMPORTANT INFO when building your own code with this OTP release*
Since erlang:now is deprecated your build might stop if you are using
"warnings as errors".
To let the build through you can turn of warnings for deprecated functions
by setting an environment variable like this:
  export ERL_COMPILER_OPTIONS=nowarn_deprecated_function

Some highlights of the release are:

   - dialyzer: The -dialyzer() attribute can be used for suppressing
   in a module by specifying functions or warning options.
   It can also be used for requesting warnings in a module.
   - erts: The time functionality has been extended. This includes a new
   API for
   time, as well as "time warp" modes which alters the behavior when system
   time changes. You are strongly encouraged to use the new API instead of the
   old API based on erlang:now/0. erlang:now/0 has been deprecated since it
   will always be a scalability bottleneck.
   For more information see the Time and Time Correction chapter of the
   ERTS User's Guide. Here is a link
   - erts: Beside the API changes and time warp modes a lot of scalability
   and performance improvements regarding time management has been made.
   Examples are:
      - scheduler specific timer wheels,
      - scheduler specific BIF timer management,
      - parallel retrieval of monotonic time and system time on OS:es that
      support it.
   - erts: The previously introduced "eager check I/O" feature is now
   enabled by default.
   - erts/compiler: enhanced support for maps. Big maps new uses a HAMT
   (Hash Array Mapped Trie) representation internally which makes them more
   efficient. There is now also support for variables as map keys.
   - ssl: Remove default support for SSL-3.0 and added padding check for
   TLS-1.0 due to the Poodle vulnerability.
   - ssl: Remove default support for RC4 cipher suites, as they are
   consider too weak.
   - stdlib: Allow maps for supervisor flags and child specs

You can find the Release Notes with more detailed info at


You find the source code at github.com in the official Erlang repository.

Git tag OTP-18.0-rc1


You can also read the documentation on-line here:
(see the Release Notes mentioned above for release notes which
are not updated in the doc, but the new functionality is)


We also want to thank those that sent us patches, suggestions and bug

The Erlang/OTP Team at Ericsson
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://erlang.org/pipermail/erlang-questions/attachments/20150326/a75d0ac7/attachment.htm>

More information about the erlang-questions mailing list