[nem-en] assembly versioning

Michal Moskal michal.moskal at gmail.com
Sun Feb 19 13:00:02 CET 2006


On 2/19/06, Michal Moskal <michal.moskal at gmail.com> wrote:
> On 2/19/06, NoiseEHC <NoiseEHC at freemail.hu> wrote:
> > I already checked that numerous times. BTW it is better to check
> > c:\windows\assembly\gac_msil
> > and c:\windows\assembly\nativeimages_v2.0.50727_32 since it will show
> > all versions of files.
> >
> > So the theory is that Nemerle.Compiler.dll gets linked against Nemerle,
> > Version=0.9.2.0 while
> > we are loading Nemerle, Version=0.9.2.5. The problem is that
> > Assembly.LoadFrom finds the
> > old Nemerle.dll loaded, and tries to use that. See:
> > http://blogs.msdn.com/suzcook/archive/2003/05/29/57120.aspx
>
> May it be caused by the greedy assembly loading? Can you try -greedy- switch?
>
> However I think there may be problems, if n.c.dll and n.m.dll use
> different n.dll. That is I don't quite get why n.c.dll is linked to
> different version of n.dll, than you're trying to link now.

After giving it some more thought, I guess when greedy reference
loading is enabled (which is the default), we use
Assembly.Load(AssemblyName) for assemblies referenced by (in this
case) n.c.dll. It may be the case, that this AssemblyName for some
reason doesn't contain version and a random one is loaded. Which boils
out to specifying -greedy- anyway.

What occurs to me at this point, is a deep desire to kill this greedy
loading feature altogether. But I guess it's little to late.

--
   Michal Moskal,
   http://nemerle.org/~malekith/



More information about the devel-en mailing list