Release notes for MonoDevelop 2.0 Alpha 1

From $1
    Table of contents

    MonoDevelop 2.0 Alpha 1 (1.9) has been released. MonoDevelop is a GNOME IDE primarily designed for C# and other .NET languages.

    This is the first release of a series of releases that will lead to MonoDevelop 2.0, hopefully around the end of the year. This release contains lots of new features and improvements. Read below.

    Installing MonoDevelop

    Compiling the following order will yield the most favorable response.

    • Gtk# 2.8.0
    • Mono.Addins 0.3.1
    • Monodoc 1.0
    • MonoDevelop 2.0 Alpha 1 Source

    It is highly recommended to use Gtk# 2.8.4 or later, since it includes important memory use and performance improvements.

    You can download MonoDevelop 2.0 Alpha 1 source from here. The Mono download site contains packages for everything for many popular distros.

    This release of MonoDevelop needs at least Mono 1.1.10 to run.

    Installing Add-ins

    There are some add-ins which are distributed as separate packages. Those packages are:

    • monodevelop-boo: Boo language binding.
    • monodevelop-java: Java language binding (with IKVM).
    • monodevelop-database: database management add-in.

    Other add-ins are available using the MonoDevelop Add-in Manager (in the Tools menu, click on 'Add-in Manager' and then on 'Install Add-ins').

    New Features and Improvements

    Project Management

    MSBuild File format

    MonoDevelop now uses the MSBuild project format as its native file format. This improves compatibility with Visual Studio, and will allow MonoDevelop to transition to using xbuild/MSBuild as the build engine.

    The old MonoDevelop project file format (mdp) is still supported. The default file format to use when creating new projects can be configured in the MonoDevelop preferences dialog, Load/Save section.


    (Lluis Sanchez)

    New project model: Workspaces and Solution Folders

    The MonoDevelop project model has been reorganized to better fit the MSBuild model, but without losing particular features that MonoDevelop used to have.

    One important change is the introduction of Solution Folders. Solution folders allows organizing projects using folders inside a solution. This organization used to be done with nested solutions, but the solution folder model is more robust and it is compatible with the Visual Studio model.

    Another change is the new support for Workspaces. A workspace allows grouping together a set of solutions (or other child workspaces). Workspaces are useful when you have several related but independent solutions and you want to open all of them at once.

    (Lluis Sanchez)

    Opening Multiple Solutions

    MonoDevelop now supports opening multiple solutions at the same time. This is useful when you are working with a solution and want to review code side-by-side which belongs to another solution. To open a solution without closing the currently opened, you can:

    • Click on the Open command, select the solution, and uncheck the "Close current workspace" option.
    • In the "Recent Solutions" menu, click on the solution you want to open while holding the Control key. The same applies when opening from the Welcome Page.

    Configurable Project Base Directory

    All projects have a base directory assigned. This base directory is where the project file is located. All files included in the project are supposed to be under that directory, and it is the directory structure shown in the Solution Pad (files outside the project directory are still alowed, but they are shown all together in a special 'External Files' folder).

    In order to support other project directory structures, it is now possible to specify a custom base directory for a project. So for example, now a project file can be saved in a directory and project files in a different directory. The Solution Pad will show the correct source file structure, and all version control operation will be directed to the custom base directory.

    The base directory can also be specified for solutions, solution folders and workspaces.

    (Lluis Sanchez)

    Option Dialogs Reorganization

    The options dialogs have been reorganized to make it easier to find the settings to manage.

    Configuration-specific option panels are grouped together with all other panels (configuration selection is now done inside the panel, not in the options tree), so option panels can be more logically organized.

    (Lluis Sanchez)

    Web Development

    This new release of MonoDevelop makes editing and deploying websites easier than ever.

    Code Completion

    Code completion of tag, attributes, attribute values and event handlers is now supported for ASP.NET and various HTML DTDs. (Michael Hutchinson)

    Path Bar

    The path bar shows the current tag hierarchy and offers a quick way to select tags and their contents. (Michael Hutchinson)

    Document Outline

    The outline pad shows the document structure and enables quickly selecting any element.



    Tags in Toolbox

    ASP.NET controls are shown in the toolbox for the text editor. Dragging them to the text document automatically adds the necessary assembly reference and tag prefix registration.

    Source Code Editing

    MonoDevelop 2.0 will have a new text editor component written from the ground up in managed code, and this has enabled the addition of many advanced features. (Mike Krüger)

    Code Folding

    Regions, members and comments can be collapsed in order to navigate code more easily. Tooltips show a preview of the collapsed contents. (Mike Krüger)

    Incremental Search Bar

    The non-intrusive search bar makes searching and replacing text easier. (Mike Krüger)

    Colour Schemes

    Colour schemes are available for changing the appearance of the text editor. (Mike Krüger)

    Split View

    The text editor can be split into two panels viewing different parts of the same file. (Mike Krüger)

    Transparent Popups

    The 'Control' key can be used to make any of the completion and information popup windows transparent, to reveal the code underneath. Note that this is only available with GTK+ 2.12 and a compositing window manager such as Compiz. (Michael Hutchinson)

    Toolbox clipboard snippets

    Copied text snippets are now retained on the toolbox for later access. (Mike Krüger)




    XML Editing

    The XML Editor from SharpDevelop has been fully integrated into MonoDevelop and improved. It supports code completion of tags, attributes and attribute values (available for registered XSD schemas). A range of schemas are supplied with MonoDevelop.

    XML files can be validated using the built in schemas, and can have XSL transforms applied. in addition, XSD schemas can be generated from XML files.

    (Matt Ward, Michael Hutchinson)

    New Tools

    Assembly Browser

    The new assembly browser allows inspecting the contents of an assembly. It can display type and member definitions, and the IL of methods.


    (Mike Krüger)

    Code Metrics

    The Code Metrics add-in scans a project and provides basic statistics about line counts and source code licenses.


    (Mike Krüger)

    Pad/Document Switcher

    A new pad/document switcher can be shown by pressing Ctrl+Tab.


    (Mike Krüger)

    Integrated Debugger (Work in Progress)

    Work on the debugger integration has started, and there is already basic support for step-by-step debugging, breakpoints and variable watching.

    The debugger add-in has not been included in the release because it requires Mono and the Mono Debugger from SVN.

    (Lluis Sanchez, Ankit Jain)

    Vala Add-in

    The new Vala project type allows managing, editing, and compiling Vala code (using valac). The compilation is configurable, including define symbols, linked libraries, custom VAPI paths and arbitrary additional arguments.

    Integration with Vala's API binding system allows users to easily reference packages like SDL, DBus, or libsoup. Library projects produce VAPIs for use with Vala, as well as pkg-config files for use with C and other languages.

    Class pad browsing is supported via exuberant ctags, as is limited code completion. (Levi Bard)

    350px 350px


    • The Gettext translation editor has been overworked and is much more feature-complete. (Mike Krüger)
    • MonoDevelop's UI now better conforms to the GNOME Human Interface Guidelines. (Mike Krüger)
    • Support for running MonoDevelop on Macs and other platforms has been improved. (Geoff Norton, Jonathan Pobst, Lluis Sanchez)
    • Namespaces of new file can be based automatically on folder names (Aaron Bockover)
    • Improved encapsulate fields dialog (Ankit Jain)
    • Improved mime type handling (Lluis Sanchez)
    • The Welcome Page now shows news published on-line. (Steve Y.)



    The following people contributed in this release:

    Lluis Sanchez, Michael Hutchinson, Ankit Jain, Mike Krüger, Mike Kestner, Wade Berrier, Thomas Wiest, Ben Motmans, Rolf Bjarne Kvinge, Marcos David Marín Amador, Ben Motmans, Zach Lute, Geoff Norton, Jonathan Pobst, Aaron Bockover, Steve Y.

    This is the list of all project contributors:

    Aaron Bockover, Alberto Paro, Alejandro Serrano, Alexandre Gomes, Alex Graveley, Andrés G. Aragoneses, Andre Filipe de Assuncao e Brito, Antonio Ognio, Ankit Jain, Ben Maurer, Ben Motmans, Christian Hergert, Daniel Kornhauser, Daniel Morgan, David Makovský, Eric Butler, Erik Dasque, Franciso Martinez, Geoff Norton, Gustavo Giráldez, Iain McCoy, Inigo Illan, Jacob Ilsø Christensen, James Fitzsimons, Jeff Stedfast, Jérémie Laval, Jeroen Zwartepoorte, John BouAnton, John Luke, Joshua Tauberer, Jonathan Hernández Velasco, Levi Bard, Lluis Sanchez Gual, Marc Christensen, Marcos David Marín Amador, Martin Willemoes Hansen, Marek Sieradzki, Matej Urbas, Maurício de Lemos Rodrigues Collares Neto, Michael Hutchinson, Miguel de Icaza, Mike Krüger, Muthiah Annamalai, Nick Drochak, nricciar, Paco Martínez, Pawel Rozanski, Pedro Abelleira Seco, Peter Johanson, Philip Turnbull, Richard Torkar, Rolf Bjarne Kvinge, Rusty Howell, Scott Ellington, Thomas Wiest, Todd Berman, Vincent Daron, Vinicius Depizzol, Wade Berrier, Yan-ren Tsai and Zach Lute.

    This list may not be complete, some contributors who sent patches by email or via our bugzilla may be missing. Your work is still greatly appreciated. If your name was left off the list, it was not intentional, please send an email to the MonoDevelop mailing list and it will be corrected as soon as possible.


    CatalanJonathan Hernández Velasco, Jordi Mas i Hernández
    CzechDavid Makovský
    DanishMartin Willemoes Hansen, Jacob Ilsø Christensen
    GermanGustav Schauwecker, Martin Dederer
    SpanishAntonio Ognio, Alejandro Serrano, Andrés G. Aragoneses
    FrenchVincent Daron, Nicolas Favre-Félix
    GalicianIgnacio Casal Quinteiro
    HungarianGergely Kiss
    IndonesianFajrin Azis
    ItalianAlberto Paro, Milo Casagrande
    JapaneseAtsushi Eno
    DutchAndré Offringa
    PolishMarek Sieradzki
    PortugueseVitor Hugo Barros
    Portuguese (Brazil)Mauricio de Lemos Rodrigues Collares Neto, Andre Filipe de Assuncao e Brito, Rafael Teixeira
    Russian Maxim Krentovskiy, Semyon Soldatov, Daniel Abramov
    Slovenian Matej Urbas
    Swedish Daniel Nylander
    Turkish Enver Altin
    Chinese (China) Yu Lindong, Funda Wang
    Chinese (Taiwan) Yan-ren Tsai


    To all of our wonderful testers, who had the patience to use unstable versions of MonoDevelop for everyday use, and managed to post nice bug reports.

    To Mike Krüger and the rest of the AlphaSierraPapa team for giving us a great codebase to start from, and continuing improvements.

    To Pedro Abelleira, Todd Berman, John Luke, and other early contributors who started this adventure 4 years ago, and who believed in the feasibility of the project.

    To all of the active and not so active (we miss you!) MonoDevelop developers.

    Tag page
    • No tags

    Files (0)

    You must login to post a comment.
    Page last modified 10:52, 20 Jun 2008 by Lluis