Ivy version range. the Zero after the RC. (RC0)

In an module version range like this

[1.0.0-RC0,1.1.0-RC0[

what does the zero after the RC stand for ?

with this pattern is a version like 1.0.0-RC202009160912 will be picked if it’s the most recent even if after the RC it’s a 2 and not a 0 ?

I can’t find any explanation on apache the ivy documentation.

Hi,

In the default Ivy version matcher, numbers after “-RC” are compared as real numbers, not as strings or not as “must start with”. Therefore in your example, 0 is lower than 202009160912, so the version is valid and will be picked.
To be more precise, when doing the resolution, Ivy splits the version 1.0.0-RC0 to the tokens 1, 0, 0, RC, 0, and it splits the version 1.0.0-RC202009160912 to the tokens 1, 0, 0, RC, 202009160912. Then tokens which are valid numbers are compared as numbers, others are compared as strings.

Hope this helps,
Thomas

1 Like

It helps thank you !