Joe Kemp wrote:
I am developing a process to create true differential builds. My
definition of a differential build is compiling only assemblies that
really need to be recompiled. This requires looking at more than the
datetime of the dependencies of an assembly. I need to know if any
public members have changed and then signal any referring assemblies
that they need to recompile. I think ant has a task <depend> that
kind of accomplishes this. Has anyone tried accomplishing this with
NAnt? It seems that this concept is contradictory to most build
environments. Reliance on datetimes and cleaning build environments
seem to be assumed the norm.
As near as I can tell from the Ant documentation, that's not what it's
doing. It's determining dependencies based on whether or not a class
has changed, without looking for changes that don't affect public members.
This seems like a difficult problem, requiring deep knowledge of the way
the .Net compilers use the information in referenced assemblies. It's
probably not as difficult as the problem for standard C/C++, but it's
still hard. If you're in a situation where there's so much coupling
that recompilation times are an issue, that's probably an indication
that you'd be better served by refactoring your codebase to reduce the
coupling.
Gary
-------------------------------------------------------
SF.Net email is Sponsored by the Better Software Conference & EXPO
September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices
Agile & Plan-Driven Development * Managing Projects & Teams * Testing & QA
Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf
_______________________________________________
Nant-users mailing list
Nant-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/nant-users