Repository navigation
v0.3.0 — symlink support
Symlinks are now backed up, matching kopia's dir-manifest format: entries of type "s" whose object holds the link target string — dangling links included.
Changes since v0.2.0
- Symlink support:
readlink→ target uploaded as file object, lstat size/mode/mtime. Dynamic target buffer (sized fromlstat st_size, retry if the link changes) — no truncation. - Special files (FIFOs/sockets/devices): still skipped (kopia does the same), but now logged with path and counted in the run summary.
- Directory summary fixes:
summary.dirsself-count per kopia convention;symlinkscounter added to dir summaries androotEntry.summ. - Bug fix: symlink mtime via
lstat— previously a dangling symlink produced an empty mtime and broke kopia-side JSON parsing of the dir object. - Test:
tests/symlink-roundtrip.sh— scripted end-to-end test vs a local kopia server (valid/absolute/dangling/relative/dir/2000-char/UTF-8-dir symlinks, empty + multi-chunk files, FIFO-skip assertion, full restore check).
Verification
- Round-trip test vs kopia 0.23.1:
Restored 5 files, 5 directories and 7 symbolic links— all targets byte-exact - Full-tree run against the production server from a PowerPC G4 (Mac mini, 10.5.8)
- User-Agent:
kopia-darwin-ppc/0.3
Binaries
kopia-darwin-ppc— Mach-O ppc_7400, Mac OS X 10.4/10.5 G4/G5 (32-bit)kopia-darwin-ppc64— Mach-O ppc64, G5 (untested — no hardware)
SHA-256 in SHA256SUMS.