1 Debugger Release Notes

This document describes the changes made to the Debugger application.

1.1  Debugger 3.2.6

Improvements and New Features

  • Fix issues reported by dialyzer.

    Own Id: OTP-9107

1.2  Debugger 3.2.5

Improvements and New Features

  • Miscellaneous updates

    Own Id: OTP-8976

1.3  Debugger 3.2.4

Improvements and New Features

  • Type specs have been added/cleaned up. (Thanks to Kostis Sagonas.)

    Own Id: OTP-8757

1.4  Debugger 3.2.3

Improvements and New Features

  • Warnings due to new autoimported BIFs removed

    Own Id: OTP-8674 Aux Id: OTP-8579

  • The predefined builtin type tid() has been removed. Instead, ets:tid() should be used.

    *** POTENTIAL INCOMPATIBILITY ***

    Own Id: OTP-8687

1.5  Debugger 3.2.2

Fixed Bugs and Malfunctions

  • Bugs have been fixed in the evaluation of comprehensions and short-circuit expressions in guards.

    Own Id: OTP-8310

Improvements and New Features

  • Miscellaneous corrections of the WX version of the debugger.

    Own Id: OTP-8346

1.6  Debugger 3.2.1

Improvements and New Features

  • The documentation is now built with open source tools (xsltproc and fop) that exists on most platforms. One visible change is that the frames are removed.

    Own Id: OTP-8201

1.7  Debugger 3.2

Improvements and New Features

  • Added a new gui, start with debugger:start(gs) for old gui.

    Own Id: OTP-7366

  • The undocumented, unsupported, and deprecated guard BIF is_constant/1 has been removed.

    *** INCOMPATIBILITY with R12B ***

    Own Id: OTP-7673

1.8  Debugger 3.1.1.4

Improvements and New Features

  • There is now experimental support for loading of code from archive files. See the documentation of code, init, erl_prim_loader and escript for more info.

    The error handling of escripts has been improved.

    An escript may now set explicit arguments to the emulator, such as -smp enabled.

    An escript may now contain a precompiled beam file.

    An escript may now contain an archive file containing one or more applications (experimental).

    The internal module code_aux has been removed.

    Own Id: OTP-7548 Aux Id: otp-6622

1.9  Debugger 3.1.1.3

Improvements and New Features

  • Minor changes.

    Own Id: OTP-7388

1.10  Debugger 3.1.1.2

Improvements and New Features

  • The documentation has been updated so as to reflect the last updates of the Erlang shell as well as the minor modifications of the control sequence p of the io_lib module.

    Superfluous empty lines have been removed from code examples and from Erlang shell examples.

    Own Id: OTP-6944 Aux Id: OTP-6554, OTP-6911

1.11  Debugger 3.1.1.1

Improvements and New Features

  • Minor Makefile changes.

    Own Id: OTP-6689

  • Obsolete guard tests (such as list()) have been replaced with the modern guard tests (such as is_list()).

    Own Id: OTP-6725

1.12  Debugger 3.1.1

Fixed Bugs and Malfunctions

  • Removed some dead code from dbg_ieval.

    Own Id: OTP-6552

1.13  Debugger 3.1

Fixed Bugs and Malfunctions

  • The interpreter could not handle the case where an expression that should evaluate to a fun referred to uninterpreted code.

    Own Id: OTP-6061 Aux Id: seq10295

  • Timeout for gen_server calls within Debugger is now set to infinity.

    Own Id: OTP-6103

Improvements and New Features

  • Notification windows are now centered over a parent window.

    Own Id: OTP-6011 Aux Id: OTP-5987

  • When interpreting a module, it is now checked that the module does not belong to the Kernel, STDLIB, GS or Debugger application, as interpreting a module used by the debugger/interpreter itself will lead to a deadlock or emulator crash.

    Also int:interpretable(Mod) has been extended to return {error,{app,App}} if Mod belongs to one of the above applications.

    Own Id: OTP-6020

  • andalso/orelse is now supported.

    Own Id: OTP-6021 Aux Id: OTP-5894

1.14  Debugger 3.0.1

Fixed Bugs and Malfunctions

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

    Own Id: OTP-5837

Improvements and New Features

  • 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.
    Own Id: OTP-4284

1.15  Debugger 3.0

Improvements and New Features

  • Debugger can now handle try-catch. This meant large parts of the interpreter had to be rewritten. Also, some small changes to the GUI have been made.

    Own Id: OTP-5730

1.16  Debugger 2.3.3

Improvements and New Features

  • It is now possible to encrypt the debug information in Beam files, to help keep the source code secret. See the documentation for compile on how to provide the key for encrypting, and the documentation for beam_lib on how to provide the key for decryption so that tools such as the Debugger, Xref, or Cover can be used.

    The beam_lib:chunks/2 functions now accepts an additional chunk type 'compile_info' to retrieve the compilation information directly as a term. (Thanks to Tobias Lindahl.)

    Own Id: OTP-5460 Aux Id: seq9787

1.17  Debugger 2.3.2

Fixed Bugs and Malfunctions

  • The graphic applications now search for HTML documentation in the correct place.

    Own Id: OTP-5381

1.18  Debugger 2.3.1

Fixed Bugs and Malfunctions

  • Package support has been added to the debugger. Thanks to Richard Carlsson in the HiPE project.

    Own Id: OTP-5255

Improvements and New Features

  • Updated to handle the latest version of the compiler.

    Own Id: OTP-5265