Author: brett
Date: Sat Mar 2 01:52:14 2013
New Revision: 1451819
URL: http://svn.apache.org/r1451819
Log:
[NPANDAY-578] update notes accordingly
Modified:
incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/notes.md
Modified:
incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/notes.md
URL:
http://svn.apache.org/viewvc/incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/notes.md?rev=1451819&r1=1451818&r2=1451819&view=diff
==============================================================================
---
incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/notes.md
(original)
+++
incubator/npanday/trunk/dotnet/assemblies/NPanday.ProjectImporter/Engine/notes.md
Sat Mar 2 01:52:14 2013
@@ -194,3 +194,34 @@ present - they haven't been matched up.
The project sync API should be tested for reimporting existing projects with
certain characteristics.
+
+## Reference Resolution
+
+The reference resolution now mostly matches that of MSBuild, after first
+checking the local Maven repository.
+
+This may still yield different results to Visual Studio, which looks
+primarily at Reference Assemblies at design time. If we moved to .Net 4.0 we
+would be able to more easily use the Microsoft.Build.Utilities to lookup both
+the framework libraries (Which currently use reflection), and the reference
+assemblies (through a similar method in ToolLocationHelper).
+
+In either case, these lookups should just be done to validate the artifact
+exists somewhere. They should not be put into the POM in either case as that
+reduced portability.
+
+Ideally, such dependencies could be marked as `provided` instead, and
+NPanday's own resolution should be able to lookup the correct framework
+library locations.
+
+There remains some difference in the resolution process done on import (based
+on the MSBuild project alone), and that in the ReferenceAdded handler in
+Connect.cs (which has access to the actual project including the reference
+path which points at the Reference Assembly). Potential improvements here:
+ - abstract out the reference resolution into a common library
+ - allow passing in the reference paths to the import so that a project
+ import gets consistent behaviour within the addin (mostly making the prior
+ lookups redundant here, but useful in the Maven plugins)
+ - persist configuration of the project import so that add reference knows to
+ use the framework libraries, etc. for lookup.
+