DOWNLOAD OTP 19.0

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

Artifacts:

Compiling Erlang from source

You can build Erlang from source on your own, following the building and installation instructions. Or use the Kerl script. Kerl is a script that lets you easily build Erlang with a few commands. Follow the instructions to build.

Source Versions and Windows Binaries for Patches

Information about all released OTP versions since OTP 17.0 can be found at the OTP Versions Tree page. This information includes a link to the GitHub source tag, and a link to the README. As of OTP 23, Windows binaries can also be downloaded from here for all patches.

Pre-built Binary Packages

Most OS package managers provide pre-built binary packages. You can also download the latest stable releases from Erlang Solutions. Erlang Solutions provides pre-built binary packages for OS X, Windows, Ubuntu, Debian, Fedora, CentOS, Raspbian and other operating systems.

  • For Homebrew on OS X: brew install erlang
  • For MacPorts on OS X: port install erlang
  • For Ubuntu and Debian: apt-get install erlang
  • For Fedora: yum install erlang
  • For FreeBSD: pkg install erlang

License

Since OTP 18.0, Erlang/OTP is released under Apache License 2.0. The older releases prior to 18.0 were released under Erlang Public License (EPL), a derivative work of the Mozilla Public License (MPL).

Available releases

PDF files are included in the Windows installer and in the HTML documentation tarballs, starting with theR13B03 release.

There is a file containing MD5 checksumsfor all files in the download directory, also reachable through rsync rsync.erlang.org::erlang-download