Patch Package: OTP 18.2 Git Tag: OTP-18.2 Date: 2015-12-16 Trouble Report Id: OTP-12003, OTP-12392, OTP-12457, OTP-12699, OTP-12759, OTP-12787, OTP-12792, OTP-12836, OTP-12837, OTP-12838, OTP-12936, OTP-12939, OTP-12966, OTP-12985, OTP-13000, OTP-13007, OTP-13008, OTP-13010, OTP-13015, OTP-13017, OTP-13018, OTP-13026, OTP-13029, OTP-13030, OTP-13031, OTP-13032, OTP-13035, OTP-13040, OTP-13042, OTP-13044, OTP-13048, OTP-13052, OTP-13054, OTP-13055, OTP-13063, OTP-13066, OTP-13067, OTP-13068, OTP-13069, OTP-13070, OTP-13071, OTP-13076, OTP-13078, OTP-13079, OTP-13083, OTP-13084, OTP-13091, OTP-13092, OTP-13093, OTP-13101, OTP-13102, OTP-13105, OTP-13106, OTP-13107, OTP-13109, OTP-13110, OTP-13113, OTP-13115, OTP-13116, OTP-13117, OTP-13125, OTP-13130, OTP-13132, OTP-13134, OTP-13137, OTP-13141, OTP-13142, OTP-13143, OTP-13144, OTP-13145, OTP-13146, OTP-13147, OTP-13149, OTP-13150, OTP-13155, OTP-13156, OTP-13157, OTP-13158, OTP-13159, OTP-13160, OTP-13162, OTP-13163, OTP-13165, OTP-13166, OTP-13173, OTP-13181, OTP-13188, OTP-13189 Seq num: seq12945, seq12959, seq12978 System: OTP Release: 18 Application: asn1-4.0.1, common_test-1.11.1, compiler-6.0.2, crypto-3.6.2, dialyzer-2.8.2, diameter-1.11.1, erl_docgen-0.4.1, erl_interface-3.8.1, erts-7.2, eunit-2.2.12, hipe-3.14, inets-6.1, jinterface-1.6.1, kernel-4.1.1, observer-2.1.1, parsetools-2.1.1, public_key-1.1, runtime_tools-1.9.2, sasl-2.6.1, snmp-5.2.1, ssh-4.2, ssl-7.2, stdlib-2.7, test_server-3.9.1, tools-2.8.2, typer-0.9.10, wx-1.6, xmerl-1.3.9 Predecessor: OTP 18.1.5 Check out the git tag OTP-18.2, 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-12392 Application(s): ssl Add upper limit for session cache, configurable on ssl application level. If upper limit is reached, invalidate the current cache entries, e.i the session lifetime is the max time a session will be keept, but it may be invalidated earlier if the max limit for the table is reached. This will keep the ssl manager process well behaved, not exhusting memeory. Invalidating the entries will incrementally empty the cache to make room for fresh sessions entries. --------------------------------------------------------------------- --- asn1-4.0.1 ------------------------------------------------------ --------------------------------------------------------------------- The asn1-4.0.1 application can be applied independently of other applications on a full OTP 18 installation. --- Fixed Bugs and Malfunctions --- OTP-13149 Application(s): asn1 Trying to encode an empty named BIT STRING in BER would fail with a function_clause exception. (Thanks to Svilen Ivanov for reporting this bug.) Full runtime dependencies of asn1-4.0.1: erts-7.0, kernel-3.0, stdlib-2.0 --------------------------------------------------------------------- --- common_test-1.11.1 ---------------------------------------------- --------------------------------------------------------------------- The common_test-1.11.1 application can be applied independently of other applications on a full OTP 18 installation. --- Fixed Bugs and Malfunctions --- OTP-13007 Application(s): common_test When data from the netconf server was split into many ssh packages, the netconf client performed really bad. This is now improved. OTP-13008 Application(s): common_test In ct_netconfc, if a timer expired 'at the same time' as the server sent the rpc-reply, the timeout message might already be in the client's message queue when the client removed the timer ref from its 'pending' list. This caused a crash in the client since the timer ref could no longer be found when handling the timeout message. This problem is now fixed by always flushing the timeout message from the message queue when canceling a timer. OTP-13035 Application(s): common_test The error logger handler ct_conn_log_h did not respect the 'silent' option, and tried to print to an undefined file descriptor. This has been corrected. OTP-13173 Application(s): common_test Related Id(s): seq12978 If the user would let the test run proceed after test suite compilation failure, Common Test did not set the exit status to indicate failure as expected. This has been corrected. Also, the 'abort_if_missing_suites' option now makes Common Test abort the test run without asking the user if compilation fails, even if access to stdin/stdout exists. OTP-13181 Application(s): common_test, test_server With the Common Test 'create_priv_dir' start option set to 'auto_per_tc', the name of the priv directory for a configuration function could clash with the name of the priv directory for a test case, which would cause Test Server failure. This error has been corrected. Full runtime dependencies of common_test-1.11.1: compiler-6.0, crypto-3.6, debugger-4.1, erts-7.0, inets-6.0, kernel-4.0, observer-2.1, runtime_tools-1.8.16, sasl-2.4.2, snmp-5.1.2, ssh-4.0, stdlib-2.5, test_server-3.9, tools-2.8, xmerl-1.3.8 --------------------------------------------------------------------- --- compiler-6.0.2 -------------------------------------------------- --------------------------------------------------------------------- The compiler-6.0.2 application can be applied independently of other applications on a full OTP 18 installation. --- Fixed Bugs and Malfunctions --- OTP-13091 Application(s): compiler Fix cerl_trees:label/2 bug with map K/V swap OTP-13113 Application(s): compiler Warnings produced when the 'bin_opt_info' option was given could sometimes lack filenames and line numbers. (Thanks to José Valim for reporting this bug.) Full runtime dependencies of compiler-6.0.2: crypto-3.6, erts-7.0, hipe-3.12, kernel-4.0, stdlib-2.5 --------------------------------------------------------------------- --- crypto-3.6.2 ---------------------------------------------------- --------------------------------------------------------------------- The crypto-3.6.2 application can be applied independently of other applications on a full OTP 18 installation. --- Fixed Bugs and Malfunctions --- OTP-13017 Application(s): crypto, erts, eunit, snmp Small documentation fixes Full runtime dependencies of crypto-3.6.2: erts-6.0, kernel-3.0, stdlib-2.0 --------------------------------------------------------------------- --- dialyzer-2.8.2 -------------------------------------------------- --------------------------------------------------------------------- Note! The dialyzer-2.8.2 application can *not* be applied independently of other applications on an arbitrary OTP 18 installation. On a full OTP 18 installation, also the following runtime dependency has to be satisfied: -- hipe-3.13 (first satisfied in OTP 18.1) --- Fixed Bugs and Malfunctions --- OTP-13068 Application(s): dialyzer, hipe Reintroduce the erlang:make_fun/3 BIF in erl_bif_types. Full runtime dependencies of dialyzer-2.8.2: compiler-5.0, erts-7.0, hipe-3.13, kernel-3.0, stdlib-2.5, syntax_tools-1.6.14, wx-1.2 --------------------------------------------------------------------- --- diameter-1.11.1 ------------------------------------------------- --------------------------------------------------------------------- The diameter-1.11.1 application can be applied independently of other applications on a full OTP 18 installation. --- Fixed Bugs and Malfunctions --- OTP-13137 Application(s): diameter Fix request table leaks The End-to-End and Hop-by-Hop identifiers of outgoing Diameter requests are stored in a table in order for the caller to be located when the corresponding answer message is received. Entries were orphaned if the handler was terminated by an exit signal as a consequence of actions taken by callback functions, or if callbacks modified identifiers in retransmission cases. Full runtime dependencies of diameter-1.11.1: erts-6.0, kernel-3.0, ssl-5.3.4, stdlib-2.0 --------------------------------------------------------------------- --- erl_docgen-0.4.1 ------------------------------------------------ --------------------------------------------------------------------- The erl_docgen-0.4.1 application can be applied independently of other applications on a full OTP 18 installation. --- Improvements and New Features --- OTP-13026 Application(s): erl_docgen, erts Updated the xmllint target to just check the xml files with real documentation content. Corrected some errors and added some missing target in the DTD's. Full runtime dependencies of erl_docgen-0.4.1: edoc-0.7.13, erts-6.0, stdlib-2.5, xmerl-1.3.7 --------------------------------------------------------------------- --- erl_interface-3.8.1 --------------------------------------------- --------------------------------------------------------------------- The erl_interface-3.8.1 application can be applied independently of other applications on a full OTP 18 installation. --- Improvements and New Features --- OTP-13188 Application(s): erl_interface Fix the conditional selection of gethostbyname_r and gethostbyaddr_r. --------------------------------------------------------------------- --- erts-7.2 -------------------------------------------------------- --------------------------------------------------------------------- The erts-7.2 application can be applied independently of other applications on a full OTP 18 installation. --- Fixed Bugs and Malfunctions --- OTP-13017 Application(s): crypto, erts, eunit, snmp Small documentation fixes OTP-13076 Application(s): erts Related Id(s): seq12959 Fix memory corruption bug caused by disabling distribution and then re-enable distribution with a node name that has previously been used by a remote node. OTP-13079 Application(s): erts Renamed variables with name bool as Visual Studio 2015 now treats this is a keyword. OTP-13102 Application(s): erts erl_prim_loader has not supported custom loaders for several releases. In the documentation for erl_prim_loader, all references to custom loaders have now been removed. OTP-13105 Application(s): erts Fixed compilation of erts together with libc versions that do not define __uint32_t. OTP-13107 Application(s): erts erl -make now returns non-zero exit codes on failure OTP-13115 Application(s): erts Fix crash on init:restart in embedded mode caused by on_load handler process not being relaunched leading to load failure for modules such as crypto and asn1rt_nif that need it to be present for correct NIF loading. OTP-13125 Application(s): erts Fix maps decode in erlang:binary_to_term/1 Decoding a term with a large (HAMT) map in an small (FLAT) map could cause a critical error if the external format was not produced by beam. OTP-13146 Application(s): erts Fix very rare bug in GC when big maps with a lot of hash collisions from a remote node are waiting in inner message queue. OTP-13150 Application(s): erts Fixed a bug that could cause a crash dump to become almost empty. --- Improvements and New Features --- OTP-13026 Application(s): erl_docgen, erts Updated the xmllint target to just check the xml files with real documentation content. Corrected some errors and added some missing target in the DTD's. OTP-13147 Application(s): erts Add function enif_getenv to read OS environment variables in a portable way from NIFs. Full runtime dependencies of erts-7.2: kernel-4.0, sasl-2.4, stdlib-2.5 --------------------------------------------------------------------- --- eunit-2.2.12 ---------------------------------------------------- --------------------------------------------------------------------- The eunit-2.2.12 application can be applied independently of other applications on a full OTP 18 installation. --- Fixed Bugs and Malfunctions --- OTP-13017 Application(s): crypto, erts, eunit, snmp Small documentation fixes Full runtime dependencies of eunit-2.2.12: erts-6.0, kernel-3.0, stdlib-2.5 --------------------------------------------------------------------- --- hipe-3.14 ------------------------------------------------------- --------------------------------------------------------------------- Note! The hipe-3.14 application can *not* be applied independently of other applications on an arbitrary OTP 18 installation. On a full OTP 18 installation, also the following runtime dependency has to be satisfied: -- erts-7.1 (first satisfied in OTP 18.1) --- Fixed Bugs and Malfunctions --- OTP-13048 Application(s): hipe Fix hipe bug causing segfaults when native code constructs binaries starting with a zero-length integer field. OTP-13068 Application(s): dialyzer, hipe Reintroduce the erlang:make_fun/3 BIF in erl_bif_types. OTP-13092 Application(s): hipe In certain cases of matching with very big binaries, the HiPE compiler generated code that would fail the match, even in cases that the matching was successful. The problem was more quite noticeable on 32-bit platforms. --- Improvements and New Features --- OTP-13159 Application(s): hipe mikpe/hipe_x86_signal-musl-support Full runtime dependencies of hipe-3.14: compiler-5.0, erts-7.1, kernel-3.0, stdlib-2.5, syntax_tools-1.6.14 --------------------------------------------------------------------- --- inets-6.1 ------------------------------------------------------- --------------------------------------------------------------------- The inets-6.1 application can be applied independently of other applications on a full OTP 18 installation. --- Fixed Bugs and Malfunctions --- OTP-13069 Application(s): inets Replace obs-folds with spaces instead of failing OTP-13071 Application(s): inets Add validation fun for URI scheme to http_uri API OTP-13093 Application(s): inets Handle stream bodies as documented. OTP-13110 Application(s): inets Correct error handling of mod_esi generated chunks. Send warning headers in chunk trailers instead of generating an unexpected additional 500 request response, when problems, such as a timeout occurs. OTP-13117 Application(s): inets HTTP client terminates gracefully when an invalid chunked length header is encountered. --- Improvements and New Features --- OTP-12985 Application(s): inets Add default for SNI (Server Name Indication) when running https using the inets HTTP-client. OTP-13116 Application(s): inets Be forgiving to chunked sizes that have trailing whitespaces as prior implementation was. Also some legacy embedded devices does actually have trailing whitespaces even though this in not according to the spec. Full runtime dependencies of inets-6.1: erts-6.0, kernel-3.0, mnesia-4.12, runtime_tools-1.8.14, ssl-5.3.4, stdlib-2.0 --------------------------------------------------------------------- --- jinterface-1.6.1 ------------------------------------------------ --------------------------------------------------------------------- The jinterface-1.6.1 application can be applied independently of other applications on a full OTP 18 installation. --- Fixed Bugs and Malfunctions --- OTP-13106 Application(s): jinterface Add missing Term tag matching switch statement that was missing an external fun tag. OTP-13165 Application(s): jinterface fixed writing small compressed values. --------------------------------------------------------------------- --- kernel-4.1.1 ---------------------------------------------------- --------------------------------------------------------------------- Note! The kernel-4.1.1 application can *not* be applied independently of other applications on an arbitrary OTP 18 installation. On a full OTP 18 installation, also the following runtime dependencies have to be satisfied: -- sasl-2.6 (first satisfied in OTP 18.1) -- stdlib-2.6 (first satisfied in OTP 18.1) --- Fixed Bugs and Malfunctions --- OTP-12836 Application(s): kernel Host name lookups though inet_res, the Erlang DNS resolver, are now done case insensitively according to RFC 4343. Patch by Holger Weiß. OTP-13040 Application(s): kernel IPv6 distribution handler has been updated to share code with IPv4 so that all features are supported in IPv6 as well. A bug when using an IPv4 address as hostname has been fixed. OTP-13083 Application(s): kernel Caching of host names in the internal DNS resolver inet_res has been made character case insensitive for host names according to RFC 4343. OTP-13155 Application(s): kernel Related Id(s): PR#646 Cooked file mode buffering has been fixed so file:position/2 now works according to Posix on Posix systems i.e. when file:position/2 returns an error the file pointer is unaffected. The Windows system documentation, however, is unclear on this point so the documentation of file:position/2 still does not promise anything. Cooked file mode file:pread/2,3 and file:pwrite/2,3 have been corrected to honor character encoding like the combination of file:position/2 and file:read/2 or file:write/2 already does. This is probably not very useful since the character representation on the caller's side is latin1, period. --- Improvements and New Features --- OTP-12837 Application(s): kernel Add {line_delim, byte()} option to inet:setopts/2 and decode_packet/3 Full runtime dependencies of kernel-4.1.1: erts-7.0, sasl-2.6, stdlib-2.6 --------------------------------------------------------------------- --- observer-2.1.1 -------------------------------------------------- --------------------------------------------------------------------- The observer-2.1.1 application can be applied independently of other applications on a full OTP 18 installation. --- Fixed Bugs and Malfunctions --- OTP-13030 Application(s): observer Show ets owner pid in crashdump viewers popup window, thanks Leo Liu. OTP-13044 Application(s): observer Several initialisms (eg, ERTS, ETS, SMP) are used as headings. They were being capitalized incorrectly. OTP-13163 Application(s): observer Fixed a crash in crashdump viewer when dump contained a truncated binary. Full runtime dependencies of observer-2.1.1: erts-7.0, et-1.5, inets-5.10, kernel-3.0, runtime_tools-1.8.14, stdlib-2.0, wx-1.2 --------------------------------------------------------------------- --- parsetools-2.1.1 ------------------------------------------------ --------------------------------------------------------------------- The parsetools-2.1.1 application can be applied independently of other applications on a full OTP 18 installation. --- Fixed Bugs and Malfunctions --- OTP-13031 Application(s): parsetools Correct the documentation of the error tuple returned by Yecc and Leex. Full runtime dependencies of parsetools-2.1.1: erts-6.0, kernel-3.0, stdlib-2.5 --------------------------------------------------------------------- --- public_key-1.1 -------------------------------------------------- --------------------------------------------------------------------- The public_key-1.1 application can be applied independently of other applications on a full OTP 18 installation. --- Improvements and New Features --- OTP-12936 Application(s): public_key, ssh The 'ecdsa-sha2-nistp256', 'ecdsa-sha2-nistp384' and 'ecdsa-sha2-nistp521' signature algorithms for ssh are implemented. See RFC 5656. OTP-13054 Application(s): public_key, ssh Related Id(s): OTP-13052 There is now a file (public_key/priv/moduli) which lists size-generator-modulus triples. The purpose is to give servers the possibility to select the crypto primes randomly among a list of pregenerated triples. This reduces the risk for some attacks on diffie-hellman negotiation. See the reference manual for public_key:dh_gex_group/4 where the handling of this is described. The ssh server (ssh:daemon) uses this. OTP-13132 Application(s): public_key Add different upper bounds for diffrent string types as suggested by comment in PKIX1Explicit88. Full runtime dependencies of public_key-1.1: asn1-3.0, crypto-3.3, erts-6.0, kernel-3.0, stdlib-2.0 --------------------------------------------------------------------- --- runtime_tools-1.9.2 --------------------------------------------- --------------------------------------------------------------------- The runtime_tools-1.9.2 application can be applied independently of other applications on a full OTP 18 installation. --- Improvements and New Features --- OTP-13078 Application(s): runtime_tools Clarified dbg:stop documentation Full runtime dependencies of runtime_tools-1.9.2: erts-7.0, kernel-3.0, mnesia-4.12, stdlib-2.0 --------------------------------------------------------------------- --- sasl-2.6.1 ------------------------------------------------------ --------------------------------------------------------------------- Note! The sasl-2.6.1 application can *not* be applied independently of other applications on an arbitrary OTP 18 installation. On a full OTP 18 installation, also the following runtime dependencies have to be satisfied: -- kernel-4.1 (first satisfied in OTP 18.1) -- stdlib-2.6 (first satisfied in OTP 18.1) --- Improvements and New Features --- OTP-13000 Application(s): sasl Documentation improvements Full runtime dependencies of sasl-2.6.1: erts-6.0, kernel-4.1, stdlib-2.6, tools-2.6.14 --------------------------------------------------------------------- --- snmp-5.2.1 ------------------------------------------------------ --------------------------------------------------------------------- The snmp-5.2.1 application can be applied independently of other applications on a full OTP 18 installation. --- Fixed Bugs and Malfunctions --- OTP-13017 Application(s): crypto, erts, eunit, snmp Small documentation fixes --- Improvements and New Features --- OTP-13101 Application(s): snmp Update configuration check of imask ( list of ones and zeros) to allow the empty list. Full runtime dependencies of snmp-5.2.1: crypto-3.3, erts-6.0, kernel-3.0, mnesia-4.12, runtime_tools-1.8.14, stdlib-2.5 --------------------------------------------------------------------- --- ssh-4.2 --------------------------------------------------------- --------------------------------------------------------------------- The ssh-4.2 application can be applied independently of other applications on a full OTP 18 installation. --- Fixed Bugs and Malfunctions --- OTP-12699 Application(s): ssh Related Id(s): OTP-11688 Better error handling in ssh_file. There was some rare errors when a NFS-mounted file was opened by ssh_file and then remotely deleted during reading. That caused an endless loop. That bug is now fixed. OTP-12759 Application(s): ssh Fixed a bug in the compression algorithm zlib@openssh.com. OTP-12966 Application(s): ssh Related Id(s): seq12945 It is now possible to start more than one daemon with a file descriptor given in option fd. Each daemon must of course have a unique file descriptor. OTP-13029 Application(s): ssh Fixed a bug that caused the option dh_gex_limit to be ignored. OTP-13158 Application(s): ssh A problem is fixed with the ssh:connect option pref_public_key_algs specifying user keys. --- Improvements and New Features --- OTP-12003 Application(s): ssh Document updates in the ssh reference manual: app doc file and ssh_connection. OTP-12787 Application(s): ssh The authorization phase is made stateful to prevent ssh acting on messages sent in wrong order. OTP-12792 Application(s): ssh Related Id(s): #5214, 6166, Codenomicon Testcases for bad message lengths and for bad subfield lengths added. OTP-12936 Application(s): public_key, ssh The 'ecdsa-sha2-nistp256', 'ecdsa-sha2-nistp384' and 'ecdsa-sha2-nistp521' signature algorithms for ssh are implemented. See RFC 5656. OTP-12939 Application(s): ssh The crypto algorithms 'aes192-ctr' and 'aes256-ctr' are implemented. See RFC 4344. OTP-13018 Application(s): ssh The ciphers and macs AEAD_AES_128_GCM and AEAD_AES_256_GCM are implemented but not enabled per default. See the SSH App Reference Manual and RFC5647 for details. The ciphers aes128-gcm@openssh.com and aes256-gcm@openssh.com are also implemented and available in the default configuration. OTP-13052 Application(s): ssh Related Id(s): OTP-13054 The ssh:daemon option dh_gex_groups is extended to read a user provided ssh moduli file with generator-modulus pairs. The file is in openssh format. OTP-13054 Application(s): public_key, ssh Related Id(s): OTP-13052 There is now a file (public_key/priv/moduli) which lists size-generator-modulus triples. The purpose is to give servers the possibility to select the crypto primes randomly among a list of pregenerated triples. This reduces the risk for some attacks on diffie-hellman negotiation. See the reference manual for public_key:dh_gex_group/4 where the handling of this is described. The ssh server (ssh:daemon) uses this. OTP-13055 Application(s): ssh Related Id(s): OTP-13053 The ssh:daemon option pwdfun now also takes a fun/4. This enables the user to 1) check userid-password in another way than the builtin algorithm, 2) implement rate limiting per user or source IP or IP+Port, and 3) implement blocking of missbehaving peers. The old fun/2 still works as previously. OTP-13066 Application(s): ssh There is now a new option to make the server limit the size range of moduli available for the diffie-hellman group exchange negotiation. See option {dh_gex_limits,{Min,Max}} in ssh:daemon/3. OTP-13067 Application(s): ssh Ecdh key exchange now validates compressed and uncompressed keys as defined in rfc5656 OTP-13109 Application(s): ssh Search order for the .ssh directory are changed so $HOME is tried before init:get_argument(home). OTP-13130 Application(s): ssh The sftp receive window handling is optimized so it will not update the remote end too often. This makes "sftp mget" considerable faster. OTP-13156 Application(s): ssh The option key_cb is extended to take an optional list that is passed to the callback module as an option. With this it is possible to have different keys depending on which host that is connected. Another possibility is to write a callback module that fetches keys etc from a database. Thanks to Vipin Nair. Full runtime dependencies of ssh-4.2: crypto-3.3, erts-6.0, kernel-3.0, public_key-0.22, stdlib-2.3 --------------------------------------------------------------------- --- ssl-7.2 --------------------------------------------------------- --------------------------------------------------------------------- The ssl-7.2 application can be applied independently of other applications on a full OTP 18 installation. --- Fixed Bugs and Malfunctions --- OTP-12838 Application(s): ssl Honor distribution port range options OTP-13134 Application(s): ssl Correct supervisor specification in TLS distribution. OTP-13141 Application(s): ssl Correct cache timeout OTP-13144 Application(s): ssl Avoid crash and restart of ssl process when key file does not exist. OTP-13166 Application(s): ssl Enable passing of raw socket options on the format {raw,_,_,_} to the underlying socket. OTP-13189 Application(s): ssl Hibernation with small or a zero timeout will now work as expected --- Improvements and New Features --- OTP-12392 Application(s): ssl *** HIGHLIGHT *** Add upper limit for session cache, configurable on ssl application level. If upper limit is reached, invalidate the current cache entries, e.i the session lifetime is the max time a session will be keept, but it may be invalidated earlier if the max limit for the table is reached. This will keep the ssl manager process well behaved, not exhusting memeory. Invalidating the entries will incrementally empty the cache to make room for fresh sessions entries. OTP-12457 Application(s): ssl Use new time functions to measure passed time. OTP-13142 Application(s): ssl Improved error handling in TLS distribution OTP-13143 Application(s): ssl Distribution over TLS now honors the nodelay distribution flag Full runtime dependencies of ssl-7.2: crypto-3.3, erts-7.0, inets-5.10.7, kernel-3.0, public_key-1.0, stdlib-2.0 --------------------------------------------------------------------- --- stdlib-2.7 ------------------------------------------------------ --------------------------------------------------------------------- Note! The stdlib-2.7 application can *not* be applied independently of other applications on an arbitrary OTP 18 installation. On a full OTP 18 installation, also the following runtime dependencies have to be satisfied: -- kernel-4.1 (first satisfied in OTP 18.1) -- sasl-2.6 (first satisfied in OTP 18.1) --- Fixed Bugs and Malfunctions --- OTP-13084 Application(s): stdlib The Erlang Pretty Printer uses :: for function type constraints. A bug concerning pretty printing of annotated type union elements in map pair types has been fixed. Some minor issues regarding the documentation of types and specs have been corrected. OTP-13145 Application(s): stdlib The shell command rp prints strings as lists of integers if pretty printing of lists is set to false. OTP-13157 Application(s): stdlib The shell would crash if a bit syntax expression with conflicting types were given (e.g. if a field type was given as 'integer-binary'). (Thanks to Aleksei Magusev for reporting this bug.) OTP-13162 Application(s): stdlib The rand:export_seed/0 would never return 'undefined' even if no seed has previously been created. Fixed to return 'undefined' if there is no seed in the process dictionary. --- Improvements and New Features --- OTP-13032 Application(s): stdlib Add support for the Delete, Home and End keys in the Erlang shell. OTP-13063 Application(s): stdlib beam_lib:all_chunks/1 and beam_lib:build_module/1 have been documented. Full runtime dependencies of stdlib-2.7: compiler-5.0, crypto-3.3, erts-7.0, kernel-4.1, sasl-2.6 --------------------------------------------------------------------- --- test_server-3.9.1 ----------------------------------------------- --------------------------------------------------------------------- The test_server-3.9.1 application can be applied independently of other applications on a full OTP 18 installation. --- Fixed Bugs and Malfunctions --- OTP-13015 Application(s): test_server When generating Makefile from Makefile.src, ts_lib:get_arg/4 earlier removed all spaces in the extracted argument. The code was probably meant for removing leading and trailing spaces only, and is now corrected to do so. OTP-13181 Application(s): common_test, test_server With the Common Test 'create_priv_dir' start option set to 'auto_per_tc', the name of the priv directory for a configuration function could clash with the name of the priv directory for a test case, which would cause Test Server failure. This error has been corrected. Full runtime dependencies of test_server-3.9.1: erts-7.0, inets-6.0, kernel-4.0, observer-2.1, runtime_tools-1.8.16, stdlib-2.5, syntax_tools-1.7, tools-2.8 --------------------------------------------------------------------- --- tools-2.8.2 ----------------------------------------------------- --------------------------------------------------------------------- The tools-2.8.2 application can be applied independently of other applications on a full OTP 18 installation. --- Fixed Bugs and Malfunctions --- OTP-13042 Application(s): tools The emacs mode does not add a newline after the arrow on -callback lines anymore. Full runtime dependencies of tools-2.8.2: compiler-5.0, erts-7.0, inets-5.10, kernel-3.0, runtime_tools-1.8.14, stdlib-2.5, webtool-0.8.10 --------------------------------------------------------------------- --- typer-0.9.10 ---------------------------------------------------- --------------------------------------------------------------------- The typer-0.9.10 application can be applied independently of other applications on a full OTP 18 installation. --- Fixed Bugs and Malfunctions --- OTP-13010 Application(s): typer Fix a bug that could result in a crash when printing warnings onto standard error. Full runtime dependencies of typer-0.9.10: compiler-5.0, dialyzer-2.7, erts-6.0, hipe-3.10.3, kernel-3.0, stdlib-2.0 --------------------------------------------------------------------- --- wx-1.6 ---------------------------------------------------------- --------------------------------------------------------------------- The wx-1.6 application can be applied independently of other applications on a full OTP 18 installation. --- Improvements and New Features --- OTP-13160 Application(s): wx Add wxOverlay and make wxPostScripDC optional to make it easier to build on windows. Correct some function specifications. The driver implementation have been optimized and now invokes commands after events have been sent to erlang. Full runtime dependencies of wx-1.6: erts-6.0, kernel-3.0, stdlib-2.0 --------------------------------------------------------------------- --- xmerl-1.3.9 ----------------------------------------------------- --------------------------------------------------------------------- The xmerl-1.3.9 application can be applied independently of other applications on a full OTP 18 installation. --- Fixed Bugs and Malfunctions --- OTP-13070 Application(s): xmerl Removed the built-in definitions of xml.xsd from the xmerl_xsd module. Full runtime dependencies of xmerl-1.3.9: erts-6.0, kernel-3.0, stdlib-2.5 --------------------------------------------------------------------- --- Thanks to ------------------------------------------------------- --------------------------------------------------------------------- Andrey Mayorov, Ben Tyler, Constantin Rack, Danil Zagoskin, David Whitlock, Derek Brown, Eric Appelt, Gary Coulbourne, Holger Weiß, Ian Denhardt, Johannes Weißl, Josh Adams, Kirill Zaborsky, Kirilll Zaborsky, Kostis Sagonas, Loïc Hoguin, Luca Favatella, Luis Rascao, Magnus Henoch, Magnus Lång, Magnus Ottenklinger, Mikael Pettersson, Nico Kruber, Pawel Pikula, Pierre Fenoll, Péter Gömöri, Riccardo, Rich Morin, Roger Lipscombe, Rory Byrne, Serge Aleynikov, Sergey Savenko, Steven Danna, Tobias Schlager, Tom Briden, Tom Szilagyi, Tuncer Ayaz, Vipin Nair, Vlad Dumitrescu, soranoba, xsipewe --------------------------------------------------------------------- --------------------------------------------------------------------- ---------------------------------------------------------------------