athas@60e56fd42a78bbbce444d175865ce4d66ba1a779 [Fri, 15 Oct 2021 20:53:06 +0000 (20:53 +0000)]
Added a comment: GitHub Actions
Joey Hess [Fri, 15 Oct 2021 17:50:57 +0000 (13:50 -0400)]
update
Joey Hess [Fri, 15 Oct 2021 17:49:41 +0000 (13:49 -0400)]
comment
Joey Hess [Fri, 15 Oct 2021 17:47:43 +0000 (13:47 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Fri, 15 Oct 2021 17:14:19 +0000 (13:14 -0400)]
comment
Joey Hess [Fri, 15 Oct 2021 16:43:23 +0000 (12:43 -0400)]
comment
athas@60e56fd42a78bbbce444d175865ce4d66ba1a779 [Fri, 15 Oct 2021 16:37:34 +0000 (16:37 +0000)]
Added a comment: Update
athas@60e56fd42a78bbbce444d175865ce4d66ba1a779 [Fri, 15 Oct 2021 16:21:07 +0000 (16:21 +0000)]
removed
athas@60e56fd42a78bbbce444d175865ce4d66ba1a779 [Fri, 15 Oct 2021 16:13:32 +0000 (16:13 +0000)]
Added a comment: Update
athas@60e56fd42a78bbbce444d175865ce4d66ba1a779 [Fri, 15 Oct 2021 16:09:51 +0000 (16:09 +0000)]
Joey Hess [Thu, 14 Oct 2021 16:45:05 +0000 (12:45 -0400)]
When retrival from a chunked remote fails, display the error that occurred when downloading the chunk
Rather than the error that occurred when trying to download the unchunked
content, which is less likely to actually be stored in the remote.
Sponsored-by: Boyd Stephen Smith Jr. on Patreon
Joey Hess [Thu, 14 Oct 2021 16:08:54 +0000 (12:08 -0400)]
followup
Joey Hess [Thu, 14 Oct 2021 16:05:07 +0000 (12:05 -0400)]
remove 3 comments that turned out to be about an unrelated problem which got its own bug report
Joey Hess [Wed, 13 Oct 2021 01:17:13 +0000 (21:17 -0400)]
avoid crashing tilde expansion on user who does not exist
git does not crash when there's a remote configured for a user who does
not exist, and this prevents git-annex from crashing too. Consider that
a user might exist on one system but not another, and the git repo be
moved between systems. So not crashing is desirable.
Note that git fetch seems to mishandle a remote path like ~foo/bar
when the user does not exist. While it does access ./~foo/bar,
and gets as far as running git-upload-pack on the path,
it then complains there is no such repo. So different parts of git seem
to be doing different things in that edge case. Anyway, git-annex does
not need to be bug-for-bug compatible with git.
Sponsored-by: Jack Hill on Patreon
Joey Hess [Tue, 12 Oct 2021 17:42:55 +0000 (13:42 -0400)]
close per comment
Joey Hess [Tue, 12 Oct 2021 17:42:08 +0000 (13:42 -0400)]
open todo
Joey Hess [Tue, 12 Oct 2021 17:22:46 +0000 (13:22 -0400)]
move gpg tmp home to system temp dir
test: Put gpg temp home directory in system temp directory, not filesystem
being tested.
Since I've found indications gpg can fail talking to the agent when the
socket ends up on eg, fat. And to hopefully fix this bug report I've
followed up on.
The main risk in using the system temp dir is that TMPDIR could be set to a
long directory path, which is too long to put a unix socket in. To
partially amelorate that risk, it uses either an absolute or a relative
path, whichever is shorter. (Hopefully gpg will not convert it to a longer
form of the path..)
If the user sets TMPDIR to something so long a path to it +
"S.gpg-agent" is too long, I suppose that's their issue to deal with.
Sponsored-by: Dartmouth College's Datalad project
Joey Hess [Mon, 11 Oct 2021 20:05:34 +0000 (16:05 -0400)]
remove support code for ancient git-annex-shell version
Wow, 5.
20140405.. Yeah, definitely not supported any more, just landed
commits need 6.
20180312.
Joey Hess [Mon, 11 Oct 2021 19:53:49 +0000 (15:53 -0400)]
negotiate P2P protocol version for tor remotes
This negotiation is not supported by versions of git-annex older
than 6.
20180312. Well, maybe really 6.
20180227 or so, but using that in
the changelog simplifies things since it was the version for the other
changes as well.
See commit
c81768d425725f868ddf23333d49eed0f3fda011 for the back story.
As well as allowing for future protocol improvements, this will result
in negoatiating protocol version 1, which is an improvement over default
version 0.
In fact, it looks like no supported version of git-annex will use
protocol version 0, since version 1 was introduced in 6.
20180227.
Still, removing the code for version 0 seems unncessary.
See commit
31e1adc005e8181c5190a9f39a3f148e10f4d364.
Sponsored-by: Brett Eisenberg on Patreon.
Joey Hess [Mon, 11 Oct 2021 19:43:19 +0000 (15:43 -0400)]
remove list of removed commands
the list was wrong and also users shouldn't need to know
Joey Hess [Mon, 11 Oct 2021 19:42:52 +0000 (15:42 -0400)]
Merge branch 'p2pflagday'
Joey Hess [Mon, 11 Oct 2021 19:39:55 +0000 (15:39 -0400)]
fix duplicated commands in git-annex-shell usage display
Joey Hess [Mon, 11 Oct 2021 19:35:54 +0000 (15:35 -0400)]
remove git-annex-shell compat code
* Removed support for accessing git remotes that use versions of
git-annex older than 6.
20180312.
* git-annex-shell: Removed several commands that were only needed to
support git-annex versions older than 6.
20180312.
(lockcontent, recvkey, sendkey, transferinfo, commit)
The P2P protocol was added in that version, and used ever since, so
this code was only needed for interop with older versions.
"git-annex-shell commit" is used by newer git-annex versions, though
unnecessarily so, because the p2pstdio command makes a single commit at
shutdown. Luckily, it was run with stderr and stdout sent to /dev/null,
and non-zero exit status or other exceptions are caught and ignored. So,
that was able to be removed from git-annex-shell too.
git-annex-shell inannex, recvkey, sendkey, and dropkey are still used by
gcrypt special remotes accessed over ssh, so those had to be kept.
It would probably be possible to convert that to using the P2P protocol,
but it would be another multi-year transition.
Some git-annex-shell fields were able to be removed. I hoped to remove
all of them, and the very concept of them, but unfortunately autoinit
is used by git-annex sync, and gcrypt uses remoteuuid.
The main win here is really in Remote.Git, removing piles of hairy fallback
code.
Sponsored-by: Luke Shumaker
Joey Hess [Mon, 11 Oct 2021 18:55:57 +0000 (14:55 -0400)]
remove broken code
git-annex-shell fsck has never worked, back in
commit
1ffb3bb0ba3c87d14b896dac2a308de9376a44f1 I discussed maybe adding
it one day, but this code has always failed.
Joey Hess [Mon, 11 Oct 2021 16:53:40 +0000 (12:53 -0400)]
add news item for git-annex 8.
20211011
Joey Hess [Mon, 11 Oct 2021 16:53:17 +0000 (12:53 -0400)]
releasing package git-annex version 8.
20211011
Joey Hess [Mon, 11 Oct 2021 16:40:16 +0000 (12:40 -0400)]
document how to resume downloads
Joey Hess [Mon, 11 Oct 2021 16:22:38 +0000 (12:22 -0400)]
comment
Joey Hess [Mon, 11 Oct 2021 14:06:36 +0000 (10:06 -0400)]
update
Joey Hess [Fri, 8 Oct 2021 17:27:23 +0000 (13:27 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Fri, 8 Oct 2021 17:26:45 +0000 (13:26 -0400)]
Merge branch 'borgchunks'
Joey Hess [Fri, 8 Oct 2021 17:26:40 +0000 (13:26 -0400)]
todo
Joey Hess [Wed, 6 Oct 2021 21:05:32 +0000 (17:05 -0400)]
ImportableContentsChunkable
This improves the borg special remote memory usage, by
letting it only load one archive's worth of filenames into memory at a
time, and building up a larger tree out of the chunks.
When a borg repository has many archives, git-annex could easily OOM
before. Now, it will use only memory proportional to the number of
annexed keys in an archive.
Minor implementation wart: Each new chunk re-opens the content
identifier database, and also a new vector clock is used for each chunk.
This is a minor innefficiency only; the use of continuations makes
it hard to avoid, although putting the database handle into a Reader
monad would be one way to fix it.
It may later be possible to extend the ImportableContentsChunkable
interface to remotes that are not third-party populated. However, that
would perhaps need an interface that does not use continuations.
The ImportableContentsChunkable interface currently does not allow
populating the top of the tree with anything other than subtrees. It
would be easy to extend it to allow putting files in that tree, but borg
doesn't need that so I left it out for now.
Sponsored-by: Noam Kremen on Patreon
alex@f04d0d3c452a2a99b27ccc93c1543bee4a1bf5be [Fri, 8 Oct 2021 03:06:57 +0000 (03:06 +0000)]
Added a comment: Re: Resuming an interrupted download
jkniiv [Thu, 7 Oct 2021 18:27:19 +0000 (18:27 +0000)]
Added a comment
Added a comment
jkniiv [Thu, 7 Oct 2021 16:25:37 +0000 (16:25 +0000)]
add footnote about the permissions required and Microsoft blog post
Joey Hess [Thu, 7 Oct 2021 14:58:49 +0000 (10:58 -0400)]
avoid cursor jitter when updating progress display
When the progress display gets longer, and then shorter again, it causes
the cursor to jitter back and forth. Somehow I never noticed this until
this morning, but then it became intolerable to watch.
To fix it, pad the progress display to the maximum length it's occupied.
Sponsored-by: Svenne Krap on Patreon
jkniiv [Thu, 7 Oct 2021 11:40:25 +0000 (11:40 +0000)]
remove mention of mount option `case=dir` (turned out to be unnecessary)
jkniiv [Thu, 7 Oct 2021 11:36:49 +0000 (11:36 +0000)]
Added a comment
Added a comment
Added a comment
jkniiv [Thu, 7 Oct 2021 04:12:48 +0000 (04:12 +0000)]
Added a comment: the WSL1 use case
jkniiv [Thu, 7 Oct 2021 03:56:37 +0000 (03:56 +0000)]
rename WSL1 section to highlight date, add wording about being experimental, reword some awkwardness, add further directions
Add steps for WSL1
Added a comment
Joey Hess [Wed, 6 Oct 2021 21:08:57 +0000 (17:08 -0400)]
branch
Joey Hess [Wed, 6 Oct 2021 18:45:12 +0000 (14:45 -0400)]
progress in my head
Joey Hess [Wed, 6 Oct 2021 13:04:12 +0000 (09:04 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com
falsifian [Wed, 6 Oct 2021 03:36:02 +0000 (03:36 +0000)]
Added a comment
Joey Hess [Wed, 6 Oct 2021 01:27:06 +0000 (21:27 -0400)]
remove unused imports
Joey Hess [Wed, 6 Oct 2021 01:26:11 +0000 (21:26 -0400)]
minor optimisation
Joey Hess [Wed, 6 Oct 2021 00:28:26 +0000 (20:28 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Wed, 6 Oct 2021 00:25:51 +0000 (20:25 -0400)]
remove old and uncessary sanity check
All backends use genKeyName, which uses preSanitizeKeyName, which will
escape newlines.
I suspect this newline prevention was added back when git-annex was
reading the output of sha1sum..
Sponsored-by: Kevin Mueller on Patreon
Joey Hess [Wed, 6 Oct 2021 00:20:08 +0000 (20:20 -0400)]
convert Key to ShortByteString
This adds the overhead of a copy when serializing and deserializing keys.
I have not benchmarked much, but runtimes seem barely changed at all by that.
When a lot of keys are in memory, it improves memory use.
And, it prevents keys sometimes getting PINNED in memory and failing to GC,
which is a problem ByteString has sometimes. In particular, git-annex sync
from a borg special remote had that problem and this improved its memory
use by a large amount.
Sponsored-by: Shae Erisson on Patreon
Joey Hess [Tue, 5 Oct 2021 23:05:20 +0000 (19:05 -0400)]
comment and correct incorrect info in previous comment
tomdhunt [Tue, 5 Oct 2021 22:07:45 +0000 (22:07 +0000)]
Added a comment
tomdhunt [Tue, 5 Oct 2021 21:30:03 +0000 (21:30 +0000)]
Added a comment
Joey Hess [Tue, 5 Oct 2021 21:20:53 +0000 (17:20 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Tue, 5 Oct 2021 21:20:32 +0000 (17:20 -0400)]
comment
bjornw@6a7d7d0413efc7ed3bb44922586f040bb768b71c [Tue, 5 Oct 2021 21:09:44 +0000 (21:09 +0000)]
Added a comment: Thanks!
falsifian [Tue, 5 Oct 2021 20:55:32 +0000 (20:55 +0000)]
Added a comment
Joey Hess [Tue, 5 Oct 2021 20:51:54 +0000 (16:51 -0400)]
update
Joey Hess [Tue, 5 Oct 2021 20:33:44 +0000 (16:33 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Tue, 5 Oct 2021 20:32:10 +0000 (16:32 -0400)]
comment
Joey Hess [Tue, 5 Oct 2021 19:42:29 +0000 (15:42 -0400)]
use bytestring filepaths more
This should be more efficient, and allocate less.
Sponsored-by: Graham Spencer on Patreon
tomdhunt [Tue, 5 Oct 2021 19:08:23 +0000 (19:08 +0000)]
Added a comment
Joey Hess [Tue, 5 Oct 2021 18:51:55 +0000 (14:51 -0400)]
convert ExportLocation to ShortByteString to avoid PINNED memory fragmentation
This adds the overhead of a copy whenever converting to/from ExportLocation and
ImportLocation.
borg: Some improvements to memory use when importing a lot of archives.
(It's still pretty bad.)
Sponsored-by: Mark Reidenbach on Patreon
Joey Hess [Tue, 5 Oct 2021 17:24:31 +0000 (13:24 -0400)]
update
Joey Hess [Tue, 5 Oct 2021 17:11:20 +0000 (13:11 -0400)]
comment
Joey Hess [Tue, 5 Oct 2021 16:16:18 +0000 (12:16 -0400)]
response
Joey Hess [Tue, 5 Oct 2021 15:55:33 +0000 (11:55 -0400)]
promote comment to bug
Joey Hess [Tue, 5 Oct 2021 15:11:44 +0000 (11:11 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Tue, 5 Oct 2021 14:43:27 +0000 (10:43 -0400)]
update
Joey Hess [Sun, 3 Oct 2021 22:45:37 +0000 (18:45 -0400)]
comment
tomdhunt [Sun, 3 Oct 2021 22:30:04 +0000 (22:30 +0000)]
Added a comment: Memory issues
Joey Hess [Sun, 3 Oct 2021 22:18:30 +0000 (18:18 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Sun, 3 Oct 2021 22:18:04 +0000 (18:18 -0400)]
remove errant print debug
falsifian [Sun, 3 Oct 2021 17:06:21 +0000 (17:06 +0000)]
jkniiv [Sat, 2 Oct 2021 19:58:17 +0000 (19:58 +0000)]
Added a comment
spwhitton [Sat, 2 Oct 2021 17:04:02 +0000 (17:04 +0000)]
Added a comment
Joey Hess [Sat, 2 Oct 2021 16:32:00 +0000 (12:32 -0400)]
remove information about old version of debian
alex@f04d0d3c452a2a99b27ccc93c1543bee4a1bf5be [Fri, 1 Oct 2021 23:27:31 +0000 (23:27 +0000)]
Added a comment: Resuming an interrupted download
alex@f04d0d3c452a2a99b27ccc93c1543bee4a1bf5be [Fri, 1 Oct 2021 23:22:19 +0000 (23:22 +0000)]
removed
alex@f04d0d3c452a2a99b27ccc93c1543bee4a1bf5be [Fri, 1 Oct 2021 23:18:33 +0000 (23:18 +0000)]
Added a comment: Resuming an interrupted download
Joey Hess [Fri, 1 Oct 2021 18:04:18 +0000 (14:04 -0400)]
reinject: Fix crash when reinjecting a file from outside the repository
Commit
4bf7940d6b912fbf692b268f621ebd41ed871125 introduced this
problem, but was otherwise doing a good thing. Problem being
that fileRef "/foo" used to return ":./foo", which was actually wrong,
but as long as there was no foo in the local repository, catKey
could operate on it without crashing. After that fix though, fileRef
would return eg "../../foo", resulting in fileRef returning
":./../../foo", which will make git cat-file crash since that's
not a valid path in the repo.
Fix is simply to make fileRef detect paths outside the repo and return
Nothing. Then catKey can be skipped. This needed several bugfixes to
dirContains as well, in previous commits.
In Command.Smudge, this led to needing to check for Nothing. That case
should actually never happen, because the fileoutsiderepo check will
detect it earlier.
Sponsored-by: Brock Spratlen on Patreon
Joey Hess [Fri, 1 Oct 2021 17:42:15 +0000 (13:42 -0400)]
fix bug in dirContains
dirContains "." ".." was incorrectly true
because normalize ("." </> "..") = ".."
Sponsored-by: Jochen Bartl on Patreon
Joey Hess [Fri, 1 Oct 2021 17:15:52 +0000 (13:15 -0400)]
fix bug in dirContains
dirContains ".." "../.." was incorrectly True.
This does not seem to be an exploitable security hole, at least
as dirContains is used in git-annex.
Sponsored-by: Jochen Bartl on Patreon
Joey Hess [Fri, 1 Oct 2021 16:35:29 +0000 (12:35 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Fri, 1 Oct 2021 16:02:35 +0000 (12:02 -0400)]
avoid uncessary call to inAnnex
sync --content: Avoid a redundant checksum of a file that was
incrementally verified, when used on NTFS and perhaps other filesystems.
When sync has just gotten the content, it does not need to check inAnnex a
second time. On NTFS, for some reason the write of the inode cache after
it gets the content is not immediately able to be read, and with an
empty/non-matching inode cache due to that stale data, inAnnex falls back
to hashing the whole object to determine if it's present.
Sponsored-by: Brock Spratlen on Patreon
Joey Hess [Fri, 1 Oct 2021 15:49:12 +0000 (11:49 -0400)]
analysis
spwhitton [Thu, 30 Sep 2021 21:19:39 +0000 (21:19 +0000)]
add sign off
spwhitton [Thu, 30 Sep 2021 21:15:04 +0000 (21:15 +0000)]
post bug
Joey Hess [Thu, 30 Sep 2021 19:20:59 +0000 (15:20 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Thu, 30 Sep 2021 19:20:44 +0000 (15:20 -0400)]
started analysis
jkniiv [Thu, 30 Sep 2021 18:22:44 +0000 (18:22 +0000)]
Added a comment: Email resent from my personal domain jibun.eu
Joey Hess [Thu, 30 Sep 2021 18:12:58 +0000 (14:12 -0400)]
note about coreutils 9.0 supporting CoW by default
Joey Hess [Thu, 30 Sep 2021 16:52:02 +0000 (12:52 -0400)]
comment