[Rd] recent changes to r-devel with package date checking?

Dirk Eddelbuettel edd @end|ng |rom deb|@n@org
Thu Mar 26 21:29:43 CET 2026


Hi Simon,

On 27 March 2026 at 08:56, Simon Urbanek wrote:
| FWIW the date comparison have been in place for a while and is unrelated to the recent changes, but, yes, it's easy enough to a) treat unrecognized timestamps as simply "old" and possibly b) add support for the Debian timestamps so I'll look into that.

Appreciate that.

If you look at 'svn blame' you will see that we put this in place many moons
ago.  And if I look at my Debian buildlog, e.g. from Rserve two days ago, we
see use of the '--built-timestamp' field for this very propagation.

    [...]
    make[1]: Entering directory '/build/rserve-1.8-19'
    dh_auto_install
    I: R Package: Rserve Version: 1.8-19
    I: Building using R version 4.5.3-1
    I: R API version: r-api-4.0
    I: Using built-time from d/changelog: Tue, 24 Mar 2026 05:38:00 -0500
    	mkdir -p /build/rserve-1.8-19/debian/r-cran-rserve/usr/lib/R/site-library
    	R CMD INSTALL -l /build/rserve-1.8-19/debian/r-cran-rserve/usr/lib/R/site-library --clean . --built-timestamp="'Tue, 24 Mar 2026 05:38:00 -0500'"
    * installing *source* package 'Rserve' ...
    ** this is package 'Rserve' version '1.8-19'
    [...]

Here dh_auto_install is just a (distribution-wide) convenience wrapper from a
system called debhelper, all this is (these days) standardized so much that
there is a common caller for R package that sets this up. It is in a package
dh-r with the R specific bits that plug into debhelper (it's all pretty old
code by others, mostly in (horror) Perl, what is used now is in a file R/pm
inside the dh-r package) but there is also the old hook 'r-cran.mk' we used
to call directly that has the (no longer called, but replicated functionally
in R.pm) bit with a comment and code:

    ## Bug report #782764 with patch by Philipp Rinn building on what we had above
    ## if no builttimeStamp is supplied, set built-time (to be set in DESCRIPTION).
    ## to time of created source package based on stamp in changelog..
    ## See discussion in http://bugs.debian.org/774031
    
    ifeq ($(builttimeStamp),)
      builttime       := $(shell dpkg-parsechangelog -l$(CURDIR)/debian/changelog | awk -F': ' '/Date/ {print $$2}')
      builttimeStamp  := "--built-timestamp=\"$(builttime)\""
    endif

and that links to https://bugs.debian.org/782764 from 2015 (!!) which has more.

So in short we should for this be picking up our own (unchanged) timestamp
from our changelog; it may be that when the option is not set a different
format propagates and now creates a 'surprise'.

Cheers, Dirk

-- 
dirk.eddelbuettel.com | @eddelbuettel | edd using debian.org



More information about the R-devel mailing list