From fd8e49b5bddceaae803670121b603b5eee8c5c08 Mon Sep 17 00:00:00 2001 From: Erlang/OTP Date: Fri, 25 May 2018 12:14:27 +0200 Subject: Prepare release --- erts/doc/src/notes.xml | 877 ++++++++++++++++++++++++++++++++++++ erts/vsn.mk | 2 +- lib/asn1/doc/src/notes.xml | 15 + lib/asn1/vsn.mk | 2 +- lib/common_test/doc/src/notes.xml | 15 + lib/common_test/vsn.mk | 2 +- lib/compiler/doc/src/notes.xml | 213 +++++++++ lib/compiler/vsn.mk | 2 +- lib/crypto/doc/src/notes.xml | 47 ++ lib/crypto/vsn.mk | 2 +- lib/debugger/doc/src/notes.xml | 15 + lib/debugger/vsn.mk | 2 +- lib/dialyzer/doc/src/notes.xml | 47 ++ lib/dialyzer/vsn.mk | 2 +- lib/diameter/doc/src/notes.xml | 15 + lib/edoc/doc/src/notes.xml | 15 + lib/edoc/vsn.mk | 2 +- lib/eldap/doc/src/notes.xml | 15 + lib/eldap/vsn.mk | 2 +- lib/erl_docgen/doc/src/notes.xml | 35 +- lib/erl_docgen/vsn.mk | 2 +- lib/erl_interface/doc/src/notes.xml | 16 + lib/erl_interface/vsn.mk | 2 +- lib/et/doc/src/notes.xml | 15 + lib/et/vsn.mk | 2 +- lib/eunit/doc/src/notes.xml | 15 + lib/eunit/vsn.mk | 2 +- lib/hipe/doc/src/notes.xml | 45 ++ lib/hipe/vsn.mk | 2 +- lib/inets/doc/src/notes.xml | 62 ++- lib/inets/vsn.mk | 2 +- lib/jinterface/doc/src/notes.xml | 15 + lib/jinterface/vsn.mk | 2 +- lib/kernel/doc/src/notes.xml | 256 +++++++++++ lib/kernel/vsn.mk | 2 +- lib/mnesia/doc/src/notes.xml | 17 +- lib/mnesia/vsn.mk | 2 +- lib/observer/doc/src/notes.xml | 29 ++ lib/observer/vsn.mk | 2 +- lib/os_mon/doc/src/notes.xml | 16 + lib/os_mon/vsn.mk | 2 +- lib/parsetools/doc/src/notes.xml | 15 + lib/parsetools/vsn.mk | 2 +- lib/public_key/doc/src/notes.xml | 36 ++ lib/public_key/vsn.mk | 2 +- lib/reltool/doc/src/notes.xml | 17 +- lib/reltool/vsn.mk | 2 +- lib/runtime_tools/doc/src/notes.xml | 16 + lib/runtime_tools/vsn.mk | 2 +- lib/sasl/doc/src/notes.xml | 75 +++ lib/sasl/vsn.mk | 2 +- lib/ssh/doc/src/notes.xml | 138 ++++++ lib/ssh/vsn.mk | 2 +- lib/ssl/doc/src/notes.xml | 122 +++++ lib/ssl/vsn.mk | 2 +- lib/stdlib/doc/src/notes.xml | 393 ++++++++++++++++ lib/stdlib/vsn.mk | 2 +- lib/syntax_tools/doc/src/notes.xml | 15 + lib/syntax_tools/vsn.mk | 2 +- lib/tools/doc/src/notes.xml | 21 + lib/tools/vsn.mk | 2 +- lib/wx/doc/src/notes.xml | 16 + lib/wx/vsn.mk | 2 +- lib/xmerl/doc/src/notes.xml | 15 + lib/xmerl/vsn.mk | 2 +- 65 files changed, 2702 insertions(+), 36 deletions(-) diff --git a/erts/doc/src/notes.xml b/erts/doc/src/notes.xml index 929d569f16..d741e29958 100644 --- a/erts/doc/src/notes.xml +++ b/erts/doc/src/notes.xml @@ -31,6 +31,883 @@

This document describes the changes made to the ERTS application.

+
Erts 10.0 + +
Fixed Bugs and Malfunctions + + +

+ 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 error printout from run_erl and a bug that could + cause unintended fds to be leaked into the started + program.

+

+ Own Id: OTP-14537 Aux Id: PR1529

+
+ +

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

+
+ +

+ Fix bugs related to the bookkeeping of microstate + accounting states.

+

+ Own Id: OTP-14652

+
+ +

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

+
+ +

Corrected erlang:is_builtin(erlang, M, F) to + return true for apply/2 and + yield/0.

+

+ Own Id: OTP-14713 Aux Id: ERL-500

+
+ +

Fixed a bug where the PATH environment variable wasn't + updated correctly on a release downgrade, effectively + keeping the PATH of the new release.

+

+ Own Id: OTP-14719

+
+ +

A receive optimization that avoids scanning the entire + message queue when receiving a message containing a + freshly created reference could in rare circumstances + (involving recursive calls to the functions that does the + receive) cause the receive to hang. This has been + corrected.

+

+ Own Id: OTP-14782 Aux Id: ERL-511

+
+ +

+ Fix building of Erlang/OTP on platforms which have small + data area with short addressing. For example the + PowerPC/RTEMS platform.

+

+ Own Id: OTP-14909 Aux Id: PR-1692

+
+ +

Fixed a crash when enif_make_binary is called + with a binary produced by enif_inspect_binary in a + different environment.

+

+ Own Id: OTP-14931

+
+ +

Fixed a crash when enif_make_binary is called + more than once with a binary that had previously been + added to an enif_ioq.

+

+ Own Id: OTP-14932

+
+ +

+ The erl_child_setup program now ignores SIGTERM signals.

+

+ Own Id: OTP-14943 Aux Id: ERL-576

+
+ +

+ Force 64-bit alignment on pre-allocators on architectures + which needs it.

+

+ Own Id: OTP-14977

+
+ +

+ Fixed a bug where dirty scheduler picked up non-dirty + work.

+

+ Own Id: OTP-14978

+
+ +

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

+

+ Own Id: OTP-15001

+
+ +

+ erlang:monotonic_time/1 failed with badarg + when passing the perf_counter time unit as + argument.

+

+ Own Id: OTP-15008

+
+ +

+ Fix bug where rapid init:restart() calls would + sometimes crash because a code load request leaked in + between the restarts.

+

+ Own Id: OTP-15013

+
+ +

+ Improve float_to_list(F, [{decimals,D}]) to closer + conform with io_lib:format("~.*f", [D,F]).

+

+ There are however, still cases when float_to_list + does not produce the exact same result as + io_lib:format, especially for large values + F and/or many decimals D.

+

+ Own Id: OTP-15015 Aux Id: OTP-14890

+
+ +

Fixed a deadlock that would occur on certain + allocators when a reallocation failed with +ramv + enabled.

+

+ Own Id: OTP-15024

+
+ +

+ Fix bug that made it impossible to use an erl_tracer as + the seq_trace trace receiver.

+

+ Own Id: OTP-15029

+
+ +

+ Fix bug where a large (> 1 GB) emulator generated error + logger message would cause the emulator to crash.

+

+ Own Id: OTP-15032

+
+ +

The emulator will no longer crash when reading the + file information of an ordinary file that has an NTFS + reparse point, such as files stored in a OneDrive-mapped + folder.

+

+ Own Id: OTP-15062 Aux Id: ERL-615

+
+ +

+ Fixed bug in enif_binary_to_term which could cause + memory corruption for immediate terms (atoms, small + integers, pids, ports, empty lists).

+

+ Own Id: OTP-15080

+
+ +

+ Fixed bug in erlang:system_profile/2 that could + cause superfluous {profile,_,active,_,_} messages + for terminating processes.

+

+ Own Id: OTP-15085

+
+ +

+ On OSs with per thread CPU time support, change + cpu_timestamp in erlang:trace/3 to use + it instead of per process CPU time. This makes this + option useable on such OSs when running multiple + schedulers.

+

+ Own Id: OTP-15090

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

It is now possible to open device files and FIFOs with + file:open/2.

+

+ Own Id: OTP-11462

+
+ +

+ The erlang:system_flag(scheduler_wall_time,Bool) + call is now reference counted and will be turned off if + the (last) process that started the performance + statistics dies. Thus it is no longer possible to start + the statistics with rpc:call(Node, erlang, + system_flag, [scheduler_wall_time, true]) since it + will be turned off directly afterwards when the rpc + process dies.

+

+ *** POTENTIAL INCOMPATIBILITY ***

+

+ Own Id: OTP-11694

+
+ +

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

+
+ +

+ gen_sctp:connect_init/4 or rather connect in + inet_drv.c for SCTP has been fixed to not check + the write file descriptor for writeability after a + connect, since for SCTP (SOCK_SEQPACKET) that property + does not seem to be any kind of indicator for when a + connect has finished. This fixes connects that the OS + returned as "in progress" that was misinterpreted by + gen_sctp:connect_init as failed.

+

+ Own Id: OTP-13760 Aux Id: PR-1592

+
+ +

The file driver has been rewritten as a NIF, + decreasing the latency of file operations. Two notable + incompatibilities are:

The + use_threads option for file:sendfile/5 no + longer has any effect; we either use non-blocking + sendfile(2) or fall back to file:read + + gen_tcp:send.

The + file-specific DTrace probes have been removed. The same + effect can be achieved with normal tracing together with + the nif__entry/nif__return probes to track + scheduling.

+

+ *** POTENTIAL INCOMPATIBILITY ***

+

+ Own Id: OTP-14256

+
+ +

The I/O polling functionality of erts has been + re-written to better make use of the OSs polling + mechanisms. This change means that erts will now always + prefer to use a kernel-polling mechanism if possible. + Also all of the I/O polling has been moved to dedicated + threads instead of being placed in the scheduler + loops.

As a result of this, the erl options + +K and +secio have been removed. It is + still possible to disable kernel-poll, but it has to be + done at compile time through the configure option + --disable-kernel-poll.

The new erl + options +IOt + and +IOp can + be used to change how many IO poll threads and poll sets + that erts should use. See their respective documentation + for more details.

+

+ Own Id: OTP-14346

+
+ +

Truly asynchronous auto-connect. Earlier, when + erlang:send was done toward an unconnected node, + the function would not return until the connection setup + had completed (or failed). Now the function returns + directly after the signal has been enqueued and the + connection setup started.

+

The same applies to all distributed operations that + may trigger auto-connect, i.e. '!', send, + link, monitor, monitor_node, + exit/2 and group_leader.

+

The interface for all these functions are unchanged as + they do not return connection failures. The only + exception is erlang:monitor where a possible + incompatibility is introduced: An attempt to monitor + a process on a primitive node (such as erl_interface or + jinterface), where remote process monitoring is not + implemented, will no longer fail with badarg + exception. Instead a monitor will be created, but it will + only supervise the connection to the node.

+

+ *** POTENTIAL INCOMPATIBILITY ***

+

+ Own Id: OTP-14370

+
+ +

Changed the default behaviour of .erlang + loading: .erlang is no longer loaded from the + current directory. c:erlangrc(PathList) can be + used to search and load an .erlang file from user + specified directories.

escript, + erlc, dialyzer and typer no longer + load an .erlang at all.

+

+ *** POTENTIAL INCOMPATIBILITY ***

+

+ Own Id: OTP-14439

+
+ +

+ 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

+
+ +

+ Add support for the lcc compiler and in extension the + Elbrus 2000 platform.

+

+ Own Id: OTP-14492

+
+ +

Support for "tuple calls" have been removed from the + run-time system. Tuple calls was an undocumented and + unsupported feature which allowed the module argument for + an apply operation to be a tuple: Var = dict:new(), + Var:size(). This "feature" frequently caused + confusion, especially when such call failed. The + stacktrace would point out functions that don't exist in + the source code.

+

For legacy code that need to use parameterized modules + or tuple calls for some other reason, there is a new + compiler option called tuple_calls. When this + option is given, the compiler will generate extra code + that emulates the old behavior for calls where the module + is a variable.

+

+ *** POTENTIAL INCOMPATIBILITY ***

+

+ Own Id: OTP-14497

+
+ +

Creation of small maps with literal keys has been + optimized to be faster and potentially use less memory. + The keys are combined into a literal key tuple which is + put into the literal pool. The key tuple can be shared + between many instances of maps having the same keys.

+

+ Own Id: OTP-14502

+
+ +

+ When an exception is thrown, include the arguments of the + call in the stacktrace for BIFs band, bor, + bsl, bsr, bxor, div, + rem and the operators +, -, * + and /.

+

+ *** POTENTIAL INCOMPATIBILITY ***

+

+ Own Id: OTP-14508

+
+ +

+ The non-smp emulators have been removed. This means that + the configure options --disable-threads and + --enable-plain-emulator have been removed and + configure will now refuse to build Erlang/OTP on + platforms without thread support.

+

+ In order to achieve a similar setup as the non-smp + emulator, it is possible to start Erlang/OTP with the + +S 1 option.

+

+ *** POTENTIAL INCOMPATIBILITY ***

+

+ Own Id: OTP-14518

+
+ +

Modules that use floating point constants compiled + with R15 or earlier will need to be re-compiled before + they can be loaded.

+

+ Own Id: OTP-14575

+
+ +

+ Implementation of true asynchronous signaling between + processes in order to improve scalability. Signals + affected include exit, monitor, demonitor, monitor + triggered, link, unlink, and group leader.

+

+ Own Id: OTP-14589

+
+ +

+ Added a PGO (profile guided optimization) pass to the + build step of erts. This can be disabled by passing + --disable-pgo to configure.

+

+ Own Id: OTP-14604

+
+ +

+ Improved the performance of binary:split and + binary:match.

+

+ Own Id: OTP-14610 Aux Id: PR-1480

+
+ +

+ It is not longer possible to disable dirty schedulers + when building erlang.

+

+ Own Id: OTP-14613

+
+ +

Loaded BEAM code in a 64-bit system requires less + memory because of better packing of operands for + instructions.

+

These memory savings were achieved by major + improvements to the beam_makeops scripts used when + building the run time system and BEAM compiler. There is + also new for documentation for beam_makeops that + describes how new BEAM instructions and loader + transformations can be implemented. The documentation is + found in here in a source directory or git repository: + erts/emulator/internal_doc/beam_makeops.md. An online + version can be found here: + https://github.com/erlang/otp/blob/master/erts/emulator/internal_doc/beam_makeops.md

+

+ Own Id: OTP-14626

+
+ +

file:read_file has been changed to read the + content of files that report a size of 0 even when data + can be read from them. An example of such a file is + /proc/cpuinfo on Linux.

+

+ Own Id: OTP-14637 Aux Id: ERL-327 PR-1524

+
+ +

+ It is no longer possible to disable the temp_alloc + allocator. Disabling it caused serious performance + degradations and was never what was wanted.

+

+ Own Id: OTP-14651

+
+ +

The reduction cost of sending messages is now + constant. It will no longer scale according to the length + of the receiving process' message queue.

+

+ Own Id: OTP-14667

+
+ +

+ Improved loading of modules with -on_load + directive, to no longer block all schedulers when the + load operation is completed.

+

+ Own Id: OTP-14680

+
+ +

+ On platforms with real-time signals available, SIGRTMIN+1 + is now used as the internal scheduler suspend signal + instead of SIGUSR2.

+

+ Own Id: OTP-14682

+
+ +

When the value returned from a 'catch' + expression is ignored, no stacktrace will be built if an + exception is caught. That will save time and produce less + garbage. There are also some minor optimizations of + 'try/catch' both in the compiler and + run-time system.

+

+ Own Id: OTP-14683

+
+ +

The guarantees and non-guarantees of + erlang:get_stacktrace/0 are now documented.

+

+ Own Id: OTP-14687

+
+ +

There is a new syntax in 'try/catch' for + retrieving the stacktrace without calling + 'erlang:get_stacktrace/0'. See the reference + manual for a description of the new syntax. The + 'erlang:get_stacktrace/0' BIF is now + deprecated.

+

+ Own Id: OTP-14692

+
+ +

+ New 'used' option for binary_to_term/2 that will + also return number of bytes actually read from the + binary. This enables easy access to any extra data in the + binary located directly after the returned term.

+

+ Own Id: OTP-14780

+
+ +

+ Added more statistics for + erlang:system_info({allocator,A}) in the + mbcs_pool section.

+

+ Own Id: OTP-14795 Aux Id: ERL-88

+
+ +

Added enif_ioq_peek_head to retrieve Erlang + terms from NIF IO queues without having to resort to + copying.

+

+ Own Id: OTP-14797

+
+ +

There is a new option 'makedep_side_effect' for + the compiler and -MMD for 'erlc' that + generates dependencies and continues to compile as + normal.

+

+ Own Id: OTP-14830

+
+ +

Added ets:whereis/1 for retrieving the table + identifier of a named table.

+

+ Own Id: OTP-14884

+
+ +

seq_trace labels may now be any erlang + term.

+

+ Own Id: OTP-14899

+
+ +

+ Optimized the common case of monitor followed by + send to the same local process. The monitor signal + is now delayed in order to be piggybacked with the sent + message and thereby only get one lock operation on the + message queue of the receiver. A delayed monitor signal + is flushed if no send has been done at the latest + when the process is scheduled out.

+

+ Own Id: OTP-14901

+
+ +

+ Make hipe compiled code work on x86_64 (amd64) with OS + security feature PIE, where executable code can be loaded + into a random location. Old behavior, if hipe was + enabled, was to disable PIE build options for the VM.

+

+ Own Id: OTP-14903

+
+ +

The number of driver async threads will now default to + 1 as the standard drivers do not use them anymore. Users + that changed this value to tweak the file driver should + replace +A with +SDio since it now uses + dirty IO schedulers instead of async threads.

+

+ *** POTENTIAL INCOMPATIBILITY ***

+

+ Own Id: OTP-14928

+
+ +

+ Optimize == and /= for binaries with + different sizes to be constant in time instead of + proportional to the size of their common prefix.

+

+ Own Id: OTP-14934 Aux Id: PR-1708

+
+ +

+ Refactorings making some internal process flags available + for other usage.

+

+ Own Id: OTP-14948

+
+ +

+ Removed need for HiPE to allocate native executable + memory in low 2GB address space on x86_64. Command line + option +MXscs is thereby obsolete and ignored.

+

+ Own Id: OTP-14951

+
+ +

Added enif_make_map_from_arrays for creating a + populated map, analogous to + enif_make_list_from_array.

+

+ Own Id: OTP-14954

+
+ +

Added configuration switches for busy-wait and wake up + thresholds for dirty schedulers, and changing these + settings for normal schedulers will no longer affect + dirty schedulers.

Refer to the documentation for + details. The new switches are +sbwtdcpu, +sbwtdio, +swtdcpu, and +swtdio.

The + default busy wait threshold for dirty scheduler threads + has also been lowered to short.

+

+ Own Id: OTP-14959

+
+ +

+ The list of "taints" now also includes dynamic loaded + drivers in addition to NIF libraries. Statically linked + drivers and NIF libraries that are part of erts are not + included. The "taints" are returned by + system_info(taints) and printed in the header of + erl_crash.dump files.

+

+ Own Id: OTP-14960

+
+ +

Added instrument:allocations and + instrument:carriers for retrieving information + about memory utilization and fragmentation.

+

The old instrument interface has been removed, + as have the related options +Mim and + +Mis.

+

+ *** POTENTIAL INCOMPATIBILITY ***

+

+ Own Id: OTP-14961

+
+ +

The process suspend functionality used by the erlang:suspend_process/2 + BIF has been reimplemented using the newly introduced + true asynchronous signaling between processes. This + mainly to reduce memory usage in the process control + block of all processes, but also in order to simplify the + implementation.

You can easily create + deadlocks if processes suspends each other (directly or + in circles). In ERTS versions prior to ERTS version 10.0, + the runtime system prevented such deadlocks, but this + prevention has now been removed due to performance + reasons.

Other ERTS internal + functionality that used the previous process suspend + functionality have also been reimplemented to use + asynchronous signaling instead.

+

+ *** POTENTIAL INCOMPATIBILITY ***

+

+ Own Id: OTP-14964 Aux Id: OTP-14589

+
+ +

Added the nifs option to + ?MODULE:module_info/1 for listing a module's + installed NIF functions.

+

+ Own Id: OTP-14965

+
+ +

+ New implementation of erlang:process_info/[1,2].

+

+ In the general case when inspecting another process, the + new implementation sends an asynchronous process-info + request signal to the other process and waits for the + result instead of locking the other process and reading + the result directly. In some special cases where no + conflicts occur, signal order wont be violated, and the + amount of data requested is guaranteed to be small, the + inspected process may be inspected directly.

+

+ Appropriate amount of reductions are now also bumped when + inspecting a process.

+

+ Own Id: OTP-14966

+
+ +

+ Removed process start time from crash dump in order to + save memory in process control block.

+

+ Own Id: OTP-14975 Aux Id: PR-1597

+
+ +

+ Optimize erlang:put/2 when updating existing key + with a new immediate value (atom, small integer, pid, + port).

+

+ Own Id: OTP-14976

+
+ +

+ erlang:process_info/1 has been changed to no + longer include messages by default. Instead + erlang:process_info/2 should be used.

+

+ *** POTENTIAL INCOMPATIBILITY ***

+

+ Own Id: OTP-14986 Aux Id: PR-1745

+
+ +

+ New NIF functions: enif_mutex_name, + enif_cond_name, enif_rwlock_name, + enif_thread_name, enif_vfprintf, + enif_vsnprintf.

+

+ Own Id: OTP-14994

+
+ +

When erlang:system_flag(backtrace_depth, 0) has + been called, all exceptions will now contain the entry + for one function (despite the zero). It used to + be that a hand-made stack backtrace passed to + erlang:raise/3 would be be truncated to an empty + list.

+

+ Own Id: OTP-15026

+
+ +

+ Fixed bug for named ets tables which could cause + unexpected results from matchspec iteration functions + (ets:select* and ets:match*) if the table + was deleted and recreated with the same name during the + iteration. The iteration could incorrectly continue + through the recreated table. The expected correct + behavior is now for the iteration call to fail with a + badarg exception if the table is deleted before + the iteration has completed.

+

+ Own Id: OTP-15031

+
+ +

Two new guards BIFs operating on maps have been added: + map_get/2 and is_map_key/2. They do the + same as maps:get/2 and maps:is_key/2, + respectively, except that they are allowed to be used in + guards.

+

+ Own Id: OTP-15037 Aux Id: PR-1784, PR-1802

+
+ +

+ Release run-queue lock while cleaning up terminated dirty + process.

+

+ Own Id: OTP-15081

+
+ +

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

+
+
+
+ +
+
Erts 9.3.1
Fixed Bugs and Malfunctions diff --git a/erts/vsn.mk b/erts/vsn.mk index 25acd9cc34..6a966f17b8 100644 --- a/erts/vsn.mk +++ b/erts/vsn.mk @@ -18,7 +18,7 @@ # %CopyrightEnd% # -VSN = 9.3.1 +VSN = 10.0 # Port number 4365 in 4.2 # Port number 4366 in 4.3 diff --git a/lib/asn1/doc/src/notes.xml b/lib/asn1/doc/src/notes.xml index bb15c9ff5f..10b0e4c45f 100644 --- a/lib/asn1/doc/src/notes.xml +++ b/lib/asn1/doc/src/notes.xml @@ -32,6 +32,21 @@

This document describes the changes made to the asn1 application.

+
Asn1 5.0.6 + +
Improvements and New Features + + +

+ Update to use the new string api instead of the old.

+

+ Own Id: OTP-15036

+
+
+
+ +
+
Asn1 5.0.5
Fixed Bugs and Malfunctions diff --git a/lib/asn1/vsn.mk b/lib/asn1/vsn.mk index 39dfe8f4fb..30cbca3773 100644 --- a/lib/asn1/vsn.mk +++ b/lib/asn1/vsn.mk @@ -1 +1 @@ -ASN1_VSN = 5.0.5 +ASN1_VSN = 5.0.6 diff --git a/lib/common_test/doc/src/notes.xml b/lib/common_test/doc/src/notes.xml index 7e909b24cd..c5df590b3f 100644 --- a/lib/common_test/doc/src/notes.xml +++ b/lib/common_test/doc/src/notes.xml @@ -33,6 +33,21 @@ notes.xml +
Common_Test 1.16 + +
Improvements and New Features + + +

+ Use uri_string module instead of http_uri.

+

+ Own Id: OTP-14902

+
+
+
+ +
+
Common_Test 1.15.4
Fixed Bugs and Malfunctions diff --git a/lib/common_test/vsn.mk b/lib/common_test/vsn.mk index ea3e9871cb..2dc1965878 100644 --- a/lib/common_test/vsn.mk +++ b/lib/common_test/vsn.mk @@ -1 +1 @@ -COMMON_TEST_VSN = 1.15.4 +COMMON_TEST_VSN = 1.16 diff --git a/lib/compiler/doc/src/notes.xml b/lib/compiler/doc/src/notes.xml index bc1f68337b..357a940f24 100644 --- a/lib/compiler/doc/src/notes.xml +++ b/lib/compiler/doc/src/notes.xml @@ -32,6 +32,219 @@

This document describes the changes made to the Compiler application.

+
Compiler 7.2 + +
Fixed Bugs and Malfunctions + + +

Fixed an error in an optimization pass that caused + impossible tuple matching.

+

+ Own Id: OTP-14855 Aux Id: ERL-549

+
+ +

The exception thrown when a list comprehension was + given a non-list term was not always correct.

+

+ Own Id: OTP-14992 Aux Id: ERL-572

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

Changed the default behaviour of .erlang + loading: .erlang is no longer loaded from the + current directory. c:erlangrc(PathList) can be + used to search and load an .erlang file from user + specified directories.

escript, + erlc, dialyzer and typer no longer + load an .erlang at all.

+

+ *** POTENTIAL INCOMPATIBILITY ***

+

+ Own Id: OTP-14439

+
+ +

Support for "tuple calls" have been removed from the + run-time system. Tuple calls was an undocumented and + unsupported feature which allowed the module argument for + an apply operation to be a tuple: Var = dict:new(), + Var:size(). This "feature" frequently caused + confusion, especially when such call failed. The + stacktrace would point out functions that don't exist in + the source code.

+

For legacy code that need to use parameterized modules + or tuple calls for some other reason, there is a new + compiler option called tuple_calls. When this + option is given, the compiler will generate extra code + that emulates the old behavior for calls where the module + is a variable.

+

+ *** POTENTIAL INCOMPATIBILITY ***

+

+ Own Id: OTP-14497

+
+ +

In code such as example({ok, Val}) -> {ok, + Val}. a tuple would be built. The compiler will now + automatically rewrite the code to + example({ok,Val}=Tuple) -> Tuple. which will + reduce code size, execution time, and remove GC + pressure.

+

+ Own Id: OTP-14505

+
+ +

The optimization of case expression where only + one of the case arms can execute successfully has been + improved.

+

+ Own Id: OTP-14525

+
+ +

Some uses of binary matching has been slightly + improved, eliminating unnecessary register shuffling.

+

+ Own Id: OTP-14594 Aux Id: ERL-444

+
+ +

There is a new {compile_info,Info} option for + the compiler that allows BEAM-based languages such as + Elixir and LFE to add their own compiler versions.

+

+ Own Id: OTP-14615 Aux Id: PR-1558

+
+ +

Loaded BEAM code in a 64-bit system requires less + memory because of better packing of operands for + instructions.

+

These memory savings were achieved by major + improvements to the beam_makeops scripts used when + building the run time system and BEAM compiler. There is + also new for documentation for beam_makeops that + describes how new BEAM instructions and loader + transformations can be implemented. The documentation is + found in here in a source directory or git repository: + erts/emulator/internal_doc/beam_makeops.md. An online + version can be found here: + https://github.com/erlang/otp/blob/master/erts/emulator/internal_doc/beam_makeops.md

+

+ Own Id: OTP-14626

+
+ +

Size calculations for binary constructions has been + somewhat optimized, producing smaller code.

+

+ Own Id: OTP-14654

+
+ +

When the value returned from a 'catch' + expression is ignored, no stacktrace will be built if an + exception is caught. That will save time and produce less + garbage. There are also some minor optimizations of + 'try/catch' both in the compiler and + run-time system.

+

+ Own Id: OTP-14683

+
+ +

There is a new syntax in 'try/catch' for + retrieving the stacktrace without calling + 'erlang:get_stacktrace/0'. See the reference + manual for a description of the new syntax. The + 'erlang:get_stacktrace/0' BIF is now + deprecated.

+

+ Own Id: OTP-14692

+
+ +

The following is an internal change in the compiler, + that is not noticeable for normal use of the compiler: + The module v3_life has been removed. Its + functionality has been simplified and integrated into + v3_codegen.

+

+ Own Id: OTP-14712

+
+ +

The optimization of binary matching that delays + creation of sub binaries (see the Efficiency Guide) could + be thwarted by the argument order and could be necessary + to change the argument order. The compiler has now become + smarter and can handle any argument order.

+

+ Own Id: OTP-14774

+
+ +

When the compiler was faced with complex case + expressions it would unnecessarily allocate stack + elements and shuffle data between x and y registers. + Improved code generation to only allocate a stack frame + when strictly necessary.

+

+ Own Id: OTP-14808 Aux Id: ERL-514

+
+ +

There is a new option 'makedep_side_effect' for + the compiler and -MMD for 'erlc' that + generates dependencies and continues to compile as + normal.

+

+ Own Id: OTP-14830

+
+ +

When compiling modules with huge functions, the + compiler would generate a lot of atoms for its internal, + sometimes so many that the atom table would overflow. The + compiler has been rewritten to generate far less internal + atoms to avoid filling the atom table.

+

+ Own Id: OTP-14968 Aux Id: ERL-563

+
+ +

External funs with literal values for module, name, + and arity (e.g. erlang:abs/1) are now treated as + literals. That means more efficient code that produces + less garbage on the heap.

+

+ Own Id: OTP-15003

+
+ +

Two new guards BIFs operating on maps have been added: + map_get/2 and is_map_key/2. They do the + same as maps:get/2 and maps:is_key/2, + respectively, except that they are allowed to be used in + guards.

+

+ Own Id: OTP-15037 Aux Id: PR-1784, PR-1802

+
+ +

A call or apply of a literal external fun will be + replaced with a direct call.

+

+ Own Id: OTP-15044 Aux Id: ERL-614

+
+ +

Part of EEP-44 has been implemented.

+

There is a new predefined macro called + OTP_RELEASE which is an integer indicating the OTP + release number (its value is 21 in this + release).

+

There are new preprocessor directives + -if(Condition). and -elif(Condition).. The + if/elif supports the builtin function + defined(Symbol).

+

+ Own Id: OTP-15087 Aux Id: PR-1810

+
+
+
+ +
+
Compiler 7.1.5
Fixed Bugs and Malfunctions diff --git a/lib/compiler/vsn.mk b/lib/compiler/vsn.mk index ee75ee27fd..a26cb09dff 100644 --- a/lib/compiler/vsn.mk +++ b/lib/compiler/vsn.mk @@ -1 +1 @@ -COMPILER_VSN = 7.1.5 +COMPILER_VSN = 7.2 diff --git a/lib/crypto/doc/src/notes.xml b/lib/crypto/doc/src/notes.xml index 66619c9e11..a6a1287a85 100644 --- a/lib/crypto/doc/src/notes.xml +++ b/lib/crypto/doc/src/notes.xml @@ -31,6 +31,53 @@

This document describes the changes made to the Crypto application.

+
Crypto 4.3 + +
Fixed Bugs and Malfunctions + + +

+ Removed two undocumented and erroneous functions + (crypto:dh_generate_parameters/2 and + crypto:dh_check/1).

+

+ Own Id: OTP-14956 Aux Id: ERL-579

+
+ +

+ Fixed bug causing VM crash if doing runtime upgrade of a + crypto module built against OpenSSL older than 0.9.8h. + Bug exists since OTP-20.2.

+

+ Own Id: OTP-15088

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

+ A new rand plugin algorithm has been implemented + in crypto, that is: crypto_cache. It uses + strong random bytes as randomness source and caches them + to get good speed. See crypto:rand_seed_alg/1.

+

+ Own Id: OTP-13370 Aux Id: PR-1573

+
+ +

+ Diffie-Hellman key functions are re-written with the + EVP_PKEY api.

+

+ Own Id: OTP-14864

+
+
+
+ +
+
Crypto 4.2.2
Fixed Bugs and Malfunctions diff --git a/lib/crypto/vsn.mk b/lib/crypto/vsn.mk index 778aff9d13..cc34c20ac6 100644 --- a/lib/crypto/vsn.mk +++ b/lib/crypto/vsn.mk @@ -1 +1 @@ -CRYPTO_VSN = 4.2.2 +CRYPTO_VSN = 4.3 diff --git a/lib/debugger/doc/src/notes.xml b/lib/debugger/doc/src/notes.xml index e71746e30d..c77607f01c 100644 --- a/lib/debugger/doc/src/notes.xml +++ b/lib/debugger/doc/src/notes.xml @@ -33,6 +33,21 @@

This document describes the changes made to the Debugger application.

+
Debugger 4.2.5 + +
Fixed Bugs and Malfunctions + + +

Fix a bug where calling a fun inside a binary would + crash the Debugger.

+

+ Own Id: OTP-14957 Aux Id: PR-1741

+
+
+
+ +
+
Debugger 4.2.4
Fixed Bugs and Malfunctions diff --git a/lib/debugger/vsn.mk b/lib/debugger/vsn.mk index 57da7e5618..d62e5915a7 100644 --- a/lib/debugger/vsn.mk +++ b/lib/debugger/vsn.mk @@ -1 +1 @@ -DEBUGGER_VSN = 4.2.4 +DEBUGGER_VSN = 4.2.5 diff --git a/lib/dialyzer/doc/src/notes.xml b/lib/dialyzer/doc/src/notes.xml index 8d11252bff..3330ca05e0 100644 --- a/lib/dialyzer/doc/src/notes.xml +++ b/lib/dialyzer/doc/src/notes.xml @@ -32,6 +32,53 @@

This document describes the changes made to the Dialyzer application.

+
Dialyzer 3.3 + +
Improvements and New Features + + +

Changed the default behaviour of .erlang + loading: .erlang is no longer loaded from the + current directory. c:erlangrc(PathList) can be + used to search and load an .erlang file from user + specified directories.

escript, + erlc, dialyzer and typer no longer + load an .erlang at all.

+

+ *** POTENTIAL INCOMPATIBILITY ***

+

+ Own Id: OTP-14439

+
+ +

Dialyzer can no longer read BEAM files created with + OTP 19 or earlier.

+

+ Own Id: OTP-14493 Aux Id: PR-1434

+
+ +

Speed up the computation of MD5 sums.

+

+ Own Id: OTP-14937 Aux Id: PR-1719

+
+ +

Fix a situation where Dialyzer unnecessarily + discarded contract information, resulting in missed + warnings.

+

+ Own Id: OTP-14970 Aux Id: PR-1722

+
+ +

Do not emit warnings for fun expressions residing in + code that cannot be run. This is consistent with how + Dialyzer treats other code that cannot be run.

+

+ Own Id: OTP-15079 Aux Id: ERL-593

+
+
+
+ +
+
Dialyzer 3.2.4
Fixed Bugs and Malfunctions diff --git a/lib/dialyzer/vsn.mk b/lib/dialyzer/vsn.mk index fa58adc2db..7240b66fb5 100644 --- a/lib/dialyzer/vsn.mk +++ b/lib/dialyzer/vsn.mk @@ -1 +1 @@ -DIALYZER_VSN = 3.2.4 +DIALYZER_VSN = 3.3 diff --git a/lib/diameter/doc/src/notes.xml b/lib/diameter/doc/src/notes.xml index f74a4ca2a2..3aaf17bc60 100644 --- a/lib/diameter/doc/src/notes.xml +++ b/lib/diameter/doc/src/notes.xml @@ -43,6 +43,21 @@ first.

+
diameter 2.1.5 + +
Fixed Bugs and Malfunctions + + +

+ Fix documentation typos.

+

+ Own Id: OTP-15045

+
+
+
+ +
+
diameter 2.1.4
Fixed Bugs and Malfunctions diff --git a/lib/edoc/doc/src/notes.xml b/lib/edoc/doc/src/notes.xml index 240789e876..853cc792e0 100644 --- a/lib/edoc/doc/src/notes.xml +++ b/lib/edoc/doc/src/notes.xml @@ -32,6 +32,21 @@

This document describes the changes made to the EDoc application.

+
Edoc 0.9.3 + +
Improvements and New Features + + +

+ Update to use the new string api instead of the old.

+

+ Own Id: OTP-15036

+
+
+
+ +
+
Edoc 0.9.2
Fixed Bugs and Malfunctions diff --git a/lib/edoc/vsn.mk b/lib/edoc/vsn.mk index 2f6d469536..bea9277e1f 100644 --- a/lib/edoc/vsn.mk +++ b/lib/edoc/vsn.mk @@ -1 +1 @@ -EDOC_VSN = 0.9.2 +EDOC_VSN = 0.9.3 diff --git a/lib/eldap/doc/src/notes.xml b/lib/eldap/doc/src/notes.xml index 8b066671ee..3007068eeb 100644 --- a/lib/eldap/doc/src/notes.xml +++ b/lib/eldap/doc/src/notes.xml @@ -31,6 +31,21 @@

This document describes the changes made to the Eldap application.

+
Eldap 1.2.4 + +
Improvements and New Features + + +

+ Update to use the new string api instead of the old.

+

+ Own Id: OTP-15036

+
+
+
+ +
+
Eldap 1.2.3
Fixed Bugs and Malfunctions diff --git a/lib/eldap/vsn.mk b/lib/eldap/vsn.mk index 1636b6bb6d..f2b3cd47f2 100644 --- a/lib/eldap/vsn.mk +++ b/lib/eldap/vsn.mk @@ -1 +1 @@ -ELDAP_VSN = 1.2.3 +ELDAP_VSN = 1.2.4 diff --git a/lib/erl_docgen/doc/src/notes.xml b/lib/erl_docgen/doc/src/notes.xml index 2652b4b0c8..e87a1ae102 100644 --- a/lib/erl_docgen/doc/src/notes.xml +++ b/lib/erl_docgen/doc/src/notes.xml @@ -31,7 +31,40 @@

This document describes the changes made to the erl_docgen application.

-
Erl_Docgen 0.7.2 +
Erl_Docgen 0.8 + +
Fixed Bugs and Malfunctions + + +

Update makefile so db_funcs.xsl is a part of the + installed application.

+

+ Own Id: OTP-15091

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

+ Add a hoverable element to the titles in the html + documentation with a link to github where the + documentation can be edited.

+

+ Make the anchors in the html User's Guide and system + documentation use the title of the sections instead of a + generated id.

+

+ Own Id: OTP-14979

+
+
+
+ +
+ +
Erl_Docgen 0.7.2
Fixed Bugs and Malfunctions diff --git a/lib/erl_docgen/vsn.mk b/lib/erl_docgen/vsn.mk index a556b73103..0b24604daa 100644 --- a/lib/erl_docgen/vsn.mk +++ b/lib/erl_docgen/vsn.mk @@ -1 +1 @@ -ERL_DOCGEN_VSN = 0.7.3 +ERL_DOCGEN_VSN = 0.8 diff --git a/lib/erl_interface/doc/src/notes.xml b/lib/erl_interface/doc/src/notes.xml index f165dde259..34c72e7d5f 100644 --- a/lib/erl_interface/doc/src/notes.xml +++ b/lib/erl_interface/doc/src/notes.xml @@ -31,6 +31,22 @@

This document describes the changes made to the Erl_interface application.

+
Erl_Interface 3.10.3 + +
Fixed Bugs and Malfunctions + + +

+ Fix bug where calling erl_init on certain platforms could + result in a buffer overflow bug.

+

+ Own Id: OTP-15033

+
+
+
+ +
+
Erl_Interface 3.10.2
Fixed Bugs and Malfunctions diff --git a/lib/erl_interface/vsn.mk b/lib/erl_interface/vsn.mk index 8b6e91757d..586b23c5b3 100644 --- a/lib/erl_interface/vsn.mk +++ b/lib/erl_interface/vsn.mk @@ -1,2 +1,2 @@ -EI_VSN = 3.10.2 +EI_VSN = 3.10.3 ERL_INTERFACE_VSN = $(EI_VSN) diff --git a/lib/et/doc/src/notes.xml b/lib/et/doc/src/notes.xml index f0995b7c19..14e674c7c9 100644 --- a/lib/et/doc/src/notes.xml +++ b/lib/et/doc/src/notes.xml @@ -37,6 +37,21 @@ one section in this document. The title of each section is the version number of Event Tracer (ET).

+
ET 1.6.2 + +
Improvements and New Features + + +

Calls to erlang:get_stacktrace() are removed. +

+

+ Own Id: OTP-14861

+
+
+
+ +
+
ET 1.6.1
Improvements and New Features diff --git a/lib/et/vsn.mk b/lib/et/vsn.mk index aab63a402e..08ded8b6f1 100644 --- a/lib/et/vsn.mk +++ b/lib/et/vsn.mk @@ -1 +1 @@ -ET_VSN = 1.6.1 +ET_VSN = 1.6.2 diff --git a/lib/eunit/doc/src/notes.xml b/lib/eunit/doc/src/notes.xml index b38cb2e70e..037586b9d1 100644 --- a/lib/eunit/doc/src/notes.xml +++ b/lib/eunit/doc/src/notes.xml @@ -33,6 +33,21 @@

This document describes the changes made to the EUnit application.

+
Eunit 2.3.6 + +
Improvements and New Features + + +

Calls to erlang:get_stacktrace() are removed. +

+

+ Own Id: OTP-14861

+
+
+
+ +
+
Eunit 2.3.5
Fixed Bugs and Malfunctions diff --git a/lib/eunit/vsn.mk b/lib/eunit/vsn.mk index 2ed9eaac16..054e21f6ad 100644 --- a/lib/eunit/vsn.mk +++ b/lib/eunit/vsn.mk @@ -1 +1 @@ -EUNIT_VSN = 2.3.5 +EUNIT_VSN = 2.3.6 diff --git a/lib/hipe/doc/src/notes.xml b/lib/hipe/doc/src/notes.xml index c190a89260..b6801b6302 100644 --- a/lib/hipe/doc/src/notes.xml +++ b/lib/hipe/doc/src/notes.xml @@ -31,6 +31,51 @@

This document describes the changes made to HiPE.

+
Hipe 3.18 + +
Improvements and New Features + + +

+ Optimize receive statements that are only waiting + for messages containing a reference created before the + receive. All messages that existed in the queue when the + reference was created will be bypassed, as they cannot + possibly contain the reference. This optimization has + existed for vanilla BEAM since OTP R14.

+

+ Own Id: OTP-14785 Aux Id: PR-1632

+
+ +

+ Add validation pass to hipe compiler to detect internal + errors causing primop calls that may trigger an unsafe GC + at run-time. The pass can be disabled with option + no_verify_gcsafe.

+

+ Own Id: OTP-14900 Aux Id: PR-1685, PR-1621

+
+ +

+ Make hipe compiled code work on x86_64 (amd64) with OS + security feature PIE, where executable code can be loaded + into a random location. Old behavior, if hipe was + enabled, was to disable PIE build options for the VM.

+

+ Own Id: OTP-14903

+
+ +

+ Inline more type test BIFs; is_number, + is_bitstring, is_map.

+

+ Own Id: OTP-14941 Aux Id: PR-1718

+
+
+
+ +
+
Hipe 3.17.1
Fixed Bugs and Malfunctions diff --git a/lib/hipe/vsn.mk b/lib/hipe/vsn.mk index 0c517f9a7a..b081cb0c26 100644 --- a/lib/hipe/vsn.mk +++ b/lib/hipe/vsn.mk @@ -1 +1 @@ -HIPE_VSN = 3.17.1 +HIPE_VSN = 3.18 diff --git a/lib/inets/doc/src/notes.xml b/lib/inets/doc/src/notes.xml index 10dd26322c..9357207867 100644 --- a/lib/inets/doc/src/notes.xml +++ b/lib/inets/doc/src/notes.xml @@ -33,7 +33,67 @@ notes.xml -
Inets 6.5.1 +
Inets 7.0 + +
Fixed Bugs and Malfunctions + + +

+ Fixed HTTP content injection bug in httpc (ERL-456).

+

+ Own Id: OTP-14726

+
+ +

+ Fixed support for URI-references in HTTP 'Location' + header (ERL-333).

+

+ Own Id: OTP-14729

+
+ +

+ Fix broken 'Content-Type' handling in httpc (ERL-536).

+

+ Own Id: OTP-15006

+
+ +

+ Fix handling of relative paths in the script_alias + property of httpd (ERL-574).

+

+ Own Id: OTP-15021

+
+ +

+ Fix httpd:reload_config/2 with path() as the first + argument (ERL-578).

+

+ Own Id: OTP-15025

+
+ +

+ Improved gracefulness.

+

+ Own Id: OTP-15042

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

+ Split inets and create separate ftp and tftp apps.

+

+ Own Id: OTP-14113

+
+
+
+ +
+ +
Inets 6.5.1
Fixed Bugs and Malfunctions diff --git a/lib/inets/vsn.mk b/lib/inets/vsn.mk index 3a489357ff..c86b5c0b48 100644 --- a/lib/inets/vsn.mk +++ b/lib/inets/vsn.mk @@ -19,6 +19,6 @@ # %CopyrightEnd% APPLICATION = inets -INETS_VSN = 6.5.1 +INETS_VSN = 7.0 PRE_VSN = APP_VSN = "$(APPLICATION)-$(INETS_VSN)$(PRE_VSN)" diff --git a/lib/jinterface/doc/src/notes.xml b/lib/jinterface/doc/src/notes.xml index 346d467c2d..7f85517ca4 100644 --- a/lib/jinterface/doc/src/notes.xml +++ b/lib/jinterface/doc/src/notes.xml @@ -31,6 +31,21 @@

This document describes the changes made to the Jinterface application.

+
Jinterface 1.9 + +
Improvements and New Features + + +

+ Add module package name for Java 9

+

+ Own Id: OTP-14844

+
+
+
+ +
+
Jinterface 1.8.1
Fixed Bugs and Malfunctions diff --git a/lib/jinterface/vsn.mk b/lib/jinterface/vsn.mk index 0a8a1190ec..f527a83092 100644 --- a/lib/jinterface/vsn.mk +++ b/lib/jinterface/vsn.mk @@ -1 +1 @@ -JINTERFACE_VSN = 1.8.1 +JINTERFACE_VSN = 1.9 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 diff --git a/lib/kernel/vsn.mk b/lib/kernel/vsn.mk index 60a1b0bff8..aa8e4dc119 100644 --- a/lib/kernel/vsn.mk +++ b/lib/kernel/vsn.mk @@ -1 +1 @@ -KERNEL_VSN = 5.4.3 +KERNEL_VSN = 6.0 diff --git a/lib/mnesia/doc/src/notes.xml b/lib/mnesia/doc/src/notes.xml index ba94e913f5..c78ba2e5c0 100644 --- a/lib/mnesia/doc/src/notes.xml +++ b/lib/mnesia/doc/src/notes.xml @@ -39,7 +39,22 @@ thus constitutes one section in this document. The title of each section is the version number of Mnesia.

-
Mnesia 4.15.3 +
Mnesia 4.15.4 + +
Improvements and New Features + + +

Calls to erlang:get_stacktrace() are removed. +

+

+ Own Id: OTP-14861

+
+
+
+ +
+ +
Mnesia 4.15.3
Fixed Bugs and Malfunctions diff --git a/lib/mnesia/vsn.mk b/lib/mnesia/vsn.mk index 45f811846d..aaa1c3006f 100644 --- a/lib/mnesia/vsn.mk +++ b/lib/mnesia/vsn.mk @@ -1 +1 @@ -MNESIA_VSN = 4.15.3 +MNESIA_VSN = 4.15.4 diff --git a/lib/observer/doc/src/notes.xml b/lib/observer/doc/src/notes.xml index c0b8309af6..5548b21fc5 100644 --- a/lib/observer/doc/src/notes.xml +++ b/lib/observer/doc/src/notes.xml @@ -32,6 +32,35 @@

This document describes the changes made to the Observer application.

+
Observer 2.8 + +
Fixed Bugs and Malfunctions + + +

+ Added possibility to garbage collect selected processes + and fixed a crash when the saved config file contained + bad data.

+

+ Own Id: OTP-14993 Aux Id: PR-1666

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

+ Use uri_string module instead of http_uri.

+

+ Own Id: OTP-14902

+
+
+
+ +
+
Observer 2.7
Fixed Bugs and Malfunctions diff --git a/lib/observer/vsn.mk b/lib/observer/vsn.mk index 74a6db768e..bf6fd2a421 100644 --- a/lib/observer/vsn.mk +++ b/lib/observer/vsn.mk @@ -1 +1 @@ -OBSERVER_VSN = 2.7 +OBSERVER_VSN = 2.8 diff --git a/lib/os_mon/doc/src/notes.xml b/lib/os_mon/doc/src/notes.xml index cec0856a8b..a08a6b7184 100644 --- a/lib/os_mon/doc/src/notes.xml +++ b/lib/os_mon/doc/src/notes.xml @@ -31,6 +31,22 @@

This document describes the changes made to the OS_Mon application.

+
Os_Mon 2.4.5 + +
Fixed Bugs and Malfunctions + + +

+ Fix disksup to handle mount paths with spaces in + them.

+

+ Own Id: OTP-14513

+
+
+
+ +
+
Os_Mon 2.4.4
Fixed Bugs and Malfunctions diff --git a/lib/os_mon/vsn.mk b/lib/os_mon/vsn.mk index eb4f13ea9e..4a327e5506 100644 --- a/lib/os_mon/vsn.mk +++ b/lib/os_mon/vsn.mk @@ -1 +1 @@ -OS_MON_VSN = 2.4.4 +OS_MON_VSN = 2.4.5 diff --git a/lib/parsetools/doc/src/notes.xml b/lib/parsetools/doc/src/notes.xml index b3370a06ab..a925894ff2 100644 --- a/lib/parsetools/doc/src/notes.xml +++ b/lib/parsetools/doc/src/notes.xml @@ -31,6 +31,21 @@

This document describes the changes made to the Parsetools application.

+
Parsetools 2.1.7 + +
Improvements and New Features + + +

Calls to erlang:get_stacktrace() are removed. +

+

+ Own Id: OTP-14861

+
+
+
+ +
+
Parsetools 2.1.6
Fixed Bugs and Malfunctions diff --git a/lib/parsetools/vsn.mk b/lib/parsetools/vsn.mk index b6d2ce0cd4..210723e449 100644 --- a/lib/parsetools/vsn.mk +++ b/lib/parsetools/vsn.mk @@ -1 +1 @@ -PARSETOOLS_VSN = 2.1.6 +PARSETOOLS_VSN = 2.1.7 diff --git a/lib/public_key/doc/src/notes.xml b/lib/public_key/doc/src/notes.xml index 11012ee9e5..df1c83d8f2 100644 --- a/lib/public_key/doc/src/notes.xml +++ b/lib/public_key/doc/src/notes.xml @@ -35,6 +35,42 @@ notes.xml +
Public_Key 1.6 + +
Fixed Bugs and Malfunctions + + +

+ Update calls to the base64 module to conform to that + module's type specifications.

+

+ Own Id: OTP-14788 Aux Id: OTP-14624

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

+ Use uri_string module instead of http_uri.

+

+ Own Id: OTP-14902

+
+ +

+ Compleate PKCS-8 encoding support and enhance the + decoding of 'PrivateKeyInfo' to conform to the rest of + Erlang public_key API.

+

+ Own Id: OTP-15093

+
+
+
+ +
+
Public_Key 1.5.2
Fixed Bugs and Malfunctions diff --git a/lib/public_key/vsn.mk b/lib/public_key/vsn.mk index 99a0cc087e..f7faadb8fb 100644 --- a/lib/public_key/vsn.mk +++ b/lib/public_key/vsn.mk @@ -1 +1 @@ -PUBLIC_KEY_VSN = 1.5.2 +PUBLIC_KEY_VSN = 1.6 diff --git a/lib/reltool/doc/src/notes.xml b/lib/reltool/doc/src/notes.xml index d7ad7c8dcc..3c0d282ba6 100644 --- a/lib/reltool/doc/src/notes.xml +++ b/lib/reltool/doc/src/notes.xml @@ -38,7 +38,22 @@ thus constitutes one section in this document. The title of each section is the version number of Reltool.

-
Reltool 0.7.5 +
Reltool 0.7.6 + +
Improvements and New Features + + +

Calls to erlang:get_stacktrace() are removed. +

+

+ Own Id: OTP-14861

+
+
+
+ +
+ +
Reltool 0.7.5
Improvements and New Features diff --git a/lib/reltool/vsn.mk b/lib/reltool/vsn.mk index 49997b1e52..c698790ede 100644 --- a/lib/reltool/vsn.mk +++ b/lib/reltool/vsn.mk @@ -1 +1 @@ -RELTOOL_VSN = 0.7.5 +RELTOOL_VSN = 0.7.6 diff --git a/lib/runtime_tools/doc/src/notes.xml b/lib/runtime_tools/doc/src/notes.xml index 355e3dd40d..fb13b74888 100644 --- a/lib/runtime_tools/doc/src/notes.xml +++ b/lib/runtime_tools/doc/src/notes.xml @@ -32,6 +32,22 @@

This document describes the changes made to the Runtime_Tools application.

+
Runtime_Tools 1.13 + +
Improvements and New Features + + +

+ New utility module scheduler which makes it easier + to measure scheduler utilization.

+

+ Own Id: OTP-14904

+
+
+
+ +
+
Runtime_Tools 1.12.5
Fixed Bugs and Malfunctions diff --git a/lib/runtime_tools/vsn.mk b/lib/runtime_tools/vsn.mk index 26869b9412..0a4ad61537 100644 --- a/lib/runtime_tools/vsn.mk +++ b/lib/runtime_tools/vsn.mk @@ -1 +1 @@ -RUNTIME_TOOLS_VSN = 1.12.5 +RUNTIME_TOOLS_VSN = 1.13 diff --git a/lib/sasl/doc/src/notes.xml b/lib/sasl/doc/src/notes.xml index 791e9c063a..c2dc9a3fc2 100644 --- a/lib/sasl/doc/src/notes.xml +++ b/lib/sasl/doc/src/notes.xml @@ -31,6 +31,81 @@

This document describes the changes made to the SASL application.

+
SASL 3.2 + +
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 old and out-dated "Status Inspection" tool (modules + si and si_sasl_sup) is removed.

+

+ *** POTENTIAL INCOMPATIBILITY ***

+

+ Own Id: OTP-14469

+
+ +

+ When creating the release tar file, systools now includes + sys.config.src if it exists in the + $ROOT/releases/<vsn>/ directory. This is to allow + adjustments, e.g. resolving environment variables, after + unpacking the release, but before installing it. This + functionality requires a custom tool which uses + sys.config.src as input and creates a correct sys.config + file.

+

+ Own Id: OTP-14950 Aux Id: PR-1560

+
+
+
+ +
+
SASL 3.1.2
Fixed Bugs and Malfunctions diff --git a/lib/sasl/vsn.mk b/lib/sasl/vsn.mk index 52b168598a..0972ae20ba 100644 --- a/lib/sasl/vsn.mk +++ b/lib/sasl/vsn.mk @@ -1 +1 @@ -SASL_VSN = 3.1.2 +SASL_VSN = 3.2 diff --git a/lib/ssh/doc/src/notes.xml b/lib/ssh/doc/src/notes.xml index d0ed674eee..87ebfc3c6a 100644 --- a/lib/ssh/doc/src/notes.xml +++ b/lib/ssh/doc/src/notes.xml @@ -30,6 +30,144 @@ notes.xml +
Ssh 4.7 + +
Fixed Bugs and Malfunctions + + +

+ Updated ssh_connection:shell/2 documentation.

+

+ Own Id: OTP-14880

+
+ +

+ If the daemon port listener is restarted, it could + potentially fail with eaddrinuse if the timing is + unlucky. It will now retry and exponentially back off the + listener restart a few times before failing.

+

+ Own Id: OTP-14955

+
+ +

+ A channel callback module always got the module name as + reason in a call to terminate. Now it will get the proper + Reason, usually 'normal'.

+

+ Own Id: OTP-15084

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

+ An option exec for daemons implementing the 'exec' + has existed a long time but has been undocumented. The + old behaviour is kept for compatibility EXCEPT that error + messages are changed and are sent as "stderror" text.

+

+ A new option value is defined to make it much more easy + to implement an own exec server.

+

+ *** POTENTIAL INCOMPATIBILITY ***

+

+ Own Id: OTP-14851

+
+ +

+ The undocumented ssh_dbg module is completely re-written + to facilitate tracing/debugging.

+

+ Own Id: OTP-14896

+
+ +

+ The SSH supervisor structure has been slightly changed. + This makes stopping the ssh application considerably + faster if there are open connections. This is important + in for example restarts.

+

+ Own Id: OTP-14988

+
+ +

+ The type specifications in SSH are reworked and the + following types are renamed:

+

+ ssh:ssh_connection_ref() is changed to + ssh:connection_ref(),

+

+ ssh:ssh_daemon_ref() is changed to ssh:daemon_ref(),

+

+ ssh:ssh_channel_id() is changed to ssh:channel_id().

+

+ *** POTENTIAL INCOMPATIBILITY ***

+

+ Own Id: OTP-15002 Aux Id: OTP-15030

+
+ +

+ The internal timer handling in SSH is now based on the + gen_statem timers.

+

+ Own Id: OTP-15019

+
+ +

+ Removed unused ssh_client_key.erl and + ssh_server_key.erl.

+

+ Own Id: OTP-15028

+
+ +

+ The Reference Manual pages are partly updated.

+

+ The ssh page is now generated from specs and types, is + restructured and is partly rephrased.

+

+ The ssh_channel, ssh_connection, ssh_client_key_api, + ssh_server_key_api and ssh_sftp pages are updated with + links, correct type names and some minor changes.

+

+ Own Id: OTP-15030 Aux Id: OTP-15002

+
+ +

+ The behaviors ssh_channel and + ssh_daemon_channel are renamed to + ssh_client_channel and ssh_server_channel + respectively.

+

+ The old modules are kept for compatibility but should + preferably be replaced when updating callback modules + referring them.

+

+ Own Id: OTP-15041

+
+ +

+ The rekey_limit option could now set the max time + as well as the previously max data amount.

+

+ Own Id: OTP-15069 Aux Id: ERL-617

+
+ +

+ Change process exit supervision with monitor instead of + link

+

+ Own Id: OTP-15082

+
+
+
+ +
+
Ssh 4.6.9
Fixed Bugs and Malfunctions diff --git a/lib/ssh/vsn.mk b/lib/ssh/vsn.mk index f10e7aa96a..6060e50d31 100644 --- a/lib/ssh/vsn.mk +++ b/lib/ssh/vsn.mk @@ -1,5 +1,5 @@ #-*-makefile-*- ; force emacs to enter makefile-mode -SSH_VSN = 4.6.9 +SSH_VSN = 4.7 APP_VSN = "ssh-$(SSH_VSN)" diff --git a/lib/ssl/doc/src/notes.xml b/lib/ssl/doc/src/notes.xml index 34fe352d08..795c38bd8e 100644 --- a/lib/ssl/doc/src/notes.xml +++ b/lib/ssl/doc/src/notes.xml @@ -27,6 +27,128 @@

This document describes the changes made to the SSL application.

+
SSL 9.0 + +
Fixed Bugs and Malfunctions + + +

+ Correct handling of ECDH suites.

+

+ Own Id: OTP-14974

+
+ +

+ Proper handling of clients that choose to send an empty + answer to a certificate request

+

+ Own Id: OTP-15050

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

+ Distribution over SSL (inet_tls) has, to improve + performance, been rewritten to not use intermediate + processes and ports.

+

+ Own Id: OTP-14465

+
+ +

+ Add suport for ECDHE_PSK cipher suites

+

+ Own Id: OTP-14547

+
+ +

+ For security reasons no longer support 3-DES cipher + suites by default

+

+ *** INCOMPATIBILITY with possibly ***

+

+ Own Id: OTP-14768

+
+ +

+ For security reasons RSA-key exchange cipher suites are + no longer supported by default

+

+ *** INCOMPATIBILITY with possible ***

+

+ Own Id: OTP-14769

+
+ +

+ The interoperability option to fallback to insecure + renegotiation now has to be explicitly turned on.

+

+ *** INCOMPATIBILITY with possibly ***

+

+ Own Id: OTP-14789

+
+ +

+ Drop support for SSLv2 enabled clients. SSLv2 has been + broken for decades and never supported by the Erlang + SSL/TLS implementation. This option was by default + disabled and enabling it has proved to sometimes break + connections not using SSLv2 enabled clients.

+

+ *** POTENTIAL INCOMPATIBILITY ***

+

+ Own Id: OTP-14824

+
+ +

+ Remove CHACHA20_POLY1305 ciphers form default for now. We + have discovered interoperability problems, ERL-538, that + we believe needs to be solved in crypto.

+

+ *** INCOMPATIBILITY with possibly ***

+

+ Own Id: OTP-14882

+
+ +

+ Generalize DTLS packet multiplexing to make it easier to + add future DTLS features and uses.

+

+ Own Id: OTP-14888

+
+ +

+ Use uri_string module instead of http_uri.

+

+ Own Id: OTP-14902

+
+ +

+ 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

+
+ +

+ Deprecate ssl:ssl_accept/[1,2,3] in favour of + ssl:handshake/[1,2,3]

+

+ Own Id: OTP-15056

+
+
+
+ +
+
SSL 8.2.6
Fixed Bugs and Malfunctions diff --git a/lib/ssl/vsn.mk b/lib/ssl/vsn.mk index eb85a55717..10be907b4f 100644 --- a/lib/ssl/vsn.mk +++ b/lib/ssl/vsn.mk @@ -1 +1 @@ -SSL_VSN = 8.2.6 +SSL_VSN = 9.0 diff --git a/lib/stdlib/doc/src/notes.xml b/lib/stdlib/doc/src/notes.xml index e26c4aba74..b925fa3b02 100644 --- a/lib/stdlib/doc/src/notes.xml +++ b/lib/stdlib/doc/src/notes.xml @@ -31,6 +31,399 @@

This document describes the changes made to the STDLIB application.

+
STDLIB 3.5 + +
Fixed Bugs and Malfunctions + + +

gen_statem improvements.

When using an + exception that is valid but not allowed in a state enter + call, the reason has been changed from + {bad_action_from_state_function,Action} to + {bad_state_enter_action_from_state_function,Action}. +

Timer parsing has been improved. Many erroneous + timeout tuples was not handled correctly.

The + documentation has been updated, in particular the User's + Guide and the pointer to it from the Reference Manual is + much more obvious.

+

+ Own Id: OTP-14015

+
+ +

+ 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

+
+ +

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

+
+ +

Make io_lib:unscan_format/1 work with pad char + and default precision.

+

+ Own Id: OTP-14958 Aux Id: PR-1735

+
+ +

The control sequence modifiers t and l + can be used together in the same control sequence which + makes it possible to have Unicode atoms and no detection + of printable character lists at the same time.

+

+ Own Id: OTP-14971 Aux Id: PR-1743

+
+ +

Fix a bug in the Erlang code linter: the check of + guard expressions no longer returns false if the + map syntax is used. The bug affected the Erlang shell, + the Debugger, and other modules evaluating abstract code. +

+

+ Own Id: OTP-15035 Aux Id: ERL-613

+
+ +

+ A sys debug fun of type {Fun,State} should not be + possible to install twice. This was, however, possible if + the current State was 'undefined', which was mistaken for + non-existing fun. This has been corrected.

+

+ Own Id: OTP-15049

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

+ The gen_server has gotten a new callback + handle_continue/2 for check pointing the state. + This is useful at least when implementing behaviours on + top of gen_server and for some start up scenarios.

+

+ Own Id: OTP-13019 Aux Id: PR-1490

+
+ +

The semantics of timeout parameter + {clean_timeout,infinity} to + gen_statem:call/3 has been changed to use a proxy + process for the call. With this change + clean_timeout implicates a proxy process with no + exceptions. This may be a hard to observe + incompatibility: in the presence of network problems a + late reply could arrive in the caller's message queue + when catching errors. That will not happen after this + correction.

The semantics of timeout parameter + infinity has not been changed.

+

+ *** POTENTIAL INCOMPATIBILITY ***

+

+ Own Id: OTP-13073 Aux Id: PR-1595

+
+ +

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

+
+ +

Add functions + calendar:system_time_to_local_time/2 and + calendar:system_time_to_universal_time/2.

+

+ Own Id: OTP-13413

+
+ +

Functions rand:uniform_real/0 and + rand:uniform_real_s/1 have been added. They + produce uniformly distributed numbers in the range 0.0 + =< X < 1.0 that are as close to random real + numbers as Normalized IEEE 754 Double Precision allows. + Because the random real number exactly 0.0 is + infinitely improbable they will never return exactly + 0.0.

These properties are useful when you + need to call for example math:log(X) or 1 / + X on a random value X, since that will never + fail with a number from these new functions.

+

+ Own Id: OTP-13764 Aux Id: PR-1574

+
+ +

+ Added maps:iterator/0 and maps:next/1 to be used for + iterating over the key-value associations in a map.

+

+ Own Id: OTP-14012

+
+ +

Changed the default behaviour of .erlang + loading: .erlang is no longer loaded from the + current directory. c:erlangrc(PathList) can be + used to search and load an .erlang file from user + specified directories.

escript, + erlc, dialyzer and typer no longer + load an .erlang at all.

+

+ *** POTENTIAL INCOMPATIBILITY ***

+

+ Own Id: OTP-14439

+
+ +

+ Added new uri_string module to stdlib for handling URIs + (RFC 3986).

+

+ Own Id: OTP-14496

+
+ +

+ Update Unicode specification to version 10.0.

+

+ Own Id: OTP-14503

+
+ +

filelib:wildcard() now allows characters with a + special meaning to be escaped using backslashes.

+

This is an incompatible change, but note that the use + of backslashes in wildcards would already work + differently on Windows and Unix. Existing calls to + filelib:wildcard() needs to be updated. On + Windows, directory separators must always be written as a + slash.

+

+ *** POTENTIAL INCOMPATIBILITY ***

+

+ Own Id: OTP-14577

+
+ +

+ The supervisor now stores its child specifications in a + map instead of a list. This causes a significant + improvement when starting many children under a + non-simple_one_for_one supervisor.

+

+ Own Id: OTP-14586

+
+ +

The base64 module is optimized.

Note + that the functions encode/1, decode/1, and + mime_decode/1 fail unless called with an argument + of the documented type. They used to accept any + iodata().

+

+ Own Id: OTP-14624 Aux Id: PR-1565

+
+ +

Add function lists:search/2.

+

+ Own Id: OTP-14675 Aux Id: PR-102

+
+ +

+ uri_string module extended with functions for handling + application/x-www-form-urlencoded query strings based on + the HTML5 specification.

+

+ Own Id: OTP-14747

+
+ +

Add functions + calendar:rfc3339_to_system_time/1,2 and + calendar:system_time_to_rfc3339/1,2.

+

+ Own Id: OTP-14764

+
+ +

The stack traces returned by the functions of the + erl_eval module more accurately reflect where the + exception occurred.

+

+ Own Id: OTP-14826 Aux Id: PR 1540

+
+ +

Add options atime, mtime, ctime, + uid, and gid to the erl_tar:add/3,4 + functions.

+

+ Own Id: OTP-14834 Aux Id: PR 1608

+
+ +

Added ets:whereis/1 for retrieving the table + identifier of a named table.

+

+ Own Id: OTP-14884

+
+ +

+ Improved URI normalization functions in the uri_string + module.

+

+ Own Id: OTP-14910

+
+ +

The new functions io_lib:fwrite/3 and + io_lib:format/3 take a third argument, an option + list. The only option is chars_limit, which is + used for limiting the number of returned characters. The + limit is soft, which means that the number of returned + characters exceeds the limit with at most a smallish + amount. If the limit is set, the functions + format/3 and fwrite/3 try to distribute the + number of characters evenly over the control sequences + pPswW. Furthermore, the control sequences + pPwP try to distribute the number of characters + evenly over substructures.

A modification of the + control sequences pPwW is that even if there is no + limit on the number of returned characters, all + associations of a map are printed to the same depth. The + aim is to give a more consistent output as the order of + map keys is not defined. As before, if the depth is less + than the number of associations of a map, the selection + of associations to print is arbitrary.

+

+ Own Id: OTP-14983

+
+ +

Add functions ordsets:is_empty/1 and + sets:is_empty/1.

+

+ Own Id: OTP-14996 Aux Id: ERL-557, PR-1703

+
+ +

+ Improve performance of string:uppercase/1, + string:lowercase/1 and string:casefold/1 + when handling ASCII characters.

+

+ Own Id: OTP-14998

+
+ +

External funs with literal values for module, name, + and arity (e.g. erlang:abs/1) are now treated as + literals. That means more efficient code that produces + less garbage on the heap.

+

+ Own Id: OTP-15003

+
+ +

+ sys:statistics(Pid,get) did not report 'out' messages + from gen_server. This is now corrected.

+

+ Own Id: OTP-15047

+
+ +

+ A sys debug function can now have the format + {Id,Fun,State} in addition to the old {Fun,State}. This + allows installing multiple instances of a debug fun.

+

+ Own Id: OTP-15048

+
+ +

The lib module is removed:

lib:error_message/2 is + removed. lib:flush_receive/0 is + removed. lib:nonl/1 is + removed. lib:progname/0 is replaced + by ct:get_progname/0. + lib:send/2 is removed. + lib:sendw/2 is removed. +

+ *** POTENTIAL INCOMPATIBILITY ***

+

+ Own Id: OTP-15072 Aux Id: PR 1786

+
+ +

+ Function ets:delete_all_objects/1 now yields the + scheduler thread for large tables that take significant + time to clear. This to improve real time characteristics + of other runnable processes.

+

+ Own Id: OTP-15078

+
+
+
+ +
+
STDLIB 3.4.5
Fixed Bugs and Malfunctions diff --git a/lib/stdlib/vsn.mk b/lib/stdlib/vsn.mk index 09a4d6fb50..0525b2de0b 100644 --- a/lib/stdlib/vsn.mk +++ b/lib/stdlib/vsn.mk @@ -1 +1 @@ -STDLIB_VSN = 3.4.5 +STDLIB_VSN = 3.5 diff --git a/lib/syntax_tools/doc/src/notes.xml b/lib/syntax_tools/doc/src/notes.xml index bd2bcde2c2..4ff23aaaca 100644 --- a/lib/syntax_tools/doc/src/notes.xml +++ b/lib/syntax_tools/doc/src/notes.xml @@ -32,6 +32,21 @@

This document describes the changes made to the Syntax_Tools application.

+
Syntax_Tools 2.1.5 + +
Improvements and New Features + + +

+ Update to use the new string api instead of the old.

+

+ Own Id: OTP-15036

+
+
+
+ +
+
Syntax_Tools 2.1.4
Fixed Bugs and Malfunctions diff --git a/lib/syntax_tools/vsn.mk b/lib/syntax_tools/vsn.mk index 8d37c40742..4d13267f16 100644 --- a/lib/syntax_tools/vsn.mk +++ b/lib/syntax_tools/vsn.mk @@ -1 +1 @@ -SYNTAX_TOOLS_VSN = 2.1.4 +SYNTAX_TOOLS_VSN = 2.1.5 diff --git a/lib/tools/doc/src/notes.xml b/lib/tools/doc/src/notes.xml index 45f276c09e..6452080572 100644 --- a/lib/tools/doc/src/notes.xml +++ b/lib/tools/doc/src/notes.xml @@ -31,6 +31,27 @@

This document describes the changes made to the Tools application.

+
Tools 3.0 + +
Improvements and New Features + + +

Added instrument:allocations and + instrument:carriers for retrieving information + about memory utilization and fragmentation.

+

The old instrument interface has been removed, + as have the related options +Mim and + +Mis.

+

+ *** POTENTIAL INCOMPATIBILITY ***

+

+ Own Id: OTP-14961

+
+
+
+ +
+
Tools 2.11.2
Fixed Bugs and Malfunctions diff --git a/lib/tools/vsn.mk b/lib/tools/vsn.mk index f9723c0f9b..bb3f4c66c0 100644 --- a/lib/tools/vsn.mk +++ b/lib/tools/vsn.mk @@ -1 +1 @@ -TOOLS_VSN = 2.11.2 +TOOLS_VSN = 3.0 diff --git a/lib/wx/doc/src/notes.xml b/lib/wx/doc/src/notes.xml index 69ea906ec0..ffe05726c4 100644 --- a/lib/wx/doc/src/notes.xml +++ b/lib/wx/doc/src/notes.xml @@ -32,6 +32,22 @@

This document describes the changes made to the wxErlang application.

+
Wx 1.8.4 + +
Improvements and New Features + + +

+ Changed implementation so wx can now be built towards + wxWidgets-3.1.1.

+

+ Own Id: OTP-15027

+
+
+
+ +
+
Wx 1.8.3
Fixed Bugs and Malfunctions diff --git a/lib/wx/vsn.mk b/lib/wx/vsn.mk index 7da4529c98..37a5477631 100644 --- a/lib/wx/vsn.mk +++ b/lib/wx/vsn.mk @@ -1 +1 @@ -WX_VSN = 1.8.3 +WX_VSN = 1.8.4 diff --git a/lib/xmerl/doc/src/notes.xml b/lib/xmerl/doc/src/notes.xml index f62a8dc53d..6959bb77c7 100644 --- a/lib/xmerl/doc/src/notes.xml +++ b/lib/xmerl/doc/src/notes.xml @@ -32,6 +32,21 @@

This document describes the changes made to the Xmerl application.

+
Xmerl 1.3.17 + +
Fixed Bugs and Malfunctions + + +

+ Fix typos in documentation.

+

+ Own Id: OTP-15039

+
+
+
+ +
+
Xmerl 1.3.16
Fixed Bugs and Malfunctions diff --git a/lib/xmerl/vsn.mk b/lib/xmerl/vsn.mk index ddff0c8894..be11935f2f 100644 --- a/lib/xmerl/vsn.mk +++ b/lib/xmerl/vsn.mk @@ -1 +1 @@ -XMERL_VSN = 1.3.16 +XMERL_VSN = 1.3.17 -- cgit v1.2.3