Skip to content
Prev 46616 / 63424 Next

Comments requested on "changedFiles" function

Dear Duncan,

This certainly looks useful. Might you consider adding the ability to 
supply an alternative digest function? Details below.

I often use a homemade "make" type function which starts by looking at 
modification times e.g. in a private package

https://github.com/jefferis/nat.utils/blob/master/R/make.r

For some of my work, I use hash functions. However because I typically 
work with many large files I often use a special digest process e.g. 
using the crc checksum embedded in a gzip file directly or hashing only 
the part of a large file that is (almost) certain to change.

Perhaps (code unchecked) along the lines of:

changedFiles <- function(snapshot, timestamp = tempfile("timestamp"), 
file.info = NULL,
	digest = FALSE, digestfun=NULL, full.names = FALSE, ...)

if(digest){
	if(is.null(digestfun)) digestfun=tools::md5sum
	else digestfun=match.fun(digestfun)
	info <- data.frame(info, digest = digestfun(fullnames))
}

etc

OR alternatively using only one argument:

changedFiles <- function(snapshot, timestamp = tempfile("timestamp"), 
file.info = NULL,
	digest = FALSE, full.names = FALSE, ...)

if(is.logical(digest)){
	if(digest) digestfun=tools::md5sum
} else {
	# Assume that digest specifies a function that we want to use
	digestfun=match.fun(digest)
	digest=TRUE
}

if(digest)
	info <- data.frame(info, digest = digestfun(fullnames))

etc

Many thanks,

Greg.
On 4 Sep 2013, at 18:53, Duncan Murdoch wrote:

            
--
Gregory Jefferis, PhD                   Tel: 01223 267048
Division of Neurobiology
MRC Laboratory of Molecular Biology
Francis Crick Avenue
Cambridge Biomedical Campus
Cambridge, CB2 OQH, UK

http://www2.mrc-lmb.cam.ac.uk/group-leaders/h-to-m/g-jefferis
http://jefferislab.org
http://flybrain.stanford.edu

Thread (22 messages)

Duncan Murdoch Comments requested on "changedFiles" function Sep 4 Karl Millar Comments requested on "changedFiles" function Sep 4 Duncan Murdoch Comments requested on "changedFiles" function Sep 4 Scott Kostyshak Comments requested on "changedFiles" function Sep 4 Duncan Murdoch Comments requested on "changedFiles" function Sep 5 Dr Gregory Jefferis Comments requested on "changedFiles" function Sep 5 Duncan Murdoch Comments requested on "changedFiles" function Sep 5 Hadley Wickham Comments requested on "changedFiles" function Sep 5 Scott Kostyshak Comments requested on "changedFiles" function Sep 5 Karl Millar Comments requested on "changedFiles" function Sep 5 Duncan Murdoch Comments requested on "changedFiles" function Sep 6 Duncan Murdoch Comments requested on "changedFiles" function Sep 6 Duncan Murdoch Comments requested on "changedFiles" function Sep 6 Scott Kostyshak Comments requested on "changedFiles" function Sep 6 Scott Kostyshak Comments requested on "changedFiles" function Sep 6 Duncan Murdoch Comments requested on "changedFiles" function Sep 6 Karl Millar Comments requested on "changedFiles" function Sep 6 Duncan Murdoch Comments requested on "changedFiles" function Sep 6 Karl Millar Comments requested on "changedFiles" function Sep 6 Duncan Murdoch Comments requested on "changedFiles" function Sep 8 Scott Kostyshak Comments requested on "changedFiles" function Sep 8 Duncan Murdoch Comments requested on "changedFiles" function Sep 9