После полутора лет разработки представлен релиз Mono 3.0, свободной многоплатформенной реализации технологии .NET, обеспечивающей поддержку спецификаций .Net Framework. Mono 3.0 является первым значительным стабильным выпуском, подготовленным силами компании Xamarin, основанной Мигелем де Икаса (Miguel De Icaza) с целью продолжения развития Mono и получившей от SUSE право использования связанной с проектом Mono интеллектуальной собственности.
Начиная с версии 3.0 проект перешёл на новый механизм подготовки релизов, направленный на ускорение доведения до пользователей новых возможностей и улучшений. Отныне master-ветка всегла будет оставаться стабильной, а все экспериментальные возможности будут развиваться в отдельных подветках. Периодически, по мере готовности и после завершения стабилизации, новые возможности будут переноситься в master-ветку.
Среди нововведений:
- Реализация компилятора для асинхронного языка C# 5.0 (C# 5.0 Asynchronous Language), которая потребовала полной переработки компилятора.
- Для всех профилей C# (2.0, 2.1, 4.0, 4.5) теперь используется единый унифицированный компилятор, чего удалось достигнуть благодаря переработке C# бэкенда генерации кода в компиляторе. Новый бэкенд полностью поддерживает System.Reflection.Emit и IKVM.Reflection, что позволило унифицировать набор старых компиляторов (mcs, gmcs, dmcs and smcs) в виде единого компилятора mcs;
- Использование по умолчанию API .NET 4.5. В API 4.5 обеспечена поддержка асинхронных методов (Async), API для совместимости с WinRT, стек System.Net.Http и System.Threading.Tasks.Dataflow. Проведена адаптация библиотеки классов для асинхронного программирования;
- Новый сборщик мусора SGen достиг готовности к промышленной эксплуатации. В коллекторе реализована поддержка распределения заданий по нескольким CPU;
- В состав Mono интегрирован набор компонентов web-стека ASP.NET, открытых компанией Microsoft: ASP.NET MVC 4, ASP.NET WebPages, Entity Framework, Razor и System.Json;
- Полная поддержка в runtime расширенных символов Unicode;
- Существенно расширены средства использования компилятора Mono как сервиса (Compiler as a Service);
- В интерактивной оболочке C# Shell и в C# API добавлена поддержка компиляции определений классов;
- Заметно расширены возможности по отладке;
- Улучшена поддержка Mac OS X;
- Завершена работа над портом Mono для архитектуры MIPS;
- Через API Evaluator.Eval() теперь могут выполняться не только отдельные выражения, но и классы, пространства имён, интерфейсы и определения структур, переданные для выполнения в строковом представлении;
- Реализованы сотни оптимизаций производительности.