git-annex.git
5 years agoAdded a comment
Lukey [Thu, 24 Jun 2021 17:43:36 +0000 (17:43 +0000)]
Added a comment

5 years agoAdded a comment: thanks
Ilya_Shlyakhter [Thu, 24 Jun 2021 16:40:48 +0000 (16:40 +0000)]
Added a comment: thanks

5 years agoMerge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Wed, 23 Jun 2021 21:31:09 +0000 (17:31 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com

5 years agocomment
Joey Hess [Wed, 23 Jun 2021 21:30:50 +0000 (17:30 -0400)]
comment

5 years agoAdded a comment: recovering from sqlite db corruption
Ilya_Shlyakhter [Wed, 23 Jun 2021 18:45:47 +0000 (18:45 +0000)]
Added a comment: recovering from sqlite db corruption

5 years agocomment
Joey Hess [Wed, 23 Jun 2021 17:19:34 +0000 (13:19 -0400)]
comment

5 years agoclose
Joey Hess [Wed, 23 Jun 2021 16:59:00 +0000 (12:59 -0400)]
close

5 years agocomment
Joey Hess [Wed, 23 Jun 2021 16:54:48 +0000 (12:54 -0400)]
comment

5 years agocomment and close
Joey Hess [Wed, 23 Jun 2021 16:53:18 +0000 (12:53 -0400)]
comment and close

5 years agoAdded a comment: an alternative
datamanager [Wed, 23 Jun 2021 01:29:23 +0000 (01:29 +0000)]
Added a comment: an alternative

5 years ago(no commit message)
Lukey [Tue, 22 Jun 2021 18:40:56 +0000 (18:40 +0000)]

5 years agoAdded a comment: old comments
Ilya_Shlyakhter [Tue, 22 Jun 2021 14:03:24 +0000 (14:03 +0000)]
Added a comment: old comments

5 years agofix windows build
Joey Hess [Tue, 22 Jun 2021 13:46:06 +0000 (09:46 -0400)]
fix windows build

5 years ago(no commit message)
jwodder [Tue, 22 Jun 2021 13:21:17 +0000 (13:21 +0000)]

5 years agoAdded annex.freezecontent-command and annex.thawcontent-command configs
Joey Hess [Mon, 21 Jun 2021 18:40:20 +0000 (14:40 -0400)]
Added annex.freezecontent-command and annex.thawcontent-command configs

Freeze first sets the file perms, and then runs
freezecontent-command. Thaw runs thawcontent-command before
restoring file permissions. This is in case the freeze command
prevents changing file perms, as eg setting a file immutable does.
Also, changing file perms tends to mess up previously set ACLs.

git-annex init's probe for crippled filesystem uses them, so if file perms
don't work, but freezecontent-command manages to prevent write to a file,
it won't treat the filesystem as crippled.

When the the filesystem has been probed as crippled, the hooks are not
used, because there seems to be no point then; git-annex won't be relying
on locking annex objects down. Also, this avoids them being run when the
file perms have not been changed, in case they somehow rely on
git-annex's setting of the file perms in order to work.

Sponsored-by: Dartmouth College's Datalad project
5 years agoremove dead code
Joey Hess [Mon, 21 Jun 2021 17:54:12 +0000 (13:54 -0400)]
remove dead code

5 years agocomment
Joey Hess [Mon, 21 Jun 2021 17:52:50 +0000 (13:52 -0400)]
comment

5 years agotag datalad
Joey Hess [Mon, 21 Jun 2021 17:23:51 +0000 (13:23 -0400)]
tag datalad

at yoh's request

5 years agocomment
Joey Hess [Mon, 21 Jun 2021 17:21:43 +0000 (13:21 -0400)]
comment

5 years agoremove old android comments/bug reports
Joey Hess [Mon, 21 Jun 2021 17:21:27 +0000 (13:21 -0400)]
remove old android comments/bug reports

5 years agoremove comment I made to the wrong place
Joey Hess [Mon, 21 Jun 2021 17:13:28 +0000 (13:13 -0400)]
remove comment I made to the wrong place

I am not sure what forum thread I was intending to comment on

5 years agoremove old closed bugs and todo items to speed up wiki updates and reduce size
Joey Hess [Mon, 21 Jun 2021 17:10:13 +0000 (13:10 -0400)]
remove old closed bugs and todo items to speed up wiki updates and reduce size

Remove closed bugs and todos that were last edited or commented before 2020.

Except for ones tagged projects/* since projects like datalad want to keep
around records of old deleted bugs longer.

Command line used:

for f in $(grep -l '|done\]\]' -- ./*.mdwn); do if ! grep -q "projects/" "$f"; then d="$(echo "$f" | sed 's/.mdwn$//')"; if [ -z "$(git log --since=01-01-2020 --pretty=oneline -- "$f")" -a -z "$(git log --since=01-01-2020 --pretty=oneline -- "$d")" ]; then git rm -- "./$f" ; git rm -rf "./$d"; fi; fi; done
for f in $(grep -l '\[\[done\]\]' -- ./*.mdwn); do if ! grep -q "projects/" "$f"; then d="$(echo "$f" | sed 's/.mdwn$//')"; if [ -z "$(git log --since=01-01-2020 --pretty=oneline -- "$f")" -a -z "$(git log --since=01-01-2020 --pretty=oneline -- "$d")" ]; then git rm -- "./$f" ; git rm -rf "./$d"; fi; fi; done

5 years agoremove unused import
Joey Hess [Mon, 21 Jun 2021 16:32:36 +0000 (12:32 -0400)]
remove unused import

5 years agopush synced/master before synced/git-annex
Joey Hess [Mon, 21 Jun 2021 16:32:21 +0000 (12:32 -0400)]
push synced/master before synced/git-annex

sync: Partly work around github behavior that first branch to be pushed to
a new repository is assumed to be the head branch, by not pushing
synced/git-annex first.

github expects master (or whatever the name is) to be pushed first, but
git-annex sync can't, because it's got to also support pushes to non-bare
repos where pushing master fails, as explained in the big comment. So
pushing synced/master is not entirely a fix, but at least it makes github
default to a branch with the stuff the user expects in it, not a bunch of
annex log files.

Aside from fixing github to not make this assumption, or improving
the git push protocol to include what the current HEAD is, the only other
approach I can think of is to identify git push's progress messages and
display those when pushing master, while filtering out error messages
about non-fast-forward etc. But git doesn't provide a way to separate out
or identify its progress messages.

Sponsored-by: Luke Shumaker on Patreon
5 years agoremove comment on now-deleted post
Joey Hess [Mon, 21 Jun 2021 16:19:00 +0000 (12:19 -0400)]
remove comment on now-deleted post

5 years agoadd news item for git-annex 8.20210621
Joey Hess [Mon, 21 Jun 2021 16:18:37 +0000 (12:18 -0400)]
add news item for git-annex 8.20210621

5 years agoreleasing package git-annex version 8.20210621
Joey Hess [Mon, 21 Jun 2021 16:17:46 +0000 (12:17 -0400)]
releasing package git-annex version 8.20210621

5 years agocomment
Joey Hess [Mon, 21 Jun 2021 16:01:55 +0000 (12:01 -0400)]
comment

5 years agoMerge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Mon, 21 Jun 2021 15:32:48 +0000 (11:32 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com

5 years agofix 2 build warnings
Joey Hess [Mon, 21 Jun 2021 15:27:18 +0000 (11:27 -0400)]
fix 2 build warnings

5 years agoAdded a comment
kinshukkashyap.me@35751535d5ebba69df2f2ead4f868251d1aadacf [Sun, 20 Jun 2021 07:44:35 +0000 (07:44 +0000)]
Added a comment

5 years agoAdded a comment
Lukey [Sun, 20 Jun 2021 07:15:04 +0000 (07:15 +0000)]
Added a comment

5 years agoAdded a comment
kinshukkashyap.me@35751535d5ebba69df2f2ead4f868251d1aadacf [Sun, 20 Jun 2021 06:54:37 +0000 (06:54 +0000)]
Added a comment

5 years agoAdded a comment
falsifian [Sat, 19 Jun 2021 23:48:21 +0000 (23:48 +0000)]
Added a comment

5 years agoAdded a comment
falsifian [Sat, 19 Jun 2021 23:41:25 +0000 (23:41 +0000)]
Added a comment

5 years agoAdded a comment
Ilya_Shlyakhter [Sat, 19 Jun 2021 18:31:59 +0000 (18:31 +0000)]
Added a comment

5 years agoAdded a comment
Lukey [Sat, 19 Jun 2021 12:14:33 +0000 (12:14 +0000)]
Added a comment

5 years agoAdded a comment
kinshukkashyap.me@35751535d5ebba69df2f2ead4f868251d1aadacf [Sat, 19 Jun 2021 10:22:58 +0000 (10:22 +0000)]
Added a comment

5 years agoAdded a comment: setting up sync
Ilya_Shlyakhter [Fri, 18 Jun 2021 18:55:00 +0000 (18:55 +0000)]
Added a comment: setting up sync

5 years agoAdded a comment
kinshukkashyap.me@35751535d5ebba69df2f2ead4f868251d1aadacf [Fri, 18 Jun 2021 15:11:23 +0000 (15:11 +0000)]
Added a comment

5 years agoAdded a comment
Lukey [Fri, 18 Jun 2021 14:50:45 +0000 (14:50 +0000)]
Added a comment

5 years ago(no commit message)
Kinshuk [Fri, 18 Jun 2021 14:10:42 +0000 (14:10 +0000)]

5 years ago(no commit message)
Kinshuk [Fri, 18 Jun 2021 14:07:55 +0000 (14:07 +0000)]

5 years agoAdded a comment
james@06209b7878fcf3b5c46b8028dacb3cec6609369c [Thu, 17 Jun 2021 18:14:45 +0000 (18:14 +0000)]
Added a comment

5 years agoAdded a comment
yarikoptic [Wed, 16 Jun 2021 21:32:58 +0000 (21:32 +0000)]
Added a comment

5 years agoadded suggestion to allow use of synchronous=OFF with Sqlite
Ilya_Shlyakhter [Wed, 16 Jun 2021 20:06:39 +0000 (20:06 +0000)]
added suggestion to allow use of synchronous=OFF with Sqlite

5 years agoAdded a comment: thanks
Ilya_Shlyakhter [Wed, 16 Jun 2021 19:54:02 +0000 (19:54 +0000)]
Added a comment: thanks

5 years agocomment
Joey Hess [Wed, 16 Jun 2021 16:07:08 +0000 (12:07 -0400)]
comment

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

5 years agoAdded a comment: adding disableremote
Oumaima [Wed, 16 Jun 2021 07:37:24 +0000 (07:37 +0000)]
Added a comment: adding disableremote

5 years agoremoved
Oumaima [Wed, 16 Jun 2021 07:36:54 +0000 (07:36 +0000)]
removed

5 years agoAdded a comment: adding disableremote
Oumaima [Wed, 16 Jun 2021 07:36:16 +0000 (07:36 +0000)]
Added a comment: adding disableremote

5 years agoclear progress bar before displaying messages
Joey Hess [Wed, 16 Jun 2021 00:43:00 +0000 (20:43 -0400)]
clear progress bar before displaying messages

In particular this clears it before "transfer stalled". If an external
special remote uses showInfo while progress is displayed, it will also
improve display of that.

Generally this will avoid all such problems in the future..

Sponsored-by: Svenne Krap on Patreon
5 years agoMerge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Tue, 15 Jun 2021 15:46:04 +0000 (11:46 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com

5 years agoremoved
yarikoptic [Tue, 15 Jun 2021 15:38:47 +0000 (15:38 +0000)]
removed

5 years agodrop, move, mirror: when two files have the same content, honor the max numcopies...
Joey Hess [Tue, 15 Jun 2021 15:38:44 +0000 (11:38 -0400)]
drop, move, mirror: when two files have the same content, honor the max numcopies and requiredcopies

Eg, before with a .gitattributes like:

*.2 annex.numcopies=2
*.1 annex.numcopies=1

And foo.1 and foo.2 having the same content and key, git-annex drop foo.1 foo.2
would succeed, leaving just 1 copy, despite foo.2 needing 2 copies.
It dropped foo.1 first and then skipped foo.2 since its content was gone.

Now that the keys database includes locked files, this longstanding wart
can be fixed.

Sponsored-by: Noam Kremen on Patreon
5 years agoAdded a comment
yarikoptic [Tue, 15 Jun 2021 15:38:28 +0000 (15:38 +0000)]
Added a comment

5 years agoAdded a comment
yarikoptic [Tue, 15 Jun 2021 15:38:16 +0000 (15:38 +0000)]
Added a comment

5 years agoremove unused import
Joey Hess [Tue, 15 Jun 2021 15:31:42 +0000 (11:31 -0400)]
remove unused import

5 years agoverify associated files when checking numcopies
Joey Hess [Tue, 15 Jun 2021 15:12:27 +0000 (11:12 -0400)]
verify associated files when checking numcopies

Most of this is just refactoring. But, handleDropsFrom
did not verify that associated files from the keys db were still
accurate, and has now been fixed to.

A minor improvement to this would be to avoid calling catKeyFile
twice on the same file, when getting the numcopies and mincopies value,
in the common case where the same file has the highest value for both.
But, it avoids checking every associated file, so it will scale well to
lots of dups already.

Sponsored-by: Kevin Mueller on Patreon
5 years agofix build
Joey Hess [Tue, 15 Jun 2021 15:13:31 +0000 (11:13 -0400)]
fix build

5 years agoavoid warning
Joey Hess [Tue, 15 Jun 2021 15:11:55 +0000 (11:11 -0400)]
avoid warning

5 years agoavoid nub
Joey Hess [Tue, 15 Jun 2021 14:48:11 +0000 (10:48 -0400)]
avoid nub

It's O(N^2) which could matter when there are many dup files using the
same key.

5 years agorefactor
Joey Hess [Tue, 15 Jun 2021 14:27:33 +0000 (10:27 -0400)]
refactor

5 years agoclose
Joey Hess [Tue, 15 Jun 2021 14:11:14 +0000 (10:11 -0400)]
close

5 years agorespinse
Joey Hess [Tue, 15 Jun 2021 14:02:41 +0000 (10:02 -0400)]
respinse

5 years agoMerge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Tue, 15 Jun 2021 13:47:30 +0000 (09:47 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com

5 years agofix exponential blowup when adding lots of identical files
Joey Hess [Tue, 15 Jun 2021 13:32:12 +0000 (09:32 -0400)]
fix exponential blowup when adding lots of identical files

This was an old problem when the files were being added unlocked,
so the changelog mentions that being fixed. However, recently it's also
affected locked files.

The fix for locked files is kind of stupidly simple. moveAnnex already
handles populating unlocked files, and only does it when the object file
was not already present. So remove the redundant populateUnlockedFiles
call. (That call was added all the way back in
cfaac52b88e157dd4e71626fe68af37015b9c9bd, and has always been
unncessary.)

Sponsored-by: Dartmouth College's Datalad project
5 years agoremove supportUnlocked check that is not worth its overhead
Joey Hess [Tue, 15 Jun 2021 13:24:59 +0000 (09:24 -0400)]
remove supportUnlocked check that is not worth its overhead

moveAnnex only gets to that check if the object file was not present
before. So in the case where dup files are being added repeatedly,
it will only run the first time, and so there's no significant speedup
from doing it; all it avoids is a single sqlite lookup. Since MVar
accesses do have overhead, it's better to optimise for the common case,
where unlocked files are supported.

removeAnnex is less clear cut, but I think mostly is skipped running on
keys when the object has already been dropped, so similar reasoning
applies.

5 years ago(no commit message)
9qf@758d7b174d81a134727acab9db0168c8f0782b3a [Tue, 15 Jun 2021 12:21:19 +0000 (12:21 +0000)]

5 years agobloom doesn't work, but this should I hope
Joey Hess [Mon, 14 Jun 2021 21:53:01 +0000 (17:53 -0400)]
bloom doesn't work, but this should I hope

5 years agoplan
Joey Hess [Mon, 14 Jun 2021 21:13:37 +0000 (17:13 -0400)]
plan

5 years agocomment
Joey Hess [Mon, 14 Jun 2021 19:11:09 +0000 (15:11 -0400)]
comment

5 years agogoing round and round, boredly
Joey Hess [Mon, 14 Jun 2021 18:37:06 +0000 (14:37 -0400)]
going round and round, boredly

5 years agoMerge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Mon, 14 Jun 2021 18:34:35 +0000 (14:34 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com

5 years agocomment
Joey Hess [Mon, 14 Jun 2021 18:34:22 +0000 (14:34 -0400)]
comment

5 years agocomment
Joey Hess [Mon, 14 Jun 2021 18:32:38 +0000 (14:32 -0400)]
comment

5 years agoFuture proof activity log parsing
Joey Hess [Mon, 14 Jun 2021 18:18:06 +0000 (14:18 -0400)]
Future proof activity log parsing

When the log has an activity that is not known, eg added by a future
version of git-annex, it used to be treated as no activity at all,
which would make git-annex expire think it should expire the repository,
despite it having some kind of recent activity.

Hopefully there will be no reason to add a new activity until enough
time has passed that this commit is in use everywhere.

Sponsored-by: Jake Vosloo on Patreon
5 years agoAdded a comment
yarikoptic [Mon, 14 Jun 2021 17:36:16 +0000 (17:36 +0000)]
Added a comment

5 years ago(no commit message)
james@06209b7878fcf3b5c46b8028dacb3cec6609369c [Mon, 14 Jun 2021 17:19:50 +0000 (17:19 +0000)]

5 years agocomment
Joey Hess [Mon, 14 Jun 2021 17:13:46 +0000 (13:13 -0400)]
comment

5 years agoimprove docs based on forum feedback
Joey Hess [Mon, 14 Jun 2021 17:04:58 +0000 (13:04 -0400)]
improve docs based on forum feedback

5 years agocomment
Joey Hess [Mon, 14 Jun 2021 16:56:29 +0000 (12:56 -0400)]
comment

5 years agofix windows build
Joey Hess [Mon, 14 Jun 2021 16:43:26 +0000 (12:43 -0400)]
fix windows build

5 years agocomment
Joey Hess [Mon, 14 Jun 2021 16:42:11 +0000 (12:42 -0400)]
comment

5 years agoavoid sometimes expensive operations when annex.supportunlocked = false
Joey Hess [Mon, 14 Jun 2021 16:36:55 +0000 (12:36 -0400)]
avoid sometimes expensive operations when annex.supportunlocked = false

This will mostly just avoid a DB lookup, so things get marginally
faster. But in cases where there are many files using the same key, it
can be a more significant speedup.

Added overhead is one MVar lookup per call, which should be small
enough, since this happens after transferring or ingesting a file,
which is always a lot more work than that. It would be nice, though,
to move getGitConfig to AnnexRead, which there is an open todo about.

5 years agoresponse
Joey Hess [Mon, 14 Jun 2021 16:36:42 +0000 (12:36 -0400)]
response

5 years agoAdded a comment
yarikoptic [Mon, 14 Jun 2021 16:23:41 +0000 (16:23 +0000)]
Added a comment

5 years agoAdded a comment: git-annex-add slowdown
Ilya_Shlyakhter [Mon, 14 Jun 2021 16:00:44 +0000 (16:00 +0000)]
Added a comment: git-annex-add slowdown

5 years agocheck symlink before reading file
Joey Hess [Mon, 14 Jun 2021 15:53:51 +0000 (11:53 -0400)]
check symlink before reading file

This is faster because when multiple files are in a directory, it gets
cached.

5 years agoretitle
Joey Hess [Mon, 14 Jun 2021 15:44:55 +0000 (11:44 -0400)]
retitle

5 years agoreproduced
Joey Hess [Mon, 14 Jun 2021 15:37:21 +0000 (11:37 -0400)]
reproduced

5 years agohandle edge case of symlink to something that is not really a pointer file
Joey Hess [Mon, 14 Jun 2021 15:29:49 +0000 (11:29 -0400)]
handle edge case of symlink to something that is not really a pointer file

That seems very unlikely to happen, but still, it's possible it could.
And with the recent addition of locked files to the keys db, this could
be called by places that did not call it before, so it seems even more
important it's correct.

Adds an extra stat of the file, and is potentially racy, but both
problems are fixed by the unix-2.8.0 path. I have not tested that path
builds because that package is not yet released and it would be difficult
to install it since it's tightly tied to a ghc version.

5 years agorename for clarity
Joey Hess [Mon, 14 Jun 2021 14:55:24 +0000 (10:55 -0400)]
rename for clarity

Associated files are recorded now also for locked files, but this is
only needed to populate unlocked files.

5 years agoAdded a comment
yarikoptic [Wed, 9 Jun 2021 22:28:06 +0000 (22:28 +0000)]
Added a comment

5 years agoAdded a comment: more "mystery resolved" -- identical (empty) keys
yarikoptic [Wed, 9 Jun 2021 21:00:34 +0000 (21:00 +0000)]
Added a comment: more "mystery resolved" -- identical (empty) keys

5 years agoMerge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Wed, 9 Jun 2021 19:38:58 +0000 (15:38 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com

5 years agocomment
Joey Hess [Wed, 9 Jun 2021 19:38:55 +0000 (15:38 -0400)]
comment

5 years agoAdded a comment
yarikoptic [Tue, 8 Jun 2021 22:02:34 +0000 (22:02 +0000)]
Added a comment

5 years agoAdded a comment
yarikoptic [Tue, 8 Jun 2021 21:58:20 +0000 (21:58 +0000)]
Added a comment