[Opensim-dev] test .net4.8 and vs2019/mono 6.10
Mike Dickson
mike.dickson at utopiaskye.com
Sat Sep 12 16:38:36 UTC 2020
A couple of things.
On 9/12/2020 12:08 PM, Leal Duarte wrote:
> Hi
>
> - for those with .net4.8 and vs2019 on windows installed i added
> runprebuild19.bat
>
> this will create a solution only valid to vs2019, main opensim
> sources will be compiled against .net4.8 API using vs2019 last compile
> version ( version 16)
>
> - for those on linux with at least mono 6.10 ( didn't test other
> versions) runprebuild19.sh will do identical for mono.
>
Interesting you're going down this path. I had just finalized my next
release for Utopia Skye running 4.7.2. For quite a while you made
noise that you thought this was a waste of time so I'm curious what changed.
Note: 4.8 isn't automatically installed with VS2019 Community
edition. You'll need to download the dev kit for it. The runtime
should be there if you're running an up to date copy of windows 10.
Mono doesn't document support for compliance with 4.8 which is why I
went with 4.7.2 for my next PRODUCTION rollout. I have no doubt that 4.8
works but I didn't want to take that step yet since I run production on
Linux/Mono.
You might also need to add a dependency to System.Drawing.Common. The
definition for Image has been moved to there. I build a version of
libopenmetaverse targeting netstandard2.0 so the reference to the new
package is required. YMMV.
>> this is basicly a test to see how our current main sources hold on
>> the migration path from 4.6 to 4.8
> - be very carefull when changing from 4.6 to 4.8 targets and vice
> versa. Make sure you do clean the solution before runprebuild*, even
> better just to it on clean pull folders.
>
> since it seems to work fine, there should be no reason why advanced
> users ( that may not mean you!! :p ) can't use the supposed better new
> compilers.
>
Even in mono using anything from 4.7.2 on means you're running on at
least the NetCore 2.1 JIT compiler. It should make for a measurable
performance improvement. I'm noting a good performance boot in my
release on USG. I'll have it grid wide in the next week. Been testing
on my beta grid for about 2 weeks now. Looking forward to getting rid of
all the "unsafe" code and using SPAN and recent compiler features.
I release on a monthly schedule with a defined test period. All my
changes go on a branch and get merged down to a development tree for
integration and then finally to master when its a fully tested release.
I can say with certainty that trodding this path especially with the
changed dotnet version added some initial instability. I've also
learned alot on my journey to dotnet core which is now in striking
distance (I have a feature branch running it now, prebuild is gone and I
use nuget for package management). If there was actually a real core
team where dialog happens I'd be there talking about my experiences.
My libomv and opensim tree is public and I pull from core frequently. If
anyone would like to discuss this work or what I'm doing feel free to
contact me.
> Main opensim will stay on 4.6 because many still have old machines
> with old tools. So all patchs etc should still only use up to c# 6 specs.
>
That's a shame. even 4.7/8 is 2+ years old. There are some significant
enhancements in the language you can't access without the changes.
> (
>
> note about use of var: that is a dumb thing to use, use only when the
> right side explicit tells the type
>
> ok:
>
> var tmp = new List<potatos>(32);
>
> Not Ok;
>
> var tmp = MyNiceThing();
>
> )
>
I will not comment on this beyond simply to say I don't agree. Its your
POV but not one shared by the language designers.
Mike
> regards,
>
> Ubit
>
>
> _______________________________________________
> Opensim-dev mailing list
> Opensim-dev at opensimulator.org
> http://opensimulator.org/cgi-bin/mailman/listinfo/opensim-dev
More information about the Opensim-dev
mailing list