Skip to content

Releases: cgdb/cgdb

CGDB 0.8.0

Choose a tag to compare

@mmueller mmueller released this 05 Oct 23:12

Original release date: 01/16/2022

cgdb-0.8.0 (01/16/2022)

  • Fix issue #298 - CGDB now exits when gdb exits
    Previously if gdb exited but the inferior, or child of the inferior
    was still running, cgdb would possibly continue running in a
    non responsive state. Now cgdb exits when gdb does.

  • Fix issue #278, Single stepping through disassembly without debug
    symbols does not move arrow in source window. Now the arrow moves in
    the source window as expected.

  • Fix issue #135 CGDB freezes when pressing "o" to open the file dialog
    Previously, if you attempted to open the file dialog, cgdb would
    sometimes hang, due to a gdbwire parsing bug from the gdb response.
    This has been resolved.

  • Fix issue #152, breakpoint handling is broken in disasembly view
    Previously, if you set a breakpoint in the source view, it would not
    be reflected in the disassembly view, and vice versa. Now if you set
    a breakpoint in either view, it should be reflected in the other.

  • Fix issue #260, CGDB would not process commands after F5, F6, etc
    If F5, F6, F7, F8, F10 were hit, CGDB would no longer process GDB
    commands, like setting breakpoints, etc. Now CGDB works as expected.

  • CGDB implements a virtual terminal in the GDB window

    • The GDB scroller is now a virtual terminal (using libvterm)
    • The scrollback buffer has been reimplemented using libvterm
      The cursor row/col position is now known, rather than just the row
    • Searching in the scrollback buffer is improved
    • The scrollback buffer size is configurable with a new option,
      scrollbackbuffersize (sbbs) and is defaulted to 10000.
    • Mark commands in the GDB scroller have been removed
    • Unicode is now fully supported in the gdb window
    • libvterm does not support reflow yet, so resizing the terminal or
      switching the window orientation (winsplitorientation) after startup
      may cause the text in the GDB window to not be as expected
    • Colors in the GDB window are not fully supported yet.
      Ncurses is difficult to work with, considering switching.
      RGB vterm colors are unsupported at the moment.
      Fix the following github issues
    • When I use set wso=vertical, I use the GDB window to print the
      variable value, which will overflow the rightboundary #274
    • Long lines from GDB output are not wrapped #265
    • Some characters in the editor are incorrect #261
    • Setting prompt to unicode character doesn't work as expected #257
    • cgdb prints '[?2004h' in xfce4 terminal #256
    • [regression] prefixing "04h" characters in the gdb prompt since
      fixing #255
    • GDB console does not display color #251
    • gdb ANSI escape codes only in cgdb #189
    • Cursor offset gets lost when typing UTF-8 characters in the
      gdb window #121
  • CGDB implements GDB/MI in favor of GDB/Annotations

    • CGDB now communicates with GDB using MI only (instead of Annotations)
      using the new-ui GDB command
    • CGDB now requires GDB 7.12 or newer
    • CGDB now fully supports the GDB console, including readline and
      communicating with the inferior (the program being debugged)
    • CGDB no longer uses the inferior tty option to talk to the inferior

    Fix the following github issues

    • Messed up input with latest gdb #247
    • press T, it cannot open I/O window #244 (no longer necessary)
    • Support disabling the inferior pty #241
    • Any plan to add tty window back? #209
    • Debugging a forking program fails on first run #204
    • Ctrl - T doesn't seem to work (cgdb 0.7.0) #193
    • inputrc enable-keypad messing with readline #190
    • GDB command-line options not working #160
    • Logging output uses machine interface? #158
    • Pagination of long output is not properly handled #145
    • cgdb stucks on fgets #130
    • Autocompletion on directories failes to append '/' #96
    • GDB Prompt Hangs after Pressing Tab in a "Command List" #67
  • Add the nexti and stepi configuration commands

  • Fix issue #239, ANSI escape issues with GDB-9
    Color sequences like, [?1l,[?1h,=,>" are now ignored by CGDB rather
    than producing garbage looking text in the gdb terminal.

  • Fix auto source reload issue, issue #235 and #221
    Occasionally, CGDB would not properly reload source files when they
    had changed. Now CGDB will reload them on change.

  • CGDB works again with newer versions of GDB (gdb 8.3 and above)
    CGDB annotation support was broken by the following GDB issue,
    https://sourceware.org/bugzilla/show_bug.cgi?id=25190
    Changing CGDB from 'set height 0' to 'set pagination off' works
    around the issue, even though I thought they were identical commands.

  • CGDB now supports a configurable home directory. If the environment
    variable 'CGDB_DIR' is set to a directory name, CGDB will use the
    specified directory instead of '~/.cgdb/'.

  • Fix issue #219 - CGDB users on Gentoo were experiencing segfaults at startup
    due to mismatched wide-character support between the ncurses and tinfo
    libraries. The build system has been updated to correctly pair the versions
    of these libraries.

CGDB 0.7.1

Choose a tag to compare

@mmueller mmueller released this 05 Oct 23:12

Original release date: 08/04/2019

cgdb-0.7.1 (08/04/2019)

  • Status bar messages are now displayed properly in veritical mode.
    The message is now truncated according to the status bar width instead
    of the width of the terminal.
  • Fix spurious error from CGDB on shutdown. You may have seen,
    CGDB had unexpected results. Search the logs for more details.
    In the log there was a waitpid error. CGDB was using the API wrong.
  • Fix issue #161 - CGDB would lock up when doing a regex search from
    the status bar if the file was just opened from the file dialog and
    the search did not match any text in the file. Now the search fails
    to match text as expected.
  • Status bar commands and gdb console commands now both show gdb
    output in the gdb window (instead of only the gdb console commands).
    This fixed issue #154 on github.
  • Fixed issue where typing F8 would do a 'next', 'step' and
    screen refresh instead of just doing a 'next' command.
  • Fix issue #139 - Show appropriate logos when color disabled
    Previously, if the user had colors disabled, CGDB would still show
    logos that had ansi escape color sequences in them.
  • Fixed :highlight regression introduced in 0.7.0.
    In 0.6.8, if the user entered a :highlight command from the CGDB
    status bar, for instance:
    :highlight Comment ctermfg=Blue
    CGDB would updated the currently displayed source file
    with the requested highlighting changes. In 0.7.0 this would not occur.
    Both versions honored :highlight in the .cgdbrc file.
  • Fix issue #125 - CGDB can cross compile again.
  • The rust syntax highlighter is now case sensitive instead of case
    insensitive.
  • Fix issue #129. CGDB with old versions of ncurses (5.6 or before)
    would not display colors. Now it will display colors, but will
    not support ansi colors in the GDB window.
  • Fix issue #137. rustlexer.lpp fails to compile with some versions
    of GNU autotools.
  • Fix issue #135. CGDB would "freeze" when opening the file
    dialog if the number of files was very large. Updating the
    gdbwire parser resolved the issue.
  • Add support for readline's backward-kill-word and kill-word at gdb prompt

CGDB 0.7.0

Choose a tag to compare

@mmueller mmueller released this 05 Oct 23:12

Original release date: 03/21/2017

cgdb-0.7.0 (03/21/2017)

  • Remove help2man dependency. CGDB has a good info page which
    should suffice.
  • The hlsearch option has been added to CGDB. This improves the
    searching and displaying of searching functionality within CGDB.
    By default the option is off. When enabled, and there exists a
    previous search, CGDB will display the search results using
    the Search highlighting group. The IncSearch highlighting group
    is used to display the active search. The hlsearch option
    highlights previous searches in the source window, the gdb window
    when in scroll mode and the file dialog window.
  • CGDB now supports showing assembly code! By default, CGDB will
    display source code when it is available and assembly code
    when no source code is available. The option 'set disasm'
    allows you to show mixed source/assembly when both are available.
  • Add support to enable/disable showing assembly code in CGDB.
    The default is disabled. The 'set disasm' enables showing
    mixed assembly mode by default. See the documentation for more
    information.
  • Add the :logo command to cgdb. This tells CGDB to display a logo
    in the source window.
  • Add an initial Rust syntax highlighter.
  • Support vi type j and k motions. Previously only
    typing j or k with out a number was supported.
  • Add support for marks. m[a-z] will set a local file mark and
    m[A-Z] will set a global mark. '[a-z] will jump to the
    corresponding local mark and '[A-Z] will jump to the corresponding
    global mark. As an added bonus '' will jump to the last jump location
    and '. will jump to the last executing line.
    The showmarks option was introduced to show the marks in the source
    window. It defaults to true. You can disable the viewing of marks
    using 'set noshowmarks'.
  • Add support to enable or disable color in the source window.
    The default is enabled. See the documentation for more information.
  • Add support for showing colors in the debug window. If gdb or the
    program being debugged output an ansi escape code representing color,
    https://en.wikipedia.org/wiki/ANSI_escape_code#Colors
    then CGDB will display the corresponding color instead of the escape
    code. This option is configurable with the set debugwincolor option.
  • Add the winminwidth option to CGDB. It controls the minimum width
    that a window can be resized. It corresponds to the winminheight
    option. This was introduced now that CGDB can have vertically split
    windows.
  • Add support for vertical or horizontal splitting of the CGDB/GDB
    windows. Thanks to Daniel Cohen for the original implementation
    of this idea! You can change the window orientation by using the
    command 'set winsplitorientation=horizontal or vertical'.
    horizontal is the default orientation. Type Ctrl-w to switch between
    vertical and horizontal viewing.
  • Remove the TTY mode and TTY window from CGDB. This previously allowed
    you to send input to the program being debugged through the TTY
    window in CGDB. It is better for the user to run their program in
    one terminal and attach to it with CGDB from another terminal in
    order to get terminal input and terminal output working correctly.
  • Add the -w command line option to CGDB. It directs CGDB to wait
    to start until either a debugger is attached to it, or until a key
    is written to it's stdin. This helps simplify debugging CGDB itself.
  • Added GDB scroll mode in addition to the existing GDB command mode.
    To enter scroll mode, type 'page up' when in GDB mode and to exit
    type 'q', 'i' or 'Enter'. In scroll mode, you can scroll through
    the GDB output. You can also search the GDB output with the /, ?, n
    and N keys. Marks are also supported. You can set a mark by typing
    m[a-z] and you can jump to a mark by typing '[a-z]. See the
    documentation for more details.
  • Extended support for the G command when in CGDB mode. The new supported
    syntax is []G, allowing users to jump to a specific line within
    the source file, rather than just the end of the source file. This is
    identical to the : command.
  • Added support for 'executinglinedisplay' and 'selectedlinedisplay'
    configuration options. See documentation for full explanation.
    This allows you to configure how CGDB displays both the currently
    executing line and the currently selected line.
    The default for executing line is set to longarrow.
    The default for selected line is set to block.
    The 'arrowstyle' option has been deprecated (but still supported)
    and users should use the 'executinglinedisplay' option instead.
  • CGDB now only supports ncurses. Support for curses was removed.
    The curses support was previously very out of date and untested.
    If curses support is needed, please let us know.

CGDB 0.6.8

Choose a tag to compare

@mmueller mmueller released this 05 Oct 23:11

Original release date: 11/13/2014

cgdb-0.6.8 (11/13/2014)

  • Fix issue #40, the map commands were adding additional new lines
    to the mappings. For instance, 'imap a b' in the ~/.cgdb/cgdbrc
    file would cause a to map to 'b' instead of just 'b'.

  • Added feature from issue #29, added 'until' command to CGDB.

  • Updated autotools configuration files to satisfy warnings and
    recommendations produced by autotools when run.

  • Fix issue #49, a gcc compiler warning.

  • Fixed a hang consuming 100% CPU usage on OS X Mavericks (github #48).

  • Fixed a hang when quitting cgdb while inferior is running
    (github #1 and #5 and #46). This was believed to be fixed in the last
    release but I've finally reproduced the issue and fixed it for good.

CGDB 0.6.7

Choose a tag to compare

@mmueller mmueller released this 05 Oct 23:11

Original release date: 01/14/2013

cgdb-0.6.7 (01/14/2013)

  • Changed documentation license from GFDL to GPL (github #6).
  • Fixed a hang on MacOS when quitting cgdb while inferior is running
    (github #1 and #5).
  • Fixed a crash when pressing 'n' in source window (github #5).
  • Fixed a bug opening files (and toggling breakpoints in files) with
    special characters (e.g. space) in their names.

CGDB 0.6.6

Choose a tag to compare

@mmueller mmueller released this 05 Oct 23:11

Original release date: 09/06/2011

cgdb-0.6.6 (09/06/2011)

  • Fixed a compile error on Cygwin 1.7 (signature for path conversion
    functions changed).
  • Fixed a segfault on 64-bit systems in rline.c due to a missing
    prototype of cgdb_malloc. Thanks to Pietro Cerutti for reporting
    and diagnosing this one!
  • Fixed a bug in the file dialog. When searching for a file,
    and you hit enter to select it, CGDB would sometimes skip to
    the next file that matches and open that file instead.
  • CGDB should now build out of the box on Cygwin again.
    CGDB used to only support building against curses.h. Now
    it also supports building against ncurses/curses.h.
  • No longer set the prompt to (gdb) on startup.