Skip to content

Releases: erlang/otp

OTP 19.3

15 Mar 14:54
Compare
Choose a tag to compare

Erlang/OTP 19.3 is the third service release for the 19 major release.
The service release contains mostly bug fixes and characteristics improvements but also some new features.

Some highlights for 19.3

  • crypto, ssh: The implementation of the key exchange algorithms
    diffie-hellman-group-exchange-sha* are optimized, up to
    a factor of 11 for the slowest ( = biggest and safest)
    group size.

  • dialyzer: The peak memory consumption is reduced.
    Analyzing modules with binary construction with huge
    strings is now much faster.

  • erts: A received SIGTERM signal to beam will generate a
    'stop' message to the init process and terminate the
    Erlang VM nicely. This is equivalent to calling
    init:stop/0.

  • kernel: The functions in the file module that take a list of
    paths (e.g. file:path_consult/2) will now continue to
    search in the path if the path contains something that
    is not a directory.

  • kernel: Two OTP processes that are known to receive many
    messages are rex (used by rpc) and error_logger.
    Those processes will now store unprocessed messages
    outside the process heap, which will potentially
    decrease the cost of garbage collections.

  • public_key: New function pkix_verify_hostname/2,3 implements
    certificate hostname checking. See the manual and RFC 6125.

  • public_key, ssh: The ssh host key fingerprint generation now also takes
    a list of algorithms and returns a list of
    corresponding fingerprints. See
    public_key:ssh_hostkey_fingerprint/2 and the option
    silently_accept_hosts in ssh:connect.

  • ssl: Move PEM cache to a dedicated process, to avoid making
    the SSL manager process a bottleneck. This improves
    scalability of TLS connections.

  • stdlib: filename:safe_relative_path/1 to sanitize a relative
    path has been added.

  • Thanks to more than 20 different contributors

You can find the README and the full listing of changes for this service release at

http://www.erlang.org/download/otp_src_19.3.readme

The source distribution and binary distributions for Windows can be
downloaded from

http://www.erlang.org/download/otp_src_19.3.tar.gz
http://www.erlang.org/download/otp_win32_19.3.exe
http://www.erlang.org/download/otp_win64_19.3.exe

Note: To unpack the TAR archive you need a GNU TAR compatible program.

For installation instructions please consult the README file that is part
of the distribution.

The Erlang/OTP source can also be found at GitHub on the official Erlang
repository, https://github.com/erlang/otp with tag OTP-19.3

The on-line documentation can be found at: http://www.erlang.org/doc/
You can also download the complete HTML documentation or the Unix manual files

http://www.erlang.org/download/otp_doc_html_19.3.tar.gz
http://www.erlang.org/download/otp_doc_man_19.3.tar.gz

Please report any new issues via Erlang/OTPs public issue tracker

https://bugs.erlang.org

We want to thank all of those who sent us patches, suggestions and bug reports!

Thank you!

The Erlang/OTP Team at Ericsson

OTP 19.2

14 Dec 10:33
Compare
Choose a tag to compare

Erlang/OTP 19.2 is the second service release for the 19 major release.
The service release contains mostly bug fixes and characteristics improvements.

Some highlights for 19.2

  • STDLIB: The new behaviour gen_statem has been improved with 3 new
    features: the possibility to use old style non-proxy timeouts
    for gen_statem:call/2,3, state entry code, and state
    timeouts. These are backwards compatible. Minor code and
    documentation improvements has been performed including a
    borderline semantics correction of timeout zero handling.
  • SSL: Experimental version of DTLS. It is runnable but not complete
    and cannot be considered reliable for production usage. To use
    DTLS add the option {protocol, dtls} to ssl:connect and ssl:listen.
  • SSH: Extended the option silently_accept_hosts for ssh:connect to
    make it possible for the client to check the SSH host key
    fingerprint string. Se the reference manual for SSH.
  • ~40 contributions since the previous service release OTP 19.1

You can find the README and the full listing of changes for this service release at

http://www.erlang.org/download/otp_src_19.2.readme

The source distribution and binary distributions for Windows can be
downloaded from

http://www.erlang.org/download/otp_src_19.2.tar.gz
http://www.erlang.org/download/otp_win32_19.2.exe
http://www.erlang.org/download/otp_win64_19.2.exe

Note: To unpack the TAR archive you need a GNU TAR compatible program.

For installation instructions please consult the README file that is part
of the distribution.

The Erlang/OTP source can also be found at GitHub on the official Erlang
repository, https://github.com/erlang/otp with tag OTP-19.2

The on-line documentation can be found at: http://www.erlang.org/doc/
You can also download the complete HTML documentation or the Unix manual files

http://www.erlang.org/download/otp_doc_html_19.2.tar.gz
http://www.erlang.org/download/otp_doc_man_19.2.tar.gz

Please report any new issues via Erlang/OTPs public issue tracker

https://bugs.erlang.org

We want to thank all of those who sent us patches, suggestions and bug reports!

Thank you!

The Erlang/OTP Team at Ericsson

OTP 19.1

21 Sep 11:16
Compare
Choose a tag to compare

Erlang/OTP 19.1 is a service release on the 19 track with mostly bug fixes,
but is does contain a number of new features and characteristics improvements
as well.

Some highlights of the release are:

  • erts: Improved dirty scheduler support. A purge of a module will not have to wait for completion of all ongoing dirty NIF calls.
  • erts: Improved accuracy of timeouts on MacOS X.
  • kernel: Add net_kernel:setopts/2 and net_kernel:getopts/2 to control options for distribution sockets in runtime.
  • asn1: Compiling multiple ASN.1 modules in the same directory with parallel make (make -j) should now be safe.
  • httpd: support for PUT and DELETE in mod_esi
  • ~30 contributions since 19.0

You can find the Release Notes with more detailed info at

http://www.erlang.org/download/otp_src_19.1.readme

You can download the full source distribution from http://www.erlang.org/download/otp_src_19.1.tar.gz

Note: To unpack the TAR archive you need a GNU TAR compatible program. For installation instructions please read the README that is part of the distribution.

You can also find the source code at github.com in the official Erlang repository. Git tag OTP-19.1
https://github.com/erlang/otp/tree/OTP-19.1

The Windows binary distributions can be downloaded from

http://www.erlang.org/download/otp_win32_19.1.exe
http://www.erlang.org/download/otp_win64_19.1.exe

You can also download the complete HTML documentation or the Unix manual files

http://www.erlang.org/download/otp_doc_html_19.1.tar.gz
http://www.erlang.org/download/otp_doc_man_19.1.tar.gz

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)

http://www.erlang.org/doc/

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

If you find bugs in Erlang/OTP report them via the public issue tracker at http://bugs.erlang.org

The Erlang/OTP Team at Ericsson

OTP 19.0

22 Jun 10:32
Compare
Choose a tag to compare

Erlang/OTP 19.0 has been released

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

Some highlights of the release are:

  • compiler, stdlib:
    • New preprocessor macros ?FUNCTION_NAME, ?FUNCTION_ARITY
    • New preprocessor directives -error(Term) and -warning(Term) to cause a compilation error or warning, respectively.
  • gen_statem a new state machine behavior
  • mnesia_ext: plugin of external storage solutions to mnesia
  • crypto: uses EVP interface in OpenSSL resulting in generally better performance and support for HW acceleration
  • ssh: performance improvements, uses the new gen_statem behavior
  • ssl: enhanced error log messages
  • dialyzer: the support for maps is very much extended both the type specification syntax and the type analysis.
  • erts:
    • erlang:open_port(spawn, ...) 3-5 times faster
    • tracing, extensive improvements (scalability, speed, match specifications on send/receive, support for lttng, ...)
    • dirty schedulers improved
    • per process configurable handling of message_queue
    • fast loading of multiple modules
    • max_heap_size process flag
  • erts/kernel:
    Experimental support for Unix Domain Sockets
    Example: gen_udp:open(0, [{ifaddr,{local,"/tmp/socket"}}])
  • and much more ....

You can find the Release Notes with more detailed info at

http://www.erlang.org/download/otp_src_19.0.readme

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

Git tag OTP-19.0

https://github.com/erlang/otp/tree/OTP-19.0

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)

http://www.erlang.org/doc

We also want to thank all of you that have contributed with new features, bug-fixes, suggestions and bug reports.

The Erlang/OTP Team at Ericsson

OTP 19.0 Release Candidate 2

02 Jun 09:49
Compare
Choose a tag to compare
Pre-release
OTP-19.0-rc2

OTP 19 Release Candidate 2

OTP 19.0 Release Candidate 1

12 May 15:58
Compare
Choose a tag to compare
Pre-release

Erlang/OTP 19.0-rc1 is available for testing.

This is the release candidate before the final OTP 19.0 product release in June 2016.

Between the 19.0 rc1 and the 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 19.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 this release candidate and send us
your feedback as soon as possible, so that we can make the necessary
corrections before OTP 19.0.

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.

Some highlights of the release are:

  • compiler, stdlib:
    • New preprocessor macros ?FUNCTION_NAME, ?FUNCTION_ARITY
    • New preprocessor directives -error(Term) and -warning(Term) to cause a compilation error or warning, respectively.
  • gen_statem a new state machine behavior
  • mnesia_ext: plugin of external storage solutions to mnesia
  • crypto: uses EVP interface in OpenSSL resulting in generally better performance and support for HW acceleration
  • ssh: performance improvements, uses the new gen_statem behavior
  • dialyzer: the support for maps is very much extended both the type specification syntax and the type analysis.
  • erts:
    • erlang:open_port(spawn, ...) 3-5 times faster
    • tracing, extensive improvements (scalability, speed, match specifications on send/receive, support for lttng, ...)
    • dirty schedulers improved
    • per process configurable handling of message_queue
    • fast loading of multiple modules
    • max_heap_size process flag
    • and much more ....

You can find the Release Notes with more detailed info at

http://www.erlang.org/download/OTP-19.0-rc1.README

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

Git tag OTP-19.0-rc1

https://github.com/erlang/otp/tree/OTP-19.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)

http://www.erlang.org/documentation/doc-8.0-rc1/doc/

We also want to thank all of you that have contributed with new features, bug-fixes, suggestions and bug reports.

The Erlang/OTP Team at Ericsson