[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
[cross-project-issues-dev] Re: Versioning tools for download and evaluation (Eclipse Build Workshop)
|
Hi Pascal,
Thanks for your reply and the pointers. It's always helpful to have
something to use as the starting point in the code. I've been looking
further at how qualifiers are replaced during building and I have some
questions.
When the genereatedVersionSuffix is turned on, the documentation claims
that the qualifier suffix is a 'sum' of the version qualifiers of
included features and plugins. When looking at the code
(FeatureBuildScriptGenerator.generateFeatureVersionSuffix) that appears
to be true for all plugins but only for feature references that in turn
also have a suffix and it appears that only the suffix from those
references takes part in the calculation and not the qualifier as a whole.
My questions are:
1. Why is only the qualifier considered when calculating the suffix and
not the version string as a whole?
2. Why are only those features that has a suffix included? And why the
suffix only?
I somehow suspect that the answer will be that the whole calculation is
attempting to detect plugin-changes and that those will ripple up
through the suffixes when features reference other features and perhaps
I'm missing the obvious but I have some concerns with this approach:
1. Assume I have a feature that have some root files to be copied to the
product root. I change some file and I also change the timestamp part of
the qualifier. The set of included features/plugins stays exactly the
same. If I've understood it correctly, this means that the suffix
generation will produce the exact same result. The suffix generation of
a feature that references my feature will thus miss the fact that the
timestamp has changed.
2. In an ever expanding world of features and bundles, it is not too far
fetched to assume that I'll include other features and bundles that I
have no control over and that follow some slightly different version
scheme. The current constraints on the input to the calculation will
prevent such a mix from using generated suffixes.
Kind Regards,
Thomas Hallgren
Pascal Rapicault wrote:
The generation of qualifier is not bound to cvs. It is obtained from
the "tag" found in the map file associated with the entry being built
(the map file has supports for multiple repositories - see
IFetchFactory and the associated extension point). If the value is not
present, then we attempt to get it from the qualifier tag in the
build.properties, and in the last case the value is generated.
This replacement of the qualifier is done when we are building the
state of the target we are building (see PDEState.udpateVersionNumber())
HTH
PaScaL