Niclas Hedhman wrote:
> On Saturday 21 February 2004 17:21, Leo Simons wrote:
>> Leo Sutic wrote:
>> > Should we adopt this?
>>
>> sounds like a plan. It will be difficult to stick to. Avalon is rather
>> unique in releasing lots of small bits seperately :D
> 
> Currently we have some 'inefficiencies" in the versioning of all the
> products. For instance, it is almost impossible to know all the places
> where changes are required when you need to bump the versions.
> I used to employ the "copy all source to build directory with a 'replace'
> filter", which I think I learned from Cocoon, and then have one file for
> the versioning information.
> 
> Once that is in place, it would be fairly easy to automate the whole
> release process as well.

Well, you can introduce entities in your project XML files for dependencies
and versions. In the end you will not have one file with all versions, but
a directory will all entities containing the version or dependency. I am
using this in a project and it works wonderful.


Example for a modified framework/api/project.xml
===================================

<!DOCTYPE project [ 
  <!ENTITY dep-logkit SYSTEM "../../buildsystem/dependency/logkit.entity"> 
]> 
[...]
<dependencies>
  &dep-logkit;
</dependencies>
[...]



Example for a modified framework/impl/project.xml
===================================

<!DOCTYPE project [ 
  <!ENTITY dep-avalon-framework-api SYSTEM
"../../buildsystem/dependency/avalon-framework-api.entity"> 
  <!ENTITY dep-xml-apis SYSTEM
"../../buildsystem/dependency/xml-apis.entity"> 
  <!ENTITY dep-xerces SYSTEM "../../buildsystem/dependency/xerces.entity"> 
  <!ENTITY dep-xalan SYSTEM "../../buildsystem/dependency/xalan.entity"> 
  <!ENTITY dep-logkit SYSTEM "../../buildsystem/dependency/logkit.entity"> 
  <!ENTITY dep-junit SYSTEM "../../buildsystem/dependency/junit.entity"> 
]> 
[...]
<dependencies>
  &dep-avalon-framework-api;
  &dep-xml-apis;
  &dep-xerces;
  &dep-xalan;
  &dep-logkit;
  &dep-junit;
</dependencies>
[...]


Working with entities has one drawback: They are always relative to the file
they're included. So if you include a project.xml from another directory
level, the entities are not found.

Fortunately dependencies are in Avalon currently declared only in
project.xml's two levels deep, so this proposal will work! Additionally it
will ensure that never two Avalon assemblies will reference the same
assembly as dependency in two different versions.

Regards,
J�rg


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to