From b92ea63417bc6933393a3c285faf393b3d287ac2 Mon Sep 17 00:00:00 2001 From: Erlang/OTP Date: Mon, 12 Dec 2011 18:14:34 +0100 Subject: Prepare release --- lib/kernel/doc/src/notes.xml | 235 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 235 insertions(+) (limited to 'lib/kernel/doc') diff --git a/lib/kernel/doc/src/notes.xml b/lib/kernel/doc/src/notes.xml index ec57b03bd9..9121186631 100644 --- a/lib/kernel/doc/src/notes.xml +++ b/lib/kernel/doc/src/notes.xml @@ -30,6 +30,241 @@

This document describes the changes made to the Kernel application.

+
Kernel 2.15 + +
Fixed Bugs and Malfunctions + + +

Calls to global:whereis_name/1 have been + substituted for calls to + global:safe_whereis_name/1 since the latter is not + safe at all.

+

The reason for not doing this earlier is that setting + a global lock masked out a bug concerning the restart of + supervised children. The bug has now been fixed by a + modification of global:whereis_name/1. (Thanks to + Ulf Wiger for code contribution.)

+

A minor race conditions in gen_fsm:start* has + been fixed: if one of these functions returned {error, + Reason} or ignore, the name could still be registered + (either locally or in global. (This is the same + modification as was done for gen_server in OTP-7669.)

+

The undocumented function + global:safe_whereis_name/1 has been removed.

+

+ Own Id: OTP-9212 Aux Id: seq7117, OTP-4174

+
+ +

+ Honor option packet_size for http packet parsing + by both TCP socket and erlang:decode_packet. This + gives the ability to accept HTTP headers larger than the + default setting, but also avoid DoS attacks by accepting + lines only up to whatever length you wish to allow. For + consistency, packet type line also honor option + packet_size. (Thanks to Steve Vinoski)

+

+ Own Id: OTP-9389

+
+ +

disk_log:reopen/2,3 and + disk_log:breopen/3 could return the error reason + from file:rename/2 rather than the reason + {file_error, Filename, Reason}. This bug has been + fixed.

The message {disk_log, Node, {error, + disk_log_stopped}} which according the documentation + is sent upon failure to truncate or reopen a disk log was + sometimes turned into a reply. This bug has been fixed. +

+

+ *** POTENTIAL INCOMPATIBILITY ***

+

+ Own Id: OTP-9508

+
+ +

+ Environment variable 'shutdown_timeout' is added to + kernel application. Earlier, application_controller would + hang forever if an application top supervisor did not + terminate upon a shutdown request. If this new + environment variable is set to a positive integer T, then + application controller will now give up after T + milliseconds and instead brutally kill the application. + For backwards compatibility, the default value for + shutdown_timeout is 'infinity'.

+

+ Own Id: OTP-9540

+
+ +

+ Add '-callback' attributes in stdlib's behaviours

+

+ Replace the behaviour_info(callbacks) export in stdlib's + behaviours with -callback' attributes for all the + callbacks. Update the documentation with information on + the callback attribute Automatically generate + 'behaviour_info' function from '-callback' attributes

+

+ 'behaviour_info(callbacks)' is a special function that is + defined in a module which describes a behaviour and + returns a list of its callbacks.

+

+ This function is now automatically generated using the + '-callback' specs. An error is returned by lint if user + defines both '-callback' attributes and the + behaviour_info/1 function. If no type info is needed for + a callback use a generic spec for it. Add '-callback' + attribute to language syntax

+

+ Behaviours may define specs for their callbacks using the + familiar spec syntax, replacing the '-spec' keyword with + '-callback'. Simple lint checks are performed to ensure + that no callbacks are defined twice and all types + referred are declared.

+

+ These attributes can be then used by tools to provide + documentation to the behaviour or find discrepancies in + the callback definitions in the callback module.

+

+ Add callback specs into 'application' module in kernel + Add callback specs to tftp module following internet + documentation Add callback specs to inets_service module + following possibly deprecated comments

+

+ Own Id: OTP-9621

+
+ +

+ make tab completion work in remote shells (Thanks to Mats + Cronqvist)

+

+ Own Id: OTP-9673

+
+ +

+ Add missing parenthesis in heart doc.

+

+ Add missing spaces in the Reference Manual distributed + section.

+

+ In the HTML version of the doc those spaces are necessary + to separate those words.

+

+ Own Id: OTP-9693

+
+ +

+ Fixes net_kernel:get_net_ticktime() doc

+

+ Adds missing description when `ignored' is returned. + (Thanks to Ricardo Catalinas Jiménez )

+

+ Own Id: OTP-9713

+
+ +

While disk_log eagerly collects logged terms + for better performance, collecting too much data may + choke the system and cause huge binaries to be written. + In order to remedy the situation a (small) limit on the + amount of data that is collected before writing to disk + has been introduced.

+

+ Own Id: OTP-9764

+
+ +

+

Correct callback spec in application + module

Refine warning about callback + specs with extra ranges

Cleanup + autoimport compiler directives

Fix + Dialyzer's warnings in typer

Fix + Dialyzer's warning for its own code

+

Fix bug in Dialyzer's behaviours + analysis

Fix crash in + Dialyzer

Variable substitution was + not generalizing any unknown variables.

+

+

+ Own Id: OTP-9776

+ + +

+ Fix a crash when file:change_time/2,3 are called with + invalid dates

+

+ Calling file:change_time/2,3 with an invalid date tuple + (e.g file:change_time("file.txt", {undefined, + undefined})) will cause file_server_2 to crash. + error_logger will shutdown and the whole VM will stop. + Change behavior to validate given dates on system + boundaries. (i.e before issuing a server call).(Thanks to + Ahmed Omar)

+

+ Own Id: OTP-9785

+
+ +
+ + +
Improvements and New Features + + +

An option list argument can now be passed to + file:read_file_info/2, file:read_link_info/2 and + file:write_file_info/3 and set time type + information in the call. Valid options are {time, + local}, {time, universal} and {time, posix}. + In the case of posix time no conversions are made + which makes the operation a bit faster.

+

+ Own Id: OTP-7687

+
+ +

file:list_dir/1,2 will now fill an buffer + entire with filenames from the efile driver before + sending it to an erlang process. This will speed up this + file operation in most cases.

+

+ Own Id: OTP-9023

+
+ +

gen_sctp:open/0-2 may now return + {error,eprotonosupport} if SCTP is not supported

+

gen_sctp:peeloff/1 has been implemented and creates a + one-to-one socket which also are supported now

+

+ *** POTENTIAL INCOMPATIBILITY ***

+

+ Own Id: OTP-9239

+
+ +

+ Sendfile has been added to the file module's API. + sendfile/2 is used to read data from a file and send it + to a tcp socket using a zero copying mechanism if + available on that OS.

+

+ Thanks to Tuncer Ayaz and Steve Vinovski for original + implementation

+

+ Own Id: OTP-9240

+
+ +

+ Tuple funs (a two-element tuple with a module name and a + function) are now officially deprecated and will be + removed in R16. Use 'fun M:F/A' instead. To make + you aware that your system uses tuple funs, the very + first time a tuple fun is applied, a warning will be sent + to the error logger.

+

+ Own Id: OTP-9649

+
+
+
+ +
+
Kernel 2.14.5
Fixed Bugs and Malfunctions -- cgit v1.2.3