RFC: set timestamps on files created by bzr

Robert Collins robertc at robertcollins.net
Tue Jan 22 12:04:21 GMT 2008


I'm at a sprint in London with various Canonical staff that work on
Ubuntu. They'd like to use bzr more deeply in package management, but
there is a one issue that currently causes trouble: when we create a
tree on disk, or do pull/merge, we don't provide any sort of timestamps
other than those of the OS dependent on order-we-create-files.

This poses a problem, as many packages have build-products in the
package tree, but [often] deliberately do not have the rules and
dependencies needed to recreate those build-products. In particular, the
autoconf toolchain turns up here - Debian developers are rather split on
whether it is good or evil to run autoreconf etc during a package build.

While there are workarounds that can be done in individual packages
(e.g. adding dependencies, using --disable-maintainer-mode), the
requirement to fix packages makes large scale deployment troublesome at
best.

If bzr were to set a timestamp on any files it alters that is the same
for all files altered during the same operation, then timestamp-based
build systems that have these issues would not trigger rebuilds
incorrectly allowing wide scale deployment.

This could be done by calling futime (which is not exposed in python
AFAICT, we'd need an extension to make it available) during writing the
files in tree transform.

-Rob
-- 
GPG key available at: <http://www.robertcollins.net/keys.txt>.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part
Url : https://lists.ubuntu.com/archives/bazaar/attachments/20080122/541941ab/attachment.pgp 


More information about the bazaar mailing list