Wiki source code of Versions
Last modified by Thomas Mortagne on 2017/07/08 18:33
Show last authors
author | version | line-number | content |
---|---|---|---|
1 | Extension Manager support a set of syntaxes for versions and versions ranges. | ||
2 | |||
3 | The syntax is mostly based on the Maven one. | ||
4 | |||
5 | |=Range|=Meaning | ||
6 | |1.0|1.0 is best but greater version are matched too. | ||
7 | {{warning}}in Maven it means 1.0 is best but any other version is matched too{{/warning}} | ||
8 | |(,1.0]|x <= 1.0 | ||
9 | |[1.0]|Only 1.0 | ||
10 | |[1.2,1.3]|1.2 <= x <= 1.3 | ||
11 | |[1.0,2.0)|1.0 <= x < 2.0 | ||
12 | |[1.5,)|x >= 1.5 | ||
13 | |(,1.0],[1.2,)|x <= 1.0 or x >= 1.2. Multiple sets are comma-separated | ||
14 | |(,1.1),(1.1,)|Anything but 1.1 | ||
15 | |||
16 | In Java these version are represented by the following public interfaces: | ||
17 | * ##org.xwiki.extension.version.Version##: provide API to compare versions and indicate if the version is of type SNAPSHOT, BETA or STABLE | ||
18 | * ##org.xwiki.extension.version.VersionRange##: a single range | ||
19 | * ##org.xwiki.extension.version.VersionRangeCollection##: several ranges | ||
20 | * ##org.xwiki.extension.version.Constraint##: a VersionRangeCollection or a Version | ||
21 | |||
22 | {{info}}This is the default syntax used by Extension Manager but it's each repository handler job to parse it's own syntax and create corresponding Java objects implementing Extension Manager public API.{{/info}} |