[Opensim-dev] Raise minimum .net framework version to 4.0 and mono version to 2.8 (with 2.10 strongly recommended) in 2Q2013

Justin Clark-Casey jjustincc at googlemail.com
Tue Jan 29 03:41:58 UTC 2013


After some further investigation, it turns out that Mono 2.6 does not make the higher parameter Func calls available 
unless it has been built in a special preview mode.  This is not available on at least the Ubuntu Mono package and I 
suspect most, if not all, of the other distro packages as well.

Therefore, the minimum version of Mono that will use them is 2.8 (for which C# 4.0 is the default).  Polling the 
earliest supported release versions of various Linux distros, the situation is

Debian 6.0 (squeeze)	Mono 2.6.7
Ubuntu 8.04 LTS		Mono 1.2.6
Ubuntu 10.04 LTS	Mono 2.4
Ubuntu 11.10		Mono 2.10.8.1
Ubuntu 12.04 LTS	Mono 2.10.8.1
openSUSE 11.4		Mono 2.8.2
openSUSE 12.1		Mono 2.10.6
CentOS 5		no Mono package
CentOS 6		no Mono package

I see Debian squeeze as the sticking point here.  Debian 7.0 (wheezy) will ship Mono 2.10.8.1 and has been frozen since 
2012-06-30.  Debian does not work to release dates so it's impossible to say when it will be released, though the 
indications are that it will be in the first half of this year.  Even when it is released, Debian squeeze will most 
probably be supported until early 2014.

In light of this, I am going to recommend that we do not update the minimum version of Mono until Debian wheezy is 
released.  We've already effectively been living with this situation for a while so I don't think that a bit longer is 
going to hurt, though making modInvoke() properly useable is important.  If wheezy is not released by the time that 
OpenSimulator 0.7.6 is here, which I anticipate being shortly after Easter, then we can revisit the topic.

This means that existing binary packages will continue to be compiled against .NET 3.5 (though ironically the current 
0.7.5-RC packages have been compiled to work with Mono >2.8 only, which will be fixed for the final release).

When the update occurs, everything will compile and run against Mono 2.8 but Mono 2.10 will be strongly recommended as 
the Mono 2.8 series has proved considerably buggy in the past.

Once the update is made, the target framework will be .net 4.0 rather than .net 3.5.  This will allow c# 4.0 language 
features to be used and will require the Microsoft .NET Framework 4 packages to be installed on Windows.

We've already heard arguments both ways so I doubt that it's worth rehashing them.  However, I also think this would be 
a marginal decision so I welcome any new points.

-- 
Justin Clark-Casey (justincc)
OSVW Consulting
http://justincc.org
http://twitter.com/justincc



More information about the Opensim-dev mailing list