Nine Months Later: Mono 2.6 and MonoDevelop 2.2

by Miguel de Icaza

About nine months ago we released MonoDevelop 2.0 and Mono 2.4. Today we are releasing the much anticipated upgrades to both. Mono 2.6 and MonoDevelop 2.2.

For those in a hurry, binaries and source are available from:

And if you want a quick mnemonic to remember this release, just think debugger! and cross platform.

The Mono team and contributors worked on this release like we have never worked before. Thanks to everyone that reported bugs, filed feature requests, contributed code and helped newcomers with Mono.

Mono 2.6 highlights:

  • WCF client and server, the subset exposed by Silverlight 2.0.
  • LLVM support, to improve performance on server/computational loads.
  • Continuations/Co-routine framework Mono.Tasklets (background info)
  • LINQ to SQL using DbLinq.
  • New Soft Debugger, integrated with MonoDevelop on Unix and OSX (background).
  • System.IO.Packaging.
  • csharp shell now supports auto-completion (press tab to complete)
  • xbuild can now build most msbuild projects.
  • Mono debuts a verifier and security sandbox (used by Moonlight).
  • More complete 3.5 API coverage.
  • This release includes Microsoft's open sourced ASP.NET MVC, ASP.NET AJAX and Microsoft's Dynamic Language Runtime.
  • Faster and slimmer.

MonoDevelop 2.2 highlights (screenshots here and here):

  • MonoDevelop code is now LGPLv2 and MIT X11 licensed. We have removed all of the GPL code, allowing addins to use Apache, MS-PL code as well as allowing proprietary add-ins to be used with MonoDevelop (like RemObject's Oxygene).
  • User interface improvements: the first thing that MonoDevelop users will notice is that we have upgraded the UI to fit modern ideas. We borrowed ideas from Chrome, Firefox, Visual Studio, Eclipse and XCode.
  • ASP.NET MVC support, you can now develop, debug and build ASP.NET MVC applications from MonoDevelop.
  • New T4 Macro processor (Text Template Transformation Toolkit) integrated directly into the IDE (Mono's T4 is also available as a reusable library for use and abuse in your own programs).
  • Moonlight Project Support: you can now build, debug and run Moonlight applications using MonoDevelop.
  • New MacOS and Windows support. Check our feature matrix for details.
  • New Debugger support allows debugging Console, Gtk#, ASP.NET, iPhone and Moonlight applications.
  • Extensive text editor improvements:
    • Dynamic abbrev (Just like Emacs' Alt-/)
    • Code generator (Alt-Insert)
    • Acronym matching
    • Code templates
    • Block selection
    • C# Formatter
  • New refactoring commands:
    • Inline Rename (see screenshot).
    • Resolve Namespace
    • Rename Refactoring with Preview
    • Extract Method
    • Declare Local Variable
    • Integrate Temporary Variable
    • Introduce Constant
    • Move Type to Own File
    • Remove Unused Usings
    • Sort Usings
    • Create/Remove Backing Store
    • Keybindable Commands
  • Python add-in has graduated to be a supported plugin, includes code completion, syntax checking, method and class locator and code folding.
  • iPhone development plugin.

The team is on #mono, #monodev and #monodevelop on irc.gnome.org fielding any questions you might have.

Update: the diffstat results for Mono 2.4 to 2.6 on a 2 million line patch:

 7208 files changed, 1392400 insertions(+), 440016 deletions(-)

About a million lines of new code in Mono.

For MonoDevelop the patch is 750,000 lines and:

 2427 files changed, 464284 insertions(+), 120124 deletions(-)

Roughly 300k lines of new code.

Posted on 15 Dec 2009