Mono was branched at version 1.1.13 to become the stable version of Mono that is distributed by Novell on its enterprise products. That series of releases are only getting bug fixes.
Before each release we run all of the regression tests on Mono, so we consider this release usable for deployment, but there are still a few changes in various areas.
This release is mostly a bug-fix release, there are very few new developments.
Changes since Mono 1.1.16
Basic world: The Mono Basic compiler and the Basic runtime have been removed from the Mono distribution. A new compiler that is compatible with Visual Basic 2005 and a matching runtime are now part of a separate distribution. On this particular release, we are offering the basic runtime, but the compiler is not able to run completely on Mono yet.
Windows.Forms: Printing is now supported.
This release is able to compile and build IronPython 1.0 RC2.
COM: Basic COM support has been integrated.
AOT: on x86/linux the AOT code generator no longer requires binutils to be installed, Mono now has a built-in executable writer [Paolo Molaro]
The FileSystem will now use inotify directly on systems that support it without having to go through an external library like FAM or Gamin, this should make our use of inotify reliable. [Gonzalo Paniagua]
Async Process Notification
2.0 support for asynchronous reads and writes from the Process class is now supported [Gonzalo].
Mono Loading as a Shared Library Works Again
This was a problem that mostly affected the OpenOffice plugin, which loaded Mono as a separate process, this is now fixed [Zoltan Varga]
As part of Gtk# becoming one of the supported language bindings in the Gnome platform and Tomboy, a Gtk#-based application, becoming part of the Gnome desktop, Gtk# has been split up into multiple packages, instead of a single one.
All the packages are available from our download site [Mike Kestner].
Mono.Cairo bindings now supports a DirectFB surface now [Alp Toker].
This release includes an upgraded Cairo stack (from 1.0 to 1.2) and allowed us to enable printing in System.Drawing and System.Windows.Forms.
The original work was done by Jordi Mas, the Cairo upgrade by Peter Bartok and the work was completed by Chris Toshok.
2.0 API updates
String.Normalize is included [Atsushi Enomoto]
ADO.NET 2.0 updates, included an implementation for SqlConnection.GetSchema (Nagappan).
Updated to the 2.0 API. [Miguel de Icaza]
Gert added support for splitting the registry across user and system level settings. [Gert Driesen]
Added support for X.509 client certificates. It's now possible to use System.Web.HttpClientCertificate with Apache. Certificate validation can be done by Apache, Mono or both (default). [Hubert Fongarnand, Sebastien Pouliot]
SN now accept password-protected PKCS#12/PFX files to strongname assemblies. This feature is enabled in both 1.x and 2.0 profiles [Sebastien Pouliot]
An EventLog implementation is available on both Unix and Windows, to use set the MONO_EVENTLOG_TYPE variable like this:
- local[:path] generates a log file in the given path. If the path is not given, it will store the results in "/var/lib/mono/eventlog" on Unix and in "%APPDATA%\mono\eventlog" on Windows.
- win32: This uses the native Windows API to send the log messages to the system event log.
- null: discards all of the events
to a pathname where the events should be logged to [Atsuhi Enomoto, Gert Driesen]
COM Interop: Basic support for Runtime Callable Wrappers (RCWs). This allows users to use unmanaged components from managed code. [Jon Chambers]
Sqlite now exposes a Version property to detect which underlying database is available (2.x or 3.x) [Joshua Tauberer]
Mono.Posix now features an abstract Unix end point in addition to Unix End Points [Alp Toker].
Fixed XmlSchemaSet and XmlSchemaCollection problem across multiple namespaces [Atsushi Enomoto]
Important Bug Fixes
Dynamic linking of Mono is now possible in applications that were using the TLS (open office) [Zoltan Varga].
Newly created AppDomains no longer inherit the list of loaded assemblies from the main domain. This has an important side-effect, to get XSP and mod_mono running, you must install the latest versions of it (released in this iteration), older versions will not work [Lluis Sánchez].
A number of missing pieces of System.IO.Ports have been implemented (ReadChar, ReadLine, BytesToRead, BytesToWrite, ReadTo, return USB tty devices) [Miguel de Icaza].
ASP.NET Cache will check file dependencies now (79002) [Gonzalo Paniagua]
The beginning of a port to Linux/Alpha has been contributed to Mono, [Sergey Tikhonov]
Cilc, a tool to generate C wrappers for managed routines has been relicensed from the GPL to the MIT X11 [Alp Toker]
Updated the Posgress data bindings to RC3 [Francisco Figueiredo].
The following bugs were fixed on this release:
|| |79016|Mono Develop|general|Building projects: System.NullReferenceException| |78784|Class Libraries|CORLIB|DateTime.Now, ToLocalTime and ToUniversalTime doesn't set Kind property| |78810|Class Libraries|Sys.Data|Crash with DataRelations| |78842|Class Libraries|Sys.Data|Element added twice to XML file| |78888|Class Libraries|System|Async connects never connect| |78837|Class Libraries|Winforms|Toolbar backcolor, size and buttons improper| |78869|Class Libraries|Winforms|Version is reported incorrectly on purpose by Application.ProductVersion.| |78871|Class Libraries|Winforms|Setting Splitter.SplitPosition does not have any effect| |78855|Class Libraries|CORLIB|SRE TypeBuilder.CreateType() does not emit custom attributes on properties| |78856|Class Libraries|CORLIB|System.Char.ConvertFromUtf32 is missing| |78859|Class Libraries|CORLIB|ConstructorBuilder.GetILGenerator always creates a new ILGenerator| |79000|Class Libraries|CORLIB|[PATCH] Memleak & Performance issue with deserialization of mulit-dimensional arrays| |79007|Class Libraries|CORLIB|Char.TryParse not implemented| |79023|Class Libraries|CORLIB|Type.InvokeMember does not accept (BindingFlags.SetField | BindingFlags.SetProperty)| |79030|Class Libraries|CORLIB|System.Security.Principal.GenericPrincipal not serializable between Mono and MS.NET| |78253|Class Libraries|CORLIB|IronPython and System.Reflection.Emit problem| |78468|Class Libraries|CORLIB|[PATCH] ArgumentException in Assembly.GetManifestResourceStream for assembly loaded from byte array| |78943|Class Libraries|CORLIB|Activator.CreateInstance should throw ArgumentException on open generic types (CLR via C#, chapter 16, example 3: invalid IL generated crash)| |79118|Class Libraries|CORLIB|FileIOPermission.UnionKeys only considers first entry of list| |78886|Class Libraries|libgdiplus|loading of particular tiff image fails| |77820|Class Libraries|Mono.Cecil|Cecil 0.3 throws an incorrect exception when trying to load an assembly.| |78901|Class Libraries|Mono.Security|X509Crl can not load empty CRL without extensions| |78939|Class Libraries|Sys.Drawing.|[Patch] Interop difference from MS.Net| |77551|Class Libraries|Sys.Web|[2.0] Make TreeView support *NodeStyle-ImageUrl attributes| |78288|Class Libraries|Sys.Web|[2.0] Implement GetPostBackOptions, PostBackOptions defaults and server Paging| |78328|Class Libraries|Sys.Web|[2.0] PagerSettings fix for numeric style pager generation| |78646|Class Libraries|Sys.Web|IsPostback returns true during AJAX call with .Net and false with Mono| |78730|Class Libraries|Sys.Web|Session is not available without context (when using ajaxpro)| |78970|Class Libraries|Sys.Web|[2.0] Support for nullable types in TemplateControlCompiler| |78971|Class Libraries|Sys.Web|[ASP.NET 2.0] PageThemeCompiler generates incorrect skin code| |77539|Class Libraries|Sys.Web|[PATCH] Relative client paths| |78968|Class Libraries|Sys.Web|[MS compat] MS.NET FontInfo class renders text-decoration: none| |79112|Class Libraries|Sys.Web|HttpListenerRequest.InputStream.Read blocks indefinitively| |78220|Class Libraries|Sys.XML|XmlSchema compilation fails for extension with base type in aother namespace| |77489|Class Libraries|Sys.XML|XmlSchemaSet Compile Problem| |79019|Class Libraries|Sys.XML|Unable to use WriteBinHex method| |78696|Class Libraries|System|SoapReader fails to deserialize some method calls| |78731|Class Libraries|System|make run-test failures on cygwin| |78724|Class Libraries|System|Assembly.GetTypes(bool) broken on Dynamic Assemblies| |78799|Class Libraries|System|Missing operator == on Uri class| |79033|Class Libraries|System|ReadOnlyCollectionBase.Count should not be sealed.| |78986|Class Libraries|System|[PATCH] X509Certificate2 sometimes does not return RawData| |79028|Class Libraries|System|ArgumentException using X509Certificate2 ctors that take password| |78945|Class Libraries|System.Security|Scrollwheel doesn't work on ComboBox| |75555|Class Libraries|VB Runtime|Not fully implemented the Microsoft.VisualBasic namespace| |78271|Class Libraries|Winforms|Scrolling fast causes control location to shift| |78399|Class Libraries|Winforms|[PATCH] PageSetupDialog incorrectly expects yard-pound units everywhere| |78483|Class Libraries|Winforms|toolbar text not shown underneath| |78513|Class Libraries|Winforms|TextBox scrollbars behavior| |78525|Class Libraries|Winforms|[PATCH] ToolBar does not reflect current selection or the first item when it got focus.| |78607|Class Libraries|Winforms|[PATCH] CheckBox and RadioButton does not show focus| |78661|Class Libraries|Winforms|TextBoxBase: text is hidden under scrollbars| |78732|Class Libraries|Winforms|too many mousemove events| |78737|Class Libraries|Winforms|Form.BringToFront not working| |78753|Class Libraries|Winforms|When Form is TopMost, MessageBox is under the Form| |78759|Class Libraries|Winforms|ImageListStreamer fails to load image resources| |78761|Class Libraries|Winforms|ListView doesn't set Font properly| |78773|Class Libraries|Winforms|TextBoxBase: TextChanged event isn't fired when it's set by first time and gets a String.Empty value| |78804|Class Libraries|Winforms|[Patch]: Form.Controls.Clear() doesn't work| |78806|Class Libraries|Winforms|Setting TextBox.SelectionStart causes NullReferenceException| |78813|Class Libraries|Winforms|ListBox: Items are not sorted with Sorted=true| |78821|Class Libraries|Winforms|Databound TextBox crashes| |78822|Class Libraries|Winforms|Textbox bound to Typed DataSet crashes| |78825|Class Libraries|Winforms|[Windows] Setting Control.Visible = true affects it's Position| |78854|Class Libraries|Winforms|ListControl: DataSource should accept null value| |78866|Class Libraries|Winforms|FormStartPosition.Manual doesn't work on Linux| |78889|Class Libraries|Winforms|Changing Font of a MultiLine TextBox changes it's Height| |78907|Class Libraries|Winforms|[Windows] Changing Visual Style Crashes MWF| |78912|Class Libraries|Winforms|[2.0] [PATCH] Cannot modify KeyChar in a KeyPress event handler| |79001|Class Libraries|Winforms|[Patch]: NumericUpDown: Value proeprty should be equal to Minimum property when created| |79052|Class Libraries|Winforms|nunit-gui: TextBoxWriter tests fail in nunit.uikit.tests.dll 2.2.8| |79053|Class Libraries|Winforms|nunit-gui: alt+R doesn't run tests| |79076|Class Libraries|Winforms|InvalidOperationException adding items to sorted ListView| |79095|Class Libraries|Winforms|Crash when setting TextBox.SelectionStart in a KeyPress event| |79096|Class Libraries|Winforms|Throws System.InvalidOperationException in simple GUI app| |76449|Class Libraries|CORLIB|Custommarshalers compile error| |79037|Class Libraries|Sys.Data|System.Transactions.IPromotableSinglePhaseNotification should not include a Promote member, but should derive from ITransactionPromoter, a new interface| |78746|Class Libraries|Sys.Web|Button OnClick not called| |79002|Class Libraries|Sys.Web|Cache Dependency does not working| |79020|Class Libraries|Sys.Web|[PATCH] TextBox does not render name attribute if you do not specify ID property| |79085|Class Libraries|Sys.XML|stack overflow on recursive entity definition| |79091|Class Libraries|Sys.XML|another XML document can not be loaded| |79090|Class Libraries|Sys.XML|regression: xml document can not be loaded| |78985|Class Libraries|Sys.XML|XML Schema key constraints| |76453|Class Libraries|VB Runtime|exception at class field assignment with automatic conversion| |78190|Class Libraries|Winforms|PropertyGrid boolean popup bug.| |78291|Class Libraries|Winforms|TextBox: Del key shouldn't fire a KeyPress event| |78800|Class Libraries|Winforms|TextBoxes don't fire the Click event.| |78864|Class Libraries|Winforms|ToolBar problems after recent changes| |78865|Class Libraries|Winforms|CreateParams gets called multiple times for a Control or Form| |78868|Class Libraries|Winforms|Scroll bars not displayed on UserControl when Size smaller than AutoScrollMinSize| |78914|Class Libraries|Winforms|Deactivating a menubar item requires mouse move to pop up submenu| |78927|Class Libraries|Winforms|DataGrid: edit text boxes don't disappear when you scroll| |78929|Class Libraries|Winforms|DataGrid: swf-datagrid.exe "Properties table navigation" sample crashes with a NRE| |78931|Class Libraries|Winforms|Reflector doesn't work anymore (ScrollBar AE)| |79080|Class Libraries|Winforms|r63769 breaks PDN| |78323|Class Libraries|Winforms|[PATCH] TextBox cursor doesn't get moved if you resize a TextBox to the correct position| |70506|Compilers|C#|Exception from mcs when output assembly name has no extension| |78860|Compilers|C#|case null immediately following another case is always matched| |79056|Compilers|C#|Unexpected compilation error| |77403|Compilers|C#|Fix RootContext.Tree.Types to be a partial class| |78770|Compilers|C#|lock(null) causes output to reference the "msc" assembly| |79067|Compilers|C#|[GMCS] parser error for pointer type used as type argument| |77396|Compilers|C#|[GMCS] type lookup after #77403 is fixed| |78384|Compilers|C#|CSharpCodeProvider ignores CompilerParameters.EmbeddedResources| |79026|Compilers|C#|mcs reuses loc.0 for two different things within same expression| |77963|Compilers|C#|[GMCS] NRE on class X : Y<X.Z> - derived class of a generic type whose generic argument is its nested child class| |30235|Compilers|C#|MCS crashes with correct code.| |78899|Compilers|C#|C# compiler should use unsigned arithmetic and should support overflow check on pointers| |79012|Compilers|C#|sigsev while executing code: iRaiseItemChangedEvents could not be loaded| |79064|Compilers|C#|gmcs can't compile Ironpython 1.0 RC2| |78949|Runtime|io-layer|** WARNING **: CreateThread: error creating thread handle| |78877|Runtime|GC|[PATCH] Can't assign to WeakReference.Target| |79117|Runtime|interop|[PATCH] Marshal.StringToHGlobalAuto & PtrToStringAuto not working as expected| |79084|Runtime|io-layer|socket-io.c and UnixEndPoint have broken assumptions| |78775|Runtime|JIT|Mono run with -v -v always uses the same temp files and doesn't clean them up when done| |78816|Runtime|JIT|[gmcs] Generating invalid IL code| |78826|Runtime|JIT|[verifier] Mono 1.1.16 crashes on valid tailcall code| |78827|Runtime|JIT|mono -aot uses vast amounts of memory| |78969|Runtime|JIT|Windows: Accessing an at least 3 dimensional array about 130000 times causes a StackOverflowException| |79087|Runtime|JIT|Right shift of UInt64 incorrect for certain values| |78767|Runtime|JIT|can't load libmono as a module| |79010|Runtime|JIT|Problem with using a generic function from an interface implemented by structure| |76757|Runtime|misc|new AppDomains inherit current loaded assemblies| |79150|Runtime|misc|Runtime crashes on GetTypeCode for System.TypedReference| |79125|Runtime|misc|Crash with explicit interface implementation; VB.NET generated code| |78990|Runtime|JIT|DNS Class Fails| |79027|Runtime|JIT|Call to a vararg method with no variables arg incorrectly generated| |78592|Runtime|misc|ExactBinding is igonred by Type.GetMethod| |78972|Runtime|misc|Vararg method in external dll not found when invoked with no variable args| |45730|Runtime|misc|mono --debug prints wrong line numbers for exception backtrace| |78703|Runtime|misc|String constructors that take sbyte* should use Encoding.Default rather than UTF-8 and Latin-1| |77340|Mono: Tools|tools|Local user can overwrite arbitrary file using mono-service| |78977|Mono: Tools|tools|Unhandled Exception in the sn tool|
Installing Mono 1.1.17
You can then setup your PATH to include /devel/bin to access the Mono 1.1. Alternatively you can replace your Mono installation with 1.1.17
Binary Packages and Source Code Downloads:
Source code and pre-compiled packages for SUSE, SLES, Fedora Core 3, 4, RHEL, MacOS and Windows in a variety of platforms available from our web site from the download section.
Quick source code installation:
If we have no packages for your platform, installing from source code is very simple.
tar xzf mono-1.1.17.tar.gz cd mono-1.1.17 ./configure make make install
Then compile libgdiplus:
tar xzf libgdiplus-1.1.17.tar.gz cd libgdiplus-1.1.17 ./configure make make install
The following is a partial list of contributors to the 1.1.17 release of Mono, if your name is missing, please contact us.
Aaron Bockover, Akiramei, Alexander Larsson, Alexander Olk, Alois Bělaška, Alp Toker, Andrew Skiba, Ankit Jain, Atsushi Enomoto, Boris Kirzner, Brian Crowell, Carlos Alberto Cortez, César Octavio López Natarén, Chris Toshok, Dean Brettle, Dick Porter, Duncan Mak, Eduardo Garcia Cebollero, Eyal Alalouf, Francisco Figueiredo Jr., Gert Driesen, Gonzalo Paniagua Javier, Gustavo Giraldez, Guy Cohen, Hagit Yidov, Igor Zelmanovich, Jackson Harper, Jarosław Pawlak, Joachim Ante, John Luke, Jonathan Chambers, Jonathan Pobst, Jonathan Pryor, Joshua Tauberer, Juraj Skripsky, Konstantin Triger, Kornél Pál, Lluis Sanchez Gual, Lluis Sanchez Gual, Marek Habersack, Marek Safar, Marek Sieradzki, Martin Baulig, Matt Hargett, Merav Sudri, Miguel de Icaza, Mike Kestner, Nagappan A, Paolo Molaro, Peter Dennis Bartok, Peter Dettman, Petri Latvala, Rafael Mizrahi, Raja R Harinath, Robert Jordan, Roberto Costa, Sebastien Pouliot, Sebastien Robitaille, Senganal T, Sergey Tikhonov, Sudharsan V, Thong Nguyen, Vladimir Krasnov, Wade Berrier, Yoni Klain, and Zoltan Varga