git-annex.git
5 years agoMerge branch 'master' into hiddenannex
Joey Hess [Wed, 21 Apr 2021 19:45:12 +0000 (15:45 -0400)]
Merge branch 'master' into hiddenannex

5 years agofix --all to include not yet committed files from the journal
Joey Hess [Wed, 21 Apr 2021 19:40:32 +0000 (15:40 -0400)]
fix --all to include not yet committed files from the journal

Fix bug caused by recent optimisations that could make git-annex not see
recently recorded status information when configured with
annex.alwayscommit=false.

This does mean that --all can end up processing the same key more than once,
but before the optimisations that introduced this bug, it used to also behave
that way. So I didn't try to fix that; it's an edge case and anyway git-annex
behaves well when run on the same key repeatedly.

I am not too happy with the use of a MVar to buffer the list of files in the
journal. I guess it doesn't defeat lazy streaming of the list, if that
list is actually generated lazily, and anyway the size of the journal is
normally capped and small, so if configs are changed to make it huge and
this code path fire, git-annex using enough memory to buffer it all is not a
large problem.

5 years agorefactoring
Joey Hess [Wed, 21 Apr 2021 18:19:58 +0000 (14:19 -0400)]
refactoring

5 years agofix branch precacheing bug by checking journal
Joey Hess [Wed, 21 Apr 2021 18:02:15 +0000 (14:02 -0400)]
fix branch precacheing bug by checking journal

Fix bug caused by recent optimisations that could make git-annex not see
recently recorded status information when configured with
annex.alwayscommit=false.

When not using --all, precaching only gets triggered when the
command actually needs location logs, and so there's no speed hit there.

This is a minor speed hit for --all, because it precaches even when the
location log is not actually going to be used, and so checking the journal
is not necessary. It would have been possible to defer checking the journal
until the cache gets used. But that would complicate the usual Branch.get
code path with two different kinds of caches, and the speed hit is really
minimal. A better way to speed up --all, later, would be to avoid
precaching at all when the location log is not going to be used.

5 years agowip
Joey Hess [Wed, 21 Apr 2021 17:46:39 +0000 (13:46 -0400)]
wip

5 years agobug report
Joey Hess [Wed, 21 Apr 2021 17:24:32 +0000 (13:24 -0400)]
bug report

5 years agoMerge branch 'master' into hiddenannex
Joey Hess [Wed, 21 Apr 2021 17:04:40 +0000 (13:04 -0400)]
Merge branch 'master' into hiddenannex

5 years agoMerge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Wed, 21 Apr 2021 17:02:47 +0000 (13:02 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com

5 years agoreorder tests debugging windows failure
Joey Hess [Wed, 21 Apr 2021 17:01:41 +0000 (13:01 -0400)]
reorder tests debugging windows failure

This order will work just as well, so no need to revert this change
later.

5 years agodoc/git-annex.mdwn: Fix quoting of annex.supportunlocked
Kyle Meyer [Wed, 21 Apr 2021 16:36:34 +0000 (12:36 -0400)]
doc/git-annex.mdwn: Fix quoting of annex.supportunlocked

5 years agoAdded a comment: re: clarifying unlocked files
kyle [Wed, 21 Apr 2021 16:34:50 +0000 (16:34 +0000)]
Added a comment: re: clarifying unlocked files

5 years agoAdded a comment: re: Are my unlocked, annexed files still safe?
kyle [Wed, 21 Apr 2021 16:32:42 +0000 (16:32 +0000)]
Added a comment: re: Are my unlocked, annexed files still safe?

5 years agoupdate
Joey Hess [Wed, 21 Apr 2021 16:18:04 +0000 (12:18 -0400)]
update

5 years agoMerge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Wed, 21 Apr 2021 16:15:57 +0000 (12:15 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com

5 years agocomment
Joey Hess [Wed, 21 Apr 2021 16:15:42 +0000 (12:15 -0400)]
comment

5 years agoAdded a comment: clarifying unlocked files
Ilya_Shlyakhter [Wed, 21 Apr 2021 16:08:05 +0000 (16:08 +0000)]
Added a comment: clarifying unlocked files

5 years agoAdded a comment: Are my unlocked, annexed files still safe?
pat [Wed, 21 Apr 2021 15:47:48 +0000 (15:47 +0000)]
Added a comment: Are my unlocked, annexed files still safe?

5 years agoAdded a comment: auto-expire temp repos
Ilya_Shlyakhter [Wed, 21 Apr 2021 15:37:38 +0000 (15:37 +0000)]
Added a comment: auto-expire temp repos

5 years agoMerge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Tue, 20 Apr 2021 19:18:56 +0000 (15:18 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com

5 years agoupdate
Joey Hess [Tue, 20 Apr 2021 19:18:18 +0000 (15:18 -0400)]
update

5 years agostart implementing hidden git-annex repositories
Joey Hess [Tue, 20 Apr 2021 18:32:41 +0000 (14:32 -0400)]
start implementing hidden git-annex repositories

This adds a separate journal, which does not currently get committed to
an index, but is planned to be committed to .git/annex/index-private.

Changes that are regarding a UUID that is private will get written to
this journal, and so will not be published into the git-annex branch.

All log writing should have been made to indicate the UUID it's
regarding, though I've not verified this yet.

Currently, no UUIDs are treated as private yet, a way to configure that
is needed.

The implementation is careful to not add any additional IO work when
privateUUIDsKnown is False. It will skip looking at the private journal
at all. So this should be free, or nearly so, unless the feature is
used. When it is used, all branch reads will be about twice as expensive.

It is very lucky -- or very prudent design -- that Annex.Branch.change
and maybeChange are the only ways to change a file on the branch,
and Annex.Branch.set is only internal use. That let Annex.Branch.get
always yield any private information that has been recorded, without
the risk that Annex.Branch.set might be called, with a non-private UUID,
and end up leaking the private information into the git-annex branch.

And, this relies on the way git-annex union merges the git-annex branch.
When reading a file, there can be a public and a private version, and
they are just concacenated together. That will be handled the same as if
there were two diverged git-annex branches that got union merged.

5 years agoAdded a comment
Atemu [Tue, 20 Apr 2021 18:30:39 +0000 (18:30 +0000)]
Added a comment

5 years agoAdded a comment
Atemu [Tue, 20 Apr 2021 18:05:27 +0000 (18:05 +0000)]
Added a comment

5 years agooptimisation
Joey Hess [Tue, 20 Apr 2021 17:13:45 +0000 (13:13 -0400)]
optimisation

Avoid unnecessary conversion to/from String.

5 years agoremove now redundant function
Joey Hess [Tue, 20 Apr 2021 16:42:57 +0000 (12:42 -0400)]
remove now redundant function

5 years ago(no commit message)
fooness [Tue, 20 Apr 2021 16:38:33 +0000 (16:38 +0000)]

5 years agocomment
Joey Hess [Tue, 20 Apr 2021 15:57:10 +0000 (11:57 -0400)]
comment

5 years agofix reversion in recent CoW changes
Joey Hess [Tue, 20 Apr 2021 15:41:43 +0000 (11:41 -0400)]
fix reversion in recent CoW changes

File handle accidentially left open is both a FD leak and causes the
haskell RTS to reject opening it again with "file is locked".

5 years agoMerge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Tue, 20 Apr 2021 15:08:06 +0000 (11:08 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com

5 years ago(no commit message)
https://launchpad.net/~r0lf [Tue, 20 Apr 2021 13:49:58 +0000 (13:49 +0000)]

5 years ago(no commit message)
https://launchpad.net/~r0lf [Tue, 20 Apr 2021 13:46:07 +0000 (13:46 +0000)]

5 years agothoughts
Joey Hess [Mon, 19 Apr 2021 17:58:43 +0000 (13:58 -0400)]
thoughts

5 years agoyoh asked me to tag this datalad
Joey Hess [Mon, 19 Apr 2021 17:20:07 +0000 (13:20 -0400)]
yoh asked me to tag this datalad

5 years agoAdded a comment
Ilya_Shlyakhter [Mon, 19 Apr 2021 15:38:38 +0000 (15:38 +0000)]
Added a comment

5 years agoinitial report for test fails on windows
yarikoptic [Mon, 19 Apr 2021 13:43:18 +0000 (13:43 +0000)]
initial report for test fails on windows

5 years ago(no commit message)
pat [Mon, 19 Apr 2021 00:09:16 +0000 (00:09 +0000)]

5 years agoAdded a comment
Ilya_Shlyakhter [Sun, 18 Apr 2021 23:45:26 +0000 (23:45 +0000)]
Added a comment

5 years agoremoved
Ilya_Shlyakhter [Sun, 18 Apr 2021 22:03:26 +0000 (22:03 +0000)]
removed

5 years agoAdded a comment: semantics of preferred content expressions
Ilya_Shlyakhter [Sun, 18 Apr 2021 22:03:02 +0000 (22:03 +0000)]
Added a comment: semantics of preferred content expressions

5 years agocomment
Joey Hess [Sun, 18 Apr 2021 17:07:03 +0000 (13:07 -0400)]
comment

5 years agoAdded a comment
pat [Sun, 18 Apr 2021 16:18:46 +0000 (16:18 +0000)]
Added a comment

5 years agoAdded a comment
Ilya_Shlyakhter [Sun, 18 Apr 2021 15:40:55 +0000 (15:40 +0000)]
Added a comment

5 years agoAdded a comment: reply
datamanager [Sun, 18 Apr 2021 15:38:33 +0000 (15:38 +0000)]
Added a comment: reply

5 years agoAdded a comment: migration warning still present after migration
anatoly.sayenko@880a118acc67f3244b406a2700f0556b2f10672c [Sun, 18 Apr 2021 09:37:10 +0000 (09:37 +0000)]
Added a comment: migration warning still present after migration

5 years agoAdded a comment
pat [Sun, 18 Apr 2021 01:19:54 +0000 (01:19 +0000)]
Added a comment

5 years ago(no commit message)
pat [Sun, 18 Apr 2021 01:12:07 +0000 (01:12 +0000)]

5 years agoremoved
pat [Sun, 18 Apr 2021 00:40:44 +0000 (00:40 +0000)]
removed

5 years agorename forum/Drop_doesn__39__t_respect_mincopies.mdwn to bugs/Drop_doesn__39__t_respe...
pat [Sun, 18 Apr 2021 00:39:11 +0000 (00:39 +0000)]
rename forum/Drop_doesn__39__t_respect_mincopies.mdwn to bugs/Drop_doesn__39__t_respect_mincopies.mdwn

5 years agoremoved
pat [Sun, 18 Apr 2021 00:30:08 +0000 (00:30 +0000)]
removed

5 years agoAdded a comment
Ilya_Shlyakhter [Sat, 17 Apr 2021 22:54:45 +0000 (22:54 +0000)]
Added a comment

5 years agoAdded a comment
Ilya_Shlyakhter [Sat, 17 Apr 2021 22:54:34 +0000 (22:54 +0000)]
Added a comment

5 years agoAdded a comment: drop --not-used-elsewhere
Ilya_Shlyakhter [Sat, 17 Apr 2021 22:31:52 +0000 (22:31 +0000)]
Added a comment: drop --not-used-elsewhere

5 years agoAdded a comment: updating the keys database incrementally
Ilya_Shlyakhter [Sat, 17 Apr 2021 22:23:45 +0000 (22:23 +0000)]
Added a comment: updating the keys database incrementally

5 years agoAdded a comment
pat [Sat, 17 Apr 2021 21:05:28 +0000 (21:05 +0000)]
Added a comment

5 years ago(no commit message)
pat [Sat, 17 Apr 2021 20:51:30 +0000 (20:51 +0000)]

5 years agoadded suggestion: let git-annex-matching-options query .gitattributes
Ilya_Shlyakhter [Sat, 17 Apr 2021 20:38:09 +0000 (20:38 +0000)]
added suggestion: let git-annex-matching-options query .gitattributes

5 years agoremoved
pat [Sat, 17 Apr 2021 20:22:35 +0000 (20:22 +0000)]
removed

5 years agoAdded a comment
pat [Sat, 17 Apr 2021 20:21:57 +0000 (20:21 +0000)]
Added a comment

5 years agoAdded a comment
pat [Sat, 17 Apr 2021 20:21:39 +0000 (20:21 +0000)]
Added a comment

5 years ago(no commit message)
pat [Sat, 17 Apr 2021 20:01:25 +0000 (20:01 +0000)]

5 years agoAdded a comment: re: Sync from one remote to another
Ilya_Shlyakhter [Sat, 17 Apr 2021 19:34:19 +0000 (19:34 +0000)]
Added a comment: re: Sync from one remote to another

5 years ago(no commit message)
pat [Sat, 17 Apr 2021 02:59:15 +0000 (02:59 +0000)]

5 years agocomment
Joey Hess [Fri, 16 Apr 2021 18:45:46 +0000 (14:45 -0400)]
comment

5 years agoMerge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Fri, 16 Apr 2021 18:41:51 +0000 (14:41 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com

5 years agothoughts
Joey Hess [Fri, 16 Apr 2021 18:41:12 +0000 (14:41 -0400)]
thoughts

5 years agoAdded a comment
Lukey [Fri, 16 Apr 2021 18:29:22 +0000 (18:29 +0000)]
Added a comment

5 years agocomment
Joey Hess [Fri, 16 Apr 2021 17:54:50 +0000 (13:54 -0400)]
comment

5 years agocomment
Joey Hess [Fri, 16 Apr 2021 17:49:05 +0000 (13:49 -0400)]
comment

5 years agoMerge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Fri, 16 Apr 2021 17:30:52 +0000 (13:30 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com

5 years agoidea
Joey Hess [Fri, 16 Apr 2021 17:30:23 +0000 (13:30 -0400)]
idea

5 years agoAdded a comment: Hardlinks
kousu [Fri, 16 Apr 2021 08:17:36 +0000 (08:17 +0000)]
Added a comment: Hardlinks

5 years agoAdded a comment: lockContent for special remotes
Ilya_Shlyakhter [Thu, 15 Apr 2021 16:32:34 +0000 (16:32 +0000)]
Added a comment: lockContent for special remotes

5 years agoreporting fresh test fails
yarikoptic [Thu, 15 Apr 2021 13:04:18 +0000 (13:04 +0000)]
reporting fresh  test fails

5 years agoinitial todo/report on drop dropping a key "for all paths"
yarikoptic [Thu, 15 Apr 2021 02:30:33 +0000 (02:30 +0000)]
initial todo/report on drop dropping a key "for all paths"

5 years agofix hardcoded origin name in checkAdjustedClone
Joey Hess [Wed, 14 Apr 2021 22:53:27 +0000 (18:53 -0400)]
fix hardcoded origin name in checkAdjustedClone

init: Fix a crash when the repo's was cloned from a repo that had an
adjusted branch checked out, and the origin remote is not named "origin".

The only other hardcoding of the name of origin is in:

- Upgrade.V2, which can be ignored probably
- Annex.Branch, which doesn't fail if it has some other name, but just
  doesn't set up the git-annex branch with quite as linear a history in
  that case.

5 years agoMerge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Wed, 14 Apr 2021 22:50:14 +0000 (18:50 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com

5 years agoremove part of comment that is no longer relevant
Joey Hess [Wed, 14 Apr 2021 22:32:15 +0000 (18:32 -0400)]
remove part of comment that is no longer relevant

5 years agocrippledfilesystem override not needed
kyle [Wed, 14 Apr 2021 21:26:32 +0000 (21:26 +0000)]
crippledfilesystem override not needed

5 years agoAdded a comment
yarikoptic [Wed, 14 Apr 2021 20:46:11 +0000 (20:46 +0000)]
Added a comment

5 years agobug: init crash with remote name other than "origin"
kyle [Wed, 14 Apr 2021 20:44:23 +0000 (20:44 +0000)]
bug: init crash with remote name other than "origin"

5 years agoMerge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Wed, 14 Apr 2021 20:20:13 +0000 (16:20 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com

5 years agodirectory CoW on export
Joey Hess [Wed, 14 Apr 2021 20:17:43 +0000 (16:17 -0400)]
directory CoW on export

Completing Cow support for directory.

5 years agodirectory CoW on import
Joey Hess [Wed, 14 Apr 2021 20:10:09 +0000 (16:10 -0400)]
directory CoW on import

5 years agoAdded a comment
Lukey [Wed, 14 Apr 2021 20:06:31 +0000 (20:06 +0000)]
Added a comment

5 years agodirectory CoW on store
Joey Hess [Wed, 14 Apr 2021 19:11:00 +0000 (15:11 -0400)]
directory CoW on store

Not for exports to directory yet though.

5 years agodirectory CoW on retrieve
Joey Hess [Wed, 14 Apr 2021 18:43:08 +0000 (14:43 -0400)]
directory CoW on retrieve

directory: When cp supports reflinks, use it when getting content from a
directory special remote.

Not yet for imports from directory though, and not for store.

Note that, when it's chunked, using cp --reflink would not speed it up, and
when reflink was not supported, would unnecessarily write the chunk to a
file before reading it back in. So, only using a fileRetriever in the
NoChunks case is necessary to keep chunking fast.

fileCopier is told not to verify, because the special remote interface
does not yet support verification in passing. AFAICS, fileCopies can
never return False when not verifying so the added giveup should never
actually happen.

5 years agoAdded a comment: thanks
jbwexler@f0760d2c023f7660c38fb17889d4cd6930183696 [Wed, 14 Apr 2021 19:03:12 +0000 (19:03 +0000)]
Added a comment: thanks

5 years agocomment
Joey Hess [Wed, 14 Apr 2021 18:12:32 +0000 (14:12 -0400)]
comment

5 years agosplit out Annex.CopyFile
Joey Hess [Wed, 14 Apr 2021 18:06:43 +0000 (14:06 -0400)]
split out Annex.CopyFile

Goal is to use it in Remote.Directory, but also it's nice to shrink Remote.Git.

5 years agoAdded a comment: comment to joey response on cp --reflink workaround
yarikoptic [Wed, 14 Apr 2021 18:04:53 +0000 (18:04 +0000)]
Added a comment: comment to joey response on cp --reflink workaround

5 years agotag confirmed
Joey Hess [Wed, 14 Apr 2021 17:45:59 +0000 (13:45 -0400)]
tag confirmed

5 years agonote
Joey Hess [Wed, 14 Apr 2021 17:44:43 +0000 (13:44 -0400)]
note

5 years agocorrection
Joey Hess [Wed, 14 Apr 2021 17:42:37 +0000 (13:42 -0400)]
correction

5 years agocomment
Joey Hess [Wed, 14 Apr 2021 17:41:24 +0000 (13:41 -0400)]
comment

5 years agoupdate
Joey Hess [Wed, 14 Apr 2021 17:32:28 +0000 (13:32 -0400)]
update

5 years agocomment
Joey Hess [Wed, 14 Apr 2021 17:31:08 +0000 (13:31 -0400)]
comment

5 years agofsck: avoid redundant checksum when transfer is Verified
Joey Hess [Wed, 14 Apr 2021 17:22:54 +0000 (13:22 -0400)]
fsck: avoid redundant checksum when transfer is Verified

When downloading content from a remote, if the content is able to be
verified during the transfer, skip checksumming it a second time.

Note that in this case, the fsck output does not include "(checksum)"
which it does when the checksumming is done separately from the download.

This commit was sponsored by Brock Spratlen on Patreon.

5 years agoMerge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Wed, 14 Apr 2021 16:55:18 +0000 (12:55 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com

5 years ago(no commit message)
Atemu [Wed, 14 Apr 2021 16:14:20 +0000 (16:14 +0000)]

5 years agois importtree CoW from directory?
yarikoptic [Wed, 14 Apr 2021 14:24:18 +0000 (14:24 +0000)]
is importtree CoW from directory?