From fd8e49b5bddceaae803670121b603b5eee8c5c08 Mon Sep 17 00:00:00 2001 From: Erlang/OTP Date: Fri, 25 May 2018 12:14:27 +0200 Subject: Prepare release --- lib/kernel/doc/src/notes.xml | 256 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 256 insertions(+) (limited to 'lib/kernel/doc/src') diff --git a/lib/kernel/doc/src/notes.xml b/lib/kernel/doc/src/notes.xml index 09844f1502..3eda30f981 100644 --- a/lib/kernel/doc/src/notes.xml +++ b/lib/kernel/doc/src/notes.xml @@ -31,6 +31,262 @@

This document describes the changes made to the Kernel application.

+
Kernel 6.0 + +
Fixed Bugs and Malfunctions + + +

Clarify the documentation of rpc:multicall/5. +

+

+ Own Id: OTP-10551

+
+ +

+ The DNS resolver when getting econnrefused from a server + retained an invalid socket so look up towards the next + server(s) also failed.

+

+ Own Id: OTP-13133 Aux Id: PR-1557

+
+ +

+ No resolver backend returns V4Mapped IPv6 addresses any + more. This was inconsistent before, some did, some did + not. To facilitate working with such addresses a new + function inet:ipv4_mapped_ipv6_address/1 has been + added.

+

+ *** POTENTIAL INCOMPATIBILITY ***

+

+ Own Id: OTP-13761 Aux Id: ERL-503

+
+ +

+ The type specifications for file:posix/0 and + inet:posix/0 have been updated according to which + errors file and socket operations should be able to + return.

+

+ Own Id: OTP-14019 Aux Id: ERL-550

+
+ +

+ Fix name resolving in IPv6 only environments when doing + the initial distributed connection.

+

+ Own Id: OTP-14501

+
+ +

File operations used to accept filenames + containing null characters (integer value zero). This + caused the name to be truncated and in some cases + arguments to primitive operations to be mixed up. + Filenames containing null characters inside the filename + are now rejected and will cause primitive file + operations to fail.

Also environment variable + operations used to accept names and + values of + environment variables containing null characters (integer + value zero). This caused operations to silently produce + erroneous results. Environment variable names and values + containing null characters inside the name or value are + now rejected and will cause environment variable + operations to fail.

Primitive environment + variable operations also used to accept the $= + character in environment variable names causing various + problems. $= characters in environment variable + names are now also rejected.

Also + os:cmd/1 now + reject null characters inside its command. +

erlang:open_port/2 + will also reject null characters inside the port name + from now on.

+

+ *** POTENTIAL INCOMPATIBILITY ***

+

+ Own Id: OTP-14543 Aux Id: ERL-370

+
+ +

os:putenv and os:getenv no longer access + the process environment directly and instead work on a + thread-safe emulation. The only observable difference is + that it's not kept in sync with libc + getenv(3) / putenv(3), so those who relied + on that behavior in drivers or NIFs will need to add + manual synchronization.

On Windows this means that + you can no longer resolve DLL dependencies by modifying + the PATH just before loading the driver/NIF. To + make this less of a problem, the emulator now adds the + target DLL's folder to the DLL search path.

+

+ *** POTENTIAL INCOMPATIBILITY ***

+

+ Own Id: OTP-14666

+
+ +

+ Fixed connection tick toward primitive hidden nodes + (erl_interface) that could cause faulty tick timeout in + rare cases when payload data is sent to hidden node but + not received.

+

+ Own Id: OTP-14681

+
+ +

+ Make group react immediately on an EXIT-signal from shell + in e.g ssh.

+

+ Own Id: OTP-14991 Aux Id: PR1705

+
+ +

+ Calls to gen_tcp:send/2 on closed sockets now + returns {error, closed} instead of + {error,enotconn}.

+

+ Own Id: OTP-15001

+
+ +

+ The included_applications key are no longer + duplicated as application environment variable. Earlier, + the included applications could be read both with + application:get[_all]_env(...) and + application:get[_all]_key(...) functions. Now, it + can only be read with + application:get[_all]_key(...).

+

+ *** POTENTIAL INCOMPATIBILITY ***

+

+ Own Id: OTP-15071

+
+
+
+ + +
Improvements and New Features + + +

A new logging API is added to Erlang/OTP, see the + logger(3) manual + page, and section Logging in the + Kernel User's Guide.

+

Calls to error_logger are automatically + redirected to the new API, and legacy error logger event + handlers can still be used. It is, however, recommended + to use the Logger API directly when writing new code.

+

Notice the following potential incompatibilities:

+

Kernel configuration parameters + error_logger still works, but is overruled if the + default handler's output destination is configured with + Kernel configuration parameter logger.

In + general, parameters for configuring error logger are + overwritten by new parameters for configuring + Logger.

The concept of SASL error + logging is deprecated, meaning that by default the SASL + application does not affect which log events are + logged.

By default, supervisor reports and crash + reports are logged by the default Logger handler started + by Kernel, and end up at the same destination (terminal + or file) as other standard log event from Erlang/OTP.

+

Progress reports are not logged by default, but can be + enabled with the Kernel configuration parameter + logger_progress_reports.

To obtain + backwards compatibility with the SASL error logging + functionality from earlier releases, set Kernel + configuration parameter logger_sasl_compatible to + true. This prevents the default Logger handler + from logging any supervisor-, crash-, or progress + reports. Instead, SASL adds a separate Logger handler + during application start, which takes care of these log + events. The SASL configuration parameters + sasl_error_logger and sasl_errlog_type + specify the destination (terminal or file) and severity + level to log for these events.

+

+ *** POTENTIAL INCOMPATIBILITY ***

+

+ Own Id: OTP-13295

+
+ +

+ The function inet:i/0 has been documented.

+

+ Own Id: OTP-13713 Aux Id: PR-1645

+
+ +

+ Typespecs for netns and bind_to_device + options have been added to gen_tcp, gen_udp + and gen_sctp functions.

+

+ Own Id: OTP-14359 Aux Id: PR-1816

+
+ +

+ New functionality for implementation of alternative + carriers for the Erlang distribution has been introduced. + This mainly consists of support for usage of distribution + controller processes (previously only ports could be used + as distribution controllers). For more information see + ERTS + User's Guide ➜ How to implement an Alternative Carrier + for the Erlang Distribution ➜ Distribution + Module.

+

+ Own Id: OTP-14459

+
+ +

seq_trace labels may now be any erlang + term.

+

+ Own Id: OTP-14899

+
+ +

+ The SSL distribution protocol -proto inet_tls has + stopped setting the SSL option + server_name_indication. New verify funs for client + and server in inet_tls_dist has been added, not + documented yet, that checks node name if present in peer + certificate. Usage is still also yet to be documented.

+

+ Own Id: OTP-14969 Aux Id: OTP-14465, ERL-598

+
+ +

+ Changed timeout of gen_server calls to auth + server from default 5 seconds to infinity.

+

+ Own Id: OTP-15009 Aux Id: ERL-601

+
+ +

The callback module passed as -epmd_module to + erl has been expanded to be able to do name and port + resolving.

Documentation has also been added in + the erl_epmd + reference manual and ERTS User's Guide How to Implement an Alternative + Service Discovery for Erlang Distribution.

+

+ Own Id: OTP-15086 Aux Id: PR-1694

+
+
+
+ +
+
Kernel 5.4.3
Fixed Bugs and Malfunctions -- cgit v1.2.3