Internal rsync doesn't report directory mtime updates #30
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Internal rsync doesn't report directory mtime updates
Problem
Internal
rsync()and externalrsync_ext()produce inconsistent action outputs for directory mtime updates.Current Behavior
File time changes:
rsync(): yieldsActions.REWRITE✓rsync_ext(): yieldsActions.REWRITE✓Directory time changes:
rsync(): Updates mtime silently, yields nothing ✗rsync_ext(): yieldsActions.UPDATE_TIME✓Details
Lines 403-416 in
curateipsum/fs.pyrestore directory mtimes after sync operations (since modifying files inside directories changes their parent mtime). However, this operation doesn't yield any action:Impact
API consumers can't consistently track what changed when switching between internal/external rsync modes.
Solution
Add
yield rel_path, Actions.UPDATE_TIME, ""after theos.utime()call around line 415.Discovery
Found during test implementation for
rsync_ext()function (see TestRsyncExt in test_fs.py).