aboutsummaryrefslogtreecommitdiffstats
path: root/lib/stdlib/doc/src/notes_history.xml
diff options
context:
space:
mode:
Diffstat (limited to 'lib/stdlib/doc/src/notes_history.xml')
-rw-r--r--lib/stdlib/doc/src/notes_history.xml395
1 files changed, 395 insertions, 0 deletions
diff --git a/lib/stdlib/doc/src/notes_history.xml b/lib/stdlib/doc/src/notes_history.xml
new file mode 100644
index 0000000000..85997f1717
--- /dev/null
+++ b/lib/stdlib/doc/src/notes_history.xml
@@ -0,0 +1,395 @@
+<?xml version="1.0" encoding="latin1" ?>
+<!DOCTYPE chapter SYSTEM "chapter.dtd">
+
+<chapter>
+ <header>
+ <copyright>
+ <year>2006</year><year>2009</year>
+ <holder>Ericsson AB. All Rights Reserved.</holder>
+ </copyright>
+ <legalnotice>
+ The contents of this file are subject to the Erlang Public License,
+ Version 1.1, (the "License"); you may not use this file except in
+ compliance with the License. You should have received a copy of the
+ Erlang Public License along with this software. If not, it can be
+ retrieved online at http://www.erlang.org/.
+
+ Software distributed under the License is distributed on an "AS IS"
+ basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
+ the License for the specific language governing rights and limitations
+ under the License.
+
+ </legalnotice>
+
+ <title>STDLIB Release Notes</title>
+ <prepared></prepared>
+ <docno></docno>
+ <date></date>
+ <rev></rev>
+ </header>
+
+ <section>
+ <title>STDLIB 1.13</title>
+
+ <section>
+ <title>Fixed Bugs and Malfunctions</title>
+ <list type="bulleted">
+ <item>
+ <p>For the bit syntax, when matching with a size field that
+ is bound during the same matching, a warning for unused
+ variable was emitted. This bug has been fixed.</p>
+ <p>Own Id: OTP-4858</p>
+ </item>
+ <item>
+ <p>When parsing a badly formed file <c>epp</c> hangs. This
+ problem has been fixed.</p>
+ <p>Own Id: OTP-4871 Aux Id: OTP-4870 </p>
+ </item>
+ <item>
+ <p>Bugs concerning guards have been fixed in the Erlang
+ interpreter.</p>
+ <p>Own Id: OTP-4885</p>
+ </item>
+ <item>
+ <p>The linter now checks the record name when calling the
+ function <c>erlang:is_record/2</c>.</p>
+ <p>Own Id: OTP-4886</p>
+ </item>
+ <item>
+ <p>Guards of mach specifications are corrected to resemble
+ the semantics of guards in real code more closely. The
+ implementation now corresponds to the documentation in
+ ERTS User's Guide. The following things are corrected:</p>
+ <list type="bulleted">
+ <item>Guard semantics was wrong when it came to logical
+ operators and exceptions.
+ <c>{'or', {'is_integer','$1'}, {'or', '$1', '$1'}}</c>
+ evaluated to <c>true</c> with <c>'$1'</c> bound to an
+ integer.</item>
+ <item>Unary + and - was not implemented</item>
+ <item>Calling operators as Bif's was not supported by
+ <c>ets/dbg:fun2ms</c> (<c>erlang:'or'(A,B)</c> etc)</item>
+ <item>Old typetests (like <c>integer(X)</c> instead of
+ <c>is_integer(X)</c>) was not supported by
+ <c>ets/dbg:fun2ms</c></item>
+ <item>Semicolon (;) in guards was not supported by
+ <c>ets/dbg:fun2ms</c></item>
+ </list>
+ <p>*** POTENTIAL INCOMPATIBILITY ***</p>
+ <p>Own Id: OTP-4927</p>
+ </item>
+ <item>
+ <p>A bug that could cause a crash has been fixed in the
+ <c>file_sorter</c> module. The crash could only occur
+ when sorting or merging to a file and the input function
+ returned <c>{end_of_input, Value}</c>.</p>
+ <p>Own Id: OTP-5009</p>
+ </item>
+ <item>
+ <p>A function clause exit in <c>filelib:fold_files/5</c> has
+ been fixed.</p>
+ <p>Own Id: OTP-5137</p>
+ </item>
+ <item>
+ <p><c>filelib:fold_files/5</c> has been fixed to not include
+ directories that match the regular expression in the
+ result. In this process, <c>filelib:is_regular/1</c> has
+ been added to the module.</p>
+ <p>WARNING the behaviour of <c>filelib:fold_files/5</c> has
+ also been changed so the regexp match is tried not on
+ the full name, but locally in each traversed directory.</p>
+ <p>Own Id: OTP-5171 Aux Id: OTP-5128 </p>
+ </item>
+ </list>
+ </section>
+
+ <section>
+ <title>Improvements and New Features</title>
+ <list type="bulleted">
+ <item>
+ <p>The initial shell process started in parallel with the
+ <c>init</c> boot process. This made it possible to pipe
+ commands to the shell that got evaluated before the system
+ had booted properly. Also the shell was normally accessible
+ before <c>.erlang</c> had been evaluated and this caused
+ problems especially related to code loading. This has now
+ been fixed so that the initial shell is not accessible
+ until after the init boot routine has finished and
+ <c>.erlang</c> has been evaluated. Note that the shell
+ starts before any <c>-s</c> arguments are executed.</p>
+ <p>Own Id: OTP-4877</p>
+ </item>
+ <item>
+ <p>It is now possible to compile files with <c>erlc</c> without
+ getting a lot of (for compilation) unnecessary code
+ loaded and executed (like distribution, inet config,
+ etc). <c>erlc</c> now also calls <c>erl</c> with <c>-boot start_clean</c> (so that SASL is not started even if
+ <c>start_sasl</c> is default boot script).</p>
+ <p>Own Id: OTP-4878</p>
+ </item>
+ <item>
+ <p>Dets tables can now be opened or closed in parallel. In
+ particular, if some table is being repaired, other tables
+ can still be opened or closed.</p>
+ <p>Own Id: OTP-4908</p>
+ </item>
+ <item>
+ <p>The new STDLIB module <c>qlc</c> implements a query
+ language with a list comprehension syntax completely
+ embedded in Erlang. There is support for reading data
+ from ETS, Dets, and Mnesia tables as well as for defining
+ other sources of data. For easy testing queries can be
+ stated in the Erlang shell. The <c>qlc</c> module aims at
+ replacing Mnemosyne. See <c>qlc(3)</c> for details and
+ examples.</p>
+ <p>Own Id: OTP-5043</p>
+ </item>
+ <item>
+ <p>Some support for records has been added to the Erlang
+ shell. There are commands for reading record definitions
+ from files and for manipulating record definitions in the
+ shell. The record syntax can be used in the shell and
+ return values are printed as records when possible using
+ the records definitions known to the shell. New commands
+ in the shell are <c>rd/2</c>, <c>rf/0,1</c>,
+ <c>rl/0,1</c>, <c>rp/1</c>, and <c>rr/1,2,3</c>. Existing
+ functions in <c>user_default.erl</c> with any of these
+ names need to be renamed. See <c>shell(3)</c> for further
+ details.</p>
+ <p>*** POTENTIAL INCOMPATIBILITY ***</p>
+ <p>Own Id: OTP-5063</p>
+ </item>
+ <item>
+ <p>A new function, <c>string:to_integer/1,</c> has been added.</p>
+ <p>Own Id: OTP-5081 Aux Id: OTP-5136 </p>
+ </item>
+ <item>
+ <p>The new function <c>dets:repair_continuation/2</c> can be
+ used for restoring an opaque continuation returned by
+ <c>dets:select/1</c> or <c>dets:select/3</c> if the
+ continuation has passed through the external term format
+ (been sent between nodes or stored on disk).</p>
+ <p>Own Id: OTP-5126</p>
+ </item>
+ <item>
+ <p>A new function, <c>string:to_float/1,</c> has been added.</p>
+ <p>Own Id: OTP-5136 Aux Id: OTP-5081 </p>
+ </item>
+ <item>
+ <p>Test cases have been added for <c>string</c>.</p>
+ <p>Own Id: OTP-5138</p>
+ </item>
+ </list>
+ </section>
+ </section>
+
+ <section>
+ <title>STDLIB 1.12.8</title>
+
+ <section>
+ <title>Improvements and New Features</title>
+ <list type="bulleted">
+ <item>
+ <p>The functions <c>ets:insert_new/2</c> and
+ <c>dets:insert_new/2</c> are added. Please consult
+ the manual pages for details.</p>
+ <p>Own Id: OTP-5075</p>
+ </item>
+ <item>
+ <p>New function: <c>proc_lib:hibernate/3.</c> Processes spawned
+ using <c>proc_lib</c> (also indirectly, such as
+ <c>gen_server</c> process), should use this function
+ instead of the BIF <c>erlang:hibernate/3</c> directly to
+ ensure that the exception handler for the process continues
+ to work when the process is awaken.</p>
+ <p>Own Id: OTP-5077</p>
+ </item>
+ </list>
+ </section>
+ </section>
+
+ <section>
+ <title>STDLIB 1.12.6</title>
+
+ <section>
+ <title>Fixed Bugs and Malfunctions</title>
+ <list type="bulleted">
+ <item>
+ <p>If many files or sockets were open (more than 256),
+ <c>beam_lib</c> operations could fail. Corrected.</p>
+ <p>Own Id: OTP-5046 Aux Id: OTP-4997, seq8590 </p>
+ </item>
+ </list>
+ </section>
+ </section>
+
+ <section>
+ <title>STDLIB 1.12.5</title>
+
+ <section>
+ <title>Fixed Bugs and Malfunctions</title>
+ <list type="bulleted">
+ <item>
+ <p>When opening a Dets table read only an attempt was made
+ to re-hash the table resulting in an error message. This
+ problem has been fixed.</p>
+ <p>Own Id: OTP-4989 Aux Id: seq8536 </p>
+ </item>
+ </list>
+ </section>
+
+ <section>
+ <title>Improvements and New Features</title>
+ <list type="bulleted">
+ <item>
+ <p>If a <c>gen_server</c>, <c>gen_event</c> or <c>gen_fsm</c>
+ process exits with <c>{undef,[{M,F,A}|...]}</c>, the error
+ report will now state if the function call failed because
+ the module could not be loaded or because the function was
+ not exported.</p>
+ <p>Own Id: OTP-4952 Aux Id: OTP-4925 </p>
+ </item>
+ </list>
+ </section>
+ </section>
+
+ <section>
+ <title>STDLIB 1.12.4</title>
+
+ <section>
+ <title>Fixed Bugs and Malfunctions</title>
+ <list type="bulleted">
+ <item>
+ <p>The shell function <c>c:regs()</c> did crash if there was
+ a registered port among the registered names. This is now
+ corrected.</p>
+ <p>Own Id: OTP-4890</p>
+ </item>
+ <item>
+ <p>A bug has been fixed in <c>dets</c>: not all objects were
+ always visible in tables with more than 131072 keys.</p>
+ <p>Own Id: OTP-4906</p>
+ </item>
+ <item>
+ <p>A bug has been fixed in <c>dets</c>: when trying to
+ repair a version 9 table, a <c>not_a_dets_file</c> error
+ message was returned unnecessarily often.</p>
+ <p>Own Id: OTP-4907</p>
+ </item>
+ </list>
+ </section>
+
+ <section>
+ <title>Improvements and New Features</title>
+ <list type="bulleted">
+ <item>
+ <p>Starting Erlang with the <c>+Bi</c> flag (to ignore ^C), now
+ also disables the quit ('q') option in the JCL menu.</p>
+ <p>Own Id: OTP-4897</p>
+ </item>
+ </list>
+ </section>
+ </section>
+
+ <section>
+ <title>STDLIB 1.12.3</title>
+
+ <section>
+ <title>Fixed Bugs and Malfunctions</title>
+ <list type="bulleted">
+ <item>
+ <p>A bug in <c>erl_scan</c> caused the compiler to hang when
+ end-of-file in a comment was encountered. This is now
+ corrected.</p>
+ <p>Own Id: OTP-4787</p>
+ </item>
+ <item>
+ <p>The linter now reports errors for unsafe variables when
+ the option <c>nowarn_unused_vars</c> is given.</p>
+ <p>Own Id: OTP-4831 Aux Id: seq8202 </p>
+ </item>
+ <item>
+ <p><c>gen_server:cast/2</c> now crashes for invalid
+ arguments.</p>
+ <p><c>gen_server:abcast/2-3</c> now crashes for invalid
+ arguments. The behaviour when casting to the name
+ <c>global</c> has been corrected. Previously,
+ <c>gen_server:abcast(global,[node@host])</c> tried to
+ cast to the globally registered name <c>node@host</c>,
+ which is more of a bug than less. Now such a call will
+ cast to the registered name <c>global</c> at the node
+ <c>node@host</c> as (probably) expected.</p>
+ <p>An <c>rpc:call/5</c> and <c>rpc:block_call/5</c> having a
+ timeout argument has been added.</p>
+ <p><c>rpc:abcast/2-3</c> has been improved not to get stuck
+ waiting for connection setup if the remote node is not
+ connected. In this case the send is spawned off to a
+ temporary process.</p>
+ <p>Two typos in the docs for module <c>calendar</c> has
+ been corrected thanks to Bengt Kleberg.</p>
+ <p>*** POTENTIAL INCOMPATIBILITY ***</p>
+ <p>Own Id: OTP-4844 Aux Id: seq8226 </p>
+ </item>
+ </list>
+ </section>
+
+ <section>
+ <title>Improvements and New Features</title>
+ <list type="bulleted">
+ <item>
+ <p>The <c>f/1</c> shell command did not work correctly with
+ restricted shell.</p>
+ <p>Own Id: OTP-4818</p>
+ </item>
+ </list>
+ </section>
+ </section>
+
+ <section>
+ <title>STDLIB 1.12.2</title>
+
+ <section>
+ <title>Fixed Bugs and Malfunctions</title>
+ <list type="bulleted">
+ <item>
+ <p><c>gen_server</c>: the internal function <c>get_parent,</c>
+ called by <c>gen_server:enter_loop/[4,5],</c> now returns
+ the pid of parents that are registered processes, instead of
+ returning their name. The reason for this is that
+ <c>gen_server</c> relies on that the parent is represented
+ as a pid. This error in <c>get_parent/0</c> had the effect
+ that the terminate function of the child was not run when
+ it was shutdown.</p>
+ <p>Own Id: OTP-4820 Aux Id: seq8170 </p>
+ </item>
+ </list>
+ </section>
+ </section>
+
+ <section>
+ <title>STDLIB 1.12.1</title>
+
+ <section>
+ <title>Fixed Bugs and Malfunctions</title>
+ <list type="bulleted">
+ <item>
+ <p>The code server could hang if invoked early in the startup.
+ For example if the emulator was started with
+ "<c>-s file eval Filename</c> and <c>Filename</c> contained
+ a call to <c>code:add_patha/1</c> the code server
+ accidentally tried to execute code in an unloaded module
+ from inside the code that loaded a module - hence hangup.
+ This bug has now been fixed.</p>
+ <p>Note! Starting Erlang through code loading from a remote
+ Erlang boot server will not work after this patch. It will
+ be fixed in a later patch. Rumours has it that remote boot
+ server code loading did not work before this patch either.
+ It is not a commonly used feature.</p>
+ <p>*** POTENTIAL INCOMPATIBILITY ***</p>
+ <p>Own Id: OTP-4802 Aux Id: seq8314 </p>
+ </item>
+ </list>
+ </section>
+ </section>
+</chapter>
+