From bb19e24a485e9ef43bcca3fbe9757da83f70c3a0 Mon Sep 17 00:00:00 2001 From: Erlang/OTP Date: Tue, 19 Jun 2018 08:24:54 +0200 Subject: Prepare release --- lib/kernel/doc/src/notes.xml | 283 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 283 insertions(+) (limited to 'lib/kernel/doc/src/notes.xml') diff --git a/lib/kernel/doc/src/notes.xml b/lib/kernel/doc/src/notes.xml index 3d433e7efa..e1ef8ab387 100644 --- a/lib/kernel/doc/src/notes.xml +++ b/lib/kernel/doc/src/notes.xml @@ -31,6 +31,289 @@

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

+
+ +

Owner and group changes through + file:write_file_info, file:change_owner, + and file:change_group will no longer report + success on permission errors.

+

+ *** POTENTIAL INCOMPATIBILITY ***

+

+ Own Id: OTP-15118

+
+
+
+ + +
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 by setting the primary log level to info, for + example with the Kernel configuration parameter + logger_level.

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.

+

+ Since Logger is new in Erlang/OTP 21.0, we do reserve the + right to introduce changes to the Logger API and + functionality in patches following this release. These + changes might or might not be backwards compatible with + the initial version.

+

+ *** 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

+
+ +

+ Included config file specified with relative path in + sys.config are now first searched for relative to the + directory of sys.config itself. If not found, it is also + searched for relative to the current working directory. + The latter is for backwards compatibility.

+

+ Own Id: OTP-15137 Aux Id: PR-1838

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