migrate: Fix --remove-size to work when a file is not present

5f74a45861 added this bug
This commit is contained in:
Joey Hess 2025-04-01 10:47:31 -04:00
parent 5f74a45861
commit 7fb413189a
No known key found for this signature in database
GPG key ID: DB12DB0FF05F8F38
4 changed files with 16 additions and 4 deletions

View file

@ -9,6 +9,8 @@ git-annex (10.20250321) UNRELEASED; urgency=medium
* httpalso: Windows url fix.
* Added remote.name.annex-web-options config, which is a per-remote
version of the annex.web-options config.
* migrate: Fix --remove-size to work when a file is not present.
Fixes reversion introduced in version 10.20231129.
-- Joey Hess <id@joeyh.name> Fri, 21 Mar 2025 12:27:11 -0400

View file

@ -90,7 +90,7 @@ start o ksha si file key = do
newbackend <- chooseBackend file
if (newbackend /= oldbackend || upgradableKey oldbackend || forced) && exists
then go False oldbackend newbackend
else if cantweaksize newbackend oldbackend && exists
else if cantweaksize newbackend oldbackend exists
then go True oldbackend newbackend
else stop
where
@ -101,10 +101,10 @@ start o ksha si file key = do
starting "migrate" (mkActionItem (key, file)) si $
perform onlytweaksize o file key keyrec oldbackend newbackend
cantweaksize newbackend oldbackend
cantweaksize newbackend oldbackend exists
| removeSize o = isJust (fromKey keySize key)
| newbackend /= oldbackend = False
| isNothing (fromKey keySize key) = True
| isNothing (fromKey keySize key) && exists = True
| otherwise = False
upgradableKey oldbackend = maybe False (\a -> a key) (canUpgradeKey oldbackend)

View file

@ -92,4 +92,4 @@ git-annex version: 10.20250115
> [[fixed|done]] --[[Joey]]

View file

@ -0,0 +1,10 @@
[[!comment format=mdwn
username="joey"
subject="""comment 1"""
date="2025-04-01T14:39:24Z"
content="""
I diagnose a bug introduced in
[[!commit 86dbe9a825b9c615c63e0cfc5e4a737a249f8989]]
that makes it only be able to remove the size if the object file is locally
present. Fixed.
"""]]