November 17th, 2008 - Martin Baulig
-----------------------------------

Released version 2.2 "Sidney" of the Mono Debugger :-)

- This is basically a bug-fixing release over 2.0 and contains some
  important stability improvements.

August 5th, 2008 - Martin Baulig
--------------------------------

Released version 2.0 "Cologne" of the Mono Debugger :-)

- This is a stable release for Mono 2.0 and will be supported
  for a long period of time.

- As requested by the Mono Release Team, the version number was
  changed to 2.0.  There is no 1.0.

- Lots of bug fixes went in since 0.80.

March 14th, 2008 - Martin Baulig
--------------------------------

Released version 0.80 "Terrania City" of the Mono Debugger :-)

- This release adds support for C# 2.0 features such as generics,
  anonymous methods and iterators.

  * We can currently print fields in generic instances, print their
    types and parent classes.

  * Recursive generic types (see test/src/TestRecursiveGenerics.cs for
    an example) are supported, but need more testing.

  * There is some limited support for method invocations, but we can't
    get their types yet.

  * Support for anonymous methods and iterators should now be pretty
    much complete; we can fully debug them, access captured
    variables etc.

  * There are a few single-stepping improvements.

December 16th, 2007 - Martin Baulig
-----------------------------------

Released version 0.60 "Madrid" of the Mono Debugger :-)

May 9th, 2007 - Martin Baulig
-----------------------------

Released version 0.50 "Dublin" of the Mono Debugger :-)

- Lots of bug-fixes, usability improvements and increased stability.

- New object formatter:
  When printing a class object, we now include fields from its parents.

- Added support for Displays (thanks to Massimiliano Mantione).

- New threading model:
  By default, all threads are now stopped when the debugger is in
  control.

- Ctrl-C now stops all threads.

- We now support stripped `mono' binaries.

November 15th, 2006 - Martin Baulig
-----------------------------------

Released version 0.31 "Ehrenbreitstein" of the Mono Debugger :-)

- Thanks a lot to Wade Berrier for cooking this release.

- Upgraded libedit; the new version has a BSD-license without the
  GPL-incompatible advertising clause.

- We don't use a separate appdomain inside the debugger anymore.

July 18th, 2006 - Martin Baulig
-------------------------------

Released version 0.30 "Koblenz" of the Mono Debugger :-)

- This version of the debugger requires Mono 1.1.16.

- Redesigned and improved the session code.

- Stability improvements and bug fixes.

- Fixed i386 support.

- The next releases will be "Dublin", "Sidney" and "Cologne".

May 24th, 2006 - Martin Baulig
------------------------------

Released version 0.20 "Bruxelles" of the Mono Debugger :-)

- This version of the debugger requires the latest Mono from SVN;
  it won't work with the Mono 1.1.15 release.

- We now preserve breakpoints across different invocations of
  the same target.

- Big API cleanups.

- Cleaned up method lookups; there's a very complex test for them
  in test/testsuite/TestMethodLookup.cs.

- Lots of stability improvements.

- Fixed a very old GC bug which was preventing us from running
  xsp inside the debugger.

- Fixed a very old race condition which was causing crashes at exit.

- Fixed line numbers in stack traces.

- Added experimental support for hardware watchpoints - I needed
  them to track down a race condition.

- Unfortunately, a `make check' now requires even more memory
  than before; I'm still investigating the issue.
  I'm currently using `ulimit -Sm 1000000 -Sv 1000000'.

- The next releases will be "Dublin", "Sidney" and "Cologne".

April 10th, 2006 - Martin Baulig
--------------------------------

Released version 0.13 "Luxemburg" of the Mono Debugger :-)

- Unfortunately, there was some confusion about the supported
  Mono version last week:

  * The "Portand" release won't work with Mono 1.1.14 or the latest
    SVN anymore because some runtime structure changed.

  * I tested this release with the Mono 1.1.14 tarball and it's
    working fine.

  * To avoid future incompatibilities due to changes in the runtime
    structures, I'm making a few changes to the debugger's runtime
    interface next week - this may break compatibility again.

- The test suite has been migrated to NUnit.

  This makes the test suite more reliable and also allows me to add
  more complex test to test scenarios which weren't possible with
  the old test suite.

  Unfortunately, a `make check' now requires a lot of memory to
  run.  I'm currently using `ulimit -Sm 600000 -Sv 600000'.

- The next releases will be "Bruxelles", "Sidney" and "Cologne".

April 4th, 2006 - Martin Baulig
-------------------------------

- The debugger now requires Mono 1.1.14.

- Multi-Process support:

  The debugger can now follow fork()s and exec()s and thus debug
  multiple processes at the same time.

- The next release will be 0.13 "Luxemburg", but there is no
  release date yet.

March 14th, 2006 - Martin Baulig
--------------------------------

Released version 0.12 "Portland" of the Mono Debugger :-)

- This version of the Mono Debugger requires Mono 1.1.13.4.

  For those of you using SVN, you need the latest Mono from either
  SVN HEAD or anything from the 1-1-13 branch which is at least
  Mono 1.1.13.4.

- The debugger no longer uses a `mono-debugger-mini-wrapper',
  it's now using the normal `mono' instead.

- We can now attach to processes and examine core files -
  this still needs some testing; bug reports are very welcome ...

- We no longer run the backend in another process/appdomain;
  most of the remoting stuff is gone to make the debugger faster
  and more reliable.

- This release is named after Portland, Oregon.

December 15th, 2005 - Martin Baulig
-----------------------------------

Released version 0.11 "Guam" of the Mono Debugger :-)

June 13th, 2005 - Chris Toshok
-------------------------------

Released version 0.10 of the Mono Debugger

it's been a long, long time since a release, some highlights include:

- the format of information communicated between runtime and debugger
  has changed.  less is transmitted (more being taken from metadata),
  and what is transmitted is in a more efficient form.
- better support for exceptions.  Stepping over a statement that
  throws an exception will land you in a catch/finally block.  Also, you
  can cause the runtime to stop when an exception is thrown.
- fixed a lot of different bugs.
- fixed up the console frontend, with more of an eye toward the usability
  of the thing.
- substantial work has gone into the MonoDevelop debugger support.
- Martin got amd64 support working.


June 12th, 2004 - Martin Baulig
-------------------------------

Released version 0.9 "Seven Mile Bridge" of the Mono Debugger :-)

- fixed a couple of bugs
- Mono.Debugger.dll is now installed in the GAC
- this release requires Mono's beta3
- the debugger is enabled in MonoDevelop again

June 2nd, 2004 - Martin Baulig
------------------------------

Released version 0.8 "Wrightsville Beach" of the Mono Debugger :-)

- this is mostly a bug-fix release which was neccessary due to a
  recent change of some runtime internals.
- unfortunately, a last minute breakage slipped into Mono's beta2
  which means that you need to use the latest version from CVS.

April 28th, 2004 - Martin Baulig
--------------------------------

Released version 0.7 "Wilmington" of the Mono Debugger :-)

Lots of changes this time:

- we got a cool new command line interface with a TCL-like language
- lots of stability and usability improvements

Documentation won't make it into this release, but will be in MonkeyGuide
shortly after it.  I'm doing two weeks of vacations, so I just want to
get the release out before leaving.

Btw. this is Wilmington, North Carolina.

March 16th, 2004 - Martin Baulig
--------------------------------

Released version 0.6 "Atlanta" of the Mono Debugger :-)

This was during the week where we all met in Boston and it's also the
first release which working in MonoDevelop.

December 9th, 2003 - Martin Baulig
----------------------------------

Released version 0.5 "Clemson" of the Mono Debugger :-)

After a very long time, I'm working on the debugger again.  This is
more or less a snapshot release and it comes without any GUI.

September 8th, 2003 - Martin Baulig
-----------------------------------

Improved the way how we invoke managed methods in the target.  The
command line interface already provides two ways of invoking a method
in the target:

a) you can use `print $a.Hello (8)' to invoke the method and print
   ints return value.

b) you can use `call $a.Hello (8)' to call the method without printing
   the return value.

   This command is now improved: the debugger stops at the beginning
   of the method to allow you to debug it and it stops again when
   returning from the call.

July 4th, 2003 - Martin Baulig
------------------------------

Released version 0.4 "New York City" of the Mono Debugger :-)

July 4th, 2003 - Martin Baulig
------------------------------

Hmm, I forgot to write NEWS entries for a longer period of time.

April 24th, 2003 - Martin Baulig
--------------------------------

Reworked the way how we handle I/O from the target; we're now also using a nice
terminal widget in the GUI for it.

April 6th, 2003 - Martin Baulig
-------------------------------

Released version 0.3 "The White Mountains" of the Mono Debugger :-)

April 5th, 2003 - Martin Baulig
-------------------------------

Finally fixed a bug which made the debugger hang the first time the
garbage collector was run.  You need a modified version of Boehm GC to
make this work, see README.build for details.

March 28th, 2003 - Martin Baulig
--------------------------------

Use a special simple symbol table to lookup function names in backtraces.
This simple symbol table may also be available if there's no debugging info
for a module.

March 23th, 2003 - Martin Baulig
--------------------------------

Fixed a few bugs wrt. variable access; the debugger now fully supports the new JIT.

March 21th, 2003 - Martin Baulig
--------------------------------

Debugging interncalls is working again.

March 16th, 2003 - Martin Baulig
--------------------------------

Added support for shared library trampolines; this helps a lot when debugging native
applications which are using shared libraries.

March 9th, 2003 - Martin Baulig
-------------------------------

Released version 0.2.2 "Cambridge" of the Mono Debugger :-)

March 3th, 2003 - Martin Baulig
-------------------------------

Reworked the help system of the command line interface; you can now get help about
the arguments a command takes and expressions.

February 28th, 2003 - Martin Baulig
-----------------------------------

Added support to read method parameters and local variables of unmanaged applications.
This is currently limited to fundamental types and strings, but more will follow soon.

February 2nd, 2003 - Martin Baulig
----------------------------------

When single-stepping into an interncall, don't stop in the wrapper.

January 25th, 2003 - Martin Baulig
----------------------------------

The Mono runtime now executes all managed code in a separate thread; rewrote the
Debugger's thread manager to make this work again.

You can now save a debugger session with all your breakpoints to disk and load it
back at a later time.

January 19th, 2003 - Martin Baulig
----------------------------------

Released version 0.2.0 "Boston" of the Mono Debugger :-)

January 17th, 2003 - Martin Baulig
----------------------------------

We have a new thread manager in mono/io-layer which is now used when debugging managed
applications.  This thread manager is portable and works on all flavors of Unix.

January 14th, 2003 - Martin Baulig
----------------------------------

The Debugger is now working on FreeBSD 4.7.

It wasn't actually that much work to port it, just cleaning up the APIs a bit and then a
few adjustments - a simple one afternoon job.

You can debug native applications or read core files; managed applications and
multi-threaded apps don't work yet.

January 5th, 2003 - Martin Baulig
---------------------------------

Added a note to RELEASE-NOTES-0.1.0.txt about the release which never really happened.

After an almost complete rewrite of the SingleSteppingEngine to support debugging
multi-threaded applications, the debugger is now getting more and more stable again.

Today, the debugger is entering a feature freeze for the 0.2.0 release.  My main focus is
now fixing all the remaining bugs and stabilizing all the existing features to make the
debugger actually usable.

October 15th, 2002 - Martin Baulig
----------------------------------

I was a bit too lazy to write NEWS items the last two weeks.

Today is Tuesday, it's one hour past Midnight and on Saturday I'll be sitting in an air
plane to New York City to enjoy my holidays before university starts again.

The last few days, I did a lot of bug fixing and stabilizing in the backend.  Tonight, I
started concentrate entirely on bug fixing, writing documentation and working towards a
release.  Due to the limited time I have left, I must consider the backend as more or less
feature complete and work towards making a stable and usable release.

October 1st, 2002 - Martin Baulig
---------------------------------

Added support for properties (read-only).

October 1st, 2002 - Martin Baulig
---------------------------------

Added support for breakpoints.  Breakpoints can be set for not-yet-JITed methods and will
persist across multiple invocations of the same target.

September 27th, 2002 - Martin Baulig
------------------------------------

Started to work on "dynamic breakpoints".  The JIT now uses a special breakpoint
trampoline if you insert a breakpoint for a not-yet-JITed method.  This trampoline is at a
fixed address in memory and it contains a breakpoint - when this breakpoint is hit, the
debugger reads some data from the stack, inserts all breakpoints for the method and then
continues the target.  This technique will also be used if you insert a breakpoint for a
source location, the target exits and you restart it - the debugger will automatically
transform all your breakpoints into dynamic breakpoints.  There's still some work to be
done, will hack a bit more on this tomorrow.

September 27th, 2002 - Martin Baulig
------------------------------------

Type support for most types (fundamental, enums, strings, arrays, multi-dimensional
arrays, structs, classes) is now done - at least for method parameters.  There are still
some problems with local variables since the JIT doesn't provide this information yet.

September 21th, 2002 - Martin Baulig
------------------------------------

It's time to start writing news items :-)

Did a larger restructuring of the interfaces and directory layout.
Everything which is architecture or backend dependent is now hidden in its own library.


