Blob Blame History Raw
Bug fix release : otp_src_R16B02
Build date      : 2013-09-17

This is R16B02, the second maintenance release for the R16B major release.

You can find the README file for the release at

  http://www.erlang.org/download/otp_src_R16B02.readme (this file)

The source distribution and binary distributions for Windows can be
downloaded from

  http://www.erlang.org/download/otp_src_R16B02.tar.gz
  http://www.erlang.org/download/otp_win32_R16B02.exe
  http://www.erlang.org/download/otp_win64_R16B02.exe

Note: To unpack the TAR archive you need a GNU TAR compatible program.

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

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

  http://www.erlang.org/download/otp_doc_html_R16B02.tar.gz
  http://www.erlang.org/download/otp_doc_man_R16B02.tar.gz

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

The OTP Team


--- otp -----------------------------------------------------------------

   OTP-11221  A new test scope has been added which is meant to be used for
	      making sure that the Erlang VM and other platform specific
	      libraries have been compiled correctly for you system. The
	      tests are executed just as normal tests, only that you use
	      ts:smoke_test instead of ts:run. See ts:help() for more
	      details.

   OTP-11288  configure now accepts any Erlang/OTP applications as an
	      option to the --without flag. For more details see the
	      Installation Guide for more details.


--- asn1-2.0.3 ----------------------------------------------------------

   OTP-11193  The format of the xml source for documentation is corrected
	      in order to conform to the DTDs and to pass xmllint without
	      errors.

   OTP-11300  For the PER and UPER formats, code generation especially for
	      encoding has been improved.

	      When encoding BIT STRINGs, values longer than the maximum
	      size for the BIT STRING type would be truncated silently -
	      they now cause an exception.

	      Open types greater than 16383 bytes will now be correctly
	      encoded and decoded.

	      IMPORTANT NOTE: For ASN.1 specifications that depend on each
	      other, such as the S1AP-* specifications, it is important to
	      recompile all specifications (compiling some with this
	      version of the compiler and some with an older version will
	      not work).


--- common_test-1.7.3 ---------------------------------------------------

   OTP-11132  Documentation is added for ct_netconfc:send and
	      ct_netconfc:send_rpc.

   OTP-11166  ct_netconfc:create_subscription only allowed one XML element
	      inside the 'filter' element. According to RFC5277 it should
	      be allowed to add any number of elements inside the filter,
	      so this is now corrected.

   OTP-11175  The error handler installed by the Common Test hook
	      cth_log_redirect did not respond to init:stop/1/2. This has
	      been corrected.

   OTP-11176  Calling ct:pal/2 or ct:print/2 when Common Test was not
	      running, would cause an exit. This has been changed and the
	      string is now simply printed to stdout instead.

   OTP-11193  The format of the xml source for documentation is corrected
	      in order to conform to the DTDs and to pass xmllint without
	      errors.

   OTP-11238  Fixed problem with the cth_log_redirect hook making calls to
	      an undefined function in ct_logs.

   OTP-11244  When running tests with the 'repeat' option, the Common Test
	      utility process did not always terminate quickly enough after
	      a test run, causing the start of the next run to fail. A
	      monitor is now used to ensure termination of the utility
	      process after each test run.

   OTP-11263  Test Server installed an error handler (test_server_h) only
	      to be able to write the name of the current test case to
	      stdout whenever it received an error- or progress report.
	      This functionality was not useful and has been removed. The
	      built-in Common Test hook, cth_log_redirect, has instead been
	      improved to now also tag all error- and progress reports in
	      the log with suite-, group-, and/or test case name.

   OTP-11272  A new log, the "Pre- and Post Test I/O Log", has been
	      introduced, which makes it possible to capture error- and
	      progress reports, as well as printouts made with ct:log/2 and
	      ct:pal/2, before and after a test run. (Some minor
	      improvements of the logging system have been made at the same
	      time). Links to the new log are found on the Common Test
	      Framework Log page. The Common Test User's Guide has been
	      updated with information about the new log and also with a
	      new section on how to synchronize external applications with
	      Common Test by means of the CT Hook init and terminate
	      functions.


--- compiler-4.9.3 ------------------------------------------------------

   OTP-11201  Fix matching of floating point middle-endian machines. Thanks
	      to Johannes Weissl.

   OTP-11211  Restrict inlining of local fun references. Thanks to Anthony
	      Ramine.

   OTP-11212  Silence a misleading warning with some comprehensions. Thanks
	      to Anthony Ramine.

   OTP-11240  Expressions such as 'B = is_integer(V), if B and B -> ok end'
	      would crash the compiler.

   OTP-11247  Forbid returning a match context in beam_validator. Thanks to
	      Anthony Ramine.

   OTP-11304  compile:file2/2 with the option report_errors could return
	      ErrorInfo tuples with only two elements, while the
	      documentation says that the ErrorInfo tuple always has three
	      elements. Also updated the documentation to add that the
	      first element may be 'none' if no line number is applicable.


--- crypto-3.1 ----------------------------------------------------------

   OTP-11320  Refactor ecdsa cipher to simplify code and improve
	      performance.


--- debugger-3.2.12 -----------------------------------------------------

   OTP-11201  Fix matching of floating point middle-endian machines. Thanks
	      to Johannes Weissl.


--- diameter-1.4.3 ------------------------------------------------------

   OTP-11172  Fix UTF8String encode.

	      Encode now accepts any nested list of codepoints and
	      binaries. A list containing a binary was previously
	      misinterpreted and the documentation was incomplete.

   OTP-11184  Ensure DWR isn't sent immediately after DWA.

	      This was possible if the timing was unfortunate. An incoming
	      DWR now properly resets the watchdog timer.

   OTP-11293  Fix faulty encode of Failed-AVP

	      Reception of a CER, DWR or DPR that has decode failures
	      caused encode of the corresponding answer message to fail.

   OTP-11299  Fix broken service_opt() spawn_opt.

	      The option was ignored.


--- edoc-0.7.12.1 -------------------------------------------------------

   OTP-11310  The encoding of the notes.xml file has been changed from
	      latin1 to utf-8 to avoid future merge problems.


--- erl_docgen-0.3.4.1 --------------------------------------------------

   OTP-11193  The format of the xml source for documentation is corrected
	      in order to conform to the DTDs and to pass xmllint without
	      errors.

   OTP-11310  The encoding of the notes.xml file has been changed from
	      latin1 to utf-8 to avoid future merge problems.


--- erl_interface-3.7.14 ------------------------------------------------

   OTP-11196  Introduced functionality for inspection of system and build
	      configuration.

   OTP-11284  Header and library files from ic and erl_interface are now
	      installed into usr/{include,lib}. Note that these directories
	      are unversioned, so the latest installed version will be the
	      one in the directory.

   OTP-11289  Fix location of true binary under Mac OSX. Thanks to Simon
	      Cornish.


--- erts-5.10.3 ---------------------------------------------------------

   OTP-11090  The documentation of predefined types and built-in types has
	      been corrected.

   OTP-11157  There is a new somewhat experimental socket option 'netns'
	      that can set the network namespace for a socket on Linux:es
	      where it is supported. See the documentation.

   OTP-11174  New allocator strategy aoffcbf (address order first fit
	      carrier best fit). Supports carrier migration but with better
	      CPU performance than aoffcaobf.

   OTP-11196  Introduced functionality for inspection of system and build
	      configuration.

   OTP-11201  Fix matching of floating point middle-endian machines. Thanks
	      to Johannes Weissl.

   OTP-11206  Fix changing terminal parameters in to_erl

	      Change the behaviour of to_erl to use TCSADRAIN instead of
	      TCSANOW when changing terminal parameters. This makes the
	      serial driver wait for the output queues to be empty before
	      applying the terminal parameter change. Thanks to Stefan
	      Zegenhagen.

   OTP-11214  Fix compile error on ARM and GCC versions greater than 4.1.0.
	      Thanks to Johannes Weissl.

   OTP-11215  run_erl: Redirect standard streams to /dev/null. Thanks to
	      Johannes Weissl.

   OTP-11218  The default value of {flush, boolean()} in erlang:halt/2 is
	      documented to be 'true' if the status is an integer. The
	      implementation behaviour was reversed. The Implementation is
	      now corrected to adhere to the documentation. Thanks to Jose
	      Valim for reporting the error.

   OTP-11225  Fix serious race bug in R16B01 that could cause PID mix-ups
	      when a lot of processes were spawned and terminated in a very
	      rapid pace on an SMP emulator with at least two scheduler
	      threads.

   OTP-11227  Misc. corrections in documentation for erl_driver. Thanks to
	      Giacomo Olgeni.

   OTP-11232  Validating a trace pattern with the option silent no longer
	      incorrectly enables/disables the silent option of the calling
	      process.

   OTP-11239  Fix documentation regarding binary_part.

   OTP-11246  Fixed a bug where GCC 4.8 and later use a more aggressive
	      loop optimization algorithm that broke some previously
	      working code in the efile driver. Thanks to Tomas Abrahamsson
	      for reporting this issue.

   OTP-11251  Make edlin understand a few important control keys. Thanks to
	      Stefan Zegenhagen.

   OTP-11264  Fixed bug when printing memory allocator acul option in crash
	      dump.

   OTP-11265  Opening a new compressed file on Windows could in rare
	      (random) cases result in {error,eisdir} or other error codes
	      although it should have succeeded. This is now corrected.

   OTP-11278  Export type zlib:zstream/0. Thanks to Loic Hoguin.

   OTP-11282  Add erl option to set schedulers by percentages. 

	      For applications where measurements show enhanced performance
	      from the use of a non-default number of emulator scheduler
	      threads, having to accurately set the right number of
	      scheduler threads across multiple hosts each with different
	      numbers of logical processors is difficult because the erl +S
	      option requires absolute numbers of scheduler threads and
	      scheduler threads online to be specified.

	      To address this issue, add a +SP option to erl, similar to
	      the existing +S option but allowing the number of scheduler
	      threads and scheduler threads online to be set as percentages
	      of logical processors configured and logical processors
	      available, respectively. For example, "+SP 50:25" sets the
	      number of scheduler threads to 50% of the logical processors
	      configured, and the number of scheduler threads online to 25%
	      of the logical processors available. The +SP option also
	      interacts with any settings specified with the +S option,
	      such that the combination of options "+S 4:4 +SP 50:50" (in
	      either order) results in 2 scheduler threads and 2 scheduler
	      threads online.

	      Thanks to Steve Vinoski

   OTP-11290  Fixed a race condition when closing a trace port that would
	      cause the emulator to crash.

   OTP-11303  Extend erl_driver interface with lock names

	      Lock and thread names are already a feature in the driver
	      interface. This extension will let developers read these
	      names which eases debugging.

   OTP-11311  Fix incorrect values returned by integer_to_binary/2. Thanks
	      to Juan Jose Comellas.

   OTP-11317  Fix system_flag scheduling_statistics - disable . Thanks to
	      Steve Vinoski.

   OTP-11321  The documentation of predefined types has been corrected
	      Thanks to Kostis Sagonas.


--- et-1.4.4.5 ----------------------------------------------------------

   OTP-11310  The encoding of the notes.xml file has been changed from
	      latin1 to utf-8 to avoid future merge problems.


--- eunit-2.2.5 ---------------------------------------------------------

   OTP-11217  Wrap eunit macros into begin ... end blocks. Thanks to
	      Anthony Ramine.


--- hipe-3.10.2.1 -------------------------------------------------------

   OTP-11310  The encoding of the notes.xml file has been changed from
	      latin1 to utf-8 to avoid future merge problems.


--- ic-4.3.3 ------------------------------------------------------------

   OTP-11284  Header and library files from ic and erl_interface are now
	      installed into usr/{include,lib}. Note that these directories
	      are unversioned, so the latest installed version will be the
	      one in the directory.


--- inets-5.9.6 ---------------------------------------------------------

   OTP-11190  httpc: Allow content body in DELETE requests. Thanks to James
	      Wheare.

   OTP-11202  Add missing brackets to report formatting on ftp_progress
	      process exit. Thanks to Artur Wilniewczyc.

   OTP-11210  Fix some errors in the inets documentation. Thanks to
	      Johannes Weissl.

   OTP-11226  Fix various typos in httpd, inets. Thanks to Tomohiko Aono.

   OTP-11260  Fix httpd config option 'erl_script_nocache'. Thanks to
	      Johannes Weissl.


--- kernel-2.16.3 -------------------------------------------------------

   OTP-10676  The previous undocumented function ntoa/1 has been added to
	      inet docs and exported in the inet module.

   OTP-11209  Fix indentation of User switch command help in Erlang shell.
	      Thanks to Sylvain Benner.

   OTP-11219  Fix typo in abcast() function comment. Thanks to Johannes
	      Weissl.

   OTP-11250  Add application:ensure_all_started/1-2. Thanks to Fred
	      Hebert.

   OTP-11251  Make edlin understand a few important control keys. Thanks to
	      Stefan Zegenhagen.

   OTP-11301  Cleanup of hipe_unified_loader, eliminating uses of
	      is_subtype/2 in specs, change module-local void functions to
	      return 'ok' instead of [] and made sure there are no dialyzer
	      warnings with --Wunmatched_returns. Thanks to Kostis Sagonas.


--- megaco-3.17.0.2 -----------------------------------------------------

   OTP-11196  Introduced functionality for inspection of system and build
	      configuration.


--- mnesia-4.10 ---------------------------------------------------------

   OTP-10957  Fix timing issues in checkpoint creation.

   OTP-11241  Fixed a problem where the fallback BUP file is removed when
	      calling mnesia:uninstall_fallback and mnesia is not started.


--- observer-1.3.1.1 ----------------------------------------------------

   OTP-11310  The encoding of the notes.xml file has been changed from
	      latin1 to utf-8 to avoid future merge problems.


--- odbc-2.10.17 --------------------------------------------------------

   OTP-11193  The format of the xml source for documentation is corrected
	      in order to conform to the DTDs and to pass xmllint without
	      errors.

   OTP-11196  Introduced functionality for inspection of system and build
	      configuration.

   OTP-11233  Prevent odbcserver crash if it's executed and supplied
	      incorrect data to stdin. Thanks to Sergei Golovan.


--- os_mon-2.2.13 -------------------------------------------------------

   OTP-11207  Use 'df -k -l' to query FreeBSD and OpenBSD about diskspace
	      on local disks. Previously 'df' -k -t ufs' was used but this
	      will not handle zfs or other disks. Just use '-l' instead of
	      listing potential filesystems.

   OTP-11213  Fix compilation on Solaris. Thanks to Maciej Malecki.

   OTP-11298  Fix broken cpu_sup:nprocs and others on Solaris 64-bit.
	      Thanks to Simon Cornish.


--- parsetools-2.0.10 ---------------------------------------------------

   OTP-11269  A bug causing Yecc to generate badly formed parsers when
	      encountering very simple recursive rules has been fixed.
	      (Thanks to Eric Pailleau.)

   OTP-11286  A bug where Unicode filenames combined with Latin-1 encoding
	      could crash Yecc and Leex has been fixed.

   OTP-11313  Fix leex module`s inability to build unicode-aware lexers.
	      Thanks to Pierre Fenoll.


--- percept-0.8.8.2 -----------------------------------------------------

   OTP-11310  The encoding of the notes.xml file has been changed from
	      latin1 to utf-8 to avoid future merge problems.


--- public_key-0.20 -----------------------------------------------------

   OTP-10874  Extend PKCS-7 to support SCEP (Simple Certificate Enrollment
	      Protocol).

   OTP-11281  public_key:pem_entry_decode/2 now handles AES-128-CBC
	      ciphered keys. Thanks to Simon Cornish.


--- reltool-0.6.4.1 -----------------------------------------------------

   OTP-11310  The encoding of the notes.xml file has been changed from
	      latin1 to utf-8 to avoid future merge problems.


--- runtime_tools-1.8.12 ------------------------------------------------

   OTP-11196  Introduced functionality for inspection of system and build
	      configuration.

   OTP-11222  The process trace flag 'silent' is now allowed in call to
	      dbg:p/2.


--- sasl-2.3.3 ----------------------------------------------------------

   OTP-11252  Add Fd usage in rb logging. Thanks to Eric Pailleau.


--- snmp-4.24.1 ---------------------------------------------------------

   OTP-11177  [agent] Reading the value of the vacmViewTreeFamilyMask 
              returs it in the wrong (internal) format. The vacmViewTreeFamilyMask 
              is defined to be a bit string in the MIB (OCTET STRING). 
              Internally a bitlist (list of 1's and 0's) is used. However, 
              the MIB implementation assumed the latter, effectively rendering 
              all attempts to read/set masks via SNMP unsuccessful. Since 
              the mask is used in hot paths (e.g. access permission checks 
              for each SNMP operation, the bitlist representation of the 
              mask has benefits (e.g. faster processing). Reading/writing 
              the view mask objects is less time-critical. Therefore, 
              to fix the issue, convert between bitlist representation 
              and bitstring when the vacmViewTreeFamilyMask objects are 
              accessed. 

   OTP-11192  [agent] The counter increment function in the local-db was 
              incorrect. It did not handle counter wrap correctly.


--- snmp-4.24.2 ---------------------------------------------------------

   OTP-11216  [agent] Improved documentation for the functions for loading 
              and unloading mibs, see snmpa:load_mibs/1,2,3 and 
              snmpa:unload_mibs/1,2,3 for more info. 
              Also added new functions for loading and unloading a 
              single mib, see snmpa:load_mib/1,2 and snmpa:unload_mib/1,2 
              for more info.


--- ssh-2.1.8 -----------------------------------------------------------

   OTP-11189  Do not chmod ~/.ssh unnecessarily.

   OTP-11199  Make ssh_cli.erl handle CTRL+C. Thanks to Stefan Zegenhagen.

   OTP-11249  Clarified timeout options in documentation.

   OTP-11256  Add openssh_zlib compression type to ssh_transport. Thanks to
	      Louis-Philippe Gauthier.


--- ssl-5.3.1 -----------------------------------------------------------

   OTP-11228  Setopts during renegotiation caused the renegotiation to be
	      unsuccessful.

	      If calling setopts during a renegotiation the FSM state might
	      change during the handling of the setopts messages, this is
	      now handled correctly.

   OTP-11229  Now handles signature_algorithm field in digitally_signed
	      properly with proper defaults. Prior to this change some
	      elliptic curve cipher suites could fail reporting the error
	      "bad certificate".

   OTP-11230  The code emulating the inet header option was changed in the
	      belief that it made it inet compatible. However the testing
	      is a bit hairy as the inet option is actually broken, now the
	      tests are corrected and the header option should work in the
	      same broken way as inet again, preferably use the bitsyntax
	      instead.

   OTP-11255  Make the ssl manager name for erlang distribution over
	      SSL/TLS relative to the module name of the ssl_manager.

	      This can be beneficial when making tools that rename modules
	      for internal processing in the tool.

   OTP-11271  Add documentation regarding log_alert option.


--- stdlib-1.19.3 -------------------------------------------------------

   OTP-11200  Fixed type typo in gen_server.

   OTP-11208  Update type specs in filelib and io_prompt. Thanks to Jose
	      Valim.

   OTP-11219  Fix typo in abcast() function comment. Thanks to Johannes
	      Weissl.

   OTP-11245  The functions dets:foldl/3, dets:foldr/3, and dets:traverse/2
	      did not release the table after having traversed the table to
	      the end. The bug was introduced in R16B. (Thanks to Manuel
	      Duran Aguete.)

   OTP-11251  Make edlin understand a few important control keys. Thanks to
	      Stefan Zegenhagen.

   OTP-11254  If the fun M:F/A construct was used erroneously the linter
	      could crash. (Thanks to Mikhail Sobolev.)

   OTP-11261  The specifications of io_lib:fread/2,3 have been corrected.
	      (Thanks to Chris King and Kostis Sagonas for pinpointing the
	      bug.)

   OTP-11266  Export the edge/0 type from the digraph module. Thanks to
	      Alex Ronne Petersen.

   OTP-11268  Fix variable usage tracking in erl_lint and fixed unsafe
	      variable tracking in try expressions. Thanks to Anthony
	      Ramine.


--- test_server-3.6.3 ---------------------------------------------------

   OTP-11263  Test Server installed an error handler (test_server_h) only
	      to be able to write the name of the current test case to
	      stdout whenever it received an error- or progress report.
	      This functionality was not useful and has been removed. The
	      built-in Common Test hook, cth_log_redirect, has instead been
	      improved to now also tag all error- and progress reports in
	      the log with suite-, group-, and/or test case name.

   OTP-11272  A new log, the "Pre- and Post Test I/O Log", has been
	      introduced, which makes it possible to capture error- and
	      progress reports, as well as printouts made with ct:log/2 and
	      ct:pal/2, before and after a test run. (Some minor
	      improvements of the logging system have been made at the same
	      time). Links to the new log are found on the Common Test
	      Framework Log page. The Common Test User's Guide has been
	      updated with information about the new log and also with a
	      new section on how to synchronize external applications with
	      Common Test by means of the CT Hook init and terminate
	      functions.


--- tools-2.6.12 --------------------------------------------------------

   OTP-11198  Remove trailing spaces in Emacs templates. Thanks to Roberto
	      Aloi.

   OTP-11242  Fixed the Emacs erlang-mode to accommodate the coding style
	      where lists written across several lines have each line
	      starting with a comma. Thanks to Magnus Henoch.

   OTP-11270  Make the Emacs Erlang mode TRAMP-aware when compiling. Thanks
	      to Tomas Abrahamsson.


--- wx-1.1 --------------------------------------------------------------

   OTP-11196  Introduced functionality for inspection of system and build
	      configuration.

   OTP-11279  Fix return value in wxStatusBar:getFieldRect/2 and add
	      wxClipboardTextEvent and wxPanel:setFocusIgnoringChildren/1.


--- xmerl-1.3.4 ---------------------------------------------------------

   OTP-11224  Fixed various typos in xmerl documentation. Thanks to David
	      Welton.