]> arthur.barton.de Git - bup.git/commit - lib/bup/_helpers.c
Drop xstat floating point timestamp support -- use integer ns.
authorRob Browning <rlb@defaultvalue.org>
Sun, 27 Mar 2011 17:01:44 +0000 (12:01 -0500)
committerAvery Pennarun <apenwarr@gmail.com>
Sun, 8 May 2011 07:39:14 +0000 (03:39 -0400)
commitb90624caebacd2128e1072fd74a666c0a98ffcb8
treecd328d200f13b2a2b286de2daaebb861f800aecb
parent35d9919f933561f767b1e14e22ab299d0a80fcf7
Drop xstat floating point timestamp support -- use integer ns.

Drop conditional support for floating point timestamps (the xstat
os.stat() fallback).  Switch to integer nanosecond timestamps
everywhere except the metadata record encoding and _helpers.c.

The metadata encoding is still a timespec because separate s and ns
timespec vints compress much better, and timespecs are still returned
by _helpers because the conversion to integer nanoseconds is much more
convenient in Python.

Enforce timespec range expectations -- throw an exception if the
system returns a nanosecond value less than 0 or greater than
999999999.  Remove _have_ns_fs_timestamps.

Depend on bup_stat(), bup_stat(), and bup_lstat() unconditionally, and
change the timespec return conversion from "(ll)" to "(Ll)", i.e. long
long range for secs.

This commit may break the build on some platforms -- we'll have to add
suitable conditionals once we see what's needed.

Signed-off-by: Rob Browning <rlb@defaultvalue.org>
lib/bup/_helpers.c
lib/bup/t/txstat.py
lib/bup/xstat.py