Re: About different opinions of version numbering schemes containg '.' and '-' (Was: [devteam-bioc] BioConductor phyloseq defines relation to not yet existing ade4 version])
Hi Dirk,
On Sat, Jun 02, 2018 at 07:11:16AM -0500, Dirk Eddelbuettel wrote:
> | I was digging in my archive about another issue where a dash '-' in a
> | version number creates an issue in our packaging. I could imagine that
>
> IIRC a really loooooong time ago it did -- I think when Charles wrote
> cran2deb as a Summer of Code project I may have recommended the regexp switch
> from - to . yet I think we have not needed it for a long time.
I think the point of this discussion was whether to use a dash at all.
I'm fine with this - my point is a different one.
> | we include some list in dh-update-R where we do the needed replacements
> | (currently for ade4 and quantmod) even if I'd prefer if upstream would
> | stop using "random signs" instead of the proper version released version
> | number.
>
> That is unnecessarily strong language that not only "not helps" but
> distracts.
May be I did not made my point clear enough:
https://cran.r-project.org/web/packages/ade4/index.html
has
Version: 1.7-11
but
https://bioconductor.org/packages/release/bioc/html/phyloseq.html
refers to
Imports ade4 (>= 1.7.4)
There wa never ever any version 1.7.4. I do not mind about the usage of
a dash. I simply think that the strings of used version numbers and
references need to match.
> R (at CRAN) check these things too (which I why I am very surprised about
> that Graham found with tseries and about which I will follow up with
> upstream).
Same with quantmod. It has version 0.4-13 and tseries is erroneously
refering to quantmod (>= 0.4.9). That's simply a bug/typo that should
be fixed.
> Consider the following R code (!!)
>
> R> p1 <- as.package_version("4.1-9")
> R> p2 <- as.package_version("4.1.13")
> R> p1 < p2
> [1] TRUE
> R> p1 > p2
> [1] FALSE
> R>
>
> so R itself is perfectly capably to treat version Depends (in something
> modeled strongly on what we do). And it seems to do just what we do:
Even if R is able to do this, I consider it very bad style to use
different strings for the version. And I consider it not nice to insist
on this habit even if it causes trouble for third party if it comes very
cheap to create consistency.
> edd@rob:~$ dpkg --compare-versions 4.1-9 lt 4.1.13 && echo TRUE
> TRUE
> edd@rob:~$ dpkg --compare-versions 4.1-9 gt 4.1.13 && echo TRUE
> edd@rob:~$
>
> I think we both allow 1.2-3 and 1.2.3 and Debian can build 1.2-3-1 and
> 1.2.3-1 equaly well off them.
In the case I quotet it is
> p1 <- as.package_version("1.7-11")
> p2 <- as.package_version("1.7.4")
> p1 < p2
[1] FALSE
$ dpkg --compare-versions 1.7-11 lt 1.7.4 && echo TRUE
TRUE
while it is simply false.
So issues are to be expected when choosing '-' and '.' at random.
Kind regards
Andreas.
--
http://fam-tille.de
Reply to: