← Back to team overview

nunit-dev team mailing list archive

Re: Framework in GAC

 

My best argument for not using the GAC is that it's runtime
implementation specific. If you default to using the GAC, you won't be
able to execute your tests under Mono. This would be a shame because
NUnit does support Mono.

The Mono team are also currently working on Mono Tools for Visual
Studio (which will mean more people executing Mono from Visual
Studio):
http://www.go-mono.com/monovs/

If you use TestDriven.Net's 'Test With > Mono' command with
'nunit.framework' in the GAC, you will see:

TestCase 'M:SomeTests.TestClass.Test'
failed: Could not load file or assembly 'nunit.framework,
Version=2.5.1.9189, Culture=neutral, PublicKeyToken=96d09a1eb7f44a77'
or one of its dependencies. The system cannot find the file specified.
	System.IO.FileNotFoundException: Could not load file or assembly
'nunit.framework, Version=2.5.1.9189, Culture=neutral,
PublicKeyToken=96d09a1eb7f44a77' or one of its dependencies. The
system cannot find the file specified.

I think the GAC is most appropriate for infrastructure assemblies
(e.g. System.*) not libraries (like 'nunit.framework').

Regards,
Jamie.

--
http://www.testdriven.net
http://twitter.com/jcansdale
http://weblogs.asp.net/nunitaddin


On Thu, Jul 30, 2009 at 7:11 PM, Charlie Poole<charlie@xxxxxxxxx> wrote:
> Hi Fabio and Everyone,
>
> Let's discuss this. Pros? Cons?
>
> Personally, I'm in favor. I think it makes life easier for users, some of
> whom are confused
> by the need to copy the framework to the output directory. They (falsely)
> assume that NUnit
> will find the framework for them. It also makes life easier for any
> third-party runner that needs
> to reference it.
>
> As far as the default, I'd vote for the GAC as the only option for the msi
> install. If someone
> wants to run it from their project tree instead, they can use the binary
> zip.
>
> Charlie
>
> ________________________________
> From: nunit-dev-bounces+charlie=nunit.com@xxxxxxxxxxxxxxxxxxx
> [mailto:nunit-dev-bounces+charlie=nunit.com@xxxxxxxxxxxxxxxxxxx] On Behalf
> Of Fabio Maulo
> Sent: Thursday, July 30, 2009 4:54 AM
> To: nunit-dev@xxxxxxxxxxxxxxxxxxx
> Subject: Re: [Nunit-dev] Installation layout for NUnit V3
>
> I have only one issue about installation.
> IMO we should have an explicit option to install the framework in the GAC
> and the default should be "false".
>
> 2009/7/30 Andreas Schlapsi <a.schlapsi@xxxxxx>
>>
>> Hi Charlie,
>>
>> I created a prototype for the NUnit Framework Installer yesterday. It
>> packages the NUnit Framework for .NET 1.1 and .NET 2.0 (and later for
>> .NET 3.5 and 4.0) and suppresses all variants in the feature tree
>> without corresponding .NET version installed on the target computer.
>>
>> It installs the framework assemblies under <Program Files>\NUnit
>> 3.0\Framework\net-1.1 or <Program Files>\NUnit 3.0\Framework\net-2.0.
>>
>> What about documentation? Will the framework documentation be separated?
>>
>> Andreas
>>
>>
>> Charlie Poole wrote:
>> > Hi Andreas,
>> >
>> > In breaking NUnit into multiple projects, I tried to take
>> > several things into account:
>> >   * Different teams working on different projects
>> >   * Independent release cycles
>> >   * Possibility of third-party alternatives
>> >   * Separate installation.
>> >
>> > At the moment, I think we only need to decide how to install
>> > the framework, since we only have a framework project for
>> > NUnit 3.0. When we add - for example - a gui project, we'll
>> > of course need a separate install for that.
>> >
>> > In the future, we may want to create a combined installer
>> > for windows - one that bundles one or more frameworks with
>> > gui and console runners and possibly other stuff. Note that
>> > this is a Windows-only problem, since linux distros have
>> > package management systems to take care of dependencies
>> > between individual packages.
>> >
>> > So, for now I think the issue is how to structure the
>> > installation of the framework only. This is not as simple
>> > as it sounds, since the framework is tailored to a version
>> > of .NET and there may be multiple versions on a machine.
>> >
>> > BTW, There will be a place on a wiki to actually post specs
>> > very soon. For now we have to discuss here and/or post
>> > directly on the Whiteboard.
>> >
>> > Charlie
>> >
>> >> -----Original Message-----
>> >> From: nunit-dev-bounces+charlie=nunit.com@xxxxxxxxxxxxxxxxxxx
>> >> [mailto:nunit-dev-bounces+charlie=nunit.com@xxxxxxxxxxxxxxxxxx
>> >> t] On Behalf Of Andreas Schlapsi
>> >> Sent: Tuesday, July 28, 2009 10:07 AM
>> >> To: NUnit Developer Mailing List
>> >> Subject: [Nunit-dev] Installation layout for NUnit V3
>> >>
>> >> Hi,
>> >>
>> >> I'm working on the installer blueprint
>> >> (https://blueprints.launchpad.net/nunit-3.0/+spec/install-proj
>> >> ect) and one of the todos is to decide on an installation
>> >> layout. It should allow multiple frameworks to be installed
>> >> separately from runners like nunit-gui.
>> >>
>> >> Does this mean that we want separate installers for the
>> >> framework and the runners? Do we need an installer for the
>> >> framework? The framework assemblies are often checked in to
>> >> source control.
>> >>
>> >> Andreas
>> >>
>> >>
>> >> _______________________________________________
>> >> Mailing list: https://launchpad.net/~nunit-dev
>> >> Post to     : nunit-dev@xxxxxxxxxxxxxxxxxxx
>> >> Unsubscribe : https://launchpad.net/~nunit-dev
>> >> More help   : https://help.launchpad.net/ListHelp
>> >>
>> >
>> >
>> >
>> >
>> > _______________________________________________
>> > Mailing list: https://launchpad.net/~nunit-dev
>> > Post to     : nunit-dev@xxxxxxxxxxxxxxxxxxx
>> > Unsubscribe : https://launchpad.net/~nunit-dev
>> > More help   : https://help.launchpad.net/ListHelp
>> >
>>
>>
>> _______________________________________________
>> Mailing list: https://launchpad.net/~nunit-dev
>> Post to     : nunit-dev@xxxxxxxxxxxxxxxxxxx
>> Unsubscribe : https://launchpad.net/~nunit-dev
>> More help   : https://help.launchpad.net/ListHelp
>
>
>
> --
> Fabio Maulo
>
> _______________________________________________
> Mailing list: https://launchpad.net/~nunit-dev
> Post to     : nunit-dev@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~nunit-dev
> More help   : https://help.launchpad.net/ListHelp
>
>



Follow ups

References