diff options
author | Loïc Hoguin <[email protected]> | 2024-11-06 13:13:31 +0100 |
---|---|---|
committer | Loïc Hoguin <[email protected]> | 2024-11-06 13:14:10 +0100 |
commit | c759fb1251b5ea45fc2f930d7bef77bc4ac5d235 (patch) | |
tree | 7ef0c37d2dab53fdfa0470e0a1f4ed531713216b | |
parent | 7bb66c0ce1ccde4cb68a6658a2e94d220712618a (diff) | |
download | ci.erlang.mk-c759fb1251b5ea45fc2f930d7bef77bc4ac5d235.tar.gz ci.erlang.mk-c759fb1251b5ea45fc2f930d7bef77bc4ac5d235.tar.bz2 ci.erlang.mk-c759fb1251b5ea45fc2f930d7bef77bc4ac5d235.zip |
OTP-27.1
-rw-r--r-- | early-plugins.mk | 2 | ||||
-rw-r--r-- | release-notes/OTP-27.1.README.txt | 1038 |
2 files changed, 1039 insertions, 1 deletions
diff --git a/early-plugins.mk b/early-plugins.mk index feedb1e..3f362a1 100644 --- a/early-plugins.mk +++ b/early-plugins.mk @@ -21,7 +21,7 @@ OTP-23 := OTP-23.0.4 OTP-23.1.5 OTP-23.2.7.3 OTP-23.3.4.20 OTP-24 := OTP-24.0.6 OTP-24.1.7 OTP-24.2.2 OTP-24.3.4.16 OTP-25 := OTP-25.0.4 OTP-25.1.2.1 OTP-25.2.3 OTP-25.3.2.10 OTP-26 := OTP-26.0.2 OTP-26.1.2 OTP-26.2.3 -OTP-27 := OTP-27.0.1 +OTP-27 := OTP-27.0.1 OTP-27.1 OTP-18+ := $(OTP-18) $(OTP-19) $(OTP-20) $(OTP-21) $(OTP-22) $(OTP-23) $(OTP-24) $(OTP-25) $(OTP-26) $(OTP-27) OTP-19+ := $(OTP-19) $(OTP-20) $(OTP-21) $(OTP-22) $(OTP-23) $(OTP-24) $(OTP-25) $(OTP-26) $(OTP-27) diff --git a/release-notes/OTP-27.1.README.txt b/release-notes/OTP-27.1.README.txt new file mode 100644 index 0000000..414076a --- /dev/null +++ b/release-notes/OTP-27.1.README.txt @@ -0,0 +1,1038 @@ +Patch Package: OTP 27.1 +Git Tag: OTP-27.1 +Date: 2024-09-18 +Trouble Report Id: OTP-17848, OTP-19032, OTP-19097, OTP-19098, + OTP-19101, OTP-19102, OTP-19103, OTP-19104, + OTP-19105, OTP-19110, OTP-19112, OTP-19113, + OTP-19114, OTP-19119, OTP-19122, OTP-19126, + OTP-19128, OTP-19129, OTP-19130, OTP-19132, + OTP-19133, OTP-19134, OTP-19136, OTP-19138, + OTP-19139, OTP-19143, OTP-19145, OTP-19146, + OTP-19148, OTP-19153, OTP-19154, OTP-19157, + OTP-19163, OTP-19164, OTP-19166, OTP-19167, + OTP-19168, OTP-19169, OTP-19170, OTP-19171, + OTP-19172, OTP-19173, OTP-19175, OTP-19176, + OTP-19178, OTP-19179, OTP-19181, OTP-19182, + OTP-19183, OTP-19186, OTP-19187, OTP-19188, + OTP-19189, OTP-19190, OTP-19191, OTP-19192, + OTP-19193, OTP-19197, OTP-19199, OTP-19200, + OTP-19201, OTP-19202, OTP-19203, OTP-19205, + OTP-19206, OTP-19208, OTP-19209, OTP-19210, + OTP-19211, OTP-19212, OTP-19214, OTP-19215, + OTP-19216, OTP-19217, OTP-19218, OTP-19219, + OTP-19220, OTP-19222 +Seq num: #8399, ERIERL-1102, ERIERL-1104, ERIERL-870, + GH-4362, GH-7621, GH-7746, GH-8378, GH-8454, + GH-8472, GH-8477, GH-8486, GH-8498, GH-8561, + GH-8562, GH-8568, GH-8604, GH-8605, GH-8613, + GH-8630, GH-8656, GH-8657, GH-8661, GH-8690, + GH-8715, GH-8738, GH-8748, GH-8779, GH-8785, + OTP-18671, OTP-18835, OTP-19101, OTP-19175, + PR-7226, PR-7419, PR-7919, PR-8261, PR-8310, + PR-8472, PR-8478, PR-8499, PR-8503, PR-8515, + PR-8516, PR-8518, PR-8521, PR-8528, PR-8539, + PR-8541, PR-8543, PR-8555, PR-8560, PR-8575, + PR-8578, PR-8583, PR-8584, PR-8596, PR-8611, + PR-8623, PR-8627, PR-8636, PR-8638, PR-8655, + PR-8672, PR-8683, PR-8686, PR-8690, PR-8692, + PR-8702, PR-8703, PR-8707, PR-8709, PR-8731, + PR-8739, PR-8740, PR-8741, PR-8742, PR-8751, + PR-8757, PR-8765, PR-8774, PR-8777, PR-8781 +System: OTP +Release: 27 +Application: 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 +Predecessor: OTP 27.0.1 + +Check out the git tag OTP-27.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 + +- The `zip` module has been updated with support for: + + - zip64 archives - Archives larger than 4GB or with more than 2^32 entries. + - extended timestamps - Higher resolution and in UTC. + - UID/GID - Save and extract the original UID/GID. + - Fixes so that permission mode attributes are correctly read and set for + files in archives. + - zip:list_dir/2 now also returns directories, not only files. (You can + disable this behaviour by using the option `skip_directories`). + + Various bugs in the original implementation have also been fixed, such as: + + - Correctly encode and decode the DOS timestamps for entries within an archive + (that is the non-extended timestamp). + - Fix DOS timestamps to be set to localtime instead of UTC (use extended + timestamps for UTC timestamps). + - Use the unix file attributes read from disk when creating archives instead + of setting everything to 644. + + Own Id: OTP-19214 + Application(s): erts, stdlib + Related Id(s): PR-8765 + +# POTENTIAL INCOMPATIBILITIES + +- Progress reports for a dynamically started supervisor will now be logged at + debug level. + + Own Id: OTP-19202 + Application(s): stdlib + Related Id(s): GH-8715, PR-8261, PR-8741 + +# OTP-27.1 + +## Fixed Bugs and Malfunctions + +- The description of the pre-defined macros has been clarified. In particular, + it is now made clear that the release returned by `?OTP_RELEASE` is the + release under which the compiler is run. + + Own Id: OTP-19103 + Related Id(s): GH-8486, PR-8518 + +- `ex_doc` now runs using an explicit escript instance instead of `/usr/bin/env` + so that package tools such as `nix` can build the documentation. + + Own Id: OTP-19145 + Related Id(s): GH-8378, PR-8596 + +- The `otp_patch_apply` script, used for patching OTP applications, has been + fixed. It was not possible (and still is not possible) to apply applications + from the OTP 27.0.1 patch package onto an OTP 27.0 installation. + + Own Id: OTP-19182 + +- `./otp_build download_ex_doc` was using `sha1sum` and `sha256sum` which work + on various Unix systems. macOS does not have these applications installed by + default, so we added a new dependency to the build process, `shasum`, which is + installed by default on macOS and allows us to check the integrity of + `ex_doc`. + + Own Id: OTP-19193 + Related Id(s): GH-8656, PR-8707 + +- On documentation web pages using Mermaid JS scripts for figures, the scripts + are now loaded asynchronously so that the rest of pages can be shown while the + scripts are still downloading. + + Own Id: OTP-19197 + Related Id(s): PR-8731 + +## Improvements and New Features + +- The obsolete documentation for OAM Principles has been removed. + + Own Id: OTP-19110 + Related Id(s): PR-8528 + +# asn1-5.3.1 + +The asn1-5.3.1 application can be applied independently of other applications on +a full OTP 27 installation. + +## Fixed Bugs and Malfunctions + +- Fixed a cosmetic but harmless issue with the ASN.1 compiler passing on the + `undec_rest` option to the Erlang compiler. + + Own Id: OTP-19218 + Related Id(s): GH-8779, PR-8781 + +> #### Full runtime dependencies of asn1-5.3.1 +> +> erts-14.0, kernel-9.0, stdlib-5.0 + +# common_test-1.27.1 + +The common_test-1.27.1 application can be applied independently of other +applications on a full OTP 27 installation. + +## Fixed Bugs and Malfunctions + +- Groups with empty list specifying groups and test cases no longer crash + execution. + + Own Id: OTP-19032 + Related Id(s): GH-4362, PR-7919 + +- The Common_Test documentation and type specs have been polished. + + Own Id: OTP-19148 + Related Id(s): PR-8516 + +- Man pages are now available for `erl`, `erlc`, `dialyzer`, and all other + programs that are included in Erlang/OTP. + + Own Id: OTP-19201 + Related Id(s): PR-8740 + +> #### Full runtime dependencies of common_test-1.27.1 +> +> compiler-6.0, crypto-4.5, debugger-4.1, erts-7.0, ftp-1.0, inets-6.0, +> kernel-8.4, observer-2.1, runtime_tools-1.8.16, sasl-2.5, snmp-5.1.2, ssh-4.0, +> stdlib-4.0, syntax_tools-1.7, tools-3.2, xmerl-1.3.8 + +# compiler-8.5.2 + +The compiler-8.5.2 application can be applied independently of other +applications on a full OTP 27 installation. + +## Fixed Bugs and Malfunctions + +- Fixed a crash in an optimization pass relating to appending binaries. + + Own Id: OTP-19168 + Related Id(s): GH-8630 + +- Fixed a bug in the compiler's alias analysis pass that could make it emit + unsafe code. + + Own Id: OTP-19178 + Related Id(s): PR-8686 + +> #### Full runtime dependencies of compiler-8.5.2 +> +> crypto-5.1, erts-13.0, kernel-8.4, stdlib-6.0 + +# crypto-5.5.1 + +The crypto-5.5.1 application can be applied independently of other applications +on a full OTP 27 installation. + +## 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 + Related Id(s): GH-8562 + +## Improvements and New Features + +- Added a warning in the documentation to avoid calling crypto:start/0 as it + does not work for FIPS mode. Use `application:start(crypto)` instead. + + Own Id: OTP-19143 + +- Deprecation of RSA encryption functions has been reverted, as there still + exists legitimate use cases with other padding modes than PKCS-1. + + While use PCKS-1 padding with some versions of cryptolib could be considered + secure, we still recommend using other algorithms that are less sensitive to + oracle attacks. + + Own Id: OTP-19163 + +- Compiler warnings for some removed functions have been corrected to point out + the correct replacement functions. + + Own Id: OTP-19186 + Related Id(s): PR-8709 + +> #### Full runtime dependencies of crypto-5.5.1 +> +> erts-9.0, kernel-5.3, stdlib-3.9 + +# dialyzer-5.2.1 + +The dialyzer-5.2.1 application can be applied independently of other +applications on a full OTP 27 installation. + +## Fixed Bugs and Malfunctions + +- Man pages are now available for `erl`, `erlc`, `dialyzer`, and all other + programs that are included in Erlang/OTP. + + Own Id: OTP-19201 + Related Id(s): PR-8740 + +> #### Full runtime dependencies of dialyzer-5.2.1 +> +> compiler-8.0, erts-12.0, kernel-8.0, stdlib-5.0, syntax_tools-2.0 + +# diameter-2.4.1 + +The diameter-2.4.1 application can be applied independently of other +applications on a full OTP 27 installation. + +## Fixed Bugs and Malfunctions + +- Function specs for the main API module has been updated. + + Own Id: OTP-19126 + Related Id(s): #8399 + +- Man pages are now available for `erl`, `erlc`, `dialyzer`, and all other + programs that are included in Erlang/OTP. + + Own Id: OTP-19201 + Related Id(s): PR-8740 + +- diameter:stop_service/1 has been made more synchronous. + + Own Id: OTP-19206 + Related Id(s): ERIERL-1102 + +> #### Full runtime dependencies of diameter-2.4.1 +> +> erts-10.0, kernel-3.2, ssl-9.0, stdlib-5.0 + +# edoc-1.3.2 + +The edoc-1.3.2 application can be applied independently of other applications on +a full OTP 27 installation. + +## Fixed Bugs and Malfunctions + +- Broken links in release notes have been mended. + + Own Id: OTP-19139 + Related Id(s): PR-8584 + +> #### Full runtime dependencies of edoc-1.3.2 +> +> erts-11.0, inets-5.10, kernel-7.0, stdlib-4.0, syntax_tools-2.0, xmerl-1.3.7 + +# erts-15.1 + +The erts-15.1 application can be applied independently of other applications on +a full OTP 27 installation. + +## Fixed Bugs and Malfunctions + +- The `erl -man example` has been corrected to not consider values set in + `ERL_ZFLAGS` and stop parsing arguments when a `--` is encountered. + + Own Id: OTP-19098 + Related Id(s): GH-8477, PR-8478 + +- Compiler warnings for Windows I/O back-end have been silenced. + + Own Id: OTP-19113 + +- Bugs related to `return_to` trace have been fixed. It did not work for more + than once trace session and it did sometimes not trigger for exceptions. + + Own Id: OTP-19122 + +- Potential deadlocks while writing a crash dump have been eliminated. + + Own Id: OTP-19133 + Related Id(s): GH-8498, PR-8521 + +- When loading a damaged or too old BEAM file, the runtime system could crash. + + Own Id: OTP-19153 + Related Id(s): PR-8623 + +- A scheduler thread could get stuck when deleting a memory allocator carrier + when adjacent carriers were deleted and/or inserted simultaneously by other + schedulers. This in turn could cause the other schedulers to get stuck as + well. + + Own Id: OTP-19154 + Related Id(s): GH-8613, PR-8627 + +- Statistics for number of carriers in a shared pool after calling + `instrument:allocations` or `instrument:carriers` are now correct. Also, a + potential bug in carrier block scanning was eliminated. + + Own Id: OTP-19166 + Related Id(s): PR-8636 + +- A race in the kTLS flavour of SSL distribution has been fixed so that + `inet_drv.c` doesn't read ahead too much data, which could cause the kTLS + encryption to be activated too late when some encrypted data had already been + read into the `inet_drv.c` buffer as unencrypted. + + Own Id: OTP-19175 + Related Id(s): GH-8561, PR-8690 + +- Fixed an emulator crash relating to compressed ETS tables. + + Own Id: OTP-19176 + Related Id(s): PR-8683 + +- A function (encode_sockaddr) was called with superfluous argument, on Windows, + in the net nif. + + Own Id: OTP-19181 + +- Fixed a crash that could happen on reallocation failure. + + Own Id: OTP-19192 + +- Man pages are now available for `erl`, `erlc`, `dialyzer`, and all other + programs that are included in Erlang/OTP. + + Own Id: OTP-19201 + Related Id(s): PR-8740 + +- A previous correction in the Erlang/OTP 27.0.1 emergency patch had the + unfortunate side effect of sometimes causing an unnecessary fullsweep (major) + garbage collection instead of a generation (minor) garbage collection. This + has been corrected. + + Own Id: OTP-19209 + Related Id(s): PR-8539, PR-8751 + +- Fixed trace matchspec functions `trace` and `enable_trace` to use the session + tracer when enabling trace flags on untraced processes. + + Own Id: OTP-19211 + Related Id(s): GH-8657 + +- Fixed a typo in the type spec for erlang:garbage_collection_defaults/0. + + Own Id: OTP-19215 + Related Id(s): PR-8757 + +- Corrected socket:ioctl for genaddr (SIOCGENADDR). + + Own Id: OTP-19216 + +- The support for Transparent Huge Pages has been disabled on non-amd64 Linux + systems. + + Own Id: OTP-19219 + Related Id(s): PR-8702 + +- Fixed a race condition on Windows when upgrading from `-noshell` to a shell + that would cause Erlang to crash with the error: + + {'GetOverlappedResult', + 'The I/O operation has been aborted because of either a thread exit or an application request.'}. + + Own Id: OTP-19220 + Related Id(s): GH-7621, PR-8774 + +## Improvements and New Features + +- Added functions `getservbyname` and `getservbyport` to the `net` module. + + Own Id: OTP-19101 + Related Id(s): OTP-18835 + +- Introduced enet | esock variants of `inet` functions, either when called + with sockets, with explicit inet_backend config or with the e inet_backend + kernel config option. + + Own Id: OTP-19132 + Related Id(s): OTP-19101 + +- Optimize process and port creation when such tracing is not enabled by any + trace session. + + Own Id: OTP-19167 + Related Id(s): PR-8655 + +- Compiler warnings for some removed functions have been corrected to point out + the correct replacement functions. + + Own Id: OTP-19186 + Related Id(s): PR-8709 + +- A boolean option `read_ahead` has been implemented for `gen_tcp`, default + `true`, to facilitate not reading past (caching data) the end of a packet. In + particular, for kTLS, caching data could read in data that was supposed to be + decrypted by the platform's network stack, before crypto parameters could be + activated. + + Own Id: OTP-19199 + Related Id(s): GH-8561, GH-8690, GH-8785, OTP-19175 + +- The `zip` module has been updated with support for: + + - zip64 archives - Archives larger than 4GB or with more than 2^32 entries. + - extended timestamps - Higher resolution and in UTC. + - UID/GID - Save and extract the original UID/GID. + - Fixes so that permission mode attributes are correctly read and set for + files in archives. + - zip:list_dir/2 now also returns directories, not only files. (You can + disable this behaviour by using the option `skip_directories`). + + Various bugs in the original implementation have also been fixed, such as: + + - Correctly encode and decode the DOS timestamps for entries within an archive + (that is the non-extended timestamp). + - Fix DOS timestamps to be set to localtime instead of UTC (use extended + timestamps for UTC timestamps). + - Use the unix file attributes read from disk when creating archives instead + of setting everything to 644. + + Own Id: OTP-19214 + Related Id(s): PR-8765 + + *** HIGHLIGHT *** + +> #### Full runtime dependencies of erts-15.1 +> +> kernel-9.0, sasl-3.3, stdlib-4.1 + +# ftp-1.2.3 + +The ftp-1.2.3 application can be applied independently of other applications on +a full OTP 27 installation. + +## Fixed Bugs and Malfunctions + +- Eliminated a race condition that sometimes resulted in ftp:recv_bin/2 + returning `ok` instead of `{ok, Data}`. + + Own Id: OTP-19119 + Related Id(s): GH-8454, PR-8543 + +> #### Full runtime dependencies of ftp-1.2.3 +> +> erts-7.0, kernel-6.0, runtime_tools-1.15.1, ssl-10.2, stdlib-3.5 + +# inets-9.3 + +The inets-9.3 application can be applied independently of other applications on +a full OTP 27 installation. + +## Improvements and New Features + +- The documentation for the `httpd` module has been improved, along with + correction of headings and types. + + Own Id: OTP-19171 + Related Id(s): PR-8578 + +- Userinfo is now properly percent-decoded before usage in headers. + + Own Id: OTP-19172 + Related Id(s): PR-8575 + +> #### Full runtime dependencies of inets-9.3 +> +> erts-14.0, kernel-9.0, mnesia-4.12, public_key-1.13, runtime_tools-1.8.14, +> ssl-9.0, stdlib-5.0, stdlib-6.0 + +# kernel-10.1 + +Note! The kernel-10.1 application _cannot_ be applied independently of other +applications on an arbitrary OTP 27 installation. + + On a full OTP 27 installation, also the following runtime + dependency has to be satisfied: + -- erts-15.1 (first satisfied in OTP 27.1) + +## Fixed Bugs and Malfunctions + +- A faulty assertion was corrected in the `prim_tty` module. This assertion + could trigger when invalid UTF-8 was read from stdin just as the mode was + changed from unicode to latin1. + + Own Id: OTP-19097 + Related Id(s): PR-8503 + +- Opening a `disk_log` file and combining `head_func` with `rotate` options did + not work. + + Own Id: OTP-19104 + Related Id(s): ERIERL-870 + +- Fixed an error info printout for erlang:is_process_alive/1 on non-local + pids. + + Own Id: OTP-19134 + Related Id(s): PR-8560 + +- A race in the kTLS flavour of SSL distribution has been fixed so that + `inet_drv.c` doesn't read ahead too much data, which could cause the kTLS + encryption to be activated too late when some encrypted data had already been + read into the `inet_drv.c` buffer as unencrypted. + + Own Id: OTP-19175 + Related Id(s): GH-8561, PR-8690 + +- Fixed a deadlock when an application crashes during startup and log messages + were sent to standard out. Logger would fail to print the messages to standard + out and instead print them to standard error. + + Own Id: OTP-19205 + +- The `-proto_dist` init parameter will no longer be ignored when specified + multiple times. It will now log a warning and use the first specified value. + + Own Id: OTP-19208 + Related Id(s): PR-8672 + +- Corrected socket:ioctl for genaddr (SIOCGENADDR). + + Own Id: OTP-19216 + +## Improvements and New Features + +- Added functions `getservbyname` and `getservbyport` to the `net` module. + + Own Id: OTP-19101 + Related Id(s): OTP-18835 + +- Introduced enet | esock variants of `inet` functions, either when called + with sockets, with explicit inet_backend config or with the e inet_backend + kernel config option. + + Own Id: OTP-19132 + Related Id(s): OTP-19101 + +- The function socket:i/0 now uses the `net` module (instead of the `inet` + module) for service translation. + + Own Id: OTP-19138 + Related Id(s): OTP-19101 + +- A boolean option `read_ahead` has been implemented for `gen_tcp`, default + `true`, to facilitate not reading past (caching data) the end of a packet. In + particular, for kTLS, caching data could read in data that was supposed to be + decrypted by the platform's network stack, before crypto parameters could be + activated. + + Own Id: OTP-19199 + Related Id(s): GH-8561, GH-8690, GH-8785, OTP-19175 + +> #### Full runtime dependencies of kernel-10.1 +> +> crypto-5.0, erts-15.1, sasl-3.0, stdlib-6.0 + +# odbc-2.15 + +The odbc-2.15 application can be applied independently of other applications on +a full OTP 27 installation. + +## Improvements and New Features + +- Figures in the documentation have been improved. + + Own Id: OTP-19130 + Related Id(s): PR-7226 + +> #### Full runtime dependencies of odbc-2.15 +> +> erts-6.0, kernel-3.0, stdlib-2.0 + +# public_key-1.16.2 + +The public_key-1.16.2 application can be applied independently of other +applications on a full OTP 27 installation. + +## Fixed Bugs and Malfunctions + +- For completeness handle rsa_pss implicit default value, although this will + probably not be commonly used as it provides very weak security. + + Own Id: OTP-19179 + +- The `public_key:cacerts_load()` function could in some error cases return + `undefined` instead of `{error, Reason}`. + + Own Id: OTP-19183 + Related Id(s): GH-8604 + +- Added support for DragonFly. + + Own Id: OTP-19191 + Related Id(s): PR-8703 + +## Improvements and New Features + +- Deprecation of RSA encryption functions has been reverted, as there still + exists legitimate use cases with other padding modes than PKCS-1. + + While use PCKS-1 padding with some versions of cryptolib could be considered + secure, we still recommend using other algorithms that are less sensitive to + oracle attacks. + + Own Id: OTP-19163 + +- It is now possible to use a verification fun of arity 4, giving the user fun + access to both encoded and decoded versions of the certificate. This is + desirable as a workaround for encoding errors preventing re-encoding from + being reliable. This also saves some work load if the encoded version is + needed. + + Note that calling public_key:pkix_path_validation/3 with only decoded certs + is not recommended, due to the decoding workarounds, although it will work as + long as the workarounds are not needed. + + If the decoded version is needed before thecall to `public_key` it is + recommend to use the combined_cert- type to avoid double decoding. Note that + the path validation algorithm itself always needs both the encoded and decoded + versions of the certs. + + The ssl implementation will now benefit from using this function instead of + emulating the verify_fun/4. + + Own Id: OTP-19169 + +> #### Full runtime dependencies of public_key-1.16.2 +> +> asn1-3.0, crypto-4.6, erts-6.0, kernel-3.0, stdlib-3.5 + +# runtime_tools-2.1.1 + +The runtime_tools-2.1.1 application can be applied independently of other +applications on a full OTP 27 installation. + +## Fixed Bugs and Malfunctions + +- Fixed a bug where dbg sessions on remote nodes were terminated prematurely. + + Own Id: OTP-19188 + Related Id(s): PR-8692 + +> #### Full runtime dependencies of runtime_tools-2.1.1 +> +> erts-15.0, kernel-10.0, mnesia-4.12, stdlib-6.0 + +# snmp-5.17 + +The snmp-5.17 application can be applied independently of other applications on +a full OTP 27 installation. + +## Fixed Bugs and Malfunctions + +- Man pages are now available for `erl`, `erlc`, `dialyzer`, and all other + programs that are included in Erlang/OTP. + + Own Id: OTP-19201 + Related Id(s): PR-8740 + +## Improvements and New Features + +- Figures in the documentation have been improved. + + Own Id: OTP-19130 + Related Id(s): PR-7226 + +> #### Full runtime dependencies of snmp-5.17 +> +> crypto-4.6, erts-12.0, kernel-8.0, mnesia-4.12, runtime_tools-1.8.14, +> stdlib-5.0 + +# ssh-5.2.2 + +The ssh-5.2.2 application can be applied independently of other applications on +a full OTP 27 installation. + +## Fixed Bugs and Malfunctions + +- The SSh daemon started with a TCP port number argument will now re-try + obtaining a listen socket before returning an error to the user. + + Own Id: OTP-19170 + Related Id(s): GH-7746 + +- Robustness has been improved by monitoring the connection handler process + before casting the socket control notification. + + Own Id: OTP-19173 + Related Id(s): PR-8310 + +> #### Full runtime dependencies of ssh-5.2.2 +> +> crypto-5.0, erts-14.0, kernel-9.0, public_key-1.6.1, runtime_tools-1.15.1, +> stdlib-5.0, stdlib-6.0 + +# ssl-11.2.2 + +Note! The ssl-11.2.2 application _cannot_ be applied independently of other +applications on an arbitrary OTP 27 installation. + + On a full OTP 27 installation, also the following runtime + dependency has to be satisfied: + -- public_key-1.16.2 (first satisfied in OTP 27.1) + +## Fixed Bugs and Malfunctions + +- A race in the kTLS flavour of SSL distribution has been fixed so that + `inet_drv.c` doesn't read ahead too much data, which could cause the kTLS + encryption to be activated too late when some encrypted data had already been + read into the `inet_drv.c` buffer as unencrypted. + + Own Id: OTP-19175 + Related Id(s): GH-8561, PR-8690 + +## Improvements and New Features + +- All TLS-1.3 terminations are now graceful (previous TLS version terminations + already were). + + Own Id: OTP-17848 + +- It is now possible to use a verification fun of arity 4, giving the user fun + access to both encoded and decoded versions of the certificate. This is + desirable as a workaround for encoding errors preventing re-encoding from + being reliable. This also saves some work load if the encoded version is + needed. + + Note that calling public_key:pkix_path_validation/3 with only decoded certs + is not recommended, due to the decoding workarounds, although it will work as + long as the workarounds are not needed. + + If the decoded version is needed before thecall to `public_key` it is + recommend to use the combined_cert- type to avoid double decoding. Note that + the path validation algorithm itself always needs both the encoded and decoded + versions of the certs. + + The ssl implementation will now benefit from using this function instead of + emulating the verify_fun/4. + + Own Id: OTP-19169 + +- Compiler warnings for some removed functions have been corrected to point out + the correct replacement functions. + + Own Id: OTP-19186 + Related Id(s): PR-8709 + +- Include more information in logging of SNI (Server Name Indication) mismatch + error. + + Own Id: OTP-19187 + +> #### Full runtime dependencies of ssl-11.2.2 +> +> crypto-5.0, erts-15.0, inets-5.10.7, kernel-9.0, public_key-1.16.2, +> runtime_tools-1.15.1, stdlib-6.0 + +# stdlib-6.1 + +The stdlib-6.1 application can be applied independently of other applications on +a full OTP 27 installation. + +## Fixed Bugs and Malfunctions + +- The help printout for incorrect io:format/0 strings now handles the `k` + modifier correctly. + + Own Id: OTP-19146 + Related Id(s): GH-8568, PR-8611 + +- Fixed a bug that caused the shell completion to crash when keyword and tuple + appeared on the same line. + + Own Id: OTP-19157 + Related Id(s): PR-8638 + +- Due to PR-7419/OTP-18671, the cached internal value of the `callback_mode` + started leaking out to `logger` reports, which could cause `logger` handlers + to crash. This has now been fixed to show the value that was set, as before + caching. + + Own Id: OTP-19164 + Related Id(s): GH-8605, PR-7419, OTP-18671 + +- Fixed an emulator crash relating to compressed ETS tables. + + Own Id: OTP-19176 + Related Id(s): PR-8683 + +- The error description for maps:update/3 will no longer insist that the third + argument is not a map when a key could not be found + + Own Id: OTP-19189 + +- Multiple issues have been corrected in the markdown parser that creates + documentation for the shell. + + The parser was incorrectly parsing formatted markdown (either bold or italics) + within parenthesis. This used to not be shown correctly in the shell + documentation `(_Option._)`, which was displayed verbatim. This fix makes + `Option.` to appear in italics. + + The markdown parser is also used in the creation of other documentation + formats, so this was a bug that affected other generated documentation + formats. + + Own Id: OTP-19200 + Related Id(s): GH-8738, PR-8739 + +- Fixed category for some codepoint ranges in `unicode_util`. + + Own Id: OTP-19210 + Related Id(s): GH-8748 + +- Fixed `argparse` to print sub-commands help when available. + + Own Id: OTP-19222 + Related Id(s): PR-8777 + +## Improvements and New Features + +- Class annotation to HTML from fenced blocks have been added. + + Own Id: OTP-19105 + Related Id(s): PR-8499 + +- Added JSON formatting functions for indented output. + + Own Id: OTP-19112 + +- Improved illegal pattern error for accidental map associations. + + Own Id: OTP-19128 + Related Id(s): PR-8555 + +- Progress reports for a dynamically started supervisor will now be logged at + debug level. + + Own Id: OTP-19202 + Related Id(s): GH-8715, PR-8261, PR-8741 + + *** POTENTIAL INCOMPATIBILITY *** + +- The `zip` module has been updated with support for: + + - zip64 archives - Archives larger than 4GB or with more than 2^32 entries. + - extended timestamps - Higher resolution and in UTC. + - UID/GID - Save and extract the original UID/GID. + - Fixes so that permission mode attributes are correctly read and set for + files in archives. + - zip:list_dir/2 now also returns directories, not only files. (You can + disable this behaviour by using the option `skip_directories`). + + Various bugs in the original implementation have also been fixed, such as: + + - Correctly encode and decode the DOS timestamps for entries within an archive + (that is the non-extended timestamp). + - Fix DOS timestamps to be set to localtime instead of UTC (use extended + timestamps for UTC timestamps). + - Use the unix file attributes read from disk when creating archives instead + of setting everything to 644. + + Own Id: OTP-19214 + Related Id(s): PR-8765 + + *** HIGHLIGHT *** + +> #### Full runtime dependencies of stdlib-6.1 +> +> compiler-5.0, crypto-4.5, erts-15.0, kernel-10.0, sasl-3.0 + +# syntax_tools-3.2.1 + +The syntax_tools-3.2.1 application can be applied independently of other +applications on a full OTP 27 installation. + +## Fixed Bugs and Malfunctions + +- The documentation for `syntax_tools` has been polished after the migration to + the new documentation system. + + Own Id: OTP-19102 + Related Id(s): PR-8515 + +> #### Full runtime dependencies of syntax_tools-3.2.1 +> +> compiler-7.0, erts-9.0, kernel-5.0, stdlib-4.0 + +# tftp-1.2.1 + +The tftp-1.2.1 application can be applied independently of other applications on +a full OTP 27 installation. + +## Improvements and New Features + +- The legacy dependency to `error_logger` has been removed. `logger` is now + used. + + Own Id: OTP-19114 + +> #### Full runtime dependencies of tftp-1.2.1 +> +> erts-6.0, kernel-6.0, stdlib-5.0 + +# tools-4.1 + +The tools-4.1 application can be applied independently of other applications on +a full OTP 27 installation. + +## Fixed Bugs and Malfunctions + +- `m:tprof` no longer crashes when using pause/restart/continue when profiling + all modules. + + Own Id: OTP-19136 + Related Id(s): GH-8472, PR-8472, PR-8541 + +- On systems supporting native coverage, calls to `cover` could hang or crash + if cover-compiled module had been reloaded from outside `cover`. This has been + corrected so that `cover` now recovers from the error and and sends a report + to the logger about the failure to retrieve coverage information. + + Own Id: OTP-19203 + Related Id(s): GH-8661, PR-8742 + +## Improvements and New Features + +- Figures in the documentation have been improved. + + Own Id: OTP-19130 + Related Id(s): PR-7226 + +> #### Full runtime dependencies of tools-4.1 +> +> compiler-8.5, erts-15.0, erts-15.0, kernel-10.0, runtime_tools-2.1, stdlib-6.0 + +# wx-2.4.3 + +The wx-2.4.3 application can be applied independently of other applications on a +full OTP 27 installation. + +## Fixed Bugs and Malfunctions + +- Documentation has been improved. + + Own Id: OTP-19190 + +> #### Full runtime dependencies of wx-2.4.3 +> +> erts-12.0, kernel-8.0, stdlib-5.0 + +# xmerl-2.1 + +The xmerl-2.1 application can be applied independently of other applications on +a full OTP 27 installation. + +## 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 + Related Id(s): ERIERL-1104 + +## Improvements and New Features + +- The type spec for xmerl_sax_parser:file/2 has been corrected to indicate + that it can return an `{error, _}` tuple. + + Own Id: OTP-19129 + Related Id(s): PR-8583 + +> #### Full runtime dependencies of xmerl-2.1 +> +> erts-6.0, kernel-3.0, stdlib-2.5 + +# Thanks to + +Aaron Renner, Anders Ågren Thuné, Andrea Leopardi, Anupama Singh, Cesar Guzman, +Dániel Szoboszlay, Douglas Vought, Frej Drejhammar, jakob svenningsson, Jan +Uhlig, Janusz Woźniak, Johannes Christ, Jonatan Kłosko, José Valim, Kian-Meng +Ang, lexprfuncall, Loïc Hoguin, Louis Pilfold, Marcelino Alberdi Pereira, Maria +Scott, Michael Neumann, Michał Muskała, nixxquality, Peter Lemenkov, Roger +Lipscombe, Siim Liiser, Svilen Ivanov, Urban Koistinen, Wojtek Mach + |