Joey Hess [Tue, 2 Apr 2024 21:33:20 +0000 (17:33 -0400)]
mention reversion
Joey Hess [Tue, 2 Apr 2024 21:29:07 +0000 (17:29 -0400)]
Revert "multiple -m"
This reverts commit
cee12f6a2fd7f90eb2aa72cd638b6bcdf45e4f92.
This commit broke git-annex init run in a repo that was cloned from a
repo with an adjusted branch checked out.
The problem is that findAdjustingCommit was not able to identify the
commit that created the adjusted branch. It seems that there is an extra
"\n" at the end of the commit message that it does not expect.
Since backwards compatability needs to be maintained, cannot just make
findAdjustingCommit accept it with the "\n". Will have to instead
have one commitTree variant that uses the old method, and use it for
adjusted branch committing.
d@403a635aa8eaa8bfa8613acb6a375d9e06ed7001 [Wed, 27 Mar 2024 22:11:47 +0000 (22:11 +0000)]
Added a comment
Joey Hess [Wed, 27 Mar 2024 20:00:18 +0000 (16:00 -0400)]
fixes
Joey Hess [Wed, 27 Mar 2024 19:58:45 +0000 (15:58 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Wed, 27 Mar 2024 19:58:27 +0000 (15:58 -0400)]
multiple -m
sync, assist, import: Allow -m option to be specified multiple times, to
provide additional paragraphs for the commit message.
The option parser didn't allow multiple -m before, so there is no risk of
behavior change breaking something that was for some reason using multiple
-m already.
Pass through to git commands, so that the method used to assemble the
paragrahs is whatever git does. Which might conceivably change in the
future.
Note that git commit-tree has supported -m since git 1.7.7. commitTree
was probably not using it since it predates that version. Since the
configure script prevents building git-annex with git older than 2.1,
there is no risk that it's not supported now.
Sponsored-by: Nicholas Golder-Manning on Patreon
Joey Hess [Wed, 27 Mar 2024 16:45:40 +0000 (12:45 -0400)]
fix typo
d@403a635aa8eaa8bfa8613acb6a375d9e06ed7001 [Wed, 27 Mar 2024 13:26:34 +0000 (13:26 +0000)]
Added a comment
Joey Hess [Tue, 26 Mar 2024 22:19:29 +0000 (18:19 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Tue, 26 Mar 2024 22:19:23 +0000 (18:19 -0400)]
todo
yarikoptic [Tue, 26 Mar 2024 19:13:15 +0000 (19:13 +0000)]
Added a comment
Joey Hess [Tue, 26 Mar 2024 18:13:59 +0000 (14:13 -0400)]
fix build warning
A recent change made plumbing the backend through fsck unncessary.
Left fsck checking backend and skipping operating on key when it could
not find one. Not checking the backend would be a behavior change.
For example the command git-annex fsck --key FOO--bar does nothing
since FOO is not a known backend. If this were removed it would
instead go on and fsck it and warn that no copies exist of the key.
That behavior change seems like it would be fine, but I also have no
reason to make it.
Joey Hess [Tue, 26 Mar 2024 18:07:41 +0000 (14:07 -0400)]
avoid build warning on windows
Joey Hess [Tue, 26 Mar 2024 17:51:51 +0000 (13:51 -0400)]
windows build fix
Joey Hess [Tue, 26 Mar 2024 17:48:57 +0000 (13:48 -0400)]
comment
Joey Hess [Tue, 26 Mar 2024 17:48:43 +0000 (13:48 -0400)]
update for new rclone gitannex command
Joey Hess [Tue, 26 Mar 2024 17:17:09 +0000 (13:17 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Tue, 26 Mar 2024 17:16:33 +0000 (13:16 -0400)]
avoid build warning on windows
Since append was only exported by Annex.Common on unix, excluding it
from import caused a build warning on windows.
Joey Hess [Tue, 26 Mar 2024 17:12:58 +0000 (13:12 -0400)]
fix build on windows
deletestale renamed from cleanstale
Joey Hess [Tue, 26 Mar 2024 17:11:53 +0000 (13:11 -0400)]
fix build warnings on windows
Joey Hess [Tue, 26 Mar 2024 17:09:21 +0000 (13:09 -0400)]
Windows: Fix escaping output to terminal when using old versions of MinTTY
Joey Hess [Tue, 26 Mar 2024 17:06:52 +0000 (13:06 -0400)]
clean up windows build warnings about unused imports
d@403a635aa8eaa8bfa8613acb6a375d9e06ed7001 [Tue, 26 Mar 2024 14:07:19 +0000 (14:07 +0000)]
Added a comment
Joey Hess [Mon, 25 Mar 2024 18:53:02 +0000 (14:53 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Mon, 25 Mar 2024 18:51:36 +0000 (14:51 -0400)]
link to commit
Joey Hess [Mon, 25 Mar 2024 18:47:38 +0000 (14:47 -0400)]
fix transfer lock file for Download to not include uuid
While redundant concurrent transfers were already prevented in most
cases, it failed to prevent the case where two different repositories were
sending the same content to the same repository. By removing the uuid
from the transfer lock file for Download transfers, one repository
sending content will block the other one from also sending the same
content.
In order to interoperate with old git-annex, the old lock file is still
locked, as well as locking the new one. That added a lot of extra code
and work, and the plan is to eventually stop locking the old lock file,
at some point in time when an old git-annex process is unlikely to be
running at the same time.
Note that in the case of 2 repositories both doing eg
`git-annex copy foo --to origin`
the output is not that great:
copy b (to origin...)
transfer already in progress, or unable to take transfer lock
git-annex: transfer already in progress, or unable to take transfer lock
97% 966.81 MiB 534 GiB/s 0sp2pstdio: 1 failed
Lost connection (fd:14: hPutBuf: resource vanished (Broken pipe))
Transfer failed
Perhaps that output could be cleaned up? Anyway, it's a lot better than letting
the redundant transfer happen and then failing with an obscure error about
a temp file, which is what it did before. And it seems users don't often
try to do this, since nobody ever reported this bug to me before.
(The "97%" there is actually how far along the *other* transfer is.)
Sponsored-by: Joshua Antonishen on Patreon
Joey Hess [Mon, 25 Mar 2024 18:11:25 +0000 (14:11 -0400)]
fix windows transfer lock check
If the lock file was not able to be exclusivlely locked, don't indicate
locking failed. I'm pretty sure this was a typo. It goes all the way
back to
891c85cd88c5a90daf7d18160eeddd1483e8c649 where locking was first
introduced on windows, and there's no indication of why it would make
sense to return True here.
Sponsored-by: Leon Schuermann on Patreon
nobodyinperson [Mon, 25 Mar 2024 06:27:48 +0000 (06:27 +0000)]
Add news of git-annex merch from hellotux.com
nobodyinperson [Mon, 25 Mar 2024 06:18:36 +0000 (06:18 +0000)]
Add link to hellotux.com git-annex shirts
Joey Hess [Sun, 24 Mar 2024 19:05:49 +0000 (15:05 -0400)]
bug
Joey Hess [Fri, 22 Mar 2024 15:07:00 +0000 (11:07 -0400)]
comment
Joey Hess [Fri, 22 Mar 2024 15:00:51 +0000 (11:00 -0400)]
comment
Joey Hess [Fri, 22 Mar 2024 14:54:14 +0000 (10:54 -0400)]
fix name of option
poelzi [Wed, 20 Mar 2024 21:22:36 +0000 (21:22 +0000)]
Joey Hess [Mon, 18 Mar 2024 20:57:54 +0000 (16:57 -0400)]
policy on AI generated content
Joey Hess [Fri, 15 Mar 2024 20:15:23 +0000 (16:15 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Fri, 15 Mar 2024 20:14:44 +0000 (16:14 -0400)]
fix reversion in unexport when unable to rename
Bug introduced in commit
7cef5e8f35d211f09eee0af5f8ea0bf689a1d012
Joey Hess [Fri, 15 Mar 2024 14:13:12 +0000 (10:13 -0400)]
update
oadams [Thu, 14 Mar 2024 01:03:46 +0000 (01:03 +0000)]
Added a comment: Need for git-annex-remote-rclone
Joey Hess [Wed, 13 Mar 2024 15:21:05 +0000 (11:21 -0400)]
update
Joey Hess [Wed, 13 Mar 2024 15:19:04 +0000 (11:19 -0400)]
update
Joey Hess [Wed, 13 Mar 2024 15:06:59 +0000 (11:06 -0400)]
link
Joey Hess [Wed, 13 Mar 2024 15:05:41 +0000 (11:05 -0400)]
fix spelling
Joey Hess [Wed, 13 Mar 2024 15:04:06 +0000 (11:04 -0400)]
todo
Joey Hess [Wed, 13 Mar 2024 14:32:03 +0000 (10:32 -0400)]
update
Joey Hess [Wed, 13 Mar 2024 14:29:48 +0000 (10:29 -0400)]
update
Joey Hess [Wed, 13 Mar 2024 14:19:17 +0000 (10:19 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Wed, 13 Mar 2024 14:19:10 +0000 (10:19 -0400)]
todo
Joey Hess [Tue, 12 Mar 2024 20:41:25 +0000 (16:41 -0400)]
thoughts
Joey Hess [Mon, 11 Mar 2024 14:00:48 +0000 (10:00 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Mon, 11 Mar 2024 14:00:45 +0000 (10:00 -0400)]
comment
Joey Hess [Sat, 9 Mar 2024 17:50:30 +0000 (13:50 -0400)]
fix build warning
A recent change made plumbing the backend through fsck unncessary.
Left fsck checking backend and skipping operating on key when it could
not find one, although I'm not sure if that's necessary to support eg,
keys with unknown backend.
Joey Hess [Sat, 9 Mar 2024 17:37:51 +0000 (13:37 -0400)]
export tree: avoid confusing output about renaming files
When a file in the export is renamed, and the remote's renameExport
returned Nothing, renaming to the temp file would first say it was
renaming, and appear to succeed, but actually what it did was delete the
file. Then renaming from the temp file would not do anything, since the
temp file is not present on the remote. This appeared as if a file got
renamed to a temp file and left there.
Note that exporttree=yes importree=yes remotes have their usual
renameExport replaced with one that returns Nothing. (For reasons
explained in Remote.Helper.ExportImport.) So this happened
even with remotes that support renameExport.
Fix by letting renameExport = Nothing when it's not supported at all.
This avoids displaying the rename.
Sponsored-by: Graham Spencer on Patreon
Joey Hess [Fri, 8 Mar 2024 18:59:54 +0000 (14:59 -0400)]
fix comment
Joey Hess [Fri, 8 Mar 2024 18:32:29 +0000 (14:32 -0400)]
update
Joey Hess [Fri, 8 Mar 2024 18:23:17 +0000 (14:23 -0400)]
fix comment
Joey Hess [Fri, 8 Mar 2024 17:43:31 +0000 (13:43 -0400)]
update
Joey Hess [Fri, 8 Mar 2024 17:38:46 +0000 (13:38 -0400)]
fix indent for readability
Joey Hess [Thu, 7 Mar 2024 23:19:45 +0000 (19:19 -0400)]
attribution armoring
ewen [Thu, 7 Mar 2024 03:01:20 +0000 (03:01 +0000)]
Added a comment: TLS v1.2 EMS (Extended Master/Main Secret)
ewen [Thu, 7 Mar 2024 02:33:52 +0000 (02:33 +0000)]
bbigras [Wed, 6 Mar 2024 17:03:51 +0000 (17:03 +0000)]
Added a comment
imlew [Wed, 6 Mar 2024 12:26:56 +0000 (12:26 +0000)]
Added a comment: Still experimental?
Joey Hess [Tue, 5 Mar 2024 19:04:35 +0000 (15:04 -0400)]
add reregisterurl command
What this can currently be used for is only to change an url from being
used by a special remote to being used by the web remote.
This could have been a --move-from option to registerurl. But, that would
have complicated its option and --batch processing, and also would have
complicated unregisterurl, which is implemented on top of
Command.Registerurl. So, a separate command was actually less complicated
to implement.
The generic description of the command is because I want to make this
command a catch-all for other url updating kind of things, if there are
ever any more. Also because it was hard to come up with a good name for the
specific action. I considered `git-annex moveurl`, but that seems to
indicate data is perhaps actually being moved, and seems to sit at the same
level as addurl and rmurl, and this command is at the plumbing
level of registerurl and unregisterurl.
Sponsored-by: Dartmouth College's DANDI project
Joey Hess [Tue, 5 Mar 2024 17:45:31 +0000 (13:45 -0400)]
small problem
Joey Hess [Tue, 5 Mar 2024 17:29:42 +0000 (13:29 -0400)]
comment
Joey Hess [Tue, 5 Mar 2024 17:17:37 +0000 (13:17 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Tue, 5 Mar 2024 17:16:42 +0000 (13:16 -0400)]
add todo for tracking free space in repos via git-annex branch
For balanced preferred content perhaps, or just for git-annex info
display.
Sponsored-by: unqueued on Patreon
Joey Hess [Tue, 5 Mar 2024 17:16:06 +0000 (13:16 -0400)]
update
TTTTAAAx [Tue, 5 Mar 2024 05:21:59 +0000 (05:21 +0000)]
Added a comment
Joey Hess [Mon, 4 Mar 2024 21:17:53 +0000 (17:17 -0400)]
response
Joey Hess [Mon, 4 Mar 2024 21:16:53 +0000 (17:16 -0400)]
comment
Joey Hess [Mon, 4 Mar 2024 21:07:26 +0000 (17:07 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Mon, 4 Mar 2024 21:04:59 +0000 (17:04 -0400)]
thoughts
d@403a635aa8eaa8bfa8613acb6a375d9e06ed7001 [Mon, 4 Mar 2024 17:36:22 +0000 (17:36 +0000)]
bbigras [Mon, 4 Mar 2024 17:03:29 +0000 (17:03 +0000)]
Atemu [Sat, 2 Mar 2024 08:32:40 +0000 (08:32 +0000)]
Added a comment
Joey Hess [Fri, 1 Mar 2024 21:03:40 +0000 (17:03 -0400)]
clarification
Joey Hess [Fri, 1 Mar 2024 21:01:27 +0000 (17:01 -0400)]
implement VURL to URL migration
Just for completeness, someone might want to downgrade I guess?
Joey Hess [Fri, 1 Mar 2024 20:54:43 +0000 (16:54 -0400)]
add potential list
Joey Hess [Fri, 1 Mar 2024 20:53:13 +0000 (16:53 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Fri, 1 Mar 2024 20:42:02 +0000 (16:42 -0400)]
implement URL to VURL migration
This needs the content to be present in order to hash it. But it's not
possible for a module used by Backend.URL to call inAnnex because that
would entail a dependency loop. So instead, rely on the fact that
Command.Migrate calls inAnnex before performing a migration.
But, Command.ExamineKey calls fastMigrate and the key may or may not
exist, and it's not wanting to actually perform a migration in any case.
To handle that, had to add an additional value to fastMigrate to
indicate whether the content is inAnnex.
Factored generateEquivilantKey out of Remote.Web.
Note that migrateFromURLToVURL hardcodes use of the SHA256E backend.
It would have been difficult not to, given all the dependency loop
issues. But --backend and annex.backend are used to tell git-annex
migrate to use VURL in any case, so there's no config knob that
the user could expect to configure that.
Sponsored-by: Brock Spratlen on Patreon
Joey Hess [Fri, 1 Mar 2024 19:44:46 +0000 (15:44 -0400)]
fix typo in example
Joey Hess [Fri, 1 Mar 2024 19:14:45 +0000 (15:14 -0400)]
todo
Joey Hess [Fri, 1 Mar 2024 19:07:03 +0000 (15:07 -0400)]
comment
Joey Hess [Fri, 1 Mar 2024 18:41:10 +0000 (14:41 -0400)]
handle multiple VURL checksums in one pass
git-annex fsck and some other commands that verify the content of a key
were using the non-incremental verification interface. But for VURL
urls, that interface is innefficient because when there are multiple
equivilant keys, it has to separately read and checksum for each key in
turn until one matches. It's more efficient for those to use the
incremental interface, since the file can be read a single time.
There's no real downside to using the incremental interface when available.
Note that more speedup could be had for VURL, if it was able to
calculate the checksum a single time and then compare with the
equivilant keys checksums. When the equivilant keys use the same type of
checksum.
Sponsored-by: k0ld on Patreon
Joey Hess [Fri, 1 Mar 2024 18:39:01 +0000 (14:39 -0400)]
nub the equivilant key list
If somehow the same key gets listed in the log twice, avoid doing double
checksumming.
Joey Hess [Fri, 1 Mar 2024 18:12:21 +0000 (14:12 -0400)]
fix comment typo
Joey Hess [Fri, 1 Mar 2024 17:47:24 +0000 (13:47 -0400)]
update
Joey Hess [Fri, 1 Mar 2024 17:44:40 +0000 (13:44 -0400)]
avoid double checksum when downloading VURL from web for 1st time
Sponsored-by: Jack Hill on Patreon
Joey Hess [Fri, 1 Mar 2024 17:31:43 +0000 (13:31 -0400)]
incremental verification for VURL
Sponsored-by: Brett Eisenberg on Patreon
yarikoptic [Thu, 29 Feb 2024 23:31:05 +0000 (23:31 +0000)]
has potential in DANDI project
Joey Hess [Thu, 29 Feb 2024 21:52:58 +0000 (17:52 -0400)]
add future todo
Joey Hess [Thu, 29 Feb 2024 21:41:35 +0000 (17:41 -0400)]
verifyKeyContent for VURL
VURL is now fully working, though needs more testing.
Still need to implement verifyKeyContentIncrementally but it works
without it.
Sponsored-by: Luke T. Shumaker on Patreon
Joey Hess [Thu, 29 Feb 2024 21:21:29 +0000 (17:21 -0400)]
implement isCryptographicallySecureKey for VURL
Considerable difficulty to work around an import cycle. Had to move the
list of backends (except for VURL) to Backend.Variety to VURL could use
it.
Sponsored-by: Kevin Mueller on Patreon
Joey Hess [Thu, 29 Feb 2024 20:14:13 +0000 (16:14 -0400)]
lift isCryptographicallySecure to Annex
Needed for VURL backend.
Sponsored-by: Nicholas Golder-Manning on Patreon
Joey Hess [Thu, 29 Feb 2024 19:41:57 +0000 (15:41 -0400)]
add equivilant key log for VURL keys
When downloading a VURL from the web, make sure that the equivilant key
log is populated.
Unfortunately, this does not hash the content while it's being
downloaded from the web. There is not an interface in Backend currently
for incrementally hash generation, only for incremental verification of an
existing hash. So this might add a noticiable delay, and it has to show
a "(checksum...") message. This could stand to be improved.
But, that separate hashing step only has to happen on the first download
of new content from the web. Once the hash is known, the VURL key can have
its hash verified incrementally while downloading except when the
content in the web has changed. (Doesn't happen yet because
verifyKeyContentIncrementally is not implemented yet for VURL keys.)
Note that the equivilant key log file is formatted as a presence log.
This adds a tiny bit of overhead (eg "1 ") per line over just listing the
urls. The reason I chose to use that format is it seems possible that
there will need to be a way to remove an equivilant key at some point in
the future. I don't know why that would be necessary, but it seemed wise
to allow for the possibility.
Downloads of VURL keys from other special remotes that claim urls,
like bittorrent for example, does not popilate the equivilant key log.
So for now, no checksum verification will be done for those.
Sponsored-by: Nicholas Golder-Manning on Patreon
Joey Hess [Thu, 29 Feb 2024 17:26:06 +0000 (13:26 -0400)]
support VURL backend
Not yet implemented is recording hashes on download from web and
verifying hashes.
addurl --verifiable option added with -V short option because I
expect a lot of people will want to use this.
It seems likely that --verifiable will become the default eventually,
and possibly rather soon. While old git-annex versions don't support
VURL, that doesn't prevent using them with keys that use VURL. Of
course, they won't verify the content on transfer, and fsck will warn
that it doesn't know about VURL. So there's not much problem with
starting to use VURL even when interoperating with old versions.
Sponsored-by: Joshua Antonishen on Patreon
Joey Hess [Tue, 27 Feb 2024 17:36:07 +0000 (13:36 -0400)]
comment