diff options
Diffstat (limited to 'lib/stdlib')
-rw-r--r-- | lib/stdlib/doc/src/notes.xml | 331 |
1 files changed, 0 insertions, 331 deletions
diff --git a/lib/stdlib/doc/src/notes.xml b/lib/stdlib/doc/src/notes.xml index 09290585ad..e26c4aba74 100644 --- a/lib/stdlib/doc/src/notes.xml +++ b/lib/stdlib/doc/src/notes.xml @@ -31,337 +31,6 @@ </header> <p>This document describes the changes made to the STDLIB application.</p> -<section><title>STDLIB 3.5</title> - - <section><title>Fixed Bugs and Malfunctions</title> - <list> - <item> - <p> When using an exception that is valid but not allowed - in a state enter call, the reason has been changed from - <c>{bad_action_from_state_function,Action}</c> to - <c>{bad_state_enter_action_from_state_function,Action}</c>. - </p><p> Timer parsing has been improved. Many erroneous - timeout tuples was not handled correctly. </p><p> The - documentation has been updated, in particular the User's - Guide and the pointer to it from the Reference Manual is - much more obvious. </p> - <p> - Own Id: OTP-14015</p> - </item> - <item> - <p> - The type specifications for <c>file:posix/0</c> and - <c>inet:posix/0</c> have been updated according to which - errors file and socket operations should be able to - return.</p> - <p> - Own Id: OTP-14019 Aux Id: ERL-550 </p> - </item> - <item> - <p> File operations used to accept <seealso - marker="kernel:file#type-name_all">filenames</seealso> - containing null characters (integer value zero). This - caused the name to be truncated and in some cases - arguments to primitive operations to be mixed up. - Filenames containing null characters inside the filename - are now <em>rejected</em> and will cause primitive file - operations to fail. </p> <p> Also environment variable - operations used to accept <seealso - marker="kernel:os#type-env_var_name">names</seealso> and - <seealso - marker="kernel:os#type-env_var_value">values</seealso> of - environment variables containing null characters (integer - value zero). This caused operations to silently produce - erroneous results. Environment variable names and values - containing null characters inside the name or value are - now <em>rejected</em> and will cause environment variable - operations to fail. </p> <p>Primitive environment - variable operations also used to accept the <c>$=</c> - character in environment variable names causing various - problems. <c>$=</c> characters in environment variable - names are now also <em>rejected</em>. </p> <p>Also - <seealso - marker="kernel:os#cmd/1"><c>os:cmd/1</c></seealso> now - reject null characters inside its <seealso - marker="kernel:os#type-os_command">command</seealso>. - </p> <p><seealso - marker="erts:erlang#open_port/2"><c>erlang:open_port/2</c></seealso> - will also reject null characters inside the port name - from now on.</p> - <p> - *** POTENTIAL INCOMPATIBILITY ***</p> - <p> - Own Id: OTP-14543 Aux Id: ERL-370 </p> - </item> - <item> - <p> Make <c>io_lib:unscan_format/1</c> work with pad char - and default precision. </p> - <p> - Own Id: OTP-14958 Aux Id: PR-1735 </p> - </item> - <item> - <p> The control sequence modifiers <c>t</c> and <c>l</c> - can be used together in the same control sequence which - makes it possible to have Unicode atoms and no detection - of printable character lists at the same time. </p> - <p> - Own Id: OTP-14971 Aux Id: PR-1743 </p> - </item> - <item> - <p> Fix a bug in the Erlang code linter: the check of - guard expressions no longer returns <c>false</c> if the - map syntax is used. The bug affected the Erlang shell, - the Debugger, and other modules evaluating abstract code. - </p> - <p> - Own Id: OTP-15035 Aux Id: ERL-613 </p> - </item> - <item> - <p> - A sys debug fun of type {Fun,State} should not be - possible to install twice. This was, however, possible if - the current State was 'undefined', which was mistaken for - non-existing fun. This has been corrected.</p> - <p> - Own Id: OTP-15049</p> - </item> - </list> - </section> - - - <section><title>Improvements and New Features</title> - <list> - <item> - <p> - The <c>gen_server</c> has gotten a new callback - <c>handle_continue/2</c> for check pointing the state. - This is useful at least when implementing behaviours on - top of <c>gen_server</c> and for some start up scenarios.</p> - <p> - Own Id: OTP-13019 Aux Id: PR-1490 </p> - </item> - <item> - <p> The semantics of timeout parameter - <c>{clean_timeout,infinity}</c> to - <c>gen_statem:call/3</c> has been changed to use a proxy - process for the call. With this change - <c>clean_timeout</c> implicates a proxy process with no - exceptions. This may be a hard to observe - incompatibility: in the presence of network problems a - late reply could arrive in the caller's message queue - when catching errors. That will not happen after this - correction. </p><p> The semantics of timeout parameter - <c>infinity</c> has not been changed. </p> - <p> - *** POTENTIAL INCOMPATIBILITY ***</p> - <p> - Own Id: OTP-13073 Aux Id: PR-1595 </p> - </item> - <item> - <p> - A new logging API is added to OTP. This is implemented in - the Kernel application, module logger.</p> - <p> - Legacy calls to error_logger will be automatically - redirected to the new API.</p> - <p> - See the reference manual for module logger, and the - User's Guide for the Kernel application for more - information.</p> - <p> - Own Id: OTP-13295</p> - </item> - <item> - <p> Add functions - <c>calendar:system_time_to_local_time/2</c> and - <c>calendar:system_time_to_universal_time/2</c>. </p> - <p> - Own Id: OTP-13413</p> - </item> - <item> - <p> Functions <c>rand:uniform_real/0</c> and - <c>rand:uniform_real_s/1</c> have been added. They - produce uniformly distributed numbers in the range <c>0.0 - =< X < 1.0</c> that are as close to random real - numbers as Normalized IEEE 754 Double Precision allows. - Because the random real number exactly <c>0.0</c> is - infinitely improbable they will never return exactly - <c>0.0</c>. </p><p> These properties are useful when you - need to call for example <c>math:log(X)</c> or <c>1 / - X</c> on a random value <c>X</c>, since that will never - fail with a number from these new functions. </p> - <p> - Own Id: OTP-13764 Aux Id: PR-1574 </p> - </item> - <item> - <p> - Added maps:iterator/0 and maps:next/1 to be used for - iterating over the key-value associations in a map.</p> - <p> - Own Id: OTP-14012</p> - </item> - <item> - <p>Changed the default behaviour of <c>.erlang</c> - loading: <c>.erlang</c> is no longer loaded from the - current directory. <c>c:erlangrc(PathList)</c> can be - used to search and load an <c>.erlang</c> file from user - specified directories.</p> <p><c>escript</c>, - <c>erlc</c>, <c>dialyzer</c> and <c>typer</c> no longer - load an <c>.erlang</c> at all.</p> - <p> - *** POTENTIAL INCOMPATIBILITY ***</p> - <p> - Own Id: OTP-14439</p> - </item> - <item> - <p> - Added new uri_string module to stdlib for handling URIs - (RFC 3986).</p> - <p> - Own Id: OTP-14496</p> - </item> - <item> - <p> - Update Unicode specification to version 10.0.</p> - <p> - Own Id: OTP-14503</p> - </item> - <item> - <p><c>filelib:wildcard()</c> now allows characters with a - special meaning to be escaped using backslashes.</p> - <p>This is an incompatible change, but note that the use - of backslashes in wildcards would already work - differently on Windows and Unix. Existing calls to - <c>filelib:wildcard()</c> needs to be updated. On - Windows, directory separators must always be written as a - slash.</p> - <p> - *** POTENTIAL INCOMPATIBILITY ***</p> - <p> - Own Id: OTP-14577</p> - </item> - <item> - <p> - The supervisor now stores its child specifications in a - map instead of a list. This causes a significant - improvement when starting many children under a - non-simple_one_for_one supervisor.</p> - <p> - Own Id: OTP-14586</p> - </item> - <item> - <p> The <c>base64</c> module is optimized. </p> <p> Note - that the functions <c>encode/1</c>, <c>decode/1</c>, and - <c>mime_decode/1</c> fail unless called with an argument - of the documented type. They used to accept any - <c>iodata()</c>. </p> - <p> - Own Id: OTP-14624 Aux Id: PR-1565 </p> - </item> - <item> - <p> Add function <c>lists:search/2</c>. </p> - <p> - Own Id: OTP-14675 Aux Id: PR-102 </p> - </item> - <item> - <p> - uri_string module extended with functions for handling - application/x-www-form-urlencoded query strings based on - the HTML5 specification.</p> - <p> - Own Id: OTP-14747</p> - </item> - <item> - <p> Add functions - <c>calendar:rfc3339_to_system_time/1,2</c> and - <c>calendar:system_time_to_rfc3339/1,2</c>. </p> - <p> - Own Id: OTP-14764</p> - </item> - <item> - <p> The stack traces returned by the functions of the - <c>erl_eval</c> module more accurately reflect where the - exception occurred. </p> - <p> - Own Id: OTP-14826 Aux Id: PR 1540 </p> - </item> - <item> - <p> Add options <c>atime</c>, <c>mtime</c>, <c>ctime</c>, - <c>uid</c>, and <c>gid</c> to the <c>erl_tar:add/3,4</c> - functions. </p> - <p> - Own Id: OTP-14834 Aux Id: PR 1608 </p> - </item> - <item> - <p>Added <c>ets:whereis/1</c> for retrieving the table - identifier of a named table.</p> - <p> - Own Id: OTP-14884</p> - </item> - <item> - <p> - Improved URI normalization functions in the uri_string - module.</p> - <p> - Own Id: OTP-14910</p> - </item> - <item> - <p> The new functions <c>io_lib:fwrite/3</c> and - <c>io_lib:format/3</c> take a third argument, an option - list. The only option is <c>chars_limit</c>, which is - used for limiting the number of returned characters. The - limit is soft, which means that the number of returned - characters exceeds the limit with at most a smallish - amount. If the limit is set, the functions - <c>format/3</c> and <c>fwrite/3</c> try to distribute the - number of characters evenly over the control sequences - <c>pPswW</c>. Furthermore, the control sequences - <c>pPwP</c> try to distribute the number of characters - evenly over substructures. </p> <p> A modification of the - control sequences <c>pPwW</c> is that even if there is no - limit on the number of returned characters, all - associations of a map are printed to the same depth. The - aim is to give a more consistent output as the order of - map keys is not defined. As before, if the depth is less - than the number of associations of a map, the selection - of associations to print is arbitrary. </p> - <p> - Own Id: OTP-14983</p> - </item> - <item> - <p> Add functions <c>ordsets:is_empty/1</c> and - <c>sets:is_empty/1</c>. </p> - <p> - Own Id: OTP-14996 Aux Id: ERL-557, PR-1703 </p> - </item> - <item> - <p>External funs with literal values for module, name, - and arity (e.g. <c>erlang:abs/1</c>) are now treated as - literals. That means more efficient code that produces - less garbage on the heap.</p> - <p> - Own Id: OTP-15003</p> - </item> - <item> - <p> - sys:statistics(Pid,get) did not report 'out' messages - from gen_server. This is now corrected.</p> - <p> - Own Id: OTP-15047</p> - </item> - <item> - <p> - A sys debug function can now have the format - {Id,Fun,State} in addition to the old {Fun,State}. This - allows installing multiple instances of a debug fun.</p> - <p> - Own Id: OTP-15048</p> - </item> - </list> - </section> - -</section> - <section><title>STDLIB 3.4.5</title> <section><title>Fixed Bugs and Malfunctions</title> |