From 2c25bb6067eaedbacf8f8cbefbabecd582519bf9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Hoguin?= Date: Tue, 17 Sep 2019 17:45:27 +0200 Subject: OTP-22.1 --- early-plugins.mk | 2 +- release-notes/OTP-22.1.README.txt | 1490 +++++++++++++++++++++++++++++++++++++ 2 files changed, 1491 insertions(+), 1 deletion(-) create mode 100644 release-notes/OTP-22.1.README.txt diff --git a/early-plugins.mk b/early-plugins.mk index c80ff5a..f7e85f7 100644 --- a/early-plugins.mk +++ b/early-plugins.mk @@ -27,7 +27,7 @@ OTP-18 := OTP-18.0.3 OTP-18.1.5 OTP-18.2.4 OTP-18.3.4.11 OTP-19 := OTP-19.0.7 OTP-19.1.6 OTP-19.2.3 OTP-19.3.6.13 OTP-20 := OTP-20.0.5 OTP-20.1.7 OTP-20.2.4 OTP-20.3.8.22 OTP-21 := OTP-21.0.9 OTP-21.1.4 OTP-21.2.7 OTP-21.3.8.7 -OTP-22 := OTP-22.0.7 +OTP-22 := OTP-22.0.7 OTP-22.1 OTP-18+ := $(OTP-18) $(OTP-19) $(OTP-20) $(OTP-21) $(OTP-22) OTP-19+ := $(OTP-19) $(OTP-20) $(OTP-21) $(OTP-22) diff --git a/release-notes/OTP-22.1.README.txt b/release-notes/OTP-22.1.README.txt new file mode 100644 index 0000000..7f8869d --- /dev/null +++ b/release-notes/OTP-22.1.README.txt @@ -0,0 +1,1490 @@ +Patch Package: OTP 22.1 +Git Tag: OTP-22.1 +Date: 2019-09-17 +Trouble Report Id: OTP-10400, OTP-13872, OTP-15328, OTP-15330, + OTP-15331, OTP-15332, OTP-15344, OTP-15370, + OTP-15395, OTP-15422, OTP-15431, OTP-15510, + OTP-15738, OTP-15747, OTP-15765, OTP-15778, + OTP-15789, OTP-15807, OTP-15813, OTP-15814, + OTP-15818, OTP-15820, OTP-15823, OTP-15826, + OTP-15827, OTP-15830, OTP-15831, OTP-15833, + OTP-15836, OTP-15843, OTP-15849, OTP-15850, + OTP-15851, OTP-15852, OTP-15853, OTP-15854, + OTP-15858, OTP-15859, OTP-15863, OTP-15869, + OTP-15870, OTP-15874, OTP-15876, OTP-15880, + OTP-15881, OTP-15882, OTP-15883, OTP-15884, + OTP-15889, OTP-15893, OTP-15901, OTP-15905, + OTP-15906, OTP-15911, OTP-15916, OTP-15917, + OTP-15918, OTP-15923, OTP-15924, OTP-15926, + OTP-15927, OTP-15928, OTP-15929, OTP-15931, + OTP-15932, OTP-15933, OTP-15934, OTP-15935, + OTP-15942, OTP-15954, OTP-15959, OTP-15962, + OTP-15963, OTP-15966, OTP-15968, OTP-15969, + OTP-15970, OTP-15971, OTP-15974, OTP-15975, + OTP-15977, OTP-15978, OTP-15979, OTP-15980, + OTP-15982, OTP-15983, OTP-15984, OTP-15985, + OTP-15987, OTP-15992, OTP-15996, OTP-15997, + OTP-16000, OTP-16001, OTP-16002, OTP-16006, + OTP-16012, OTP-16022, OTP-16023, OTP-16027, + OTP-16028, OTP-16035, OTP-16037, OTP-16038, + OTP-16040, OTP-16041, OTP-16042, OTP-16044, + OTP-16049, OTP-16050, OTP-16051, OTP-16056, + OTP-16058, OTP-16060 +Seq num: ERIERL-294, ERIERL-350, ERIERL-353, + ERIERL-366, ERIERL-370, ERIERL-379, + ERIERL-395, ERL-1009, ERL-1012, ERL-1013, + ERL-1014, ERL-1017, ERL-1022, ERL-1026, + ERL-1029, ERL-700, ERL-717, ERL-768, ERL-872, + ERL-876, ERL-912, ERL-915, ERL-920, ERL-921, + ERL-934, ERL-938, ERL-943, ERL-947, ERL-952, + ERL-958, ERL-960, ERL-974, ERL-990, ERL-992, + ERL-995, ERL-997 +System: OTP +Release: 22 +Application: common_test-1.18, compiler-7.4.5, crypto-4.6, + dialyzer-4.1, erl_docgen-0.10, + erl_interface-3.13, erts-10.5, eunit-2.3.8, + ftp-1.0.3, inets-7.1, jinterface-1.10.1, + kernel-6.5, megaco-3.18.6, mnesia-4.16.1, + observer-2.9.2, os_mon-2.5.1, public_key-1.7, + runtime_tools-1.14, sasl-3.4.1, snmp-5.4, + ssh-4.8, ssl-9.4, stdlib-3.10, + syntax_tools-2.2.1, tools-3.2.1, wx-1.8.9, + xmerl-1.3.22 +Predecessor: OTP 22.0.7 + + Check out the git tag OTP-22.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. + + --------------------------------------------------------------------- + --- HIGHLIGHTS ------------------------------------------------------ + --------------------------------------------------------------------- + + OTP-13872 Application(s): crypto + + The Message Authentication Codes (MAC) CMAC, HMAC and + Poly1305 are unified into common functions in the New + Crypto API. See the manual for CRYPTO. + + + OTP-15431 Application(s): ssl + + Basic support for TLS 1.3 Client for experimental use. + For more information see the Standards Compliance + chapter of the User's Guide. + + + OTP-15738 Application(s): erts + Related Id(s): PR-2361 + + erlc can now automatically use a compile server to + avoid starting an Erlang system for each file to be + compiled in a multi-file project. See the documentation + for how to enable it. + + + --------------------------------------------------------------------- + --- POTENTIAL INCOMPATIBILITIES ------------------------------------- + --------------------------------------------------------------------- + + OTP-15510 Application(s): stdlib + + Debugging of time-outs in gen_statem has been improved. + Starting a time-out is now logged in sys:log and + sys:trace. Running time-outs are visible in server + crash logs, and with sys:get_status. Due to this system + events {start_timer, Action, State} and {insert_timout, + Event, State} have been added, which may surprise tools + that rely on the format of these events. + + New features: The EventContent of a running time-out + can be updated with {TimeoutType, update, + NewEventContent}. Running time-outs can be cancelled + with {TimeoutType, cancel} which is more readable than + using Time = infinity. + + + OTP-15979 Application(s): mnesia + Related Id(s): ERL-768 + + Transactions with sticky locks could with async_asym + transactions be committed in the wrong order, since + asym transaction are spawned on the remote nodes. + + To fix this bug the communication protocol between + mnesia nodes had to be updated, thus mnesia will no + longer be able to connect to nodes earlier than + mnesia-4.14 , OTP-19.0. + + + --------------------------------------------------------------------- + --- OTP-22.1 -------------------------------------------------------- + --------------------------------------------------------------------- + + --- Improvements and New Features --- + + OTP-16051 Application(s): erl_docgen, otp + + Update the documentation build support to handle FOP + 2.1 . + + + --------------------------------------------------------------------- + --- common_test-1.18 ------------------------------------------------ + --------------------------------------------------------------------- + + The common_test-1.18 application can be applied independently of + other applications on a full OTP 22 installation. + + --- Fixed Bugs and Malfunctions --- + + OTP-15863 Application(s): common_test + Related Id(s): ERIERL-370 + + If a ct hook is installed in the suite/0 function in a + test suite, then the hook's terminate/1 function would + be called several times without it's init/2 function + being called first. This is now corrected. + + + OTP-15869 Application(s): common_test + Related Id(s): ERIERL-350 + + If init_per_testcase fails, the test itself is skipped. + According to the documentation, it should be possible + to change the result to failed in a hook function. The + only available hook function in this case is + post_init_per_testcase, but changing the return value + there did not affect the test case result. This is now + corrected. + + + --- Improvements and New Features --- + + OTP-15789 Application(s): common_test + + Add ct_netconfc support for NETCONF 1.1 (RFC 6241). The + 1.1 base capability can be sent in hello, and RFC 6242 + chunk framing is applied when both client and server + advertise 1.1 support. + + + OTP-15934 Application(s): common_test + + Correct lib_dir paths in common_tests opaque data + structure that is passed to ct_release_test callback + modules in functions upgrade_init/2, upgrade_upgraded/2 + and upgrade_downgraded/2. The incorrect paths may cause + confusion when debugging although it will not cause any + incorrect behavior on the part of common_test as it is + currently not used. + + + Full runtime dependencies of common_test-1.18: compiler-6.0, + crypto-3.6, debugger-4.1, erts-7.0, ftp-1.0.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.5, syntax_tools-1.7, tools-2.8, xmerl-1.3.8 + + + --------------------------------------------------------------------- + --- compiler-7.4.5 -------------------------------------------------- + --------------------------------------------------------------------- + + The compiler-7.4.5 application can be applied independently of other + applications on a full OTP 22 installation. + + --- Fixed Bugs and Malfunctions --- + + OTP-15833 Application(s): compiler + + Code such as the following would crash the compiler in + OTP 22: [some_atom = fun some_function/1] + + + OTP-15923 Application(s): compiler + + Compilation could get really slow (in the order of + minutes instead of seconds) when compiling huge + functions. (Thanks to Kostis Sagonas for reporting this + bug.) + + + OTP-15954 Application(s): compiler + Related Id(s): ERL-995 + + Fixed a bug in the validator that could reject valid + code. + + + OTP-15963 Application(s): compiler + + In rare circumstances, when two clauses had identical + bodies and guard tests that tested a single boolean + variable, the guard test for the second clause could be + discarded, executing the second clause unconditionally + if the first clause was not executed. + + + OTP-15966 Application(s): compiler + Related Id(s): ERL-1014 + + Fixed extremely slow compilation for huge functions + doing predominantly pattern matching. + + + OTP-15968 Application(s): compiler + Related Id(s): ERL-1017 + + The compiler could generate unsafe code (that would + crash the runtime system) for map pattern matching. The + code could be unsafe if the matched key was not present + in the map at runtime. + + + OTP-15969 Application(s): compiler + Related Id(s): ERL-997 + + Correct code using try/after could fail to compile when + using the option 'no_type_opt'. + + + OTP-15970 Application(s): compiler + Related Id(s): ERL-1013 + + The compiler could crash when compiling code that + called 'length/1' on a binary extracted using the + binary syntax. + + + OTP-15982 Application(s): compiler + Related Id(s): ERL-1022 + + Fixed a bug where the compiler could fail with an + internal consistency failure error when compiling + receive statements. + + + OTP-15985 Application(s): compiler + Related Id(s): ERL-1026 + + Fixed a problem where the compiler would crash when + compiling binary matching in a function head. + + + Full runtime dependencies of compiler-7.4.5: crypto-3.6, erts-9.0, + hipe-3.12, kernel-4.0, stdlib-2.5 + + + --------------------------------------------------------------------- + --- crypto-4.6 ------------------------------------------------------ + --------------------------------------------------------------------- + + The crypto-4.6 application can be applied independently of other + applications on a full OTP 22 installation. + + --- Fixed Bugs and Malfunctions --- + + OTP-15884 Application(s): crypto + Related Id(s): ERL-974 + + The implementation of crypto_one_time/4 is adjusted to + match the type specification. The spec and the + black-box behaviour of the function are unchanged. + + Some details: Both the spec and the implementation were + correct seen separately. But with both of them combined + simultaneously with crypto_one_time/5 which was called + by the implementation of crypto_one_time/4, an + (obvious) error was detected by a Dialyzer with more + thorough checking than usual. + + + OTP-15911 Application(s): crypto + + When using crypto with FIPS mode enabled, the digests + were not correctly handled. + + + OTP-15924 Application(s): crypto + + A memory leak in error handling code in + ng_crypto_init_nif is fixed. + + + OTP-15928 Application(s): crypto + Related Id(s): PR-2296 + + Fixed the broken static build of the crypto nifs + + + --- Improvements and New Features --- + + OTP-13872 Application(s): crypto + + *** HIGHLIGHT *** + + The Message Authentication Codes (MAC) CMAC, HMAC and + Poly1305 are unified into common functions in the New + Crypto API. See the manual for CRYPTO. + + + Full runtime dependencies of crypto-4.6: erts-9.0, kernel-5.3, + stdlib-3.4 + + + --------------------------------------------------------------------- + --- dialyzer-4.1 ---------------------------------------------------- + --------------------------------------------------------------------- + + The dialyzer-4.1 application can be applied independently of other + applications on a full OTP 22 installation. + + --- Improvements and New Features --- + + OTP-15880 Application(s): dialyzer + Related Id(s): PR-2283 + + Allow native compilation when using Dialyzer from + Erlang. The options native (defaults to false) and + native_cache have been added. + + + Full runtime dependencies of dialyzer-4.1: compiler-7.0, erts-9.0, + hipe-3.16.1, kernel-5.3, stdlib-3.4, syntax_tools-2.0, wx-1.2 + + + --------------------------------------------------------------------- + --- erl_docgen-0.10 ------------------------------------------------- + --------------------------------------------------------------------- + + The erl_docgen-0.10 application can be applied independently of other + applications on a full OTP 22 installation. + + --- Improvements and New Features --- + + OTP-16051 Application(s): erl_docgen, otp + + Update the documentation build support to handle FOP + 2.1 . + + + Full runtime dependencies of erl_docgen-0.10: edoc-0.7.13, erts-9.0, + stdlib-3.4, xmerl-1.3.7 + + + --------------------------------------------------------------------- + --- erl_interface-3.13 ---------------------------------------------- + --------------------------------------------------------------------- + + The erl_interface-3.13 application can be applied independently of + other applications on a full OTP 22 installation. + + --- Fixed Bugs and Malfunctions --- + + OTP-15917 Application(s): erl_interface + + Fix bugs in ei_print_term for binaries and bit strings + causing incorrect output. + + + OTP-15996 Application(s): erl_interface + + Fixed bug in ei_decode_fun for very old fun encoding + format. Bug exist since OTP 22.0. + + + --- Improvements and New Features --- + + OTP-15814 Application(s): erl_interface + + ei_print_term() now supports printing of maps and funs. + + + --------------------------------------------------------------------- + --- erts-10.5 ------------------------------------------------------- + --------------------------------------------------------------------- + + The erts-10.5 application can be applied independently of other + applications on a full OTP 22 installation. + + --- Fixed Bugs and Malfunctions --- + + OTP-15370 Application(s): erts + Related Id(s): ERIERL-353 + + If you set {linger,{true,0}} on a gen_tcp listen + socket, accept a connection on that socket, and then + close the accepted socket, now the linger zero setting + is transferred to the accepted socket. Before this + correction that information was lost and the close + behaviour on the accepted socket incorrect. + + + OTP-15422 Application(s): erts + Related Id(s): OTP-15747 + + Sending ancillary data implemented in OTP-15747 + accidentally left behind test code that caused all UDP + sends to fail on Windows. This has now been fixed. + + + OTP-15827 Application(s): erts + + In the socket nif, used invalid flags when if-def'ing + for supported TCP flags: TCP_MAXSEG and TCP_NODELAY + (the support function). + + + OTP-15830 Application(s): erts + + Fixed memory leaks in experimental socket module. + + + OTP-15836 Application(s): erts, stdlib + Related Id(s): ERL-876 + + re:run() now yields when validating utf8 in a large + subject. + + + OTP-15849 Application(s): erts + Related Id(s): ERL-700 + + Fixed bug in seq_trace:set_token(label,Term) which + could cause VM crash if Term was heap allocated (not an + atom, small integer, local pid or port). Bug exists + since OTP 21.0 when terms other than small integers + were first allowed as labels. + + + OTP-15852 Application(s): erts, kernel + + Extra -mode flags given to erl are ignored with a + warning. + + + OTP-15853 Application(s): erts + Related Id(s): PR-2254 + + Don't loop indefinitely when --enable-pgo is given to + configure, but compiler does not support pgo. + + + OTP-15859 Application(s): erts + Related Id(s): ERL-700 + + Fix seq_trace:print/2 not to raise badarg exception if + label is not a small integer. Bug exists since OTP + 21.0. + + + OTP-15874 Application(s): erts + Related Id(s): ERL-958, PR-2266 + + Fixed hipe_flush_icache_range for non-Linux OS on ARM. + + + OTP-15881 Application(s): erts + + The fix in OTP-15871 was too conservative and disabled + the offending load-time optimization in some cases + where it was safe. + + + OTP-15889 Application(s): erts, stdlib + + Upgraded the ERTS internal PCRE library from version + 8.42 to version 8.43. 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-15901 Application(s): erts + Related Id(s): ERL-960, PR-2272 + + Fix race condition when closing a socket while using + {active,N} on Windows. + + + OTP-15918 Application(s): erts + Related Id(s): ERL-912 + + Allow more than one -config command line option to erl + on Windows to conform with other OS. + + + OTP-15931 Application(s): erts + + Fix so that ERL_FLAGS environment variable does not + interfere with command line arguments. Before this fix + you could write: + + ERL_FLAGS="10" erl +S + + and erlang would start as if +S had been given the + argument 10. + + + OTP-15959 Application(s): erts, stdlib + Related Id(s): ERL-717 + + The bug with ID ERL-717 has been fixed. The functions + io:columns() and io:rows() only worked correctly inside + interactive erlang shells before this fix. These + functions returned {error,enotsup} before this fix even + if stdout and stdin were connected to a terminal when + they were invoked from an escript or a program started + with e.g., erl -noshell. + + + OTP-15971 Application(s): erts + Related Id(s): PR-2333 + + Do not use named label in ethread.c inline assemble. + This allows erts to be compiled using gcc 9.1.0 with + LTO enabled. + + + OTP-15975 Application(s): erts + Related Id(s): ERL-1009 + + erlang:fun_to_list/1 will now escape the module and + function name when necessary. + + + OTP-15978 Application(s): erts + Related Id(s): ERIERL-366 + + process_info(P,binary) would neglect to look through + heap fragments, potentially missing a few binaries + associated with the process. + + + OTP-16037 Application(s): erts + + HiPE is now automatically disabled on systems with + non-glibc implementation (for instance musl). This is + because musl does not provide the API's for + guaranteeing that signals are delivered on the correct + native stack. + + + OTP-16041 Application(s): erts + + Fixed bug triggered if a process is killed during call + to persistent_term:put or persistent_term:erase. + + + OTP-16042 Application(s): erts + + Add units to all memory slogans in the crash dump + documentation. + + + OTP-16058 Application(s): erts + Related Id(s): PR-2382 + + Fix a bug in binary_to_term that would crash the + emulator if a term larger than 16GB was to be decoded. + + + OTP-16060 Application(s): erts + + Fixed bug related to an exiting process sending EXIT + and DOWN signals to remote linked/monitored processes. + Bugs exists since OTP 22.0. + + + --- Improvements and New Features --- + + OTP-15738 Application(s): erts + Related Id(s): PR-2361 + + *** HIGHLIGHT *** + + erlc can now automatically use a compile server to + avoid starting an Erlang system for each file to be + compiled in a multi-file project. See the documentation + for how to enable it. + + + OTP-15747 Application(s): erts, kernel + Related Id(s): ERIERL-294 + + The possibility to send ancillary data, in particular + the TOS field, has been added to gen_udp:send/4,5. + + + OTP-15765 Application(s): erts, sasl + + The net module has been split into 'net' (kernel) and + prim_net (preloaded). + + + OTP-15818 Application(s): erts + + Socket counters now works as expected and can also be + extracted with the (new) info function. + + + OTP-15831 Application(s): erts, stdlib + Related Id(s): ERL-876 + + re:run() now avoids validating utf8 in the subject more + than once in the same call. This validation could + previously be performed multiple times when the global + option was passed. + + + OTP-15905 Application(s): erts + Related Id(s): PR-2270 + + The un-documented function erlang:dist_get_stat/1 now + returns the real value of what the distribution queue + contains instead of a boolean. + + + OTP-15906 Application(s): erts, stdlib + + ETS ordered_set tables with write_concurrency enabled + has got a performance issue fixed. There were no limits + for the values of internal statistics counters before + this fix. This could result in that the data structure + sometimes reacted slowly to a change in how many + parallel processes were using it. + + + OTP-15926 Application(s): erts + Related Id(s): PR-2291 + + Optimize the reception of large distribution messages. + + + OTP-15977 Application(s): erts + Related Id(s): ERIERL-366 + + Binary matching and functions like split_binary/2 will + now create heap binaries when the results are small + enough, reducing the chances of small sub-binaries + keeping large binaries alive. + + + OTP-15983 Application(s): erts + + Fixed rare emulator crash in + instrument:allocations/0-1. + + + OTP-16001 Application(s): erts + Related Id(s): ERIERL-366 + + Ports could pass very small binaries as reference + counted off heap binaries to processes. This could + cause an unnecessary large memory usage and an + unnecessary load on the binary allocator. Small + binaries are now always passed as heap binaries to + processes. + + + OTP-16002 Application(s): erts, stdlib + Related Id(s): ERIERL-366 + + unicode:characters_to_binary() could return very small + binaries as reference counted off heap binaries. This + could cause an unnecessary large memory usage and an + unnecessary load on the binary allocator. Small + binaries are now always returned as heap binaries. + + + OTP-16028 Application(s): erts + Related Id(s): PR-2362 + + Improved erl_nif documentation regarding on_load and + Erlang stub/fallback functions. + + + OTP-16035 Application(s): erts, stdlib + Related Id(s): ERIERL-366 + + New feature ets:info(_, binary) to get information + about all reference counted binaries kept by a table. + This is the same kind of debug information that + process_info(_, binary) returns for a process. + + + Full runtime dependencies of erts-10.5: kernel-6.1, sasl-3.3, + stdlib-3.5 + + + --------------------------------------------------------------------- + --- eunit-2.3.8 ----------------------------------------------------- + --------------------------------------------------------------------- + + The eunit-2.3.8 application can be applied independently of other + applications on a full OTP 22 installation. + + --- Fixed Bugs and Malfunctions --- + + OTP-16000 Application(s): eunit + + Handle get_until request with explicit encoding in the + implementation of the I/O protocol. + + + Full runtime dependencies of eunit-2.3.8: erts-9.0, kernel-5.3, + stdlib-3.4 + + + --------------------------------------------------------------------- + --- ftp-1.0.3 ------------------------------------------------------- + --------------------------------------------------------------------- + + The ftp-1.0.3 application can be applied independently of other + applications on a full OTP 22 installation. + + --- Fixed Bugs and Malfunctions --- + + OTP-16056 Application(s): ftp + + A possibly infinite loop when receiving messages + divided in parts is removed. + + + Full runtime dependencies of ftp-1.0.3: erts-7.0, kernel-6.0, + stdlib-3.5 + + + --------------------------------------------------------------------- + --- inets-7.1 ------------------------------------------------------- + --------------------------------------------------------------------- + + The inets-7.1 application can be applied independently of other + applications on a full OTP 22 installation. + + --- Improvements and New Features --- + + OTP-15893 Application(s): inets + Related Id(s): PR-2206 + + httpd - Accept singel LF as line terminator + + + OTP-16049 Application(s): inets + Related Id(s): ERIERL-395 + + mod_esi will now always propagate the actual HTTP + status code that it answered with, to later + mod-modules, and not in some cases hardcode 200. + + + Full runtime dependencies of inets-7.1: erts-6.0, kernel-3.0, + mnesia-4.12, runtime_tools-1.8.14, ssl-5.3.4, stdlib-3.5 + + + --------------------------------------------------------------------- + --- jinterface-1.10.1 ----------------------------------------------- + --------------------------------------------------------------------- + + The jinterface-1.10.1 application can be applied independently of + other applications on a full OTP 22 installation. + + --- Fixed Bugs and Malfunctions --- + + OTP-16050 Application(s): jinterface + + Replaced deprecated with in documentation. + + + --------------------------------------------------------------------- + --- kernel-6.5 ------------------------------------------------------ + --------------------------------------------------------------------- + + The kernel-6.5 application can be applied independently of other + applications on a full OTP 22 installation. + + --- Fixed Bugs and Malfunctions --- + + OTP-15344 Application(s): kernel + Related Id(s): ERL-947 + + The type specification for gen_sctp:connect/4,5 has + been corrected. + + + OTP-15852 Application(s): erts, kernel + + Extra -mode flags given to erl are ignored with a + warning. + + + OTP-15858 Application(s): kernel + Related Id(s): ERL-700 + + Fix type spec for seq_trace:set_token/2. + + + OTP-15942 Application(s): kernel + Related Id(s): PR-2301 + + logger:compare_levels/2 would fail with a badarg + exception if given the values all or none as any of the + parameters. This is now corrected. + + + OTP-15997 Application(s): kernel + Related Id(s): PR-2331 + + Fix bug where the log file in logger_std_h would not be + closed when the inode of the file changed. This would + in turn cause a file descriptor leak when tools like + logrotate are used. + + + OTP-16022 Application(s): kernel + + Fix a race condition in the debugging function + net_kernel:nodes_info/0. + + + OTP-16023 Application(s): kernel + + Fix race condition when closing a file opened in + compressed or delayed_write mode. + + + --- Improvements and New Features --- + + OTP-15747 Application(s): erts, kernel + Related Id(s): ERIERL-294 + + The possibility to send ancillary data, in particular + the TOS field, has been added to gen_udp:send/4,5. + + + OTP-15850 Application(s): kernel + + If the log file was given with relative path, the + standard logger handler (logger_std_h) would store the + file name with relative path. If the current directory + of the node was later changed, a new file would be + created relative the new current directory, potentially + failing with an enoent if the new directory did not + exist. This is now corrected and logger_std_h always + stores the log file name as an absolute path, + calculated from the current directory at the time of + the handler startup. + + + OTP-15935 Application(s): kernel + Related Id(s): PR-2299 + + Support local sockets with inet:i/0. + + + Full runtime dependencies of kernel-6.5: erts-10.2.5, sasl-3.0, + stdlib-3.5 + + + --------------------------------------------------------------------- + --- megaco-3.18.6 --------------------------------------------------- + --------------------------------------------------------------------- + + The megaco-3.18.6 application can be applied independently of other + applications on a full OTP 22 installation. + + --- Fixed Bugs and Malfunctions --- + + OTP-15882 Application(s): megaco + + Fix various minor issues related to Dialyzer. Mostly + these are dialyzer warnings, but there was also some + minor bugs detected by Dialyzer. + + + Full runtime dependencies of megaco-3.18.6: asn1-3.0, debugger-4.0, + erts-7.0, et-1.5, kernel-3.0, runtime_tools-1.8.14, stdlib-2.5 + + + --------------------------------------------------------------------- + --- mnesia-4.16.1 --------------------------------------------------- + --------------------------------------------------------------------- + + The mnesia-4.16.1 application can be applied independently of other + applications on a full OTP 22 installation. + + --- Fixed Bugs and Malfunctions --- + + OTP-15933 Application(s): mnesia + Related Id(s): ERL-872 + + mnesia:add_table_copy/3 could cause a deadlock if + called when a new node was starting. + + + OTP-15979 Application(s): mnesia + Related Id(s): ERL-768 + + *** POTENTIAL INCOMPATIBILITY *** + + Transactions with sticky locks could with async_asym + transactions be committed in the wrong order, since + asym transaction are spawned on the remote nodes. + + To fix this bug the communication protocol between + mnesia nodes had to be updated, thus mnesia will no + longer be able to connect to nodes earlier than + mnesia-4.14 , OTP-19.0. + + + Full runtime dependencies of mnesia-4.16.1: erts-9.0, kernel-5.3, + stdlib-3.4 + + + --------------------------------------------------------------------- + --- observer-2.9.2 -------------------------------------------------- + --------------------------------------------------------------------- + + The observer-2.9.2 application can be applied independently of other + applications on a full OTP 22 installation. + + --- Fixed Bugs and Malfunctions --- + + OTP-15980 Application(s): observer + Related Id(s): PR-2201 + + Fix bug after a user followed link on a pid from an + expanded term window. + + + --- Improvements and New Features --- + + OTP-15916 Application(s): observer + Related Id(s): ERL-921 + + Improved dark mode colors on Linux. + + + Full runtime dependencies of observer-2.9.2: erts-7.0, et-1.5, + kernel-3.0, runtime_tools-1.8.14, stdlib-3.5, wx-1.2 + + + --------------------------------------------------------------------- + --- os_mon-2.5.1 ---------------------------------------------------- + --------------------------------------------------------------------- + + The os_mon-2.5.1 application can be applied independently of other + applications on a full OTP 22 installation. + + --- Fixed Bugs and Malfunctions --- + + OTP-15778 Application(s): os_mon + + Fix disk_sup to ignore squashfs on Linux when + determining if a mounted filesystem is full or not. + + + OTP-15974 Application(s): os_mon + Related Id(s): ERL-1012 + + Fix bug where cpu_sup:util() always returned 100% on + systems not using gnu libc, for example Alpine OS. + + + Full runtime dependencies of os_mon-2.5.1: erts-6.0, kernel-3.0, + sasl-2.4, stdlib-2.0 + + + --------------------------------------------------------------------- + --- public_key-1.7 -------------------------------------------------- + --------------------------------------------------------------------- + + The public_key-1.7 application can be applied independently of other + applications on a full OTP 22 installation. + + --- Fixed Bugs and Malfunctions --- + + OTP-15870 Application(s): public_key + Related Id(s): ERL-952 + + Support Password based encryption with AES + + + --- Improvements and New Features --- + + OTP-15843 Application(s): public_key + Related Id(s): ERL-915 + + Change dialyzer spec to avoid confusion + + + Full runtime dependencies of public_key-1.7: asn1-3.0, crypto-3.8, + erts-6.0, kernel-3.0, stdlib-3.5 + + + --------------------------------------------------------------------- + --- runtime_tools-1.14 ---------------------------------------------- + --------------------------------------------------------------------- + + The runtime_tools-1.14 application can be applied independently of + other applications on a full OTP 22 installation. + + --- Improvements and New Features --- + + OTP-16044 Application(s): runtime_tools + + Fix dbg:stop_clear/0 to also clear trace events (send + and 'receive'). + + + Full runtime dependencies of runtime_tools-1.14: erts-8.0, + kernel-5.0, mnesia-4.12, stdlib-3.0 + + + --------------------------------------------------------------------- + --- sasl-3.4.1 ------------------------------------------------------ + --------------------------------------------------------------------- + + The sasl-3.4.1 application can be applied independently of other + applications on a full OTP 22 installation. + + --- Improvements and New Features --- + + OTP-15765 Application(s): erts, sasl + + The net module has been split into 'net' (kernel) and + prim_net (preloaded). + + + Full runtime dependencies of sasl-3.4.1: erts-10.2, kernel-5.3, + stdlib-3.4, tools-2.6.14 + + + --------------------------------------------------------------------- + --- snmp-5.4 -------------------------------------------------------- + --------------------------------------------------------------------- + + The snmp-5.4 application can be applied independently of other + applications on a full OTP 22 installation. + + --- Fixed Bugs and Malfunctions --- + + OTP-15932 Application(s): snmp + + Fix various minor issues related to Dialyzer. Mostly + these are dialyzer warnings, but there was also some + minor bugs detected by Dialyzer. + + + --- Improvements and New Features --- + + OTP-10400 Application(s): snmp + Related Id(s): [164], kunagi-253 + + Fixed a dets usage problem detected by dialyzer. + + + OTP-15330 Application(s): snmp + + The function snmp:print_version_info() prints various + version info. For each module a number of items are + printed, such as app vsn and md5 digest. And an attempt + was also made to print "compile time". This used to be + available in the module_info for each module, but has + now been removed. + + + OTP-15331 Application(s): snmp + + The use of the deprecated random module has been + replaced the with rand module. + + + OTP-15332 Application(s): snmp + + Removed use of the deprecated function + erlang:get_stacktrace(). Instead make use of the 'catch + Class:Error:Stacktrace' feature. + + + Full runtime dependencies of snmp-5.4: crypto-3.3, erts-6.0, + kernel-3.0, mnesia-4.12, runtime_tools-1.8.14, stdlib-2.5 + + + --------------------------------------------------------------------- + --- ssh-4.8 --------------------------------------------------------- + --------------------------------------------------------------------- + + The ssh-4.8 application can be applied independently of other + applications on a full OTP 22 installation. + + --- Fixed Bugs and Malfunctions --- + + OTP-15820 Application(s): ssh + + Fixed wrong type definition for the daemon option + subsystems. + + + OTP-15962 Application(s): ssh + Related Id(s): ERL-990 + + Fixed a possible SSH logging crash if there was a + problem in an early stage of session setup. + + + --- Improvements and New Features --- + + OTP-15395 Application(s): ssh + + The documentation for the modules ssh_connection, + ssh_sftp and ssh_sftpd are now generated from the + -spec:s. + + + OTP-15876 Application(s): ssh + Related Id(s): PR-2255, PR-2256 + + Internal cleanup including removal of the internal file + ssh_userauth.hrl. + + + OTP-15929 Application(s): ssh + Related Id(s): PR-2297 + + Removed unused definitions in ssh.hrl. + + + OTP-15984 Application(s): ssh + + Removed unused fields in the internal #connection{} + record. + + + OTP-16040 Application(s): ssh + + To get information of a connection_ref() from for + example ssh:connect/3, there was previously one + function available namely ssh:connection_info/2. This + ticket adds ssh:connection_info/1 which returns all + information. + + For daemons (servers) started with for example + ssh:daemon/2 the function ssh:daemon_info/1 returning + all information was available. This ticket adds + ssh:daemon_info/2 which returns only the information + specified in the second argument. + + The info of connections and of daemons now also + includes the item 'options'. Only those options that + does not have their default values are returned. + + For a connection also the items 'algorithms' and + 'channels' are added. + + + Full runtime dependencies of ssh-4.8: crypto-4.5, erts-9.0, + kernel-5.3, public_key-1.6.1, stdlib-3.4.1 + + + --------------------------------------------------------------------- + --- ssl-9.4 --------------------------------------------------------- + --------------------------------------------------------------------- + + The ssl-9.4 application can be applied independently of other + applications on a full OTP 22 installation. + + --- Fixed Bugs and Malfunctions --- + + OTP-15328 Application(s): ssl + Related Id(s): ERIERL-379 + + Handling of zero size fragments in TLS could cause an + infinite loop. This has now been corrected. + + + OTP-15807 Application(s): ssl + Related Id(s): ERL-920 + + DTLS record check needs to consider that a resent hello + message can have a different version than the + negotiated. + + + --- Improvements and New Features --- + + OTP-15431 Application(s): ssl + + *** HIGHLIGHT *** + + Basic support for TLS 1.3 Client for experimental use. + For more information see the Standards Compliance + chapter of the User's Guide. + + + OTP-15823 Application(s): ssl + Related Id(s): ERL-934, ERL-938 + + Correct solution for retaining tcp flow control + OTP-15802 (ERL-934) as to not break ssl:recv as + reported in (ERL-938) + + + OTP-15851 Application(s): ssl + Related Id(s): PR-2235 + + Enhance dialyzer specs to reflect implementation better + and avoid dialyzer warnings for the user that wants to + use TLS with unix domain sockets. + + + OTP-15854 Application(s): ssl + + Add support for ECDSA signature algorithms in TLS 1.3. + + + OTP-16027 Application(s): ssl + + Correct error handling of TLS downgrade, possible + return values form ssl:close/2 when downgrading is {ok, + Port} or {error, Reason}, it could happen that only ok + was returned instead of {error, closed} when downgrade + failed due to that the peer closed the TCP connection. + + + Full runtime dependencies of ssl-9.4: crypto-4.2, erts-10.0, + inets-5.10.7, kernel-6.0, public_key-1.5, stdlib-3.5 + + + --------------------------------------------------------------------- + --- stdlib-3.10 ----------------------------------------------------- + --------------------------------------------------------------------- + + Note! The stdlib-3.10 application *cannot* be applied independently + of other applications on an arbitrary OTP 22 installation. + + On a full OTP 22 installation, also the following runtime + dependency has to be satisfied: + -- erts-10.5 (first satisfied in OTP 22.1) + + + --- Fixed Bugs and Malfunctions --- + + OTP-15836 Application(s): erts, stdlib + Related Id(s): ERL-876 + + re:run() now yields when validating utf8 in a large + subject. + + + OTP-15889 Application(s): erts, stdlib + + Upgraded the ERTS internal PCRE library from version + 8.42 to version 8.43. 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-15959 Application(s): erts, stdlib + Related Id(s): ERL-717 + + The bug with ID ERL-717 has been fixed. The functions + io:columns() and io:rows() only worked correctly inside + interactive erlang shells before this fix. These + functions returned {error,enotsup} before this fix even + if stdout and stdin were connected to a terminal when + they were invoked from an escript or a program started + with e.g., erl -noshell. + + + OTP-15987 Application(s): stdlib + Related Id(s): ERL-1029 + + Fixed handling of ".." and "@" in wildcards. ".." would + only work when preceded by a literal pattern such as in + "a/..", not when preceded by wildcard characters such + as in "*/..". The combination "@/.." was also broken, + and in addition "@" in a pattern could degrade + performance of the wildcard matching. + + + OTP-15992 Application(s): stdlib + Related Id(s): PR-2322 + + Make sure ets:fun2ms() can handle ++/2 in the head of + functions when called from the shell. + + + --- Improvements and New Features --- + + OTP-15510 Application(s): stdlib + + *** POTENTIAL INCOMPATIBILITY *** + + Debugging of time-outs in gen_statem has been improved. + Starting a time-out is now logged in sys:log and + sys:trace. Running time-outs are visible in server + crash logs, and with sys:get_status. Due to this system + events {start_timer, Action, State} and {insert_timout, + Event, State} have been added, which may surprise tools + that rely on the format of these events. + + New features: The EventContent of a running time-out + can be updated with {TimeoutType, update, + NewEventContent}. Running time-outs can be cancelled + with {TimeoutType, cancel} which is more readable than + using Time = infinity. + + + OTP-15831 Application(s): erts, stdlib + Related Id(s): ERL-876 + + re:run() now avoids validating utf8 in the subject more + than once in the same call. This validation could + previously be performed multiple times when the global + option was passed. + + + OTP-15906 Application(s): erts, stdlib + + ETS ordered_set tables with write_concurrency enabled + has got a performance issue fixed. There were no limits + for the values of internal statistics counters before + this fix. This could result in that the data structure + sometimes reacted slowly to a change in how many + parallel processes were using it. + + + OTP-15927 Application(s): stdlib + + The ordsets:union/1 is now faster when passed a long + list of ordsets. + + + OTP-16002 Application(s): erts, stdlib + Related Id(s): ERIERL-366 + + unicode:characters_to_binary() could return very small + binaries as reference counted off heap binaries. This + could cause an unnecessary large memory usage and an + unnecessary load on the binary allocator. Small + binaries are now always returned as heap binaries. + + + OTP-16006 Application(s): stdlib + Related Id(s): ERL-992 + + Display a more meaningful error message when a bad I/O + server is used in a script written in Erlang (escript). + + + OTP-16035 Application(s): erts, stdlib + Related Id(s): ERIERL-366 + + New feature ets:info(_, binary) to get information + about all reference counted binaries kept by a table. + This is the same kind of debug information that + process_info(_, binary) returns for a process. + + + OTP-16038 Application(s): stdlib + Related Id(s): PR-2366 + + Corrected ETS documentation about the behavior of + compiled match specifications when serialized through + external format. + + + Full runtime dependencies of stdlib-3.10: compiler-5.0, crypto-3.3, + erts-10.5, kernel-6.0, sasl-3.0 + + + --------------------------------------------------------------------- + --- syntax_tools-2.2.1 ---------------------------------------------- + --------------------------------------------------------------------- + + The syntax_tools-2.2.1 application can be applied independently of + other applications on a full OTP 22 installation. + + --- Fixed Bugs and Malfunctions --- + + OTP-16012 Application(s): syntax_tools + Related Id(s): PR-2348 + + Add missing calls to erl_syntax:unwrap/1. The nodes + concerned represent names and values of maps and map + types. + + + Full runtime dependencies of syntax_tools-2.2.1: compiler-7.0, + erts-9.0, kernel-5.0, stdlib-3.4 + + + --------------------------------------------------------------------- + --- tools-3.2.1 ----------------------------------------------------- + --------------------------------------------------------------------- + + The tools-3.2.1 application can be applied independently of other + applications on a full OTP 22 installation. + + --- Fixed Bugs and Malfunctions --- + + OTP-15813 Application(s): tools + Related Id(s): ERL-943 + + cover would fail to start if two processes tried to + start it at the exact same time. + + + Full runtime dependencies of tools-3.2.1: compiler-5.0, erts-9.1, + kernel-5.4, runtime_tools-1.8.14, stdlib-3.4 + + + --------------------------------------------------------------------- + --- wx-1.8.9 -------------------------------------------------------- + --------------------------------------------------------------------- + + The wx-1.8.9 application can be applied independently of other + applications on a full OTP 22 installation. + + --- Fixed Bugs and Malfunctions --- + + OTP-15883 Application(s): wx + Related Id(s): PR-2261 + + Fix a driver bug that could crashes when allocating + memory. + + + Full runtime dependencies of wx-1.8.9: erts-6.0, kernel-3.0, + stdlib-2.0 + + + --------------------------------------------------------------------- + --- xmerl-1.3.22 ---------------------------------------------------- + --------------------------------------------------------------------- + + The xmerl-1.3.22 application can be applied independently of other + applications on a full OTP 22 installation. + + --- Fixed Bugs and Malfunctions --- + + OTP-15826 Application(s): xmerl + + xmerl_sax_parser crashed during charset detection when + the xml declarations attribute values was missing the + closing quotation (' or "). + + + Full runtime dependencies of xmerl-1.3.22: erts-6.0, kernel-3.0, + stdlib-2.5 + + + --------------------------------------------------------------------- + --------------------------------------------------------------------- + --------------------------------------------------------------------- + -- cgit v1.2.3