``` Patch Package: OTP 28.1 Git Tag: OTP-28.1 Date: 2025-09-17 Trouble Report Id: OTP-16607, OTP-19552, OTP-19619, OTP-19642, OTP-19646, OTP-19647, OTP-19648, OTP-19649, OTP-19651, OTP-19655, OTP-19657, OTP-19659, OTP-19660, OTP-19666, OTP-19667, OTP-19669, OTP-19671, OTP-19677, OTP-19681, OTP-19685, OTP-19686, OTP-19688, OTP-19689, OTP-19693, OTP-19694, OTP-19696, OTP-19698, OTP-19704, OTP-19706, OTP-19714, OTP-19719, OTP-19721, OTP-19722, OTP-19723, OTP-19724, OTP-19725, OTP-19726, OTP-19727, OTP-19728, OTP-19730, OTP-19731, OTP-19733, OTP-19735, OTP-19736, OTP-19737, OTP-19739, OTP-19745, OTP-19749, OTP-19752, OTP-19754, OTP-19756, OTP-19757, OTP-19758, OTP-19759, OTP-19760 Seq num: ERIERL-1209, ERIERL-1231, GH-10002, GH-10020, GH-10057, GH-10061, GH-10065, GH-10072, GH-10077, GH-10079, GH-10097, GH-10102, GH-5697, GH-5756, GH-9631, GH-9638, GH-9771, GH-9816, GH-9875, GH-9901, GH-9903, GH-9972, GH-9987, OTP-16608, PR-10004, PR-10009, PR-10011, PR-10014, PR-10019, PR-10034, PR-10046, PR-10051, PR-10066, PR-10076, PR-10084, PR-10085, PR-10087, PR-10090, PR-10091, PR-10093, PR-10094, PR-10104, PR-10106, PR-10108, PR-10112, PR-10113, PR-10120, PR-10121, PR-10140, PR-10142, PR-10146, PR-10147, PR-10153, PR-9589, PR-9721, PR-9796, PR-9815, PR-9832, PR-9843, PR-9853, PR-9862, PR-9869, PR-9876, PR-9879, PR-9896, PR-9897, PR-9898, PR-9900, PR-9906, PR-9909, PR-9912, PR-9927, PR-9949, PR-9954, PR-9969, PR-9976, PR-9982, PR-9990 System: OTP Release: 28 Application: asn1-5.4.2, common_test-1.29, compiler-9.0.2, crypto-5.7, debugger-6.0.3, edoc-1.4.1, erl_interface-5.6.1, erts-16.1, inets-9.4.2, kernel-10.4, megaco-4.8.1, mnesia-4.24.1, observer-2.18.1, os_mon-2.11.1, public_key-1.18.3, runtime_tools-2.3, snmp-5.19.1, ssl-11.4, stdlib-7.1, syntax_tools-4.0.1, tools-4.1.3, wx-2.5.2, xmerl-2.1.6 Predecessor: OTP 28.0.4 ``` Check out the git tag OTP-28.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 - Added support for quantum crypto signature algorithm ML-DSA (ssl and public_key) and key exchange algorithm ML-KEM (ssl). Own Id: OTP-19552 Application(s): public_key, ssl Related Id(s): [PR-10004] - A User's Guide to `dbg` is now available in the documentation. Own Id: OTP-19655 Application(s): runtime_tools Related Id(s): [PR-9853] - Support for ML-DSA and ML-KEM provided by OpenSSL 3.5. Algorithms `mldsa44`, `mldsa65` and `mldsa87` can be passed to `crypto:sign/4` and `crypto:verify/5`. New functions `crypto:encapsulate_key/2` and `crypto:decapsulate_key/3` can be used with `mlkem512`, `mlkem768` and `mlkem1024` to safely generate and communicate an encapsulated shared secret. Own Id: OTP-19657 Application(s): crypto Related Id(s): [PR-9900] - TLS server now fails early for supplied PEM file issues, such as the file not being found. Own Id: OTP-19706 Application(s): ssl Related Id(s): [GH-9631], [PR-10046] # POTENTIAL INCOMPATIBILITIES - The internal `inet_dns_tsig` and `inet_res` modules have been fixed to TSIG verify the correct timestamp. In the process two undocumented error code atoms have been corrected to `notauth` and `notzone` to adhere to the DNS RFCs. Code that relied on the previous incorrect values may have to be corrected. Own Id: OTP-19756 Application(s): kernel Related Id(s): [PR-10146] # OTP-28.1 ## Fixed Bugs and Malfunctions - When any Erlang/OTP application has been disabled by `configure`, warnings from `ex_doc` when building the documentation are now disabled. Own Id: OTP-19646 Related Id(s): [GH-9875], [PR-9876] - `./otp_build` now respects `TYPE` and `FLAVOR` to when set. Own Id: OTP-19677 Related Id(s): [PR-9954] - Rendering of some tables in the documentation has been improved. Own Id: OTP-19752 Related Id(s): [PR-10142] ## Improvements and New Features - In [Efficiency Guide], the section about `setelement/3` in Common Caveats has been updated. Own Id: OTP-19749 Related Id(s): [PR-10140] # asn1-5.4.2 The asn1-5.4.2 application can be applied independently of other applications on a full OTP 28 installation. ## Fixed Bugs and Malfunctions - Decoding a constrained BIT STRING using JER was broken. Own Id: OTP-19681 Related Id(s): [PR-9949] - NIFs and linked-in drivers are now loadable when running in an Erlang source tree on Windows. Own Id: OTP-19686 Related Id(s): [PR-9969] > #### Full runtime dependencies of asn1-5.4.2 > > erts-14.0, kernel-9.0, stdlib-5.0 # common_test-1.29 The common_test-1.29 application can be applied independently of other applications on a full OTP 28 installation. ## Improvements and New Features - Improved printing of maps. Map keys are now printed in the same order as `maps:iterator(Map, ordered)` would sort them. Own Id: OTP-19642 Related Id(s): ERIERL-1231, [PR-9862] - `ct:print` will now suppress printing of timestamp and heading when the heading option is set to the empty string. Own Id: OTP-19714 Related Id(s): [PR-10051] > #### Full runtime dependencies of common_test-1.29 > > 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-9.0.2 The compiler-9.0.2 application can be applied independently of other applications on a full OTP 28 installation. ## Fixed Bugs and Malfunctions - Fixed a compiler crash caused by patch order in destructive update. Own Id: OTP-19660 Related Id(s): [GH-9903], [PR-9909] - Fixed a compiler crash in `beam_ssa_pre_codegen` caused by wrong handling of multiple phi patches in the destructive update pass. Own Id: OTP-19689 Related Id(s): [GH-9987], [PR-9990] - Fixed a crash when a zip generator contains a map pattern. Own Id: OTP-19693 Related Id(s): [GH-10002], [PR-10009] - In rare circumstances, the compiler could crash when compiling code using bit syntax construction. Own Id: OTP-19722 Related Id(s): [GH-10077], [PR-10090] - A few minor bugs that could affect the `beam_debug_info` option were fixed. Own Id: OTP-19758 Related Id(s): [PR-10153] > #### Full runtime dependencies of compiler-9.0.2 > > crypto-5.1, erts-13.0, kernel-8.4, stdlib-6.0 # crypto-5.7 The crypto-5.7 application can be applied independently of other applications on a full OTP 28 installation. ## Fixed Bugs and Malfunctions - NIFs and linked-in drivers are now loadable when running in an Erlang source tree on Windows. Own Id: OTP-19686 Related Id(s): [PR-9969] - Fixed bug seen to cause beam crash when doing `init:restart()` with `crypto` statically linked to OpenSSL (`--disable-dynamic-ssl-lib`). Bug exists since OTP 28.0. Own Id: OTP-19721 Related Id(s): [GH-10061], [PR-10076] - Fixed `crypto:strong_rand_bytes` failing after `init:restart` on MacOS with statically linked OpenSSL. Own Id: OTP-19725 Related Id(s): [GH-10079], [PR-10085] - Fixed `crypto:hash(shake128 | shake256)` for OpenSSL 3.4 and newer. Own Id: OTP-19733 Related Id(s): [GH-9901], [PR-9982] - Rendering of some tables in the documentation has been improved. Own Id: OTP-19752 Related Id(s): [PR-10142] ## Improvements and New Features - Support for ML-DSA and ML-KEM provided by OpenSSL 3.5. Algorithms `mldsa44`, `mldsa65` and `mldsa87` can be passed to `crypto:sign/4` and `crypto:verify/5`. New functions `crypto:encapsulate_key/2` and `crypto:decapsulate_key/3` can be used with `mlkem512`, `mlkem768` and `mlkem1024` to safely generate and communicate an encapsulated shared secret. Own Id: OTP-19657 Related Id(s): [PR-9900] \*\*\* HIGHLIGHT \*\*\* - Added support for SHA2 512/224 and SHA2 512/256 truncated hashes. Own Id: OTP-19666 Related Id(s): [PR-9721] > #### Full runtime dependencies of crypto-5.7 > > erts-9.0, kernel-6.0, stdlib-3.9 # debugger-6.0.3 The debugger-6.0.3 application can be applied independently of other applications on a full OTP 28 installation. ## Fixed Bugs and Malfunctions - Fixed unbound error in interpreted modules Own Id: OTP-19719 Related Id(s): [GH-10057], [PR-10066] > #### Full runtime dependencies of debugger-6.0.3 > > compiler-8.0, erts-15.0, kernel-10.0, stdlib-7.0, wx-2.0 # edoc-1.4.1 The edoc-1.4.1 application can be applied independently of other applications on a full OTP 28 installation. ## Fixed Bugs and Malfunctions - Rendering of some tables in the documentation has been improved. Own Id: OTP-19752 Related Id(s): [PR-10142] > #### Full runtime dependencies of edoc-1.4.1 > > erts-11.0, inets-5.10, kernel-7.0, stdlib-4.0, syntax_tools-2.0, xmerl-1.3.7 # erl_interface-5.6.1 The erl_interface-5.6.1 application can be applied independently of other applications on a full OTP 28 installation. ## Improvements and New Features - Fixed C compiler warnings generated by codechecker. Own Id: OTP-19671 Related Id(s): [PR-9832] ## Known Bugs and Problems - The `ei` API for decoding/encoding terms is not fully 64-bit compatible since terms that have a representation on the external term format larger than 2 GB cannot be handled. Own Id: OTP-16607 Related Id(s): OTP-16608 # erts-16.1 The erts-16.1 application can be applied independently of other applications on a full OTP 28 installation. ## Fixed Bugs and Malfunctions - Made sure to not set any terminal settings when they have not been changed. Doing so can trigger a SIGTTOU signal which would terminate Erlang when it should not. Own Id: OTP-19685 Related Id(s): [PR-9906] - As an optimization, when the `unicode:characters_to_binary/3` was used to convert from `latin1` to `utf8` or vice versa, it would return the original binary unchanged if it only contained 7-bit ASCII characters. That otpimization was broken in Erlang/OTP 27, and has now been mended. Own Id: OTP-19728 Related Id(s): [GH-10072], [PR-10093] ## Improvements and New Features - Fixed C compiler warnings generated by codechecker. Own Id: OTP-19671 Related Id(s): [PR-9832] - Added support in module `re` for export and import of compiled regular expression in order to safely move them between Erlang node instances. Own Id: OTP-19730 Related Id(s): [PR-9976] - Added new `erl` command line flag `+Mumadtn ` causing `MADV_DONTNEED` to be passed to `madvise()` instead of `MADV_FREE`. Own Id: OTP-19739 Related Id(s): [PR-10113] > #### Full runtime dependencies of erts-16.1 > > kernel-9.0, sasl-3.3, stdlib-4.1 # inets-9.4.2 The inets-9.4.2 application can be applied independently of other applications on a full OTP 28 installation. ## Fixed Bugs and Malfunctions - Fixed a RFC 2616 violation, where a http request, made by httpc, without providing any options, would be sent with an empty TE header, without also having a TE value in the connection header. Now the default request doesn't send a TE header at all. Own Id: OTP-19760 Related Id(s): [GH-10065], [PR-10120] > #### Full runtime dependencies of inets-9.4.2 > > 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.4 The kernel-10.4 application can be applied independently of other applications on a full OTP 28 installation. ## Fixed Bugs and Malfunctions - A remote shell can now exit by closing the input stream, without terminating the remote node. Own Id: OTP-19667 Related Id(s): [PR-9912] - The internal `inet_dns_tsig` and `inet_res` modules have been fixed to TSIG verify the correct timestamp. In the process two undocumented error code atoms have been corrected to `notauth` and `notzone` to adhere to the DNS RFCs. Code that relied on the previous incorrect values may have to be corrected. Own Id: OTP-19756 Related Id(s): [PR-10146] \*\*\* POTENTIAL INCOMPATIBILITY \*\*\* ## Improvements and New Features - The rudimentary DNS resolver `inet_res` has aqcuired 3 new functions `inet_res:gethostbyname/4`, `inet_res;getbyname/4` and `inet_res:gethostbyaddr/3`, that all take an option list argument. This option list can be used to override the Kernel application's resolver options when calling the `inet_res` function directly. Own Id: OTP-19737 Related Id(s): ERIERL-1209, [PR-10112] > #### Full runtime dependencies of kernel-10.4 > > crypto-5.0, erts-15.2.5, sasl-3.0, stdlib-6.0 # megaco-4.8.1 The megaco-4.8.1 application can be applied independently of other applications on a full OTP 28 installation. ## Fixed Bugs and Malfunctions - Documentation improvements. Own Id: OTP-19669 Related Id(s): [PR-9927] - Rendering of some tables in the documentation has been improved. Own Id: OTP-19752 Related Id(s): [PR-10142] > #### Full runtime dependencies of megaco-4.8.1 > > asn1-3.0, debugger-4.0, erts-12.0, et-1.5, kernel-8.0, runtime_tools-1.8.14, > stdlib-2.5 # mnesia-4.24.1 The mnesia-4.24.1 application can be applied independently of other applications on a full OTP 28 installation. ## Fixed Bugs and Malfunctions - Mnesia no longer crashes when the node name is used as a table name. Own Id: OTP-19745 Related Id(s): [PR-10147] > #### Full runtime dependencies of mnesia-4.24.1 > > erts-9.0, kernel-5.3, stdlib-5.0 # observer-2.18.1 The observer-2.18.1 application can be applied independently of other applications on a full OTP 28 installation. ## Fixed Bugs and Malfunctions - `etop` will now fully stop before returning from `etop:stop/0`. Own Id: OTP-19754 Related Id(s): [PR-9815] > #### Full runtime dependencies of observer-2.18.1 > > erts-15.0, et-1.5, kernel-10.0, runtime_tools-2.1, stdlib-5.0, wx-2.3 # os_mon-2.11.1 The os_mon-2.11.1 application can be applied independently of other applications on a full OTP 28 installation. ## Fixed Bugs and Malfunctions - NIFs and linked-in drivers are now loadable when running in an Erlang source tree on Windows. Own Id: OTP-19686 Related Id(s): [PR-9969] > #### Full runtime dependencies of os_mon-2.11.1 > > erts-14.0, kernel-9.0, sasl-4.2.1, stdlib-5.0 # public_key-1.18.3 Note! The public_key-1.18.3 application _cannot_ be applied independently of other applications on an arbitrary OTP 28 installation. On a full OTP 28 installation, also the following runtime dependency has to be satisfied: -- crypto-5.7 (first satisfied in OTP 28.1) ## Fixed Bugs and Malfunctions - NIFs and linked-in drivers are now loadable when running in an Erlang source tree on Windows. Own Id: OTP-19686 Related Id(s): [PR-9969] - Added missing reference to `SignedAttributes` so that it now works with the `der_encode` and `der_decode` functions. Own Id: OTP-19727 Related Id(s): [PR-10091] ## Improvements and New Features - Added support for quantum crypto signature algorithm ML-DSA (ssl and public_key) and key exchange algorithm ML-KEM (ssl). Own Id: OTP-19552 Related Id(s): [PR-10004] \*\*\* HIGHLIGHT \*\*\* > #### Full runtime dependencies of public_key-1.18.3 > > asn1-5.0, crypto-5.7, erts-13.0, kernel-8.0, stdlib-4.0 # runtime_tools-2.3 The runtime_tools-2.3 application can be applied independently of other applications on a full OTP 28 installation. ## Fixed Bugs and Malfunctions - NIFs and linked-in drivers are now loadable when running in an Erlang source tree on Windows. Own Id: OTP-19686 Related Id(s): [PR-9969] ## Improvements and New Features - The default tracer is now aware that it is started by a remote shell (`-remsh`), in which case the traces will be sent to the remote group_leader to make the traces visible in the remote shell. Own Id: OTP-19648 Related Id(s): [PR-9589] - A User's Guide to `dbg` is now available in the documentation. Own Id: OTP-19655 Related Id(s): [PR-9853] \*\*\* HIGHLIGHT \*\*\* > #### Full runtime dependencies of runtime_tools-2.3 > > erts-16.0, kernel-10.0, mnesia-4.12, stdlib-6.0 # snmp-5.19.1 The snmp-5.19.1 application can be applied independently of other applications on a full OTP 28 installation. ## Fixed Bugs and Malfunctions - Using ASN.1 generated code for decode/encode of basic types, starting with Counter64. Own Id: OTP-19619 Related Id(s): [GH-5756], [PR-9869] ## Improvements and New Features - Reworked the timer handling of the (SNMP) manager start notification feature. Own Id: OTP-19696 Related Id(s): [PR-10014] - Added missing specs to already documented functions. Own Id: OTP-19723 Related Id(s): [PR-10087] > #### Full runtime dependencies of snmp-5.19.1 > > asn1-5.4, crypto-4.6, erts-12.0, kernel-8.0, mnesia-4.12, > runtime_tools-1.8.14, stdlib-5.0 # ssl-11.4 Note! The ssl-11.4 application _cannot_ be applied independently of other applications on an arbitrary OTP 28 installation. On a full OTP 28 installation, also the following runtime dependencies have to be satisfied: -- crypto-5.7 (first satisfied in OTP 28.1) -- public_key-1.18.3 (first satisfied in OTP 28.1) ## Fixed Bugs and Malfunctions - The sender side is now closed if an error occurs on the socket. Own Id: OTP-19694 Related Id(s): [PR-10011] - The PEM cache process no longer crashes when a configured file has been deleted before it could be read. Own Id: OTP-19698 Related Id(s): [GH-9638], [PR-10019] - Corrected handling of `ssl:sockname/1` for DTLS, so that it now will return the correct result in all situations. Own Id: OTP-19736 Related Id(s): [GH-10097], [PR-10108] - Rendering of some tables in the documentation has been improved. Own Id: OTP-19752 Related Id(s): [PR-10142] ## Improvements and New Features - Added support for quantum crypto signature algorithm ML-DSA (ssl and public_key) and key exchange algorithm ML-KEM (ssl). Own Id: OTP-19552 Related Id(s): [PR-10004] \*\*\* HIGHLIGHT \*\*\* - Now allowing`send/2 `to buffer data when using sockets backend. Use 'high_watermark' and 'low_watermark' to steer buffering as gen_tcp does. Own Id: OTP-19651 Related Id(s): [PR-9879] - Now allowing the PSK identity to be the empty string in TLS-1.2 for compatibility reasons. It is allowed according to the spec, although providing a proper value makes more sense. Own Id: OTP-19688 Related Id(s): [PR-9843] - TLS server now fails early for supplied PEM file issues, such as the file not being found. Own Id: OTP-19706 Related Id(s): [GH-9631], [PR-10046] \*\*\* HIGHLIGHT \*\*\* > #### Full runtime dependencies of ssl-11.4 > > crypto-5.7, erts-16.0, inets-5.10.7, kernel-10.3, public_key-1.18.3, > runtime_tools-1.15.1, stdlib-7.0 # stdlib-7.1 Note! The stdlib-7.1 application _cannot_ be applied independently of other applications on an arbitrary OTP 28 installation. On a full OTP 28 installation, also the following runtime dependency has to be satisfied: -- erts-16.0.3 (first satisfied in OTP 28.0.3) ## Fixed Bugs and Malfunctions - The `save_module/1` command in the shell now saves both the locally defined records and the imported records using the `rr/1` command. Own Id: OTP-19647 Related Id(s): [GH-9816], [PR-9897] - It's now possible to write `lists:map(fun is_atom/1, [])` or `lists:map(fun my_func/1, [])` in the shell, instead of `lists:map(fun erlang:is_atom/1, [])` or `lists:map(fun shell_default:my_func/1, [])`. Own Id: OTP-19649 Related Id(s): [GH-9771], [PR-9898] - The shell no longer crashes when requesting to auto-complete map keys containing non-atoms. Own Id: OTP-19659 Related Id(s): [PR-9896] - A remote shell can now exit by closing the input stream, without terminating the remote node. Own Id: OTP-19667 Related Id(s): [PR-9912] - Fixed guard check for `is_record/2` in the linter. Own Id: OTP-19704 Related Id(s): [GH-10020], [PR-10034] ## Improvements and New Features - Added a flag option `shell_hints` and function `shell:hints/1`. You can now disable the warning in the shell when a command is taking longer than 5 seconds. Own Id: OTP-19759 Related Id(s): [PR-10121] > #### Full runtime dependencies of stdlib-7.1 > > compiler-5.0, crypto-4.5, erts-16.0.3, kernel-10.0, sasl-3.0, > syntax_tools-3.2.1 # syntax_tools-4.0.1 The syntax_tools-4.0.1 application can be applied independently of other applications on a full OTP 28 installation. ## Fixed Bugs and Malfunctions - Fixed zip generator crash in `annotate_bindings/1` Own Id: OTP-19731 Related Id(s): [GH-10102], [PR-10104] > #### Full runtime dependencies of syntax_tools-4.0.1 > > compiler-9.0, erts-16.0, kernel-10.3, stdlib-7.0 # tools-4.1.3 The tools-4.1.3 application can be applied independently of other applications on a full OTP 28 installation. ## Improvements and New Features - Fixed some deprecations for newer emacs versions. Own Id: OTP-19726 Related Id(s): [PR-10106] > #### Full runtime dependencies of tools-4.1.3 > > compiler-8.5, erts-15.0, erts-15.0, kernel-10.0, runtime_tools-2.1, stdlib-6.0 # wx-2.5.2 The wx-2.5.2 application can be applied independently of other applications on a full OTP 28 installation. ## Fixed Bugs and Malfunctions - NIFs and linked-in drivers are now loadable when running in an Erlang source tree on Windows. Own Id: OTP-19686 Related Id(s): [PR-9969] - Now avoiding that wx crashes the VM when running on OTP28+ due to one of the new compiler hardening options. Own Id: OTP-19724 Related Id(s): [GH-9972], [PR-10084] ## Improvements and New Features - `wx` was missing licenses that come from OpenGL documentation and wxWidgets documentation. Own Id: OTP-19735 Related Id(s): [PR-10094] > #### Full runtime dependencies of wx-2.5.2 > > erts-12.0, kernel-8.0, stdlib-5.0 # xmerl-2.1.6 The xmerl-2.1.6 application can be applied independently of other applications on a full OTP 28 installation. ## Fixed Bugs and Malfunctions - Corrected the bug that comments couldn't be exported. `#xmlComment` elements is now exported when calling `export/3` or `export_simple/3` and similar functions. Top level comments will only be exported if one creates and export elements as a document. Own Id: OTP-19757 Related Id(s): [GH-5697], [PR-9796] > #### Full runtime dependencies of xmerl-2.1.6 > > erts-6.0, kernel-8.4, stdlib-2.5 # Thanks to Alberto Sartori, Alexander Clouter, ausimian, Danil Zagoskin, dependabot[bot], Dmytro Lytovchenko, Dunya Kokoschka, Håkan Stenholm, Hans Svensson, Jan Uhlig, Magnus Henoch, Mend Renovate, Paulo Tomé, Rodolfo Carvalho, Savvas Nicholas, Simon Oulevay, Tomas Abrahamsson, Tom Schuster, Yaroslav Maslennikov [Efficiency Guide]: https://erlang.org/doc/system/efficiency_guide.html [GH-10002]: https://github.com/erlang/otp/issues/10002 [GH-10020]: https://github.com/erlang/otp/issues/10020 [GH-10057]: https://github.com/erlang/otp/issues/10057 [GH-10061]: https://github.com/erlang/otp/issues/10061 [GH-10065]: https://github.com/erlang/otp/issues/10065 [GH-10072]: https://github.com/erlang/otp/issues/10072 [GH-10077]: https://github.com/erlang/otp/issues/10077 [GH-10079]: https://github.com/erlang/otp/issues/10079 [GH-10097]: https://github.com/erlang/otp/issues/10097 [GH-10102]: https://github.com/erlang/otp/issues/10102 [GH-5697]: https://github.com/erlang/otp/issues/5697 [GH-5756]: https://github.com/erlang/otp/issues/5756 [GH-9631]: https://github.com/erlang/otp/issues/9631 [GH-9638]: https://github.com/erlang/otp/issues/9638 [GH-9771]: https://github.com/erlang/otp/issues/9771 [GH-9816]: https://github.com/erlang/otp/issues/9816 [GH-9875]: https://github.com/erlang/otp/issues/9875 [GH-9901]: https://github.com/erlang/otp/issues/9901 [GH-9903]: https://github.com/erlang/otp/issues/9903 [GH-9972]: https://github.com/erlang/otp/issues/9972 [GH-9987]: https://github.com/erlang/otp/issues/9987 [PR-10004]: https://github.com/erlang/otp/pull/10004 [PR-10009]: https://github.com/erlang/otp/pull/10009 [PR-10011]: https://github.com/erlang/otp/pull/10011 [PR-10014]: https://github.com/erlang/otp/pull/10014 [PR-10019]: https://github.com/erlang/otp/pull/10019 [PR-10034]: https://github.com/erlang/otp/pull/10034 [PR-10046]: https://github.com/erlang/otp/pull/10046 [PR-10051]: https://github.com/erlang/otp/pull/10051 [PR-10066]: https://github.com/erlang/otp/pull/10066 [PR-10076]: https://github.com/erlang/otp/pull/10076 [PR-10084]: https://github.com/erlang/otp/pull/10084 [PR-10085]: https://github.com/erlang/otp/pull/10085 [PR-10087]: https://github.com/erlang/otp/pull/10087 [PR-10090]: https://github.com/erlang/otp/pull/10090 [PR-10091]: https://github.com/erlang/otp/pull/10091 [PR-10093]: https://github.com/erlang/otp/pull/10093 [PR-10094]: https://github.com/erlang/otp/pull/10094 [PR-10104]: https://github.com/erlang/otp/pull/10104 [PR-10106]: https://github.com/erlang/otp/pull/10106 [PR-10108]: https://github.com/erlang/otp/pull/10108 [PR-10112]: https://github.com/erlang/otp/pull/10112 [PR-10113]: https://github.com/erlang/otp/pull/10113 [PR-10120]: https://github.com/erlang/otp/pull/10120 [PR-10121]: https://github.com/erlang/otp/pull/10121 [PR-10140]: https://github.com/erlang/otp/pull/10140 [PR-10142]: https://github.com/erlang/otp/pull/10142 [PR-10146]: https://github.com/erlang/otp/pull/10146 [PR-10147]: https://github.com/erlang/otp/pull/10147 [PR-10153]: https://github.com/erlang/otp/pull/10153 [PR-9589]: https://github.com/erlang/otp/pull/9589 [PR-9721]: https://github.com/erlang/otp/pull/9721 [PR-9796]: https://github.com/erlang/otp/pull/9796 [PR-9815]: https://github.com/erlang/otp/pull/9815 [PR-9832]: https://github.com/erlang/otp/pull/9832 [PR-9843]: https://github.com/erlang/otp/pull/9843 [PR-9853]: https://github.com/erlang/otp/pull/9853 [PR-9862]: https://github.com/erlang/otp/pull/9862 [PR-9869]: https://github.com/erlang/otp/pull/9869 [PR-9876]: https://github.com/erlang/otp/pull/9876 [PR-9879]: https://github.com/erlang/otp/pull/9879 [PR-9896]: https://github.com/erlang/otp/pull/9896 [PR-9897]: https://github.com/erlang/otp/pull/9897 [PR-9898]: https://github.com/erlang/otp/pull/9898 [PR-9900]: https://github.com/erlang/otp/pull/9900 [PR-9906]: https://github.com/erlang/otp/pull/9906 [PR-9909]: https://github.com/erlang/otp/pull/9909 [PR-9912]: https://github.com/erlang/otp/pull/9912 [PR-9927]: https://github.com/erlang/otp/pull/9927 [PR-9949]: https://github.com/erlang/otp/pull/9949 [PR-9954]: https://github.com/erlang/otp/pull/9954 [PR-9969]: https://github.com/erlang/otp/pull/9969 [PR-9976]: https://github.com/erlang/otp/pull/9976 [PR-9982]: https://github.com/erlang/otp/pull/9982 [PR-9990]: https://github.com/erlang/otp/pull/9990