diff --git a/erts/doc/notes.md b/erts/doc/notes.md index 4889dd25fe3e..7ad04b12b698 100644 --- a/erts/doc/notes.md +++ b/erts/doc/notes.md @@ -450,6 +450,39 @@ This document describes the changes made to the ERTS application. [PR-7809]: https://github.com/erlang/otp/pull/7809 [PR-7977]: https://github.com/erlang/otp/pull/7977 +## Erts 14.2.5.4 + +### Fixed Bugs and Malfunctions + +* A bug has been fixed where receiving an SCTP message with \`gen_sctp\` could waste the first fragments of a message and only deliver the last fragment. + + This happened with low probability when the OS signaled that the socket was ready for reading in combination with an internal time-out retry. + + A bug has been fixed with a lingering time-out from after an SCTP connect that could stop the flow of incoming messages on an active \`gen_tcp\` socket. + + Own Id: OTP-19235 Aux Id: ERIERL-1133, PR-8837 +* On Windows, successive failed socket calls caused socket to become "uninitialized". + + Own Id: OTP-19251 Aux Id: GH-8853 +* The socket framework fails to start on a IPv6-only Windows machine. + + Own Id: OTP-19254 Aux Id: GH-8848 +* An boolean option \`non_block_send\` for SCTP, has ben added to be able to achieve the old behaviour to avoid blocking send operations by passing the OS network stack error message (\`\{error,eagain\}\` through. + + Own Id: OTP-19258 Aux Id: OTP-19061, ERIERL-1134 +* The call \`gen_tcp:send/2\` could hang indefinitely despite having set the \`send_timeout\` option for the following unfortunate combination of circumstances: + + \* The socket has to be in passive mode. * All output buffers had to be filled util the \`high_watermark\` was hit, causing the \`gen_tcp:send/2\` operation to block. * While the send operation was blocked, a \`gen_tcp:recv/2,3\` call had to be done from a different process. It had to block, waiting for data for a while before completing the operation, and the received packet had to fill at least 75% of the receive buffer. + + Under these circumstances he information that a send operation was waiting got lost, so the send operation that blocked in the first placed would never return. The data it had would be sent, though, and send operations from other processes, still work. + + This bug has been fixed. + + Own Id: OTP-19267 Aux Id: GH-6455, OTP-18520, ERIERL-1138, PR-8892 +* Fixed beam crash that could happen if resetting `call_time` or `call_memory` trace counters of a function while it is called. Bug exists since OTP R16. + + Own Id: OTP-19269 Aux Id: GH-8835, PR-8897 + ## Erts 14.2.5.3 ### Fixed Bugs and Malfunctions diff --git a/erts/emulator/test/trace_call_time_SUITE.erl b/erts/emulator/test/trace_call_time_SUITE.erl index bf14505dcbcb..0cc51e05a206 100644 --- a/erts/emulator/test/trace_call_time_SUITE.erl +++ b/erts/emulator/test/trace_call_time_SUITE.erl @@ -1,7 +1,7 @@ %% %% %CopyrightBegin% %% -%% Copyright Ericsson AB 2011-2023. All Rights Reserved. +%% Copyright Ericsson AB 2011-2024. All Rights Reserved. %% %% Licensed under the Apache License, Version 2.0 (the "License"); %% you may not use this file except in compliance with the License. diff --git a/erts/test/parallel_messages_SUITE_data/visualize_throughput.html b/erts/test/parallel_messages_SUITE_data/visualize_throughput.html index d3e68e45bbbd..0490e52596ef 100644 --- a/erts/test/parallel_messages_SUITE_data/visualize_throughput.html +++ b/erts/test/parallel_messages_SUITE_data/visualize_throughput.html @@ -4,7 +4,7 @@ - + diff --git a/lib/common_test/doc/notes.md b/lib/common_test/doc/notes.md index 3b0a2fed0266..ecbc3cc13b06 100644 --- a/lib/common_test/doc/notes.md +++ b/lib/common_test/doc/notes.md @@ -111,6 +111,20 @@ limitations under the License. [GH-7972]: https://github.com/erlang/otp/issues/7972 [PR-8112]: https://github.com/erlang/otp/pull/8112 +## Common_Test 1.26.2.1 + +### Fixed Bugs and Malfunctions + +* With this change, HTML reports include jQuery version 3.7.1. + + Own Id: OTP-19252 Aux Id: PR-8858 +* With this change, jquery and tablesorter licenses are added to COPYRIGHT file. Also tablesorter is updated to version 2.32. + + Own Id: OTP-19265 Aux Id: PR-8876 +* Fixed a bug where the sum of testcases' execution time in HTML logs was sometimes miscalculated, and the table was not fully printed. + + Own Id: OTP-19284 Aux Id: ERIERL-1093, PR-8909 + ## Common_Test 1.26.2 ### Fixed Bugs and Malfunctions diff --git a/lib/compiler/doc/notes.md b/lib/compiler/doc/notes.md index f2c164ce2675..ad5aef1fecc4 100644 --- a/lib/compiler/doc/notes.md +++ b/lib/compiler/doc/notes.md @@ -296,6 +296,14 @@ This document describes the changes made to the Compiler application. [PR-8090]: https://github.com/erlang/otp/pull/8090 [PR-8205]: https://github.com/erlang/otp/pull/8205 +## Compiler 8.4.3.2 + +### Fixed Bugs and Malfunctions + +* Fixed a bug where bogus code was generated for consecutive calls to erlang:setelement/2, potentially crashing the emulator. + + Own Id: OTP-19270 Aux Id: GH-8783 PR-8898 + ## Compiler 8.4.3.1 ### Fixed Bugs and Malfunctions diff --git a/lib/crypto/doc/notes.md b/lib/crypto/doc/notes.md index 020d6db78fec..067a5148f971 100644 --- a/lib/crypto/doc/notes.md +++ b/lib/crypto/doc/notes.md @@ -99,6 +99,17 @@ This document describes the changes made to the Crypto application. [PR-8168]: https://github.com/erlang/otp/pull/8168 [PR-8233]: https://github.com/erlang/otp/pull/8233 +## Crypto 5.4.2.2 + +### Fixed Bugs and Malfunctions + +* crypto built with `--enable-fips` will now accept an OpenSSL 3 lib without fips provider as long as fips mode is not enabled. + + Own Id: OTP-19212 Aux Id: GH-8562, PR-8762 +* `crypto:strong_rand_bytes/2` fixed to work on Ubuntu pro with installed FIPS support. + + Own Id: OTP-19223 Aux Id: PR-8800, GH-8769 + ## Crypto 5.4.2.1 ### Improvements and New Features diff --git a/lib/inets/doc/notes.md b/lib/inets/doc/notes.md index 28a3ac9548b2..030943c70175 100644 --- a/lib/inets/doc/notes.md +++ b/lib/inets/doc/notes.md @@ -92,6 +92,19 @@ limitations under the License. [PR-8029]: https://github.com/erlang/otp/pull/8029 [PR-8026]: https://github.com/erlang/otp/pull/8026 +## Inets 9.1.0.1 + +### Fixed Bugs and Malfunctions + +* With this change, HTTP client, when returning an asynchronous request, now correctly takes into account \`OptionRequest - full_result\` + + \*** POTENTIAL INCOMPATIBILITY *** + + Own Id: OTP-19158 +* With this change, synchronous httpc:request now timeouts after \`Timeout\` specified in \`HttpOption \{timeout, Timeout\}\` + + Own Id: OTP-19221 Aux Id: ERIERL-1091, PR-8788, PR-8801 + ## Inets 9.1 ### Fixed Bugs and Malfunctions diff --git a/lib/inets/src/http_client/httpc_internal.hrl b/lib/inets/src/http_client/httpc_internal.hrl index 9114fda3352b..d69183ae42d8 100644 --- a/lib/inets/src/http_client/httpc_internal.hrl +++ b/lib/inets/src/http_client/httpc_internal.hrl @@ -1,7 +1,7 @@ %% %% %CopyrightBegin% %% -%% Copyright Ericsson AB 2005-2023. All Rights Reserved. +%% Copyright Ericsson AB 2005-2024. All Rights Reserved. %% %% Licensed under the Apache License, Version 2.0 (the "License"); %% you may not use this file except in compliance with the License. diff --git a/lib/kernel/doc/notes.md b/lib/kernel/doc/notes.md index a81adec91d00..a5b214b33b5d 100644 --- a/lib/kernel/doc/notes.md +++ b/lib/kernel/doc/notes.md @@ -292,6 +292,21 @@ This document describes the changes made to the Kernel application. [#6724]: https://github.com/erlang/otp/issues/6724 [PR-8396]: https://github.com/erlang/otp/pull/8396 +## Kernel 9.2.4.3 + +### Fixed Bugs and Malfunctions + +* A bug has been fixed where receiving an SCTP message with \`gen_sctp\` could waste the first fragments of a message and only deliver the last fragment. + + This happened with low probability when the OS signaled that the socket was ready for reading in combination with an internal time-out retry. + + A bug has been fixed with a lingering time-out from after an SCTP connect that could stop the flow of incoming messages on an active \`gen_tcp\` socket. + + Own Id: OTP-19235 Aux Id: ERIERL-1133, PR-8837 +* An boolean option \`non_block_send\` for SCTP, has ben added to be able to achieve the old behaviour to avoid blocking send operations by passing the OS network stack error message (\`\{error,eagain\}\` through. + + Own Id: OTP-19258 Aux Id: OTP-19061, ERIERL-1134 + ## Kernel 9.2.4.2 ### Fixed Bugs and Malfunctions diff --git a/lib/public_key/doc/notes.md b/lib/public_key/doc/notes.md index c3fc63f89099..4003d86f8bad 100644 --- a/lib/public_key/doc/notes.md +++ b/lib/public_key/doc/notes.md @@ -131,6 +131,14 @@ limitations under the License. [PR-8026]: https://github.com/erlang/otp/pull/8026 [PR-8233]: https://github.com/erlang/otp/pull/8233 +## Public_Key 1.15.1.3 + +### Improvements and New Features + +* Do not hide crypto badarg reason, this error handling enhancement facilitates debugging. These kind of runtime errors are not documented and should never be relied on for matching, they are intended for catching input errors early. + + Own Id: OTP-19238 Aux Id: PR-8831 + ## Public_Key 1.15.1.2 ### Fixed Bugs and Malfunctions diff --git a/lib/ssh/doc/notes.md b/lib/ssh/doc/notes.md index 716b0c7aa842..ec09e49bbbac 100644 --- a/lib/ssh/doc/notes.md +++ b/lib/ssh/doc/notes.md @@ -77,6 +77,20 @@ limitations under the License. [PR-7845]: https://github.com/erlang/otp/pull/7845 [PR-8026]: https://github.com/erlang/otp/pull/8026 +## Ssh 5.1.4.3 + +### Fixed Bugs and Malfunctions + +* With this change, a race condition is removed from ssh client connection setup procedure. + + Own Id: OTP-19124 Aux Id: GH-7550, PR-8766 +* With this change, ssh:connect is not affected by presence of EXIT message in queue. + + Own Id: OTP-19246 Aux Id: GH-8223, PR-8854 +* With this change, ssh appends \{active, false\} option after socket options received from user - so that false value is always used. + + Own Id: OTP-19247 Aux Id: PR-8226 + ## Ssh 5.1.4.2 ### Fixed Bugs and Malfunctions diff --git a/lib/ssh/src/ssh_connect.hrl b/lib/ssh/src/ssh_connect.hrl index c0ed00725c31..eaba5acb7923 100644 --- a/lib/ssh/src/ssh_connect.hrl +++ b/lib/ssh/src/ssh_connect.hrl @@ -1,7 +1,7 @@ %% %% %CopyrightBegin% %% -%% Copyright Ericsson AB 2005-2021. All Rights Reserved. +%% Copyright Ericsson AB 2005-2024. All Rights Reserved. %% %% Licensed under the Apache License, Version 2.0 (the "License"); %% you may not use this file except in compliance with the License. diff --git a/lib/ssh/test/ssh_sup_SUITE.erl b/lib/ssh/test/ssh_sup_SUITE.erl index ca85bcd99a7e..e6245d65f1ad 100644 --- a/lib/ssh/test/ssh_sup_SUITE.erl +++ b/lib/ssh/test/ssh_sup_SUITE.erl @@ -1,7 +1,7 @@ %% %% %CopyrightBegin% %% -%% Copyright Ericsson AB 2015-2023. All Rights Reserved. +%% Copyright Ericsson AB 2015-2024. All Rights Reserved. %% %% Licensed under the Apache License, Version 2.0 (the "License"); %% you may not use this file except in compliance with the License. diff --git a/lib/ssl/doc/notes.md b/lib/ssl/doc/notes.md index b48745237488..6b93a8469c65 100644 --- a/lib/ssl/doc/notes.md +++ b/lib/ssl/doc/notes.md @@ -185,6 +185,23 @@ This document describes the changes made to the SSL application. [PR-8250]: https://github.com/erlang/otp/pull/8250 [PR-8255]: https://github.com/erlang/otp/pull/8255 +## SSL 11.1.4.4 + +### Fixed Bugs and Malfunctions + +* Starting from TLS-1.3 some server handshake alerts might arrive after ssl:connection/2,3,4 has returned. If the socket is in active mode the controlling process will get the alert message, but passive sockets would only get \{error, closed\} on next call to ssl:recv/2,3 or ssl/setopts/2. Passive sockets calls will now return \{error, error_alert()\} instead. + + Own Id: OTP-19236 Aux Id: PR-8261 +* Refactor trying to also make some optimizations introduced a bug in signature algorithms checks in OTP-26.2.1. This could manifest itself in not being able to negotiate connections using certificates needing to use some TLS-1.2 compatibility legacy signature schemes. + + Own Id: OTP-19249 Aux Id: ERIERL-1137, PR-8866 +* Servers configured to support only version (pre TLS-1.2) should ignore hello version extension, as it is an unknown extension to them, this will result in that new clients that do not support the old server version will get an insufficient security alert from the server and not a protocol version alert, this is consistent with how old servers not able to support higher protocol versions work. + + Own Id: OTP-19257 Aux Id: ERIERL-1131 +* Correct timeout handling for termination code run for own alerts, so that intended timeout is used instead of falling back to OS TCP-stack timeout that is unreasonably long on some platforms. + + Own Id: OTP-19274 Aux Id: PR-8901 + ## SSL 11.1.4.3 ### Fixed Bugs and Malfunctions diff --git a/lib/ssl/test/openssl_tls_1_3_version_SUITE.erl b/lib/ssl/test/openssl_tls_1_3_version_SUITE.erl index f7032828ae2f..3a422e33a852 100644 --- a/lib/ssl/test/openssl_tls_1_3_version_SUITE.erl +++ b/lib/ssl/test/openssl_tls_1_3_version_SUITE.erl @@ -1,7 +1,7 @@ %% %% %CopyrightBegin% %% -%% Copyright Ericsson AB 2019-2022. All Rights Reserved. +%% Copyright Ericsson AB 2019-2024. All Rights Reserved. %% %% Licensed under the Apache License, Version 2.0 (the "License"); %% you may not use this file except in compliance with the License. diff --git a/lib/ssl/test/ssl_renegotiate_SUITE.erl b/lib/ssl/test/ssl_renegotiate_SUITE.erl index bbf2e1ad592b..6f197741014b 100644 --- a/lib/ssl/test/ssl_renegotiate_SUITE.erl +++ b/lib/ssl/test/ssl_renegotiate_SUITE.erl @@ -1,7 +1,7 @@ %% %% %CopyrightBegin% %% -%% Copyright Ericsson AB 2019-2023. All Rights Reserved. +%% Copyright Ericsson AB 2019-2024. All Rights Reserved. %% %% Licensed under the Apache License, Version 2.0 (the "License"); %% you may not use this file except in compliance with the License. diff --git a/lib/stdlib/doc/notes.md b/lib/stdlib/doc/notes.md index 2a5fc8efca0e..392a40e08af0 100644 --- a/lib/stdlib/doc/notes.md +++ b/lib/stdlib/doc/notes.md @@ -505,6 +505,17 @@ This document describes the changes made to the STDLIB application. [PR-8205]: https://github.com/erlang/otp/pull/8205 [PR-8111]: https://github.com/erlang/otp/pull/8111 +## STDLIB 5.2.3.2 + +### Fixed Bugs and Malfunctions + +* With this change, shutdown procedure handles a race condition between supervisor executing a shutdown and child process termination from other reason. + + Own Id: OTP-19256 Aux Id: PR-8780 +* With this change, uri_string:normalize assumes empty path (do not crash) when no path is provided in the URI map. + + Own Id: OTP-19266 Aux Id: ERIERL-1127, PR-8890 + ## STDLIB 5.2.3.1 ### Fixed Bugs and Malfunctions diff --git a/lib/stdlib/test/ets_SUITE_data/visualize_throughput.html b/lib/stdlib/test/ets_SUITE_data/visualize_throughput.html index 140568bf690c..c8fb4dc0c14e 100644 --- a/lib/stdlib/test/ets_SUITE_data/visualize_throughput.html +++ b/lib/stdlib/test/ets_SUITE_data/visualize_throughput.html @@ -4,7 +4,7 @@ - + diff --git a/lib/xmerl/doc/notes.md b/lib/xmerl/doc/notes.md index c88c75329542..f7d32a77628d 100644 --- a/lib/xmerl/doc/notes.md +++ b/lib/xmerl/doc/notes.md @@ -76,6 +76,14 @@ This document describes the changes made to the Xmerl application. [PR-7942]: https://github.com/erlang/otp/pull/7942 [PR-8026]: https://github.com/erlang/otp/pull/8026 +## Xmerl 1.3.34.1 + +### Fixed Bugs and Malfunctions + +* Corrected export functions from internal structure to XML so xmlText items of type cdata are handled correctly. They were just exported as normal text instead of output in a CDATA section. + + Own Id: OTP-19217 Aux Id: ERIERL-1104 + ## Xmerl 1.3.34 ### Fixed Bugs and Malfunctions diff --git a/otp_versions.table b/otp_versions.table index 3c8c9e155db6..8997e8e0512d 100644 --- a/otp_versions.table +++ b/otp_versions.table @@ -2,6 +2,7 @@ OTP-27.1.1 : common_test-1.27.2 erts-15.1.1 public_key-1.16.3 ssl-11.2.3 stdlib- OTP-27.1 : asn1-5.3.1 common_test-1.27.1 compiler-8.5.2 crypto-5.5.1 dialyzer-5.2.1 diameter-2.4.1 edoc-1.3.2 erts-15.1 ftp-1.2.3 inets-9.3 kernel-10.1 odbc-2.15 public_key-1.16.2 runtime_tools-2.1.1 snmp-5.17 ssh-5.2.2 ssl-11.2.2 stdlib-6.1 syntax_tools-3.2.1 tftp-1.2.1 tools-4.1 wx-2.4.3 xmerl-2.1 # debugger-5.4 eldap-1.2.13 erl_interface-5.5.2 et-1.7.1 eunit-2.9.1 jinterface-1.14.1 megaco-4.6 mnesia-4.23.2 observer-2.16 os_mon-2.10 parsetools-2.6 reltool-1.0.1 sasl-4.2.2 : OTP-27.0.1 : compiler-8.5.1 edoc-1.3.1 erts-15.0.1 kernel-10.0.1 public_key-1.16.1 ssh-5.2.1 ssl-11.2.1 stdlib-6.0.1 # asn1-5.3 common_test-1.27 crypto-5.5 debugger-5.4 dialyzer-5.2 diameter-2.4 eldap-1.2.13 erl_interface-5.5.2 et-1.7.1 eunit-2.9.1 ftp-1.2.2 inets-9.2 jinterface-1.14.1 megaco-4.6 mnesia-4.23.2 observer-2.16 odbc-2.14.3 os_mon-2.10 parsetools-2.6 reltool-1.0.1 runtime_tools-2.1 sasl-4.2.2 snmp-5.16 syntax_tools-3.2 tftp-1.2 tools-4.0 wx-2.4.2 xmerl-2.0 : OTP-27.0 : asn1-5.3 common_test-1.27 compiler-8.5 crypto-5.5 debugger-5.4 dialyzer-5.2 diameter-2.4 edoc-1.3 eldap-1.2.13 erl_interface-5.5.2 erts-15.0 et-1.7.1 eunit-2.9.1 ftp-1.2.2 inets-9.2 jinterface-1.14.1 kernel-10.0 megaco-4.6 mnesia-4.23.2 observer-2.16 odbc-2.14.3 os_mon-2.10 parsetools-2.6 public_key-1.16 reltool-1.0.1 runtime_tools-2.1 sasl-4.2.2 snmp-5.16 ssh-5.2 ssl-11.2 stdlib-6.0 syntax_tools-3.2 tftp-1.2 tools-4.0 wx-2.4.2 xmerl-2.0 # : +OTP-26.2.5.4 : common_test-1.26.2.1 compiler-8.4.3.2 crypto-5.4.2.2 erts-14.2.5.4 inets-9.1.0.1 kernel-9.2.4.3 public_key-1.15.1.3 ssh-5.1.4.3 ssl-11.1.4.4 stdlib-5.2.3.2 xmerl-1.3.34.1 # asn1-5.2.2 debugger-5.3.4 dialyzer-5.1.3 diameter-2.3.2.2 edoc-1.2.1 eldap-1.2.12 erl_docgen-1.5.2 erl_interface-5.5.1 et-1.7 eunit-2.9 ftp-1.2.1.1 jinterface-1.14 megaco-4.5 mnesia-4.23.1 observer-2.15.1 odbc-2.14.2 os_mon-2.9.1 parsetools-2.5 reltool-1.0 runtime_tools-2.0.1 sasl-4.2.1 snmp-5.15 syntax_tools-3.1 tftp-1.1.1 tools-3.6 wx-2.4.1 : OTP-26.2.5.3 : compiler-8.4.3.1 diameter-2.3.2.2 erts-14.2.5.3 ftp-1.2.1.1 kernel-9.2.4.2 public_key-1.15.1.2 ssh-5.1.4.2 ssl-11.1.4.3 # asn1-5.2.2 common_test-1.26.2 crypto-5.4.2.1 debugger-5.3.4 dialyzer-5.1.3 edoc-1.2.1 eldap-1.2.12 erl_docgen-1.5.2 erl_interface-5.5.1 et-1.7 eunit-2.9 inets-9.1 jinterface-1.14 megaco-4.5 mnesia-4.23.1 observer-2.15.1 odbc-2.14.2 os_mon-2.9.1 parsetools-2.5 reltool-1.0 runtime_tools-2.0.1 sasl-4.2.1 snmp-5.15 stdlib-5.2.3.1 syntax_tools-3.1 tftp-1.1.1 tools-3.6 wx-2.4.1 xmerl-1.3.34 : OTP-26.2.5.2 : crypto-5.4.2.1 erts-14.2.5.2 ssl-11.1.4.2 stdlib-5.2.3.1 # asn1-5.2.2 common_test-1.26.2 compiler-8.4.3 debugger-5.3.4 dialyzer-5.1.3 diameter-2.3.2.1 edoc-1.2.1 eldap-1.2.12 erl_docgen-1.5.2 erl_interface-5.5.1 et-1.7 eunit-2.9 ftp-1.2.1 inets-9.1 jinterface-1.14 kernel-9.2.4.1 megaco-4.5 mnesia-4.23.1 observer-2.15.1 odbc-2.14.2 os_mon-2.9.1 parsetools-2.5 public_key-1.15.1.1 reltool-1.0 runtime_tools-2.0.1 sasl-4.2.1 snmp-5.15 ssh-5.1.4.1 syntax_tools-3.1 tftp-1.1.1 tools-3.6 wx-2.4.1 xmerl-1.3.34 : OTP-26.2.5.1 : diameter-2.3.2.1 erts-14.2.5.1 kernel-9.2.4.1 public_key-1.15.1.1 ssh-5.1.4.1 ssl-11.1.4.1 # asn1-5.2.2 common_test-1.26.2 compiler-8.4.3 crypto-5.4.2 debugger-5.3.4 dialyzer-5.1.3 edoc-1.2.1 eldap-1.2.12 erl_docgen-1.5.2 erl_interface-5.5.1 et-1.7 eunit-2.9 ftp-1.2.1 inets-9.1 jinterface-1.14 megaco-4.5 mnesia-4.23.1 observer-2.15.1 odbc-2.14.2 os_mon-2.9.1 parsetools-2.5 reltool-1.0 runtime_tools-2.0.1 sasl-4.2.1 snmp-5.15 stdlib-5.2.3 syntax_tools-3.1 tftp-1.1.1 tools-3.6 wx-2.4.1 xmerl-1.3.34 :