Commit graph

11212 commits

Author SHA1 Message Date
Atemu
6253bd391c Added a comment 2022-03-08 13:24:21 +00:00
Atemu
327d06eb9d Added a comment 2022-03-08 11:56:42 +00:00
git-annex.visiteur@e9d364191d2ffc1b163c8d9e4c57dbadf58aad8e
041cea21ba Added a comment 2022-03-07 19:59:18 +00:00
Joey Hess
cd473f071c
comment 2022-03-07 15:30:16 -04:00
Joey Hess
434812bcfb
Merge branch 'master' of ssh://git-annex.branchable.com 2022-03-07 15:25:57 -04:00
git-annex.visiteur@e9d364191d2ffc1b163c8d9e4c57dbadf58aad8e
85eb26e746 Added a comment 2022-03-07 19:22:54 +00:00
Joey Hess
06c2f625a9
comment 2022-03-07 15:18:30 -04:00
Joey Hess
5804ea67a6
comment; close 2022-03-07 12:03:11 -04:00
git-annex.visiteur@e9d364191d2ffc1b163c8d9e4c57dbadf58aad8e
ce523f7561 Added a comment 2022-03-06 14:37:42 +00:00
git-annex.visiteur@e9d364191d2ffc1b163c8d9e4c57dbadf58aad8e
6050b839f4 2022-03-06 06:46:01 +00:00
Atemu
e879487dca Added a comment 2022-03-04 14:44:29 +00:00
Atemu
c0164c4750 Added a comment 2022-03-04 14:16:54 +00:00
Atemu
ffc17b0b49 rename bugs/git-annex_is_slow_at_reading_files.mdwn to bugs/git-annex_is_slow_at_reading_file_content.mdwn 2022-03-03 08:40:47 +00:00
Atemu
2998c33fcb 2022-03-02 13:18:42 +00:00
Atemu
6d768a8268 2022-03-02 13:16:36 +00:00
Atemu
a7c5913d42 2022-03-02 13:15:26 +00:00
Joey Hess
20875bd5e8
open related todo 2022-02-28 13:26:43 -04:00
Joey Hess
ce91f10132
fix annex.skipunknown false error propagation
Propagate nonzero exit status from git ls-files when a specified file does
not exist, or a specified directory does not contain any files checked into
git.

The recent completion of the annex.skipunknown transition exposed this
bug, that has unfortunately been lurking all along.

It is also possible that git ls-files errors out for some other reason
-- perhaps a permission problem -- and this will also fix error propagation
in such situations.

Sponsored-by: Dartmouth College's Datalad project
2022-02-28 12:54:56 -04:00
Joey Hess
a6857ddb79
comment 2022-02-28 12:15:08 -04:00
Joey Hess
f7575e87a0
news 2022-02-28 12:10:50 -04:00
Joey Hess
fb03e38c1a
comment 2022-02-28 12:10:19 -04:00
yarikoptic
5d7b0b6291 initial report on changed (and non-conformant) behavior of annex find 2022-02-25 20:53:25 +00:00
Joey Hess
51c528980c
avoid accidentally thawing git-annex symlink
It did nothing, since at this point the link is dangling. But when there
is a thaw hook, it would probably not be happy to be asked to run on a
symlink, or might do something unexpected.

Sponsored-by: Dartmouth College's Datalad project
2022-02-24 14:21:23 -04:00
Joey Hess
f4b046252a
Run annex.thawcontent-command before deleting an object file
In case annex.freezecontent-command did something that would prevent
deletion.

Sponsored-by: Dartmouth College's Datalad project
2022-02-24 14:11:02 -04:00
Joey Hess
28bc5ce232
ignore write bits being set when there is a freeze hook
When annex.freezecontent-command is set, and the filesystem does not
support removing write bits, avoid treating it as a crippled filesystem.

The hook may be enough to prevent writing on its own, and some filesystems
ignore attempts to remove write bits.

Sponsored-by: Dartmouth College's Datalad project
2022-02-24 13:28:31 -04:00
Joey Hess
4144f73c18
comment 2022-02-24 13:10:40 -04:00
Joey Hess
972f41efb7
comment 2022-02-24 13:05:25 -04:00
yarikoptic
dce6877758 Added a comment: for some reason drop freezes thawn key file before thawing key dir 2022-02-24 03:21:54 +00:00
yarikoptic
ee9cd6309a Added a comment: approach which somewhat works 2022-02-24 02:20:15 +00:00
yarikoptic
1daceb1c16 adjusted with edit 1 observation 2022-02-23 21:08:16 +00:00
yarikoptic
f2331feed1 initial experimentation/complain about freeze/thawing files 2022-02-23 20:53:38 +00:00
Joey Hess
64ccb4734e
smudge: Warn when encountering a pointer file that has other content appended to it
It will then proceed to add the file the same as if it were any other
file containing possibly annexable content. Usually the file is one that
was annexed before, so the new, probably corrupt content will also be added
to the annex. If the file was not annexed before, the content will be added
to git.

It's not possible for the smudge filter to throw an error here, because
git then just adds the file to git anyway.

Sponsored-by: Dartmouth College's Datalad project
2022-02-23 15:17:08 -04:00
Joey Hess
67245ae00f
fully specify the pointer file format
This format is designed to detect accidental appends, while having some
room for future expansion.

Detect when an unlocked file whose content is not present has gotten some
other content appended to it, and avoid treating it as a pointer file, so
that appended content will not be checked into git, but will be annexed
like any other file.

Dropped the max size of a pointer file down to 32kb, it was around 80 kb,
but without any good reason and certianly there are no valid pointer files
anywhere that are larger than 8kb, because it's just been specified what it
means for a pointer file with additional data even looks like.

I assume 32kb will be good enough for anyone. ;-) Really though, it needs
to be some smallish number, because that much of a file in git gets read
into memory when eg, catting pointer files. And since we have no use cases
for the extra lines of a pointer file yet, except possibly to add
some human-visible explanation that it is a git-annex pointer file, 32k
seems as reasonable an arbitrary number as anything. Increasing it would be
possible, eg to 64k, as long as users of such jumbo pointer files didn't
mind upgrading all their git-annex installations to one that supports the
new larger size.

Sponsored-by: Dartmouth College's Datalad project
2022-02-23 14:20:31 -04:00
Joey Hess
866cad6582
comment 2022-02-22 12:04:10 -04:00
yarikoptic
c59a7b1275 Added a comment 2022-02-21 21:48:59 +00:00
yarikoptic
8ee2661b85 Added a comment 2022-02-21 21:46:15 +00:00
Joey Hess
ba907b6682
comment and close, not a bug really 2022-02-21 15:39:38 -04:00
Joey Hess
80f244d7b6
comment 2022-02-21 15:13:51 -04:00
Joey Hess
3187639735
retitle 2022-02-21 12:13:59 -04:00
ycp@f118e050dc106530b9cf62ead031e05eef7b1687
7f167d4be1 Added a comment 2022-02-19 01:15:24 +00:00
yarikoptic
12fc03a9b2 initial thinking for a possible safe guard 2022-02-18 20:02:40 +00:00
yarikoptic
4643788916 bug/question on the semantic of find --unlocked 2022-02-18 19:17:37 +00:00
Joey Hess
56d180864f
comment 2022-02-18 12:35:49 -04:00
Joey Hess
544eaff1e1
comment 2022-02-18 12:10:55 -04:00
ycp@f118e050dc106530b9cf62ead031e05eef7b1687
49b0a3a1bd Added a comment: I have the same problem 2022-02-16 08:03:05 +00:00
Joey Hess
2ac8734454
comment 2022-02-10 15:44:04 -04:00
yarikoptic
f87de5ff7f initial report on a failing test 2022-02-10 15:55:56 +00:00
Jakube
90af8c5e99 2022-02-08 20:50:56 +00:00
Jakube
f06265dc8e 2022-02-08 20:46:18 +00:00
Joey Hess
0ae8f45ee5
close wontfix 2022-02-08 13:03:58 -04:00
Joey Hess
6992250d63
fix obviously wrong attoparsec parser
takeByteString can only be used at the end of a parser, not before other
input. This was a dumb enough mistake that I audited the rest of the
code base for similar mistakes. Pity that attoparsec cannot avoid it at
the type level.

Fixes git-annex forget propagation between repositories. (reversion
introduced in version 7.20190122)

Sponsored-by: Brock Spratlen on Patreon
2022-02-07 14:15:17 -04:00
Joey Hess
65ca0b49d6
bug report followup 2022-02-07 13:12:14 -04:00
Joey Hess
697114c234
comment and bug report 2022-02-07 12:27:50 -04:00
Joey Hess
d9b55be624
comment 2022-02-07 12:17:18 -04:00
sh@243262e07058e7517194e54030ce421ae984ea08
74c56e2663 removed 2022-02-04 08:09:20 +00:00
sh@243262e07058e7517194e54030ce421ae984ea08
d6ae059a15 Added a comment 2022-02-04 07:58:55 +00:00
sh@243262e07058e7517194e54030ce421ae984ea08
324992d9cb Added a comment 2022-02-04 07:58:20 +00:00
Joey Hess
46d5098ff4
Pass --no-textconv when running git diff internally
Seems that --no-ext-diff and -c diff.external= are not enough to disable
external diff command when gitattributes textconv specifies it.

I'm pretty sure that --no-ext-diff and -c diff.external= are not both
needed, but not 100%. Something about -G may need the latter to fully
disable diffs in some cases. So kept that part as it was.

Sponsored-by: Dartmouth College's Datalad project
2022-02-01 13:43:18 -04:00
adina.wagner@2a4cac6443aada2bd2a329b8a33f4a7b87cc8eff
1a9966a14c 2022-02-01 12:27:48 +00:00
Joey Hess
a32ff6cef0
adb: Avoid find failing with "Argument list too long"
The "+" argument only runs the command once, so is not safe to use. Using
";" instead would have been the simplest fix, but also the slowest.

Since my phone has an xargs that supports -0, I piped find to xargs
instead. Unsure how portable this will be, perhaps some android's don't
have xargs -0 or find -printf to send null terminated output.

The business with pipefail is necessary to make a failure of find cause the
import to fail. Probably this works on all androids, but if not, it will
probably just result in a failure of find being ignored. It would be
possible to make ignorefinderror just disable setting pipefail, but then
if some android has a shell that has pipefail enabled by default, ignorefinderror
would not work, so I kept the || true approach for that.

Sponsored-by: Max Thoursie on Patreon
2022-01-31 13:19:09 -04:00
Joey Hess
8f3d48c5cf
comment 2022-01-31 12:39:54 -04:00
chewie@a4440559aa1bc84271fa9c8ef754e402afbd7d0d
dd82f676b0 2022-01-30 18:14:47 +00:00
amerlyq
f9558108cf Added a comment 2022-01-29 15:59:31 +00:00
yarikoptic
b019d9ca28 Added a comment: comment regarding "default" version of the repo etc 2022-01-26 18:40:50 +00:00
Joey Hess
0bcb944870
comment 2022-01-26 13:26:55 -04:00
Joey Hess
835c50966a
reject batch options combined with non-batch options
Reject combinations of --batch (or --batch-keys) with options like --all or
--key or with filenames.

Most commands ignored the non-batch items when batch mode was enabled.

For some reason, addurl and dropkey both processed first the specified
non-batch items, followed by entering batch mode. Changed them to also
error out, for consistency.

Sponsored-by: Dartmouth College's Datalad project
2022-01-26 13:00:19 -04:00
Joey Hess
56a12eb84c
comment 2022-01-26 12:03:16 -04:00
yarikoptic
46143ea795 initial whining about --batch-keys and --all 2022-01-26 14:38:35 +00:00
yarikoptic
c3817495fc Added a comment 2022-01-25 18:37:56 +00:00
Joey Hess
d750fcdb02
comment 2022-01-25 14:03:22 -04:00
yarikoptic
73ea006873 Added a comment 2022-01-25 18:00:17 +00:00
Joey Hess
a27776f602
init --version=6 upgrade to 8 not yet 10
autoUpgradeableVersions had latestVersion (10), but it did not make
sense for asking for old version 6 to get version 10, while asking for
version 8 got version 8. So use defaultVersion (8) instead.

Sponsored-by: Dartmouth College's Datalad project
2022-01-25 13:52:42 -04:00
Joey Hess
fa57da0f34
add question 2022-01-25 13:35:00 -04:00
Joey Hess
d9383e0023
comment 2022-01-25 13:20:23 -04:00
Joey Hess
28ec94ee7f
close; out of scope 2022-01-25 12:39:46 -04:00
Joey Hess
29e8636a88
comment 2022-01-24 15:16:14 -04:00
yarikoptic
158cb79533 initial report about autoupgrade to 10 instead of 8 2022-01-24 18:50:14 +00:00
Joey Hess
f7a3c13557
Merge branch 'master' of ssh://git-annex.branchable.com 2022-01-21 14:23:19 -04:00
Joey Hess
120ea4b7be
update 2022-01-21 13:16:14 -04:00
Joey Hess
fad11c2250
close 2022-01-21 13:00:28 -04:00
Joey Hess
cea6f6db92
v10 upgrade locking
The v10 upgrade should almost be safe now. What remains to be done is
notice when the v10 upgrade has occurred, while holding the shared lock,
and switch to using v10 lock files.

Sponsored-by: Dartmouth College's Datalad project
2022-01-20 11:33:14 -04:00
mih
e6a4a327f4 2022-01-19 21:07:20 +00:00
Joey Hess
cd2158d98d
update on status 2022-01-19 16:01:06 -04:00
Joey Hess
fb11ffe594
Merge branch 'master' of ssh://git-annex.branchable.com 2022-01-19 11:51:11 -04:00
Joey Hess
1723d4e88a
close 2022-01-19 11:49:37 -04:00
Lukey
1c0e04c83c Added a comment 2022-01-13 18:10:22 +00:00
beryllium@5bc3c32eb8156390f96e363e4ba38976567425ec
b15ac53967 2022-01-13 03:59:44 +00:00
Joey Hess
b2f3928971
Merge branch 'master' of ssh://git-annex.branchable.com 2022-01-12 15:55:31 -04:00
Joey Hess
8add0ec60e
liking this solution pretty well 2022-01-12 15:54:58 -04:00
yarikoptic
6b435719a0 Added a comment 2022-01-12 19:33:16 +00:00
Joey Hess
0ba7f2ec91
so close 2022-01-12 15:25:35 -04:00
Joey Hess
63851bfec4
complication 2022-01-12 13:19:06 -04:00
anarcat
658a896869 2022-01-12 16:24:17 +00:00
anarcat
3993421d36 Added a comment: indeed. 2022-01-12 15:56:25 +00:00
Joey Hess
d427afb347
v9-locking branch still wip 2022-01-11 17:04:25 -04:00
mih
9104e64d3e Added a comment: Thanks! 2022-01-11 18:59:36 +00:00
Joey Hess
029820c832
v9-locking branch 2022-01-11 14:49:21 -04:00
Joey Hess
f1e5a42392
followup and close 2022-01-11 13:28:13 -04:00
Joey Hess
f54c58f0df
Avoid crashing when run in a bare git repo that somehow contains an index file
Do not populate the keys database with associated files,
because a bare repo has no working tree, and so it does not make sense to
populate it.

Queries of associated files in the keys database always return empty lists
in a bare repo, even if it's somehow populated. One way it could be
populated is if a user converts a non-bare repo to a bare repo.

Note that Git.Config.isBare does a string comparison, so this is not free!
But, that string comparison is very small compared to a sqlite query.

Sponsored-by: Erik Bjäreholt on Patreon
2022-01-11 13:01:49 -04:00
Joey Hess
c031d19c32
Merge branch 'master' of ssh://git-annex.branchable.com 2022-01-11 12:25:12 -04:00