Patch Package: OTP 20.1
Git Tag: OTP-20.1
Date: 2017-09-26
Trouble Report Id: OTP-10889, OTP-10927, OTP-13014, OTP-13170,
OTP-13704, OTP-14011, OTP-14078, OTP-14181,
OTP-14185, OTP-14236, OTP-14344, OTP-14378,
OTP-14386, OTP-14412, OTP-14462, OTP-14463,
OTP-14464, OTP-14471, OTP-14486, OTP-14488,
OTP-14490, OTP-14495, OTP-14499, OTP-14500,
OTP-14504, OTP-14506, OTP-14510, OTP-14511,
OTP-14512, OTP-14520, OTP-14521, OTP-14522,
OTP-14523, OTP-14526, OTP-14527, OTP-14530,
OTP-14534, OTP-14535, OTP-14536, OTP-14538,
OTP-14539, OTP-14542, OTP-14544, OTP-14546,
OTP-14549, OTP-14550, OTP-14552, OTP-14553,
OTP-14555, OTP-14556, OTP-14560, OTP-14568,
OTP-14571, OTP-14572, OTP-14574, OTP-14588,
OTP-14591, OTP-14596, OTP-14597, OTP-14598,
OTP-14600, OTP-14606, OTP-14607, OTP-14608,
OTP-14609, OTP-14612, OTP-14614, OTP-14618,
OTP-14621, OTP-9869
Seq num: ERIERL-48, ERL-251, ERL-375, ERL-413,
ERL-432, ERL-437, ERL-439, ERL-453, ERL-461,
ERL-465, ERL-472, ERL-478, ERL-480, ERL-481,
seq13319
System: OTP
Release: 20
Application: asn1-5.0.3, common_test-1.15.2,
compiler-7.1.2, crypto-4.1, debugger-4.2.3,
dialyzer-3.2.2, diameter-2.1, edoc-0.9.1,
erl_docgen-0.7.1, erts-9.1, et-1.6.1,
eunit-2.3.4, hipe-3.16.1, inets-6.4.2,
kernel-5.4, mnesia-4.15.1, observer-2.5,
os_mon-2.4.3, public_key-1.5, reltool-0.7.5,
runtime_tools-1.12.2, sasl-3.1, snmp-5.2.7,
ssh-4.6, ssl-8.2.1, stdlib-3.4.2,
syntax_tools-2.1.3, tools-2.11, wx-1.8.2
Predecessor: OTP 20.0.5
Check out the git tag OTP-20.1, and build a full OTP system including
documentation. Apply one or more applications from this build as
patches to your installation using the 'otp_patch_apply' tool. For
information on install requirements, see descriptions for each
application version below.
---------------------------------------------------------------------
--- POTENTIAL INCOMPATIBILITIES -------------------------------------
---------------------------------------------------------------------
OTP-14621 Application(s): public_key
Related Id(s): ERL-480, ERL-481
public_key now handles elliptic curve parameters in a
consistent way so that decoded ECDSA keys can be
correctly re-encoded.
---------------------------------------------------------------------
--- asn1-5.0.3 ------------------------------------------------------
---------------------------------------------------------------------
The asn1-5.0.3 application can be applied independently of other
applications on a full OTP 20 installation.
--- Fixed Bugs and Malfunctions ---
OTP-14495 Application(s): asn1
Related Id(s): ERL-437
Compiling an ASN.1 module using the option {n2n,
EnumTypeName} when EnumTypeName contains a hypen like
for example Cause-Misc caused syntax errors when
compiling the generated Erlang code. This is now
corrected.
Full runtime dependencies of asn1-5.0.3: erts-7.0, kernel-3.0,
stdlib-2.0
---------------------------------------------------------------------
--- common_test-1.15.2 ----------------------------------------------
---------------------------------------------------------------------
The common_test-1.15.2 application can be applied independently of
other applications on a full OTP 20 installation.
--- Improvements and New Features ---
OTP-14462 Application(s): common_test, dialyzer, erl_docgen,
hipe, kernel, mnesia, observer, runtime_tools, sasl,
stdlib, syntax_tools, tools, wx
General Unicode improvements.
Full runtime dependencies of common_test-1.15.2: compiler-6.0,
crypto-3.6, debugger-4.1, erts-7.0, inets-6.0, kernel-4.0,
observer-2.1, runtime_tools-1.8.16, sasl-2.4.2, snmp-5.1.2, ssh-4.0,
stdlib-3.4, syntax_tools-1.7, tools-2.8, xmerl-1.3.8
---------------------------------------------------------------------
--- compiler-7.1.2 --------------------------------------------------
---------------------------------------------------------------------
The compiler-7.1.2 application can be applied independently of other
applications on a full OTP 20 installation.
--- Fixed Bugs and Malfunctions ---
OTP-14522 Application(s): compiler
Related Id(s): ERIERL-48
Fail labels on guard BIFs weren't taken into account
during an optimization pass, and a bug in the
validation pass sometimes prevented this from being
noticed when a fault occurred.
OTP-14526 Application(s): compiler
When compiling from Core Erlang, an 'apply' with a
nested apply in the function position would be treated
as an invalid call. Corrected. (Thanks to Mikael
Pettersson for reporting this bug.)
OTP-14591 Application(s): compiler
Fixed checking of binary matching in the beam_validator
module to ensure that potential compiler bugs are found
at compile-time instead as emulator crash at run-time.
OTP-14600 Application(s): compiler, stdlib
Related Id(s): ERL-478
There could be false warnings for
erlang:get_stacktrace/0 being used outside of a try
block when using multiple catch clauses.
--- Improvements and New Features ---
OTP-14378 Application(s): compiler, stdlib
The Erlang code linter no longer checks that the
functions mentioned in nowarn_deprecated_function
options are declared in the module.
Full runtime dependencies of compiler-7.1.2: crypto-3.6, erts-9.0,
hipe-3.12, kernel-4.0, stdlib-2.5
---------------------------------------------------------------------
--- crypto-4.1 ------------------------------------------------------
---------------------------------------------------------------------
The crypto-4.1 application can be applied independently of other
applications on a full OTP 20 installation.
--- Fixed Bugs and Malfunctions ---
OTP-14499 Application(s): crypto, erts
Related Id(s): ERL-251, ERL-439
On macOS, crypto would crash if observer had been
started before crypto. On the beta for macOS 10.13
(High Sierra), crypto would crash. Both of those bugs
have been fixed.
--- Improvements and New Features ---
OTP-13704 Application(s): crypto, public_key
Related Id(s): PR838
Extend crypto:sign, crypto:verify, public_key:sign and
public_key:verify with:
* support for RSASSA-PS padding for signatures and for
saltlength setting
* X9.31 RSA padding.
* sha, sha224, sha256, sha384, and sha512 for dss
signatures as mentioned in NIST SP 800-57 Part 1.
* ripemd160 to be used for rsa signatures.
This is a manual merge of half of the pull request 838
by potatosalad from Sept 2015.
OTP-14504 Application(s): crypto
A new tuple in crypto:supports/0 reports supported MAC
algorithms.
Full runtime dependencies of crypto-4.1: erts-9.0, kernel-5.3,
stdlib-3.4
---------------------------------------------------------------------
--- debugger-4.2.3 --------------------------------------------------
---------------------------------------------------------------------
The debugger-4.2.3 application can be applied independently of other
applications on a full OTP 20 installation.
--- Improvements and New Features ---
OTP-14464 Application(s): debugger, edoc, et, eunit, observer,
tools
Tools are updated to show Unicode atoms correctly.
Full runtime dependencies of debugger-4.2.3: compiler-5.0, erts-9.0,
kernel-5.3, stdlib-3.4, wx-1.2
---------------------------------------------------------------------
--- dialyzer-3.2.2 --------------------------------------------------
---------------------------------------------------------------------
Note! The dialyzer-3.2.2 application can *not* be applied
independently of other applications on an arbitrary OTP 20
installation.
On a full OTP 20 installation, also the following runtime
dependency has to be satisfied:
-- hipe-3.16.1 (first satisfied in OTP 20.1)
--- Fixed Bugs and Malfunctions ---
OTP-14572 Application(s): dialyzer, hipe
Related Id(s): seq13319
Fix a bug regarding map types that caused Dialyzer to
go into an infinite loop. A consequence of the fix is
that compound map keys such as maps and tuples
sometimes are handled with less precision than before.
--- Improvements and New Features ---
OTP-14462 Application(s): common_test, dialyzer, erl_docgen,
hipe, kernel, mnesia, observer, runtime_tools, sasl,
stdlib, syntax_tools, tools, wx
General Unicode improvements.
OTP-14606 Application(s): dialyzer
Related Id(s): OTP-14218
The check for unknown remote types is improved.
Full runtime dependencies of dialyzer-3.2.2: compiler-7.0, erts-9.0,
hipe-3.16.1, kernel-5.3, stdlib-3.4, syntax_tools-2.0, wx-1.2
---------------------------------------------------------------------
--- diameter-2.1 ----------------------------------------------------
---------------------------------------------------------------------
The diameter-2.1 application can be applied independently of other
applications on a full OTP 20 installation.
--- Fixed Bugs and Malfunctions ---
OTP-14011 Application(s): diameter
React to nodeup/nodedown when sharing peer connections.
Service configuration share_peers and use_shared_peers
did not respond to the coming and going of remote
nodes.
OTP-14486 Application(s): diameter
Fix inappropriate message callbacks.
An incoming CER or DPR was regarded as discarded,
resulting in a corresponding message callback (if
configured) in diameter_tcp/sctp.
OTP-14512 Application(s): diameter
Fix handling of 5009 errors
(DIAMETER_AVP_OCCURS_TOO_MANY TIMES).
RFC 6733 says that the first AVP that exceeds the bound
should be reported, but the suggestions in the errors
field of a diameter_packet record counted AVPs from the
rear of the message, not the front. Additionally,
diameter 2.0 in OTP 20.0 broke the counting by
accepting one more AVP than the message grammar in
question allowed.
OTP-14535 Application(s): diameter
Related Id(s): OTP-13006
Match case insensitively in diameter_tcp/sctp accept
tuple.
Matching of remote addresses when accepting connections
in a listening transport was case-sensitive, causing
the semantics to change as a consequence of (kernel)
OTP-13006.
OTP-14552 Application(s): diameter
Fix backwards incompatibility of remote send when
sharing transports.
The sending of requests over a transport connection on
a remote node running an older version of diameter was
broken by diameter 2.0 in OTP 20.0.
OTP-14607 Application(s): diameter
Fix diameter_packet.avps decode of Grouped AVP errors
in Failed-AVP.
Decode didn't produce a list of diameter_avp records,
so information about faulty component AVPs was lost.
OTP-9869 Application(s): diameter
Fix handling of Proxy-Info in answer messages setting
the E-bit.
RFC 6733 requires that Proxy-Info AVPs in an incoming
request be echoed in an outgoing answer. This was not
done in answers formulated by diameter; for example, as
a result of a handle_request callback having returned
an 'answer-message' or protocol_error tuple.
--- Improvements and New Features ---
OTP-10889 Application(s): diameter
Let unordered delivery be configured in diameter_sctp.
With option {unordered, boolean() | pos_integer()},
with false the default, and N equivalent to OS =< N,
where OS is the number of outbound streams negotiated
on the association in question. If configured,
unordered sending commences upon reception of a second
message, outgoing messages being sent on stream 0
before this.
The default false is for backwards compatibility, but
false or 1 should be set to follow RFC 6733's
recommendation on the use of unordered sending to avoid
head-of-line blocking. There is typically no meaningful
order to preserve, since the order in which outgoing
messages are received by a transport process isn't
known to the sender.
OTP-10927 Application(s): diameter
Complete/simplify Standards Compliance in User's Guide.
OTP-14511 Application(s): diameter
Related Id(s): OTP-14343
Add service option decode_format.
To allow incoming messages to be decoded into maps or
lists instead of records. Messages can be presented in
any of the formats for encode.
Decode performance has also been improved.
OTP-14521 Application(s): diameter
Add service option traffic_counters.
To let message-related counters be disabled, which can
be a performance improvement in some usecases.
OTP-14544 Application(s): diameter
Allow loopback/any as local addresses in
diameter_tcp/sctp.
The atoms were implied by documentation, but not
handled in code.
OTP-14546 Application(s): diameter
Add transport option strict_capx.
To allow the RFC 6733 requirement that a transport
connection be closed if a message is received before
capabilities exchange to be relaxed.
OTP-14555 Application(s): diameter
Be consistent with service/transport configuration.
For options for which it's meaningful, defaults values
for transport options can now be configured on a
service. This was previously the case only for an
arbitrary subset of options.
OTP-14588 Application(s): diameter
Add service/transport option avp_dictionaries.
To provide better support for AVPs that are not defined
in the application dictionary: configuring additional
dictionaries in an avp_dictionaries tuple allows their
AVPs to be encoded/decoded in much the same fashion as
application AVPs.
The motivation is RFC 7683 Diameter Overload, Indicator
Conveyance (DOIC), that defines AVPs intended to be
piggybacked onto arbitrary messages. A DOIC dictionary
has been included in the installation, in module
diameter_gen_doic_rfc7683.
OTP-14596 Application(s): diameter
Decode application AVPs in answers setting the E-bit.
AVPs defined in the application of the message being
sent were previously not decoded, only those in the
common application that defines the answer-message
grammar.
Full runtime dependencies of diameter-2.1: erts-6.4, kernel-3.2,
ssl-6.0, stdlib-2.4
---------------------------------------------------------------------
--- edoc-0.9.1 ------------------------------------------------------
---------------------------------------------------------------------
The edoc-0.9.1 application can be applied independently of other
applications on a full OTP 20 installation.
--- Improvements and New Features ---
OTP-14464 Application(s): debugger, edoc, et, eunit, observer,
tools
Tools are updated to show Unicode atoms correctly.
Full runtime dependencies of edoc-0.9.1: erts-6.0, inets-5.10,
kernel-3.0, stdlib-2.5, syntax_tools-1.6.14, xmerl-1.3.7
---------------------------------------------------------------------
--- erl_docgen-0.7.1 ------------------------------------------------
---------------------------------------------------------------------
The erl_docgen-0.7.1 application can be applied independently of
other applications on a full OTP 20 installation.
--- Improvements and New Features ---
OTP-14462 Application(s): common_test, dialyzer, erl_docgen,
hipe, kernel, mnesia, observer, runtime_tools, sasl,
stdlib, syntax_tools, tools, wx
General Unicode improvements.
Full runtime dependencies of erl_docgen-0.7.1: edoc-0.7.13, erts-9.0,
stdlib-3.4, xmerl-1.3.7
---------------------------------------------------------------------
--- erts-9.1 --------------------------------------------------------
---------------------------------------------------------------------
The erts-9.1 application can be applied independently of other
applications on a full OTP 20 installation.
--- Fixed Bugs and Malfunctions ---
OTP-14490 Application(s): erts
Related Id(s): ERL-432
Changed erlang:apply/2 to raise a badarg exception if
the second argument is not a proper list. Previous
behavior was a misleading undef exception.
OTP-14499 Application(s): crypto, erts
Related Id(s): ERL-251, ERL-439
On macOS, crypto would crash if observer had been
started before crypto. On the beta for macOS 10.13
(High Sierra), crypto would crash. Both of those bugs
have been fixed.
OTP-14523 Application(s): erts
Fixed bug in enif_whereis_pid/port that could cause
heap corruption in rare cases.
OTP-14538 Application(s): erts
Fix so that trace messages generated when in a dirty
nif are flushed correctly when the dirty nif is done
executing.
OTP-14549 Application(s): erts
Related Id(s): PR1536
Fix escape code handling when using ANSI color codes in
the shell.
OTP-14574 Application(s): erts
Upgraded the ERTS internal PCRE library from version
8.40 to version 8.41. See
http://pcre.org/original/changelog.txt for information
about changes made to PCRE. This library implements
major parts of the re regular expressions module.
OTP-14597 Application(s): erts
Related Id(s): ERL-465
Fixed a bug causing statistics(runtime) to produce
negative values and a bug in statistics(wall_clock)
causing it to produce values one second too long.
statistics(runtime) now also use getrusage() as source
when available preventing the returned value from
wrapping as frequent as before.
OTP-14609 Application(s): erts
Fixed small memory leak that could occur when sending
to a terminating port.
OTP-14612 Application(s): erts
Fix bug causing VM crash when a module with -on_load
directive is loaded while erlang:trace(on_load, ...) is
enabled.
OTP-14614 Application(s): erts
Related Id(s): ERL-453
A warning that the compiler may optimize away atoms
have been added to the documentation of
list_to_existing_atom/1 and binary_to_existing_atom/2.
--- Improvements and New Features ---
OTP-13170 Application(s): erts, kernel, tools
Lock counting can now be fully toggled at runtime in
the lock counting emulator (-emu_type lcnt). Everything
is enabled by default to match the old behavior, but
specific categories can be toggled at will with minimal
runtime overhead when disabled. Refer to the
documentation on lcnt:rt_mask/1 for details.
OTP-14185 Application(s): erts
The zlib module has been refactored and all its
operations will now yield appropriately, allowing them
to be used freely in concurrent applications.
The following functions have been deprecated, but will
not produce compiler warnings until OTP 21:
zlib:adler32, zlib:crc32, zlib:inflateChunk,
zlib:getBufSize, zlib:setBufSize.
The behavior of throwing an error when a dictionary is
required for decompression has also been deprecated.
Refer to the documentation on inflateSetDictionary/2
for details.
OTP-14412 Application(s): erts, kernel, tools
lcnt:collect and lcnt:clear will no longer block all
other threads in the runtime system.
OTP-14520 Application(s): erts, tools
Add erlang:iolist_to_iovec/1, which converts an
iolist() to an erlang:iovec(), which suitable for use
with enif_inspect_iovec.
OTP-14527 Application(s): erts
When provided with bad arguments, the zlib module will
now raise named exceptions instead of just badarg. For
example, not_initialized when using zlib:inflate/2 with
an uninitialized stream.
OTP-14553 Application(s): erts
erlang:halt/2 allows any Unicode string as slogan for
the crash dump.
OTP-14598 Application(s): erts
Add new nif API functions for managing an I/O Queue.
The added functions are:
-- enif_ioq_create()
-- enif_ioq_destroy()
-- enif_ioq_enq_binary()
-- enif_ioq_enqv()
-- enif_ioq_deq()
-- enif_ioq_peek()
-- enif_inspect_iovec()
-- enif_free_iovec()
Full runtime dependencies of erts-9.1: kernel-5.0, sasl-3.0.1,
stdlib-3.0
---------------------------------------------------------------------
--- et-1.6.1 --------------------------------------------------------
---------------------------------------------------------------------
The et-1.6.1 application can be applied independently of other
applications on a full OTP 20 installation.
--- Improvements and New Features ---
OTP-14464 Application(s): debugger, edoc, et, eunit, observer,
tools
Tools are updated to show Unicode atoms correctly.
Full runtime dependencies of et-1.6.1: erts-9.0, kernel-5.3,
runtime_tools-1.10, stdlib-3.4, wx-1.2
---------------------------------------------------------------------
--- eunit-2.3.4 -----------------------------------------------------
---------------------------------------------------------------------
The eunit-2.3.4 application can be applied independently of other
applications on a full OTP 20 installation.
--- Improvements and New Features ---
OTP-14464 Application(s): debugger, edoc, et, eunit, observer,
tools
Tools are updated to show Unicode atoms correctly.
Full runtime dependencies of eunit-2.3.4: erts-9.0, kernel-5.3,
stdlib-3.4
---------------------------------------------------------------------
--- hipe-3.16.1 -----------------------------------------------------
---------------------------------------------------------------------
The hipe-3.16.1 application can be applied independently of other
applications on a full OTP 20 installation.
--- Fixed Bugs and Malfunctions ---
OTP-14572 Application(s): dialyzer, hipe
Related Id(s): seq13319
Fix a bug regarding map types that caused Dialyzer to
go into an infinite loop. A consequence of the fix is
that compound map keys such as maps and tuples
sometimes are handled with less precision than before.
--- Improvements and New Features ---
OTP-14462 Application(s): common_test, dialyzer, erl_docgen,
hipe, kernel, mnesia, observer, runtime_tools, sasl,
stdlib, syntax_tools, tools, wx
General Unicode improvements.
Full runtime dependencies of hipe-3.16.1: compiler-5.0, erts-9.0,
kernel-5.3, stdlib-3.4, syntax_tools-1.6.14
---------------------------------------------------------------------
--- inets-6.4.2 -----------------------------------------------------
---------------------------------------------------------------------
The inets-6.4.2 application can be applied independently of other
applications on a full OTP 20 installation.
--- Fixed Bugs and Malfunctions ---
OTP-14510 Application(s): inets
Make sure mod_log uses the correct status code
OTP-14530 Application(s): inets
Correct behaviour of mod_disk_log to proparly handle
repair options
Full runtime dependencies of inets-6.4.2: erts-6.0, kernel-3.0,
mnesia-4.12, runtime_tools-1.8.14, ssl-5.3.4, stdlib-2.0
---------------------------------------------------------------------
--- kernel-5.4 ------------------------------------------------------
---------------------------------------------------------------------
Note! The kernel-5.4 application can *not* be applied independently
of other applications on an arbitrary OTP 20 installation.
On a full OTP 20 installation, also the following runtime
dependency has to be satisfied:
-- erts-9.1 (first satisfied in OTP 20.1)
--- Fixed Bugs and Malfunctions ---
OTP-14571 Application(s): kernel
Related Id(s): ERL-472
Processes which did output after switching jobs
(Ctrl+G) could be left forever stuck in the io request.
--- Improvements and New Features ---
OTP-13170 Application(s): erts, kernel, tools
Lock counting can now be fully toggled at runtime in
the lock counting emulator (-emu_type lcnt). Everything
is enabled by default to match the old behavior, but
specific categories can be toggled at will with minimal
runtime overhead when disabled. Refer to the
documentation on lcnt:rt_mask/1 for details.
OTP-14412 Application(s): erts, kernel, tools
lcnt:collect and lcnt:clear will no longer block all
other threads in the runtime system.
OTP-14462 Application(s): common_test, dialyzer, erl_docgen,
hipe, kernel, mnesia, observer, runtime_tools, sasl,
stdlib, syntax_tools, tools, wx
General Unicode improvements.
Full runtime dependencies of kernel-5.4: erts-9.1, sasl-3.0,
stdlib-3.4
---------------------------------------------------------------------
--- mnesia-4.15.1 ---------------------------------------------------
---------------------------------------------------------------------
The mnesia-4.15.1 application can be applied independently of other
applications on a full OTP 20 installation.
--- Improvements and New Features ---
OTP-14462 Application(s): common_test, dialyzer, erl_docgen,
hipe, kernel, mnesia, observer, runtime_tools, sasl,
stdlib, syntax_tools, tools, wx
General Unicode improvements.
Full runtime dependencies of mnesia-4.15.1: erts-9.0, kernel-5.3,
stdlib-3.4
---------------------------------------------------------------------
--- observer-2.5 ----------------------------------------------------
---------------------------------------------------------------------
The observer-2.5 application can be applied independently of other
applications on a full OTP 20 installation.
--- Improvements and New Features ---
OTP-14386 Application(s): observer
The following improvements are done to Crashdump
Viewer:
-- Reading of crash dumps with many binaries is
optimized.
-- A progress bar is shown when the detail view for a
process is opened.
-- The cdv script now sets ERL_CRASH_DUMP_SECONDS=0 to
avoid generating a new crash dump from the node running
the Crashdump Viewer.
-- A warning dialog is shown if the node running the
Crashdump Viewer could potentially overwrite the crash
dump under inspection.
-- Bugfix: In some situations, Crashdump Viewer could
not find the end of the 'Last calls' section in a crash
dump, and would erroneously mark the crash dump as
truncated. This is now corrected.
-- Bugfix: In some situations, process info for a
specific process would be marked as truncated by
Crashdump Viewer, even if the crash dump was truncated
in the binary section - and not related to the process
in question. This is now corrected.
OTP-14462 Application(s): common_test, dialyzer, erl_docgen,
hipe, kernel, mnesia, observer, runtime_tools, sasl,
stdlib, syntax_tools, tools, wx
General Unicode improvements.
OTP-14464 Application(s): debugger, edoc, et, eunit, observer,
tools
Tools are updated to show Unicode atoms correctly.
OTP-14536 Application(s): observer
Add system statistics and limits to frontpage in
observer.
Full runtime dependencies of observer-2.5: erts-7.0, et-1.5,
inets-5.10, kernel-3.0, runtime_tools-1.8.14, stdlib-3.4, wx-1.2
---------------------------------------------------------------------
--- os_mon-2.4.3 ----------------------------------------------------
---------------------------------------------------------------------
The os_mon-2.4.3 application can be applied independently of other
applications on a full OTP 20 installation.
--- Fixed Bugs and Malfunctions ---
OTP-14560 Application(s): os_mon
Related Id(s): ERL-461
On macOS 10.13 (High Sierra), disksup could not grab
information for any disks that used the new APFS file
system. That has been corrected.
Full runtime dependencies of os_mon-2.4.3: erts-6.0, kernel-3.0,
mnesia-4.12, otp_mibs-1.0.9, sasl-2.4, snmp-4.25.1, stdlib-2.0
---------------------------------------------------------------------
--- public_key-1.5 --------------------------------------------------
---------------------------------------------------------------------
The public_key-1.5 application can be applied independently of other
applications on a full OTP 20 installation.
--- Fixed Bugs and Malfunctions ---
OTP-14621 Application(s): public_key
Related Id(s): ERL-480, ERL-481
*** POTENTIAL INCOMPATIBILITY ***
public_key now handles elliptic curve parameters in a
consistent way so that decoded ECDSA keys can be
correctly re-encoded.
--- Improvements and New Features ---
OTP-13704 Application(s): crypto, public_key
Related Id(s): PR838
Extend crypto:sign, crypto:verify, public_key:sign and
public_key:verify with:
* support for RSASSA-PS padding for signatures and for
saltlength setting
* X9.31 RSA padding.
* sha, sha224, sha256, sha384, and sha512 for dss
signatures as mentioned in NIST SP 800-57 Part 1.
* ripemd160 to be used for rsa signatures.
This is a manual merge of half of the pull request 838
by potatosalad from Sept 2015.
OTP-14181 Application(s): public_key
Add API function pkix_test_data/1 for facilitating
automated testing. This is useful for applications that
preform X509-certifcate path validation of so called
certificate chains, such as TLS.
OTP-14236 Application(s): public_key, ssl
Improved error propagation and reports
OTP-14534 Application(s): public_key
RSAPrivateKey version is set to 'two-prime' instead of
using the underlying enumeration value directly.
OTP-14608 Application(s): public_key
Deprecated function crypto:rand_uniform/2 is replaced
by rand:uniform/1.
Full runtime dependencies of public_key-1.5: asn1-3.0, crypto-3.8,
erts-6.0, kernel-3.0, stdlib-2.0
---------------------------------------------------------------------
--- reltool-0.7.5 ---------------------------------------------------
---------------------------------------------------------------------
The reltool-0.7.5 application can be applied independently of other
applications on a full OTP 20 installation.
--- Improvements and New Features ---
OTP-14463 Application(s): reltool, sasl
Files generated by release_handler and reltool, which
might contain Unicode characters, are now encoded as
UTF-8 and written with format "~tp" or "~ts". If the
file is to be read by file:consult/1, an encoding
comment is added.
Full runtime dependencies of reltool-0.7.5: erts-7.0, kernel-3.0,
sasl-2.4, stdlib-3.4, tools-2.6.14, wx-1.2
---------------------------------------------------------------------
--- runtime_tools-1.12.2 --------------------------------------------
---------------------------------------------------------------------
The runtime_tools-1.12.2 application can be applied independently of
other applications on a full OTP 20 installation.
--- Improvements and New Features ---
OTP-14462 Application(s): common_test, dialyzer, erl_docgen,
hipe, kernel, mnesia, observer, runtime_tools, sasl,
stdlib, syntax_tools, tools, wx
General Unicode improvements.
Full runtime dependencies of runtime_tools-1.12.2: erts-8.0,
kernel-5.0, mnesia-4.12, stdlib-3.0
---------------------------------------------------------------------
--- sasl-3.1 --------------------------------------------------------
---------------------------------------------------------------------
The sasl-3.1 application can be applied independently of other
applications on a full OTP 20 installation.
--- Improvements and New Features ---
OTP-14462 Application(s): common_test, dialyzer, erl_docgen,
hipe, kernel, mnesia, observer, runtime_tools, sasl,
stdlib, syntax_tools, tools, wx
General Unicode improvements.
OTP-14463 Application(s): reltool, sasl
Files generated by release_handler and reltool, which
might contain Unicode characters, are now encoded as
UTF-8 and written with format "~tp" or "~ts". If the
file is to be read by file:consult/1, an encoding
comment is added.
OTP-14618 Application(s): sasl
The SASL error logger event handler,
sasl_report_file_h, will now by default open its log
file with encoding UTF-8. This can be overridden when
configuring SASL, see configuration parameter
sasl_error_logger in the SASL reference manual.
Full runtime dependencies of sasl-3.1: erts-9.0, kernel-5.3,
stdlib-3.4, tools-2.6.14
---------------------------------------------------------------------
--- snmp-5.2.7 ------------------------------------------------------
---------------------------------------------------------------------
The snmp-5.2.7 application can be applied independently of other
applications on a full OTP 20 installation.
--- Fixed Bugs and Malfunctions ---
OTP-13014 Application(s): snmp
Related Id(s): ERL-375
A bug in the SNMP MIB compiler has been fixed. An
AUGMENTS referring to a table defined later in the MIB
did not work.
Full runtime dependencies of snmp-5.2.7: crypto-3.3, erts-6.0,
kernel-3.0, mnesia-4.12, runtime_tools-1.8.14, stdlib-2.5
---------------------------------------------------------------------
--- ssh-4.6 ---------------------------------------------------------
---------------------------------------------------------------------
The ssh-4.6 application can be applied independently of other
applications on a full OTP 20 installation.
--- Fixed Bugs and Malfunctions ---
OTP-14506 Application(s): ssh
Related Id(s): PR1503
Enables the ssh_io module to also accept binary values
when reading standard_io instead of getting stuck in
the receive clause.
OTP-14550 Application(s): ssh
Related Id(s): PR1533
Previously, the file owner access permission in
response to ssh_sftp:read_file_info/2 function was
always read_write. With this fix, the actual value of
file owner access permission is added to the returning
record. That value is calculated from file mode value.
--- Improvements and New Features ---
OTP-14568 Application(s): ssh
A new option modify_algorithms is implemented. It
enables specifying changes on the default algorithms
list. See the reference manual and the SSH User's Guide
chapter "Configuring algorithms in SSH".
Full runtime dependencies of ssh-4.6: crypto-3.7.3, erts-6.0,
kernel-3.0, public_key-1.4, stdlib-3.3
---------------------------------------------------------------------
--- ssl-8.2.1 -------------------------------------------------------
---------------------------------------------------------------------
Note! The ssl-8.2.1 application can *not* be applied independently of
other applications on an arbitrary OTP 20 installation.
On a full OTP 20 installation, also the following runtime
dependency has to be satisfied:
-- public_key-1.5 (first satisfied in OTP 20.1)
--- Fixed Bugs and Malfunctions ---
OTP-14556 Application(s): ssl
Max session table works correctly again
--- Improvements and New Features ---
OTP-14078 Application(s): ssl
Customize alert handling for DTLS over UDP to mitigate
DoS attacks
OTP-14236 Application(s): public_key, ssl
Improved error propagation and reports
Full runtime dependencies of ssl-8.2.1: crypto-3.3, erts-7.0,
inets-5.10.7, kernel-3.0, public_key-1.5, stdlib-3.2
---------------------------------------------------------------------
--- stdlib-3.4.2 ----------------------------------------------------
---------------------------------------------------------------------
The stdlib-3.4.2 application can be applied independently of other
applications on a full OTP 20 installation.
--- Fixed Bugs and Malfunctions ---
OTP-14488 Application(s): stdlib
Related Id(s): PR-1489
Fix a bug in the Erlang shell where recursively defined
records with typed fields could cause a loop.
OTP-14542 Application(s): stdlib
Make edlin handle grapheme clusters instead of
codepoints to improve the handling multi-codepoints
characters.
OTP-14600 Application(s): compiler, stdlib
Related Id(s): ERL-478
There could be false warnings for
erlang:get_stacktrace/0 being used outside of a try
block when using multiple catch clauses.
--- Improvements and New Features ---
OTP-14378 Application(s): compiler, stdlib
The Erlang code linter no longer checks that the
functions mentioned in nowarn_deprecated_function
options are declared in the module.
OTP-14462 Application(s): common_test, dialyzer, erl_docgen,
hipe, kernel, mnesia, observer, runtime_tools, sasl,
stdlib, syntax_tools, tools, wx
General Unicode improvements.
Full runtime dependencies of stdlib-3.4.2: compiler-5.0, crypto-3.3,
erts-9.0, kernel-5.0, sasl-3.0
---------------------------------------------------------------------
--- syntax_tools-2.1.3 ----------------------------------------------
---------------------------------------------------------------------
The syntax_tools-2.1.3 application can be applied independently of
other applications on a full OTP 20 installation.
--- Improvements and New Features ---
OTP-14462 Application(s): common_test, dialyzer, erl_docgen,
hipe, kernel, mnesia, observer, runtime_tools, sasl,
stdlib, syntax_tools, tools, wx
General Unicode improvements.
OTP-14471 Application(s): syntax_tools
Related Id(s): ERL-413
A process trapping exits and calling erl_tidy no longer
hangs if an error occurs.
Full runtime dependencies of syntax_tools-2.1.3: compiler-7.0,
erts-9.0, kernel-5.0, stdlib-3.4
---------------------------------------------------------------------
--- tools-2.11 ------------------------------------------------------
---------------------------------------------------------------------
Note! The tools-2.11 application can *not* be applied independently
of other applications on an arbitrary OTP 20 installation.
On a full OTP 20 installation, also the following runtime
dependencies have to be satisfied:
-- erts-9.1 (first satisfied in OTP 20.1)
-- kernel-5.4 (first satisfied in OTP 20.1)
--- Fixed Bugs and Malfunctions ---
OTP-14344 Application(s): tools
The predefined Xref analysis locals_not_used no longer
reports unused functions with the -on_load() attribute.
The new predefined Xref variable OL holds all functions
with the -on_load() attribute.
OTP-14500 Application(s): tools
In fprof when sampling multiple processes and analyzing
with totals set to true, the output now sums together
all caller and callee entries which concerns the same
function. Previous behaviour was to report each
contributing entry separately.
--- Improvements and New Features ---
OTP-13170 Application(s): erts, kernel, tools
Lock counting can now be fully toggled at runtime in
the lock counting emulator (-emu_type lcnt). Everything
is enabled by default to match the old behavior, but
specific categories can be toggled at will with minimal
runtime overhead when disabled. Refer to the
documentation on lcnt:rt_mask/1 for details.
OTP-14412 Application(s): erts, kernel, tools
lcnt:collect and lcnt:clear will no longer block all
other threads in the runtime system.
OTP-14462 Application(s): common_test, dialyzer, erl_docgen,
hipe, kernel, mnesia, observer, runtime_tools, sasl,
stdlib, syntax_tools, tools, wx
General Unicode improvements.
OTP-14464 Application(s): debugger, edoc, et, eunit, observer,
tools
Tools are updated to show Unicode atoms correctly.
OTP-14520 Application(s): erts, tools
Add erlang:iolist_to_iovec/1, which converts an
iolist() to an erlang:iovec(), which suitable for use
with enif_inspect_iovec.
Full runtime dependencies of tools-2.11: compiler-5.0, erts-9.1,
kernel-5.4, runtime_tools-1.8.14, stdlib-3.4
---------------------------------------------------------------------
--- wx-1.8.2 --------------------------------------------------------
---------------------------------------------------------------------
The wx-1.8.2 application can be applied independently of other
applications on a full OTP 20 installation.
--- Fixed Bugs and Malfunctions ---
OTP-14539 Application(s): wx
Do not deprecate
wxGraphicsContext:createLinearGradientBrush/7 and
wxGraphicsContext:createRadialGradientBrush/8 which are
still available in wxWidgets-3.0.
--- Improvements and New Features ---
OTP-14462 Application(s): common_test, dialyzer, erl_docgen,
hipe, kernel, mnesia, observer, runtime_tools, sasl,
stdlib, syntax_tools, tools, wx
General Unicode improvements.
Full runtime dependencies of wx-1.8.2: erts-6.0, kernel-3.0,
stdlib-2.0
---------------------------------------------------------------------
---------------------------------------------------------------------
---------------------------------------------------------------------