From b9faca269de1de51ae33577cc204befbea24243c Mon Sep 17 00:00:00 2001 From: Henrik Date: Tue, 29 May 2018 10:47:25 +0200 Subject: Revert "Prepare release" This reverts commit fd8e49b5bddceaae803670121b603b5eee8c5c08. --- lib/stdlib/doc/src/notes.xml | 393 ------------------------------------------- 1 file changed, 393 deletions(-) (limited to 'lib/stdlib/doc') diff --git a/lib/stdlib/doc/src/notes.xml b/lib/stdlib/doc/src/notes.xml index b925fa3b02..e26c4aba74 100644 --- a/lib/stdlib/doc/src/notes.xml +++ b/lib/stdlib/doc/src/notes.xml @@ -31,399 +31,6 @@

This document describes the changes made to the STDLIB application.

-
STDLIB 3.5 - -
Fixed Bugs and Malfunctions - - -

gen_statem improvements.

When using an - exception that is valid but not allowed in a state enter - call, the reason has been changed from - {bad_action_from_state_function,Action} to - {bad_state_enter_action_from_state_function,Action}. -

Timer parsing has been improved. Many erroneous - timeout tuples was not handled correctly.

The - documentation has been updated, in particular the User's - Guide and the pointer to it from the Reference Manual is - much more obvious.

-

- Own Id: OTP-14015

-
- -

- The type specifications for file:posix/0 and - inet:posix/0 have been updated according to which - errors file and socket operations should be able to - return.

-

- Own Id: OTP-14019 Aux Id: ERL-550

-
- -

File operations used to accept filenames - 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 rejected and will cause primitive file - operations to fail.

Also environment variable - operations used to accept names and - values 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 rejected and will cause environment variable - operations to fail.

Primitive environment - variable operations also used to accept the $= - character in environment variable names causing various - problems. $= characters in environment variable - names are now also rejected.

Also - os:cmd/1 now - reject null characters inside its command. -

erlang:open_port/2 - will also reject null characters inside the port name - from now on.

-

- *** POTENTIAL INCOMPATIBILITY ***

-

- Own Id: OTP-14543 Aux Id: ERL-370

-
- -

Make io_lib:unscan_format/1 work with pad char - and default precision.

-

- Own Id: OTP-14958 Aux Id: PR-1735

-
- -

The control sequence modifiers t and l - 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.

-

- Own Id: OTP-14971 Aux Id: PR-1743

-
- -

Fix a bug in the Erlang code linter: the check of - guard expressions no longer returns false if the - map syntax is used. The bug affected the Erlang shell, - the Debugger, and other modules evaluating abstract code. -

-

- Own Id: OTP-15035 Aux Id: ERL-613

-
- -

- 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.

-

- Own Id: OTP-15049

-
-
-
- - -
Improvements and New Features - - -

- The gen_server has gotten a new callback - handle_continue/2 for check pointing the state. - This is useful at least when implementing behaviours on - top of gen_server and for some start up scenarios.

-

- Own Id: OTP-13019 Aux Id: PR-1490

-
- -

The semantics of timeout parameter - {clean_timeout,infinity} to - gen_statem:call/3 has been changed to use a proxy - process for the call. With this change - clean_timeout 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.

The semantics of timeout parameter - infinity has not been changed.

-

- *** POTENTIAL INCOMPATIBILITY ***

-

- Own Id: OTP-13073 Aux Id: PR-1595

-
- -

A new logging API is added to Erlang/OTP, see the - logger(3) manual - page, and section Logging in the - Kernel User's Guide.

-

Calls to error_logger are automatically - redirected to the new API, and legacy error logger event - handlers can still be used. It is, however, recommended - to use the Logger API directly when writing new code.

-

Notice the following potential incompatibilities:

-

Kernel configuration parameters - error_logger still works, but is overruled if the - default handler's output destination is configured with - Kernel configuration parameter logger.

In - general, parameters for configuring error logger are - overwritten by new parameters for configuring - Logger.

The concept of SASL error - logging is deprecated, meaning that by default the SASL - application does not affect which log events are - logged.

By default, supervisor reports and crash - reports are logged by the default Logger handler started - by Kernel, and end up at the same destination (terminal - or file) as other standard log event from Erlang/OTP.

-

Progress reports are not logged by default, but can be - enabled with the Kernel configuration parameter - logger_progress_reports.

To obtain - backwards compatibility with the SASL error logging - functionality from earlier releases, set Kernel - configuration parameter logger_sasl_compatible to - true. This prevents the default Logger handler - from logging any supervisor-, crash-, or progress - reports. Instead, SASL adds a separate Logger handler - during application start, which takes care of these log - events. The SASL configuration parameters - sasl_error_logger and sasl_errlog_type - specify the destination (terminal or file) and severity - level to log for these events.

-

- *** POTENTIAL INCOMPATIBILITY ***

-

- Own Id: OTP-13295

-
- -

Add functions - calendar:system_time_to_local_time/2 and - calendar:system_time_to_universal_time/2.

-

- Own Id: OTP-13413

-
- -

Functions rand:uniform_real/0 and - rand:uniform_real_s/1 have been added. They - produce uniformly distributed numbers in the range 0.0 - =< X < 1.0 that are as close to random real - numbers as Normalized IEEE 754 Double Precision allows. - Because the random real number exactly 0.0 is - infinitely improbable they will never return exactly - 0.0.

These properties are useful when you - need to call for example math:log(X) or 1 / - X on a random value X, since that will never - fail with a number from these new functions.

-

- Own Id: OTP-13764 Aux Id: PR-1574

-
- -

- Added maps:iterator/0 and maps:next/1 to be used for - iterating over the key-value associations in a map.

-

- Own Id: OTP-14012

-
- -

Changed the default behaviour of .erlang - loading: .erlang is no longer loaded from the - current directory. c:erlangrc(PathList) can be - used to search and load an .erlang file from user - specified directories.

escript, - erlc, dialyzer and typer no longer - load an .erlang at all.

-

- *** POTENTIAL INCOMPATIBILITY ***

-

- Own Id: OTP-14439

-
- -

- Added new uri_string module to stdlib for handling URIs - (RFC 3986).

-

- Own Id: OTP-14496

-
- -

- Update Unicode specification to version 10.0.

-

- Own Id: OTP-14503

-
- -

filelib:wildcard() now allows characters with a - special meaning to be escaped using backslashes.

-

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 - filelib:wildcard() needs to be updated. On - Windows, directory separators must always be written as a - slash.

-

- *** POTENTIAL INCOMPATIBILITY ***

-

- Own Id: OTP-14577

-
- -

- 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.

-

- Own Id: OTP-14586

-
- -

The base64 module is optimized.

Note - that the functions encode/1, decode/1, and - mime_decode/1 fail unless called with an argument - of the documented type. They used to accept any - iodata().

-

- Own Id: OTP-14624 Aux Id: PR-1565

-
- -

Add function lists:search/2.

-

- Own Id: OTP-14675 Aux Id: PR-102

-
- -

- uri_string module extended with functions for handling - application/x-www-form-urlencoded query strings based on - the HTML5 specification.

-

- Own Id: OTP-14747

-
- -

Add functions - calendar:rfc3339_to_system_time/1,2 and - calendar:system_time_to_rfc3339/1,2.

-

- Own Id: OTP-14764

-
- -

The stack traces returned by the functions of the - erl_eval module more accurately reflect where the - exception occurred.

-

- Own Id: OTP-14826 Aux Id: PR 1540

-
- -

Add options atime, mtime, ctime, - uid, and gid to the erl_tar:add/3,4 - functions.

-

- Own Id: OTP-14834 Aux Id: PR 1608

-
- -

Added ets:whereis/1 for retrieving the table - identifier of a named table.

-

- Own Id: OTP-14884

-
- -

- Improved URI normalization functions in the uri_string - module.

-

- Own Id: OTP-14910

-
- -

The new functions io_lib:fwrite/3 and - io_lib:format/3 take a third argument, an option - list. The only option is chars_limit, 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 - format/3 and fwrite/3 try to distribute the - number of characters evenly over the control sequences - pPswW. Furthermore, the control sequences - pPwP try to distribute the number of characters - evenly over substructures.

A modification of the - control sequences pPwW 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.

-

- Own Id: OTP-14983

-
- -

Add functions ordsets:is_empty/1 and - sets:is_empty/1.

-

- Own Id: OTP-14996 Aux Id: ERL-557, PR-1703

-
- -

- Improve performance of string:uppercase/1, - string:lowercase/1 and string:casefold/1 - when handling ASCII characters.

-

- Own Id: OTP-14998

-
- -

External funs with literal values for module, name, - and arity (e.g. erlang:abs/1) are now treated as - literals. That means more efficient code that produces - less garbage on the heap.

-

- Own Id: OTP-15003

-
- -

- sys:statistics(Pid,get) did not report 'out' messages - from gen_server. This is now corrected.

-

- Own Id: OTP-15047

-
- -

- 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.

-

- Own Id: OTP-15048

-
- -

The lib module is removed:

lib:error_message/2 is - removed. lib:flush_receive/0 is - removed. lib:nonl/1 is - removed. lib:progname/0 is replaced - by ct:get_progname/0. - lib:send/2 is removed. - lib:sendw/2 is removed. -

- *** POTENTIAL INCOMPATIBILITY ***

-

- Own Id: OTP-15072 Aux Id: PR 1786

-
- -

- Function ets:delete_all_objects/1 now yields the - scheduler thread for large tables that take significant - time to clear. This to improve real time characteristics - of other runnable processes.

-

- Own Id: OTP-15078

-
-
-
- -
-
STDLIB 3.4.5
Fixed Bugs and Malfunctions -- cgit v1.2.3