I'd like to pose some questions for the Linux/Mac users out there using Maestro via Mono.
I am considering migrating Maestro to target .net Framework 4.0 (we currently still target .net Framework 2.0). The primary reason for this move is because the next version of the official MapGuide .net API will be targeting 4.0 and if we don't upgrade Maestro to target 4.0, we lose the ability to have LocalNative connection support for future versions of MapGuide/AIMS.
If we migrate to .net 4.0, we still retain the ability to reference assemblies of older framework versions, so we can still have LocalNative connection support for the current and older versions of the MapGuide .net API.
The reason I have been very conservative thus far by staying on .net Framework 2.0 is to ensure Maestro will work better on Mono (generally speaking, the older the .net Framework version, the better support in Mono).
If we do migrate Maestro to .net Framework 4.0, the minimum version of Mono that will theoretically work with this migrated version of Maestro will be 2.8
So my questions to the Linux/Mac Maestro users are:
1. What version of Mono are you currently using?
2. Are you capable of using Mono 2.8 or newer? I know Ubuntu for example, is very conservative with their releases of Mono and may not have the version of Mono that we require.
> 1. What version of Mono are you currently using?
> 2. Are you capable of using Mono 2.8 or newer? I know Ubuntu for example,
> is very conservative with their releases of Mono and may not have the
> version of Mono that we require.
Ubuntu current version (oneiric) has 2.10.5 in their official repository
Mono currently has a lot of glitches, most of which are very annoying
but do not prevent the use of Maestro.
Probably switching to a more recent version of .net will expose some
more serious (functional) bugs, I'll be glad to help find them.
It will probably require some work on your side to circumvent them.
Are you going to transform the code to use Linq and all the new stuff introduced after .Net 2.0?? Because then there might be problems with Mono. But if you are only changing the target framework, and keep the source .Net 2.0 compatible, I don't see why a more recent version of Mono should not work.
It will basically be the same code, referencing the same libraries, but targeting the latest framework and CLR (4.0).
Linq support has been around for quite a while now (since Mono 2.0)
The WinForms + BCL foundation should be well supported by Mono regardless of framework version if we can accept 2.8 as the baseline minimum version of Mono (where the 4.0 framework support will have had at least 1 release cycle of stability and bug fixes)