cgdb-0.6.5 (01/01/2010)
* Turn autosourcereload to on by default. This matches GDB's behavior.
* CGDB should successfully build on Mac OS X 10.5.
Thanks Kyle McKay for sending in this patch.
* Add support for :up and :down in the cgdb status bar.
Thanks Benoit Pierre for reporting this.
* Enhanced tgdb in a2 mode. It now understands GNAT's
pre-instance-choice, instance-choice, post-instance-choice extension.
* Made searching and :commands a little more vi-like. If you abort a
search, you can still recall the last search with 'n' or 'N'. If you
backspace to the beginning of the line, a :command or /search is
aborted.
* Added some new cgdb commands.
:c is now a synonym for :continue
:f is now a synonym for :finish
:n is now a synonym for :next
:r is not a synonym for :run
:s is now a synonym for :step
:start is a new command that will send "start" to the debugger
:kill is a new command that will send "kill" to the debugger
* Shortcut mode has been removed from cgdb. If you liked it, you can
put these commands in your cgdbrc file,
map r :run<CR>
map c :continue<CR>
map f :finish<CR>
map n :next<CR>
map s :step<CR>
and you will get the same functionality. Do not forget that,
F5 is the same as 'run'.
F6 is the same as 'continue'.
F7 is the same as 'finish'.
F8 is the same as 'next'.
F10 is the same as 'step'.
are always available.
* Added a feature to CGDB which allows it to ask readline what key
sequence it uses for the Home and End keys. That way, if the terminfo
database is wrong, but the OS vendor modified /etc/inputrc, CGDB will
have a working Home and End key.
* CGDB fully supports the use of maps now. The feature is similar in
nature to the vim map feature. It supports map, unmap, imap
and iunmap. The map/unmap work in CGDB mode and the imap/iunmap
work in GDB mode.
* Added the cgdbmodekey configuration option. This allows the user to
change the key that switches them from GDB mode to CGDB mode. The
default value is the Escape key. This is useful for users that want
to use readline in vi-mode.
* Fixed a bug in CGDB where the Insert and Delete keys were not
recognized properly all of the time.
cgdb-0.6.4 (04/28/2007)
* CGDB can now be compiled with -jN option. It would fail previously.
* CGDB should now build on freebsd with out any patches.
* Added a new highlighting group, SelectedLineNr. From the documentation:
This represents the group that is used when CGDB is displaying the
currently selected line. This is the line that the cursor is on.
* CGDB shuts down now when it receives C-d (control d), just like GDB
does.
* Changed the GDB prompt from "(tgdb)" to "(gdb)". I think users
will be more comfortable with "(gdb)".
* Fixed a serious bug in CGDB. After the user entered a command
CGDB would not accept any more commands. This would only
happen sometimes, if at all. This is due to the fact that CGDB
had a bug in it that was sensitive to the amount of data that
the read system call returns to it.
* Fixed a bug in CGDB where it would not show a file in the
source viewer if there was a space in the path.
* Removed the escdelay option. It has been replaced by the
timeout, timeoutlen, ttimeout and ttimeoutlen options. Please
see the CGDB manual for more documentation on these options.
* Fixed a bug in libkui. If the user quickly typed ESC followed
by an 'o' while in the GDB window, the 'o' character would not
get processed by CGDB until another character was hit.
* CGDB has improved it's -d (Set debugger to use) command line
option. CGDB used to force the user to have a space between the
-d and the debugger to use, like "cgdb -d /usr/bin/gdb". Now the
user can also start CGDB like "cgdb -d/usr/bin/gdb".
* CGDB now honor's the '--' command line option, which will allow the
user to explicitly say when they want to end passing arguments to
CGDB and begin passing arguments to the debugger.
* Fixed another bug in the configure script. If the getopt.h header
file is not available on the system, then CGDB will fail to configure.
It should finish, and most likely build successfully.
* Fixed yet another bug in the auto tools scripts. cgdb-0.6.3 would
improperly install gdbmi_driver if make was invoked like
'make DESTDIR=/foo install'.
* Fixed another bug in the configure script. If the curses.h header
file is not available on the system, then CGDB will fail to configure.
It would previously configure and then end up with a compile error.
cgdb-0.6.3 (06/03/2006)
* CGDB will no longer crash if you attempt to do a regular expression
search with / when there is no file in the source viewer.
* CGDB now uses a psuedo terminal (PTY) to start GDB on, instead of
using a pipe. Jens Frederich reported that on a Mac, typing Ctrl-C
while the inferior was running would cause GDB to shut down, thus
causing CGDB to shut down. This patch fixes that problem. At the
same time, this patch caused GDB to ask the user several other
questions regarding shared breakpoints, and quiting while the
inferior is running. Thus, CGDB acts more as if you were just using
GDB.
* CGDB is now maintained in a subversion repository instead of a
CVS repository. Although this might not appear to effect end users,
it is possible that there will be problems associated with this
switch. For this reason, I have documented this here.
* Fixed another bug in the configure script. CGDB should now be able
to configure itself on a Mac. Thanks to Jens Frederich for finding
and reporting this problem.
* CGDB no longer packages the generated auto tool files in CVS. However,
the distributions will have these files. This means you will need
autoconf, autoheader and automake installed to compile CGDB from CVS.
* CGDB now compiles according to the c89 standard. This should help with
porting to older systems.
* The file cgdb.txt is now installed into $PREFIX/share/cgdb/cgdb.txt. This
is the file CGDB will now use to display the manual when :help is typed.
This prevents CGDB from copying the data into the users home directory.
cgdb-0.6.2 (04/09/2006)
* CGDB should run on solaris 2.5 again. I don't think it would since
CGDB .6.0.
* Fixed a bug in the configure script that was probably added in .6.0
when the large readline integration was done. It was possible for
readline to choose the wrong termcap library, because of a bad
autoconf macro that CGDB was using. This could potentially cause the
screen to get corrupted.
* Fixed a bug in the syntax highlighter for C strings. A line like
char *s = "\""; would cause the highlighter to break and most of the
file after that would be displayed in red (string literal color).
* The message 'CGDB had unexpected results, ...' will no longer be
displayed when CGDB can not parse a breakpoint. This message was being
displayed when a watchpoint was issued by the user. It does not fix any
bugs though, just stops the message from being displayed.
cgdb-0.6.1 (03/06/2006)
* An improvement for tab completion support. With certain versions of GDB,
an extra line "server complete ..." would be added to the list of
possible completions. This is no longer added. I believe this would
only happen with really old versions of GDB.
* Improved tab completion support in readline for quoted data. For
instance tab completing C++ member functions like b 'foo::b<tab>
will now produce b 'foo::bar()'.
* Improved tab completion support. This comes in 2 forms. First, CGDB
honors the readline variable rl_completion_query_items. If the number
of completions is greater than this variable, then the user will be
asked if they want the completion to happen. Second, after each page of
completions, the user will be asked if they want more completions to be
displayed or not.
* Thanks to Steve Folta for sending in a patch which added support in CGDB
for configuring the syntax colors. The colors used to be hard coded and
could not be changed. Now just use the ":highlight" command to change
the default colors. There is a new section in the manual called
"CGDB highlighting groups" that describes the new functionality.
* Again, thanks to Steve Folta for getting CGDB to run on terminals with
background colors besides black. CGDB used to paint the terminal
background color black regardless of what it was. Now it respects the
background color. This feature only works when linked to ncurses. If you
have curses, CGDB will force the background black.
* CGDB broke it's terminal resizing functionality in cgdb-0.6.0. This is
now working again. The bug was introduced while bringing readline into
the same address space as CGDB.
* The man page now get's installed when 'make install' is done.
cgdb-0.6.0 (01/30/2006)
* There is a new manual for CGDB. The text version is located in
cgdb/doc/cgdb.txt. The info version is available at cgdb/doc/cgdb.info.
The text, html, pdf, info and possibly other versions are avialable at
http://cgdb.sourceforge.net/documentation.shtml
* There is a new CGDB man page. It is located in cgdb/doc/cgdb.1.
* Fix a crash in CGDB if the user would type ':e' or ':edit' in the
source window, and the source window was empty. This crash is considered
not very significant, since I can't understand why the user would try to
refresh the file, if it didn't exist.
* Removed the :q! and :quit! commands, since they don't do anything
different than :q or :quit.
* Fix a bug regarding the CGDB source viewer displaying breakpoints. If you
used the file dialog to open a file, and the file was an absolute
path, CGDB would display the file. If it was the first time CGDB
encountered this file, then when you set a breakpoint, CGDB would not
display the line as having a breakpoint in the source window, even though
the breakpoint was actually being set. This is now fixed.
* CGDB now supports getting the initial line, as well as the initial
file that GDB is on when it first starts the inferior. It used to only
determine the initial file.
* CGDB now supports when the terminal does not have control flow turned
on. If control flow (XON/XOFF) is off, the ^s and ^q will go directly
to readline instead of freezing and restarting the terminal.
* CGDB now allows the user to use the \ character for line continuation
purposes. GDB handles this and now CGDB also handles this. Before this,
CGDB would break if the user attempted to do line continuation.
* CGDB no longer needs to do a fork to communicate data back and forth to
readline, it runs readline in it's own process context. This is a huge
improvement because it means that when you run CGDB you should only see 1
process executing instead of the usual 2.
* CGDB now supports tab completion. This has been a long awaited missing
feature of CGDB.
* CGDB now depends on readline 5.1.
* Fix a bug in the c/c++ syntax highlighter. If a file had "\\" as a
string literal, the CGDB syntax tokenizer would be built incorrectly
resulting in incorrect file highlighting.
cgdb-0.5.3 (08/08/2005)
* CGDB now can detect the version of readline that it is going to link against.
By doing this, it can alert the user at configure time if the readline version
is OK to build CGDB with. If it is not OK, configure will fail.
* CGDB has changed it's user interface in a way that is not backwards compatible.
The 't' key, now sets a temporary breakpoint. The 't' key used to put CGDB into
insert mode in the TTY window. Now 'I' does that.
* CGDB is now capable of setting a temporary breakpoint thanks to Marcel Lanz.
He sent in a patch with the functionality. Hitting 't' set's a temporary breakpoint.
* It was reported that the "Windows" Key would cause CGDB to shut down.
This has been fixed.
* Added a new 'arrowstyle' option, see README for documentation
* Add the ^l command to the Source window. CGDB will now clear and redraw
the screen when this command is received.
* It is now required to have the GNU history library in order
to configure CGDB successfully. This was always the case, but the
configure checks wouldn't catch it.
* Get readline configure check to only look for libreadline. Not libedit, ...
Future version of CGDB will depend on functionality that only readline will
contains.
cgdb-0.5.2 (05/21/2005)
* Attempt to get autoconf/automake machinery working with command,
make DESTDIR=... install. This should simplify the job of package maintainers.
* Added the --with-readline-prefix autoconf option. This makes configuring CGDB
much easier when readline is in a non standard place.
* Fixed major bug in CGDB-0.5.1 that prevented it from running on Solaris 9,
FreeBSD 5.2.1 and probably many others. CGDB would hang when trying to read
input. This bug made it impossible to use CGDB on those platforms. libkui is
the cause of this problem and was a replacement input library for CGDB in
cgdb-0.5.1. The bug is now fixed.
cgdb-0.5.1 (04/02/2005)
* fixed crash when user tries to set a breakpoint on a file that's not
a source file. This would happen if you typed ':help' to get into the
help, and then tried to set a breakpoint using the spacebar.
* obsolete the b and f commands. These were responsible for moving between
the previous and the next source file. They made CGDB unstable and I don't
think they were in the spirit of a vi/vim clone.
* fixed an annoying bug that appeared while searching for a string. If you
canceled the source view regex search by hitting ESC, 2 bad things would happen.
You would end up on the line that you cancelled at
The currently displayed line would stay the line you can cancelled at, even when
you start moving around again.
* reworked the signal handling code when GDB dies. Now CGDB handles the SIGCHLD
and passes the signal notification to TGDB. This fixes a race condition that
occurred, even though the race condition appeared to be harmless.
* Several memory runtime fixes found thanks to valgrind. This could potentially
fix crash's that I just never ran into.
* Fix a bug in the c/c++ syntax highlighter. If a file had a dos file format
and the C++ style comment // was used, then the file displayed would be
completely unreadable. This is because the trailing '\r' would get grouped with
the comment.
* Fix CGDB command line interface. If the user invoked CGDB like this,
'cgdb --args ./main one two three', then CGDB would hang or crash. This
was because it use to add extra command line options to GDB on the end.
Now it prepends the options to GDB, so that the --args command line
can still be honored.
* Added new logger interface. This traps all errors to a file or
a file descriptor. There is now a mechanism to write warnings and
errors to a file for inspection by the user.
* Removed deprecated libinput from the various subdirectory. It has been
replaced by libkui.
* Added 'set asr' or autosourcereload option to CGDB. It is off by default.
It is capable of reloading a source file when CGDB detects that a file has
been modified. To turn this feature on do ':set asr'.
* The :edit [:e] colon command has been implemented. It forces CGDB to
reload the current file in the source viewer.
cgdb-0.5.0 (07/14/2004)
* "progs" directory is no longer installed in a potentially
read-only directory. It is installed now in top_builddir, instead of
top_srcdir.
* Added libkui into CGDB. This is the fisrt of the 4 new libraries
designed to make CGDB flexible and modular. Because of this, the version
number has been bumped up to .5.0.
* Fixed crash in TGDB when buffering commands. If the user hit
'n' <Enter> <Enter> ... fast, while GDB was not responding, or working
on a command, the buffering code in TGDB would enter a bad command into
a queue, causing it to crash when it tries to execute the command.
* Fix crash in CGDB when parsing command line parameters. I think this crash
showed up when I starting compiling CGDB with 3.3 instead of 2.95. It would
crash when trying to pass the --pid argument to GDB through CGDB.
cgdb-0.4.2 (05/10/2004)
* CGDB now compiles again on AIX 4.3. Fixed Makefile.am in various/util/src
to not have a space between the -L and the path.
cgdb-0.4.1 (04/26/2004)
* Removed a memory leak from CGDB. When debugging applications that output
a lot of text, CGDB would reportedly grow well over 400MB. Thanks to the
sender of this patch, who decided to keep themselves anonymous.
* Removed all instances of PATH_MAX and replaced with FSUTIL_PATH_MAX.
PATH_MAX is not defined on HURD, and thus CGDB wouldn't compile in that
environment.
* Fixed TGDB bug. Tab completion was broken during cgdb-0.4.0 release.
developer is officially maintaining the package.
The rationale for changing this from "tech-pkg" to "pkgsrc-users" is
that it implies that any user can try to maintain the package (by
submitting patches to the mailing list). Since the folks most likely
to care about the package are the folks that want to use it or are
already using it, this would leverage the energy of users who aren't
developers.
rather than PKG_FAIL_REASON, so that they provide useful error
messages in build logs, and so that they continue to work on platforms
where they aren't broken.
in the process. (More information on tech-pkg.)
Bump PKGREVISION and BUILDLINK_DEPENDS of all packages using libtool and
installing .la files.
Bump PKGREVISION (only) of all packages depending directly on the above
via a buildlink3 include.
CGDB is a curses-based interface to the GNU Debugger (GDB). The goal of CGDB
is to be lightweight and responsive; not encumbered with unnecessary features.
The interface is designed to deliver the familiar GDB text interface, with a
split screen showing the source as it executes. The UI is modeled on the
classic Unix text editor, vi. Those familiar with vi should feel right at home
using CGDB.