MonoDevelop 0.12 has been released. MonoDevelop is a GNOME IDE primarily designed for C# and other .NET languages.
This release contains lots of improvements, new features and bug fixes. Read below.
Compiling the following order will yield the most favorable response.
You can download MonoDevelop 0.12 source from here. The Mono download site contains packages for everything for many popular distros. You can also check the mono redcarpet channel.
This release of MonoDevelop needs at least Mono 1.1.10 to run.
Code completion now is more stable and supports the C# 2.0 syntax (including generics), thanks to the new parser based on NRefactory. This parser is already integrated in the C# language binding (Matej Urbas).
There are other nice improvements:
|
|
|
The new "Open With" menu allows opening a project file using different internal editors or external applications.
The Autotools add-in (contributed by Scott Ellington) can create a complete set of autotools scripts for a solution. It provides the capabilities to configure and build as well as the 'make install', 'make uninstall', 'make clean', 'make dist', and 'make distcheck' commands. Additionally, solutions can be deployed directly to a distributable tarball from within MonoDevelop.
Other features:
MonoDevelop has a new extensible deployment infrastructure, which allows specifying deploy targets for solutions and projects. In this release there is a simple deployment target which copies the project files to a specified directory, and a more complex one which generates a tarball for the project (based on the Autotools add-in).
The deployment service is extensible, and we'd like to provide more deployment targets in the future.
|
|
There are two useful improvements in the add-in engine:
MonoDevelop can now read and write files using encodings other than UTF-8. The Open and Save file dialogs now have a 'Character encoding' combo box which allows selecting the encoding to use.
By default, MonoDevelop will auto-detect the encoding. However, only some pre-selected encodings will be checked for auto-detection. Those encodings can be selected using the Encoding Selector dialog shown when clicking on the "Add or Remove" command.
|
|
This release of MonoDevelop contains a stable subset of the ASP.NET support implemented by Michael Hutchinson, sponsored by Google as part of their Summer of Code. There is a new ASP.NET project type, with a selection of file templates, available for all of the .NET languages supported by MonoDevelop. This project type recognises CodeBehind files, autogenerates fields in CodeBehind classes when compiling the CodeBehind dll, and can preview the application in a web browser using XSP.
Alejandro Serrano has contributed a Nemerle language binding for MonoDevelop. It supports creation of Nemerle projects, compilation and code completion. This add-in requires Nemerle from HEAD, and it is not included in the binary packages. To try it, you'll need to build MonoDevelop from source using the --enable-nemerle configuration option.
|
MonoDevelop new features a new menu and toolbar designer. The designer is based on the UIManager/Action/ActionGroup model, and it has been a real challenge to make easy building menus, and at the same time take advantage of all features this model provides. Building a menu is really easy and 'visual'. You only need to add a menu bar to the window and start writing options. The menu designer looks like a regular menu, but clicking on a menu it will select it, so you can change its properties using the Properties pad. Clicking again on the menu item when it is selected will start the editing mode of the menu item, in which you can change the label or the icon. When you are creating menu items in this way, at the same time the designer creates Actions for each menu item. Those actions are added to the window's default ActionGroup. This default action group is local to the window, which means that handlers for action signals will be added to the window's class, and fields for the actions will be added also to the window class. It also means that if you create another window with another menu bar, you won't be able to reuse the actions from another window. In case you want to share actions between windows, you'll need to create a global action group. In the New File dialog there is a new icon for creating global action groups. A global action group is not bound to a specific window, but it has its own class, and signals and fields are mapped there. Actions belonging to global action groups will always be shown in the palette, so you can add them to any window. |
|
Stetic/MonoDevelop can now manage icons to be included in a project. The idea is that you select some images, give them an ID, and Stetic will generate a Gtk.IconFactory for you and will register the icons there. You can then use that ID when creating buttons or whatever that requires an stock id. There is also an improved stock icon selector.
Here is a list of all bugs fixed in this release:
The boo add-in needs to be compiled using a boo compiler which targets the 2.0 runtime. If you are compiling boo from a tarball, just provide the option when compiling. If you installed it from a package, you can create a configuration file for booc.exe which will force mono to use the 2.0 runtime. This file should be named booc.exe.config and be placed next to booc.exe:
<?xml version="1.0"?>
<configuration>
<startup>
<supportedRuntime version="v2.0.50727" />
</startup>
</configuration>
The following people contributed in this release:
Lluis Sanchez, David Makovský, Alejandro Serrano, Scott Ellington, Matej Urbas, John Luke, Michael Hutchinson, Philip Turnbull, Jacob Ilsø Christensen
This is the list of all project contributors:
Alberto Paro, Alejandro Serrano, Alexandre Gomes, Alex Graveley, Andrés G. Aragoneses, Antonio Ognio, Ben Maurer, Ben Motmans, Christian Hergert, Daniel Kornhauser, Daniel Morgan, David Makovský, Erik Dasque, Franciso Martinez, Gustavo Giraldez, Iain McCoy, Inigo Illan, Jacob Ilsø Christensen, Jeroen Zwartepoorte, John BouAnton, John Luke, Joshua Tauberer, Jonathan Hernández Velasco, Levi Bard, Lluis Sanchez Gual, Martin Willemoes Hansen, Marek Sieradzki, Matej Urbas, Michael Hutchinson, Miguel de Icaza, Nick Drochak, Muthiah Annamalai, Pawel Rozanski, Pedro Abelleira Seco, Peter Johanson, Philip Turnbull, Richard Torkar, Scott Ellington, Todd Berman, Vincent Daron, Wade Berrier and Yan-ren Tsai.
This list is not complete, it is missing some contributions sent in to the list and via our bugzilla. Your work is still greatly appreciated. If your name was left off the list, it was not intentional, please send an email to the list and it will be corrected as soon as possible.
All of our wonderful testers who put up with the insane dependencies, the constant breakage and still managed to post nice bug reports.
Mike Krueger and the rest of the AlphaSierraPapa team for giving us a great codebase to start from, and continuing improvements.
All of the active MonoDevelop developers.