Here is the sample project that makes NCrunch build fail:
https://dl.dropbox.com/u/53057649/PortableClassLibrary1.zip
Summary:
VS 2012 RTM
Portable library .NET 4.5 + Silvarlight
Function arguments with default values of type Func`2 crash NCrunch build with mono.cecil stack trace:
public void F(Func<int, int> arg = null) { }
P.S. Didn't find an issue tracker. Use one, dude
P.P.S. Didn't find forum search either.
Remco NCrunch Developer
#2753
03 Sep 2012 05:05 UTC
Hi, thanks for sharing this issue!
Right now NCrunch doesn't officially support working with Silverlight projects, although I've placed this issue on the backlog for review when Silverlight support is eventually added.
An another note, this website will be getting a major upgrade soon. The issue tracker is still a way out though the forum search options will be made more accessible.
Cheers,
Remco
Right now NCrunch doesn't officially support working with Silverlight projects, although I've placed this issue on the backlog for review when Silverlight support is eventually added.
An another note, this website will be getting a major upgrade soon. The issue tracker is still a way out though the forum search options will be made more accessible.
Cheers,
Remco
Thank you for your effort.
It's just a little confusing with portable libraries if they silverlight or not. I guess from the .NET CLR point of view the library is .NET library, not Silverlight. Isn't it?
It's just a little confusing with portable libraries if they silverlight or not. I guess from the .NET CLR point of view the library is .NET library, not Silverlight. Isn't it?
Edited 04 Sep 2012 11:36 UTC
Remco NCrunch Developer
#2759
04 Sep 2012 21:49 UTC
VS2012 doesn't really make this as obvious as it was in VS2010, but the portable library options revolve around both Modern/Metro and Silverlight. After switching off the portability, the project built in NCrunch without problems.
Silverlight projects use the same form of MSIL as other .NET assemblies (so they are still .NET binaries), but they are linked against different versions of the base .NET assemblies (i.e. System.dll).
So basically, the portable libraries have different requirements for the CLR assemblies that are loaded into their application domain. The assembly resolution logic in NCrunch causes Cecil to become confused between these libraries, causing exceptions to be thrown during instrumentation. It's something I hope to resolve in the not too distant future :)
Cheers,
Remco
Silverlight projects use the same form of MSIL as other .NET assemblies (so they are still .NET binaries), but they are linked against different versions of the base .NET assemblies (i.e. System.dll).
So basically, the portable libraries have different requirements for the CLR assemblies that are loaded into their application domain. The assembly resolution logic in NCrunch causes Cecil to become confused between these libraries, causing exceptions to be thrown during instrumentation. It's something I hope to resolve in the not too distant future :)
Cheers,
Remco
Post a reply
Log in to reply.