|Re: [tycho-user] What does feature/requires/import/version="0.0.0" mean and should it be expanded?|
On 07/31/2014 04:11 PM, Andreas Sewe wrote:
That's expected. The versions are kept as it, and are resolved when users *installs* the feature, not during the build. It basically allows to put dependency on version ranges and provide more flexibility.Unlike for feature/plugin/@version the "0.0.0" of feature/requires/import/@version is not expanded to the feature version actually visible during the build (be it from the target platform or the reactor).
I believe 0.0.0 is automatically translated to "any version" by p2, so the "perfect" here doesn't have much effect on the request.And as far as I could tell during some experimental feature installs/updates, any version of org.example.feature is a perfect match for this requirement, making the above requirement pretty much useless.
I've never used "perfect" and I can't think of any use-case that would make it useful. If you want to depend on a very specific version of a feature, it seems better to *include* the feature than to require/import it. include resolves version during build so the output is locked to a fully-qualified version of the feature, similarly to what "perfect" would do, I guess.And how is "perfect" supposed to be used? At least for other features produced during the same build it's pretty much impossible to predict their version up to and including the qualifier? How can I therefore put a perfect version in there?
Back to the top