Bug fix release : otp_src_R10B-9
Build date      : 2005-12-13

This is a bug fix release 9 for the R10B release.
You can download the full source distribution from
 
  http://www.erlang.org/download/otp_src_R10B-9.tar.gz
  http://www.erlang.org/download/otp_src_R10B-9.readme (this file)

Note: To unpack the TAR archive you need a GNU TAR compatible
program. For instance, on MacOS X before 10.3 you must use the 'gnutar' command;
you can't use the 'tar' command or StuffIt to unpack the sources.


For installation instructions please read the README that is part of
the distribution.

The Windows binary distribution can be downloaded from

  http://www.erlang.org/download/otp_win32_R10B-9.exe


On-line documentation can be found at http://www.erlang.org/doc.html.
You can also download the complete HTML documentation or the Unix manual files

  http://www.erlang.org/download/otp_doc_html_R10B-9.tar.gz
  http://www.erlang.org/download/otp_doc_man_R10B-9.tar.gz

We also want to thank those that sent us patches, suggestions and bug
reports,

The OTP Team


--- asn1-1.4.4.9 ------------------------------------------------------------

    OTP-5783  Now exists a default function clause for table lookup of a
	      table constraint. This causes a nice error instead of a
	      crash. Did also remove some obsolete funs ({Mod,Fun}) in
	      generated code.

    OTP-5812  ASN1-compiler faild to derive a value out of an external
	      reference in some certain cases, when compiling specs so that
	      the spec with the reference was compiled before the spec with
	      the defined value.

    OTP-5831  The documentation of how records of embedded types are named
	      is extended and made clearer by examples and rules. The
	      section "Naming of Records in .hrl Files" in the User's Guide
	      is added.

    OTP-5833  The documentation of the megaco:call and megaco:cast
	      functions was unclear regarding pre-encoded actions.


--- compiler-4.3.11 ------------------------------------------------------------

    OTP-5791  The compiler would assume that some patterns with
	      aliases ('=') would not match if they were split into
	      several lines. (Thanks to Peter Nagy/Mats Cronqvist.)

	      Minor cleanups to eliminate Dialyzer warnings.


--- cosNotification-1.1.2 ------------------------------------------------------------

    OTP-5823  Possible to configure cosNotification not to type check, by
	      invoking corba_object:is_a/2, supplied IOR:s. When a type
	      check fails, the feedback has been improved.


--- debugger-3.0.1 ------------------------------------------------------------

    OTP-4284  A number of smaller improvements to the GUI:

	      * Multiple choices now possible in Function Break
	      Dialog Window.

	      * Right-clicking the Module entry in a Break Dialog
	      Window will open a popup menu from which the
	      appropriate (interpreted) module can be selected.

	      * Auto Attach options can now be changed using the
	      buttons in the left part of the Monitor Window, not
	      only by the corresponding menu buttons.

	      * Buttons for enabling and disabling all breakpoints
	      have been added.

	      * View Module Window keyboard shortcuts corrected.

    OTP-5837  When evaluating a guard expression for a fun function
	      clause, the environment variable bindings were not
	      taken into account.


--- edoc-0.6.8 ------------------------------------------------------------

    OTP-5862  Deprecated functions are marked as such in the function
	      index.

	      The presence of a behaviour_info/1 function is detected
	      and used.

	      Improved end-of-sentence detection ('.' followed by br
	      or p HTML tags). (Reported by Zoltan Peter Toth.)


--- erts-5.4.11 ------------------------------------------------------------

    OTP-5795  Timers could sometimes timeout too early. This bug has
	      now been fixed.

	      Automatic cancellation of timers created by
	      erlang:send_after(Time, pid(), Msg), and
	      erlang:start_timer(Time, pid(), Msg) has been
	      introduced. Timers created with the receiver specified
	      by a pid, will automatically be cancelled when the
	      receiver exits. For more information see the erlang(3)
	      man page.

	      In order to be able to maintain a larger amount of
	      timers without increasing the maintenance cost, the
	      internal timer wheel and bif timer table have been
	      enlarged.

	      Also a number of minor bif timer optimizations have
	      been implemented.

    OTP-5818  By setting Unix environment variables, the priority for
	      the emulator can be lowered when it is writing crash
	      dumps and the time allowed for finishing writing a
	      crash dump can be set to a certain number of seconds.
	      See the documentation for erl in the erts application.
	      (Also, a few other previously undocumented environment
	      variables are now documented.)

    OTP-5827  erlang:monitor(process, Pid) hanged if Pid referred to
	      a process on a non-existing node with the same nodename
	      as the nodename of node on which the call was made.
	      This bug has now been fixed.

    OTP-5835  The Install script no longer needs to start the Erlang
	      emulator to build the sasl start script, which
	      faciliates cross-platform installation (e.g. installing
	      the Linux version of OTP in a Clearcase or NFS file
	      from a computer running Solaris).

    OTP-5847  Documentation improvements:

	      - documentation for erlang:link/1 corrected

	      - command line flag -code_path_cache added

	      - erl command line flags clarifications

	      - net_kernel(3) clarifications


--- erts-5.4.12 ------------------------------------------------------------

    OTP-5794  Several minor changes were made to increase the
	      reliability of setting up connections to other Erlang
	      nodes (especially when there were many Erlang nodes
	      involved).

    OTP-5819  Fixed a minor build problem on Windows.

    OTP-5822  The delay_send option for gen_tcp was broken on
	      Windows.

    OTP-5828  If there were user-defined variables in the boot
	      script, and their values were not provided using the
	      -boot_var option, the emulator would refuse to start
	      with a confusing error message. Corrected to show a
	      clear, understandable message.

	      The prim_file module was modified to not depend on the
	      lists module, to make it possible to start the emulator
	      using a user-defined loader. (Thanks to Martin
	      Bjorklund.)

    OTP-5853  The HiPE compiler identifies more leaf functions,
	      giving slightly faster code.

	      Corrected problems in HiPE's coalescing register
	      allocating that would cause it to fail when compiling
	      very large functions (e.g. some of parse modules in the
	      megaco application).


--- hipe-3.5.4 ------------------------------------------------------------

    OTP-5853  The HiPE compiler identifies more leaf functions,
	      giving slightly faster code.

	      Corrected problems in HiPE's coalescing register
	      allocating that would cause it to fail when compiling
	      very large functions (e.g. some of parse modules in the
	      megaco application).


--- inets-4.6.2 ------------------------------------------------------------

    OTP-5796  [http,server] Had earlier forgot to convert a value in
	      entity_body to a binary.

    OTP-5821  [http,server] Now application checks whether the necessary
	      directives under directive Directory exist.


--- kernel-2.10.11.1 ------------------------------------------------------------

    OTP-5795  Timers could sometimes timeout too early. This bug has
	      now been fixed.

	      Automatic cancellation of timers created by
	      erlang:send_after(Time, pid(), Msg), and
	      erlang:start_timer(Time, pid(), Msg) has been
	      introduced. Timers created with the receiver specified
	      by a pid, will automatically be cancelled when the
	      receiver exits. For more information see the erlang(3)
	      man page.

	      In order to be able to maintain a larger amount of
	      timers without increasing the maintenance cost, the
	      internal timer wheel and bif timer table have been
	      enlarged.

	      Also a number of minor bif timer optimizations have
	      been implemented.

    OTP-5847  Documentation improvements:

	      - documentation for erlang:link/1 corrected

	      - command line flag -code_path_cache added

	      - erl command line flags clarifications

	      - net_kernel(3) clarifications


--- kernel-2.10.12 ------------------------------------------------------------

    OTP-5792  A bug in global has been fixed: the locker process
	      added 'nonode@nohost' to the list of nodes to lock.
	      This could happen before any nodes got known to the
	      global name server. Depending on net configuration the
	      symptom was a delay.

    OTP-5794  Several minor changes were made to increase the
	      reliability of setting up connections to other Erlang
	      nodes (especially when there were many Erlang nodes
	      involved).

    OTP-5809  If an .app file is missing, the error reason returned
	      by application:load/1 has been corrected to {"no such
	      file or directory", "FILE.app"}, instead of the less
	      informative {"unknown POSIX error","FILE.app"}.

    OTP-5810  Bug fixes: disk_log:accessible_logs/0 no longer reports
	      all pg2 process groups as distributed disk logs;
	      disk_log:pid2name/1 did not recognize processes of
	      distributed disk logs.

    OTP-5811  application_controller now terminates with the actual
	      error reason, instead of shutdown. This means that the
	      crash dump now should be somewhat more informative, in
	      the case where the runtime system is terminated due to
	      an error in an application.

	      Example: If the (permanent) application app1 fails to
	      start, the slogan now will be: "Kernel pid terminated
	      (application_controller)
	      ({application_start_failure,app1,{shutdown,
	      {app1,start,[normal,[]]}}})"

	      rather than the previous "Kernel pid terminated
	      (application_controller) (shutdown)"

    OTP-5814  The functions file:consult/1, file:path_consult/2,
	      file:eval/1,2, file:path_eval/2,3, file:script/1,2,
	      file:path_script/2,3 now return correct line numbers in
	      error tuples.

    OTP-5828  If there were user-defined variables in the boot
	      script, and their values were not provided using the
	      -boot_var option, the emulator would refuse to start
	      with a confusing error message. Corrected to show a
	      clear, understandable message.

	      The prim_file module was modified to not depend on the
	      lists module, to make it possible to start the emulator
	      using a user-defined loader. (Thanks to Martin
	      Bjorklund.)

    OTP-5856  Minor corrections in the description of open modes.
	      (Thanks to Richard Carlsson.)


--- megaco-3.2.1 ------------------------------------------------------------

    OTP-5725  In order to allow the user to drop (ignore) a request a new
	      return value, ignore_trans_request, has been added to the
	      handle_trans_request callback function.

    OTP-5793  Text encoding of the termination id list in
	      contextTerminationAudit incorrect. Missing { }. All versions.


--- megaco-3.2.2 ------------------------------------------------------------

    OTP-5799  Digit Map: Megaco does not handle "unexpected event"
	      according to chapter 7.1.14.5 point 5. See
	      megaco:eval_digit_map and megaco:test_digit_event.

    OTP-5803  The text codec of prev3b should handle encoding/decoding of
	      indAudMediaDescriptor as specified in the final version of
	      the v3 spec. This is backward compatible and more aligned
	      with the ASN.1

    OTP-5804  Flex scanner cannot handle empty local/remote descriptors.

    OTP-5805  Text codecs does not handle messages of unsupported versions
	      (or with incorrect version) in a good way.

    OTP-5816  The documentation of the reply-timer was unclear.


--- megaco-3.2.3 ------------------------------------------------------------

    OTP-5826  Digit Map: Improper handling of duration.

    OTP-5830  Assumed a more strict approach to the return values of the
	      callback functions of the megaco_user behaviour. Now, a
	      return value other then what is described in the behaviour
	      documentation, will result in a warning message. Except for
	      the handle_trans_request and handle_trans_request_long, which
	      still results in error messages.

    OTP-5833  The documentation of the megaco:call and megaco:cast
	      functions was unclear regarding pre-encoded actions.

    OTP-5836  The prev3b text codec's failed to properly decode an
	      auditReply with ErrorDescriptor.

    OTP-5839  Introduced a "strict version control" (strict_version)
	      connection info and user info option.


--- odbc-2.0.5 ------------------------------------------------------------

    OTP-5759  Fixed bug, reported error when deleting nonexisting
	      rows, thanks to Laura M. Castro for reporting this.


--- os_mon-1.8 ------------------------------------------------------------

    OTP-5798  The memsup part of the OS_Mon application has been made
	      more stable. If there are (possibly temporary) problems
	      collecting memory data, the interface functions
	      (get_memory_data/0, get_system_memory_data/0) now do
	      not fail, but return the previously collected value, if
	      any, or a dummy value otherwise. Also, a warning
	      message is printed.


--- sasl-2.1.1 ------------------------------------------------------------

    OTP-5858  Added a number of functions to release_handler which
	      makes it possible to test upgrade and downgrade of
	      applications according to an .appup file "on the fly":

	      - upgrade_app/2

	      - upgrade_script/2

	      - downgrade_app/2,3

	      - downgrade_script/3

	      - eval_appup_script/4


--- snmp-4.6 ------------------------------------------------------------

    OTP-5763  [manager] Improve manager supervision.

    OTP-5771  Improved handling of audit trail logs. See the atl_repair
	      config for more info.

    OTP-5787  [agent] Adding utility function to convert old application
	      config to current agent config. See snmpa:convert_config/1
	      for more info.

    OTP-5797  Improved application start flexibillity. It is now possible
	      to start snmp aplication components (agent or manager) after
	      the application has ben started. It is even possible to start
	      an "empty" snmp application and start the agent and/or
	      manager afterwards. See snmp:start_agent/0,1 and
	      snmp:start_manager/0,1.

    OTP-5829  Misc documentaion corrections.


--- snmp-4.6.1 ------------------------------------------------------------

    OTP-5834  [agent] SNMP sha/aes decryption did not work.

    OTP-5838  [agent] The SNMP agent internal data base (local db) uses
	      dets, and does not properly handle error's from e.g. lookup.


--- ssl-3.0.10 ------------------------------------------------------------

    OTP-5863  Erlang distribution over SSL was broken. Corrected.
	      (Thanks to Fredrik Thulin.)


--- stdlib-1.13.11 ------------------------------------------------------------

    OTP-5789  More detail on beam_lib:version/1 in documentation.

    OTP-5813  The new function io:read/3 works like io:read/1,2 but
	      takes a third argument, StartLine.

    OTP-5846  The new function gen_fsm:enter_loop/4,5,6, similar to
	      gen_server:enter_loop/3,4,5, has been added.

    OTP-5848  The function c:i/1 is now exported.

    OTP-5854  When calling gen_server:enter_loop with a registered
	      server name, it was only checked that the registered
	      name existed, not that it actually was the name of the
	      calling process.


--- syntax_tools-1.4.3 ------------------------------------------------------------

    OTP-5855  Added support for fun M:F/A.