[Mono-dev] Advice on Standard Tags to represent Runtimes

Charlie Poole charlie at nunit.com
Thu Mar 5 15:44:11 EST 2009


Hi Jamie, 

> -----Original Message-----
> From: mono-devel-list-bounces at lists.ximian.com 
> [mailto:mono-devel-list-bounces at lists.ximian.com] On Behalf 
> Of Jamie Cansdale
> Sent: Thursday, March 05, 2009 2:26 AM
> To: mono-devel-list at lists.ximian.com
> Subject: Re: [Mono-dev] Advice on Standard Tags to represent Runtimes
> 
> > To run under the mono 1.0 profile, which is API version 1.1.4322. I 
> > admit that bit is confusing, but it has some basis in prior usage.
> >
> Ah, so it's the direct equivalent to the 'COMPlus_Version' 
> environment variable in .NET?

Precisely...
 
> Using 'net-1.0' is like:
> set COMPlus_Version=v1.0.3705
> Reflector.exe
> 
> Using 'mono-1.0' is like:
> mono --version=v1.0.3705 Reflector.exe
> 
> (Mono automatically maps v1.0.3705 to v1.1.4322)
 
Yes, except I actually use v1.1.4322, doing the mapping myself.

> For consistency we should maybe add 'mono-1.1', which would be like:
> mono --version=v1.1.4322 Reflector.exe

Hmmm... That could be confusing to mono folks, even if it helped
out ms.net folks. I guess they could both be supported though.
What do others think?
 
> > So you'd like to be able to select the actual mono (not 
> api) version.
> > OK, that's a new feature to look at. How would you 
> distinguish whether 
> > you wanted to use the 1.0 versus the 2.0 profile under a given mono 
> > version? That is, the --version arg to mono.exe.
> >
> I think the ability to run tests in different Mono versions 
> side by side could be useful. Would any Mono developers like 
> to comment? Would you find this useful for finding regressions?

Actually, it would be very useful for my own testing of NUNit too.

Charlie

> Regards,
> Jamie.
> 
> --
> http://www.testdriven.net
> http://twitter.com/jcansdale
> http://weblogs.asp.net/nunitaddin
> 
> 
> On Thu, Mar 5, 2009 at 5:01 AM, Charlie Poole 
> <charlie at nunit.com> wrote:
> > Hi Jamie,
> >
> >> > In NUnit, it is now possible to specify the runtime under
> >> which tests
> >> > should be run. For MS CLRs, I use net-1.0, net-1.1,
> >> net-2.0, etc. For
> >> > mono, I use mono-1.0 and mono-2.0. I took this 
> convention from NAnt.
> >> >
> >> This is confusing because NAnt uses this to specify compiler tools 
> >> whereas NUnit is specifying the runtime. I'm guessing that in NAnt 
> >> mono-1.0 means use 'gmc' and mono-2.0 means use 'gmcs'.
> >
> > It means that when you use the csc task. But when you use exec it 
> > means to run under the mono 1.0 profile.
> >
> >> What does mono-1.0 mean in NUnit when used to specify a runtime 
> >> version?
> >
> > To run under the mono 1.0 profile, which is API version 1.1.4322. I 
> > admit that bit is confusing, but it has some basis in prior usage.
> >
> >> > Q1: Is this convention confusing? I considered using
> >> any-1.1, etc. but
> >> > that looked a bit dumb.
> >> >
> >> This is confusing. AFAIK there is no neat mapping between .NET and 
> >> Mono versions and the CLI specs.
> >
> > To be clear, I make no distinction at all between different Mono 
> > release versions - like 1.92, 2.0.1, etc.  For some apps, 
> it could be 
> > necessary to specify that but it isn't currently available. 
> And it's 
> > orthoghonal to the API version.
> >
> >> > Q2: Do you think net-x.x should be used for the generic 
> case rather 
> >> > than for Microsoft?
> >> >
> >> .NET is a Microsoft brand. Using it for the generic case would be 
> >> confuse things. We could maybe use something like 
> net-x.x-equiv, but 
> >> then we're back to the problem of there being no neat 
> mapping between 
> >> .NET and Mono versions.
> >>
> >> > Q3: When the runtime under which a test should execute (in
> >> a project
> >> > file) would you rather see the vx.x form or an explicit 
> combo like 
> >> > mono-2.0+net-2.0?
> >> >
> >> An explicit combo like: 
> mono-2.0+mono-2.0.1+mono-2.2+mono-2.4+net-2.0
> >
> > So you'd like to be able to select the actual mono (not 
> api) version.
> > OK, that's a new feature to look at. How would you 
> distinguish whether 
> > you wanted to use the 1.0 versus the 2.0 profile under a given mono 
> > version? That is, the --version arg to mono.exe.
> >
> >> This would be a great way to flush out regressions. :-)
> >
> > Yes, but I can see I've opened a can of worms. :-)
> >
> >> Regards,
> >> Jamie.
> >>
> >> --
> >> http://www.testdriven.net
> >> http://twitter.com/jcansdale
> >> http://weblogs.asp.net/nunitaddin
> >>
> >>
> >> On Wed, Mar 4, 2009 at 3:13 AM, Charlie Poole <charlie at nunit.com> 
> >> wrote:
> >> > Hi All,
> >> >
> >> > This is a bit OT for the dev list, but I suspect I'll get
> >> more solid
> >> > answers based on experience here than elsewhere.
> >> >
> >> > In NUnit, it is now possible to specify the runtime under
> >> which tests
> >> > should be run. For MS CLRs, I use net-1.0, net-1.1,
> >> net-2.0, etc. For
> >> > mono, I use mono-1.0 and mono-2.0. I took this 
> convention from NAnt.
> >> >
> >> > These tags are used in several text files and also appear
> >> in dropdowns
> >> > in the GUI.
> >> >
> >> > The problem comes up when I want to indicate that a test
> >> must be run
> >> > under a particular CLR version, without regard to whether
> >> it's mono,
> >> > ms .NET or something else. In that case, I started to use
> >> v1.0, etc.
> >> > but I'm not sure it's very clear.
> >> >
> >> > Q1: Is this convention confusing? I considered using
> >> any-1.1, etc. but
> >> > that looked a bit dumb.
> >> >
> >> > Q2: Do you think net-x.x should be used for the generic 
> case rather 
> >> > than for Microsoft? If so, what would you expect to see for
> >> Microsoft.
> >> >
> >> > Q3: When the runtime under which a test should execute (in
> >> a project
> >> > file) would you rather see the vx.x form or an explicit 
> combo like 
> >> > mono-2.0+net-2.0?
> >> >
> >> > This is something that is quite easy to change - up to the
> >> point where
> >> > people start using it - so I'd like to get it right the 
> first time!
> >> >
> >> > Thanks,
> >> > Charlie
> >> >
> >> >
> >> >
> >> > _______________________________________________
> >> > Mono-devel-list mailing list
> >> > Mono-devel-list at lists.ximian.com
> >> > http://lists.ximian.com/mailman/listinfo/mono-devel-list
> >> >
> >> _______________________________________________
> >> Mono-devel-list mailing list
> >> Mono-devel-list at lists.ximian.com
> >> http://lists.ximian.com/mailman/listinfo/mono-devel-list
> >>
> >
> >
> >
> >
> _______________________________________________
> Mono-devel-list mailing list
> Mono-devel-list at lists.ximian.com
> http://lists.ximian.com/mailman/listinfo/mono-devel-list
> 





More information about the Mono-devel-list mailing list