"Dominique Devienne" <[EMAIL PROTECTED]> wrote .. > > From: Stefan Bodewig [mailto:[EMAIL PROTECTED] > > In the end the major difference is a philosophical one. What is the > > central piece of the task, the repository or downloading of files. > > > > I guess I'm more on the side of the declarative approach dependencies > > takes, but I do want those additional bells and whistles like MD5 > > checksum validations and timestamp checks if needed. > > I feel similarly. I prefer the declarative approach of <dependencies>, > but would like timestamp checking for latest-like dependencies that get > overwritten (which does need a pseudo-atomic copy-to-tmp+move scheme). > > Additionally, if the notion of what is a dependency could be abstracted > a bit, it would be great. I'm not sure it's reasonable to ask for this > now, but I'm throwing that it now so whatever design decision is made > does not preclude it in the future. What I have in mind are zip > dependencies containing jar+native-libs+descriptors+etc... We're in a > mixed Java-C/C++ environment, and some dependencies are in fact C++ > libraries which export their public headers, import libs, and runtime > .dll/.so as a zip.
the approach I have taken is to define libraries (3rd party), components (project components), and general artifacts dependencies in a seperate ML..... for example to define a component dependencies; <comp:Component rdf:ID="SOME_PROJECT_COMPONENT"> <lib:depends rdf:ID="xercesj"> <version> <query key="maturity" value="latest"/> <query key="type" value="debug"/> <version> <artifact> <query key="type" value="JAR"/> <artifact> </lib:depends> <lib:depends rdf:ID="xercesj"> <version> <query key="maturity" value="latest"/> <query key="type" value="release"/> <version> <compatible> <query key="compatible" rdf:Value="saxon"/> </compatible> <artifact> <query key="type" value="JAR"/> <artifact> </lib:depends> <comp:depends rdf:ID="SOME_OTHER_PROJECT_COMPONENT"> <version> <query key="maturity" value="latest"/> <query key="type" value="debug"/> <version> <artifact> <query key="type" value="JAR"/> <artifact> </comp:depends> </comp:Component> a library dependency is as follows.... <lib:depends rdf:ID="xmlparser"> <version> <query key="maturity" value="latest"/> <query key="type" value="release"/> <version> <artifact> <query key="type" value="JAR"/> <artifact> </lib:depends> general artifacts follow the same format. Dependencies can be grouped up into sets; e.g. dependencysets so that they can be referenced e.g. ... <lib:dependset rdf:ID="xml_dependencies"/> I then define all components, libraries, and artifacts using rdf:ID as link... by structuring via query elements, it gives me an open ended definition for defining new artifact types....like zip etc. Currently this ML is processed with XSLT..though I am slowly migrating to RDF processing and since I use Ant to control the entire process...might make a task of it one day... I have used RDF because I use the power of triples when asking questions of my component dependencies....which I havent showed in the primative ML. --Jim Fuller > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED]
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]