I've been trying to help test fixes to some of the concurrency issues in NDoc, but it's going to have to wait a bit longer since NAnt isn't doing what the NDoc developers thought it was doing: wrapping the command line utility.  Since NAnt has apparently compiled against the 1.2 version of NDoc and is using the library rather than wrapping the command line tool, the upgrade path is more problematic than installing a new version of NDoc or a simple binary replacement.

 

I understand the trade-off that was made in favor of ease of deployment and tighter coupling for performance; without an installer, it's hard to tell the user at install-time that the NDoc task won't work unless NDoc is installed.  I just happen to think it was a mistake.  ;)  I wondered why the NDoc task only supported the MSDN documenter and not any of the others...

 

I'm going to see if I can get an <exec/> together in the next couple days which will use the NDoc 1.3-beta instead of using the NDoc task to work around the problem for testing purposes, but I thought y'all should know.

 

A simple binary replacement resulted in the expected JIT error:

 

BUILD FAILED

 

INTERNAL ERROR

 

System.IO.FileLoadException: The located assembly's manifest definition with name 'NDoc.Core' does not match the assembly reference.

File name: "NDoc.Core"

   at NAnt.DotNet.Tasks.NDocTask.InitializeTask(XmlNode taskNode)

   at NAnt.Core.Task.InitializeElement(XmlNode elementNode)

   at NAnt.Core.Element.Initialize(XmlNode elementNode)

   at NAnt.Core.Target.Execute()

   at NAnt.Core.Project.Execute(String targetName, Boolean forceDependencies)

   at NAnt.Core.Project.Execute()

   at NAnt.Core.Project.Run()

 

=== Pre-bind state information ===

LOG: DisplayName = NDoc.Core, Version=1.2.1303.41425, Culture=neutral, PublicKeyToken=b9896512f28c0f09

 (Fully-specified)

LOG: Appbase = c:\Program Files\NAnt\bin\

LOG: Initial PrivatePath = NULL

Calling assembly : NAnt.DotNetTasks, Version=0.84.1455.0, Culture=neutral, PublicKeyToken=null.

===

 

LOG: Publisher policy file is not found.

LOG: Host configuration file not found.

LOG: Using machine configuration file from C:\WINNT\Microsoft.NET\Framework\v1.1.4322\config\machine.config.

LOG: Post-policy reference: NDoc.Core, Version=1.2.1303.41425, Culture=neutral, PublicKeyToken=b9896512f28c0f09

LOG: Attempting download of new URL file:///c:/Program Files/NAnt/bin/NDoc.Core.DLL.

WRN: Comparing the assembly name resulted in the mismatch: Minor Version

 

 

 

Reply via email to