NEWSErlang/OTP 20.0 is a new major release with new features, quite a few (characteristics) improvements, as well as a few incompatibilities.
There are only minor changes compared to the second release candidate, some of them listed below:
erlang:term_to_binary/1 changed the encoding of all atoms from ATOM_EXT to ATOM_UTF8_EXT and SMALL_ATOM_UTF8_EXT. This is now changed so that only atoms actually containing unicode characters are encoded with the UTF8 tags while other atoms are encoded ATOM_EXT just as before.Here are some of the most important news in OTP 20:
erlang:hash/2see erlang:check_process_code/3.
DFLAG_UTF8_ATOMS capability in the distribution protocol must be supported if an OTP 20 node should accept the connection with another node or library. Third party libraries which uses the distribution protocol need to be updated with this.asn1rt, asn1ct:encode/3 and decode/3)#{'a'=>1, 'b'=>2, 'a'=>3} will warn for the repeated key a.export_all is used. Can be disableddeterministic to omit path to source + options info the BEAM file.compile:file/2 has an option to include extra chunks in the BEAM file.string module with unicode support and many new functionsgen_fsm is deprecated and replaced by gen_statemrand:jump/0-1gen_server crashes, the stacktrace for the client will be printed to facilitate debugging.take/2 has been added to dict, orddict, and gb_trees.take_any/2 has been added to gb_treeserl_tar support for long path names and new file formatsasn1: the new maps option changes the representation of SEQUENCE to be maps instead of recordspublic_key:pkix_verify_hostname/2 to verify the hostnamessl: DTLS documented in the API, experimentalssh: improving security, removing and adding algorithmsmath:fmod/2For more details see http://erlang.org/download/otp_src_20.0.readme
The Erlang/OTP source can also be found at GitHub on the official Erlang repository, https://github.com/erlang/otp with tag OTP-20.0
Pre built versions for Windows can be fetched here: http://erlang.org/download/otp_win32_20.0.exe http://erlang.org/download/otp_win64_20.0.exe
On line documentation can be browsed here: www.erlang.org/doc/
Thanks to all contributors.