Commit graph

9595 commits

Author SHA1 Message Date
Joey Hess
f9f4f29cc2
fix extension 2020-05-01 14:18:57 -04:00
Joey Hess
bcf3604757
fix format 2020-05-01 12:30:58 -04:00
kyle
111b747be3 Added a comment: thanks! 2020-04-28 21:41:30 +00:00
Joey Hess
a386639a72
Merge branch 'master' of ssh://git-annex.branchable.com 2020-04-28 17:25:25 -04:00
Joey Hess
fa98025de0
fix testremote to not throw away annex state
aeca7c2207 exposed this problem, but it
was never a good idea to have a series of test cases, some of which depend on
prior ones, and throw away annex state after each.
2020-04-28 17:19:07 -04:00
kyle
acf7f20842 Added a comment 2020-04-28 20:48:18 +00:00
Joey Hess
e66f9d1c8c
comment 2020-04-28 16:45:34 -04:00
kyle
fa1bf4c8b1 testremote failures (regression) 2020-04-28 19:51:51 +00:00
Joey Hess
378b384c17
Merge branch 'master' of ssh://git-annex.branchable.com 2020-04-28 15:48:11 -04:00
Joey Hess
4a6d328ae9
Avoid a test suite failure when the environment does not let gpg be tested
Due to eg, too long a path to the agent socket, caused by running gpg in a
container where /run is not mounted, and/or some other gpg behavior like
unnecessarily making relative paths to its home directory absolute.
2020-04-28 15:47:23 -04:00
Joey Hess
24eabbbc55
followup 2020-04-28 15:15:20 -04:00
Joey Hess
57b89c635f
support required groupwanted
When the required content is set to "groupwanted", use whatever expression
has been set in groupwanted as the required content of the repo, similar to
how setting required content to "standard" already worked.
2020-04-28 13:31:26 -04:00
yarikoptic
eec1244095 Added a comment 2020-04-27 19:46:22 +00:00
Joey Hess
45d884db9b
comment 2020-04-27 14:15:06 -04:00
Joey Hess
1345f99d85
close not really a bug, and improve fsck man page 2020-04-27 12:13:35 -04:00
jgeerds
a0afbdc400 Added a comment: Pusher crashed: fd:56: hPutStr: illegal operation (handle is closed) 2020-04-27 08:52:11 +00:00
Joey Hess
05add2e19d
add comment 2020-04-23 16:21:11 -04:00
Joey Hess
c05c4e549e
sync: When some remotes to sync with are specified, and --fast is too, pick the lowest cost of the specified remotes
Do not sync with a faster remote that was not specified.

That old behavior was only documented in the changelog, and was certianly
surprising. It also meant adding --fast made it slower..
2020-04-23 16:08:45 -04:00
Joey Hess
3252c4ccca
Merge branch 'master' of ssh://git-annex.branchable.com 2020-04-23 15:21:40 -04:00
Joey Hess
2aeb79249b
external: stop storing readonly=true in remote.log
readonly=true is used to make an external special remote that does not
need the external program to be installed. It was stored in the
remote.log by default, and so every time it was specified in an
enableremote or initremote, whatever value was used became the new
default for subsequent enableremotes of that remote.

That was surprising, and I consider it to be a bug.

It does not make much sense to pass it to initremote because then how
would you populate that remote with anything? You would have to
enableremote elsewhere, and store content there. I'm assuming nobody
used it that way.

Someone might rely on passing it to enableremote once, and then that
being inherited in other clones. But that is not how it's documented to
be used. It is barely documented in git-annex at all, only in the
external special remote protocol, and the documentation there says to
"Document that this external special remote can be used in readonly
mode." (by the user of it passing readonly=true to enableremote). The
one external special remote that I know of that does document that is
<https://github.com/bgilbert/gcsannex> (the one that motivated adding
it). That one's docs do say to pass it to enableremote.

So, it seemed safe to make this behavior change. If someone was in fact
relying on one of those behaviors, all their current repos will still
work as they configured them (although they will need to deal
with the related change in 9f3c2dfeda).
In new clones, they will find enableremote fails, complaining the
external program is not in path. An easy enough problem to recover from.
2020-04-23 15:21:26 -04:00
Joey Hess
9f3c2dfeda
stop using remote.name.annex-readonly for two distinct things 2020-04-23 14:56:03 -04:00
thk
697f7b93a2 2020-04-23 15:57:17 +00:00
Joey Hess
cd1676d604
fix bug involving local git remote and out of date location log
get --from, move --from: When used with a local git remote, these used to
silently skip files that the location log thought were present on the
remote, when the remote actually no longer contained them. Since that
behavior could be surprising, now instead display a warning.

I got very confused when I encountered this behavior, since it was silently
skipping a file I needed that whereis said was on the remote.

get without --from already displayed a "unable to access these remotes"
message, which while a bit misleading in that the remote is likely
accessible, but just doesn't contain the file, at least indicated something
went wrong.

Having get --from display a warning makes it in line with get
w/o --from, so seems certianly ok. It might be there are situations where
move --from is used, on eg a whole directory, and the user only wants to
move whatever is present in the remote, and is perfectly ok with files
that are not present being skipped. So I'm less sure about the new warning
being ok there. OTOH, only local git remotes avoiding displaying a warning
in that case too, so this just brings them into line with other remotes.

(Also note that this makes it a little bit faster when dealing with a lot of
files, since it avoids a redundant stat of the file.)
2020-04-21 12:36:58 -04:00
Joey Hess
2f87c6db79
done 2020-04-21 11:30:49 -04:00
Joey Hess
87bab2d7c2
close 2020-04-21 11:29:51 -04:00
Joey Hess
cee6b344b4
cat-file resource pool
Avoid running a large number of git cat-file child processes when run with
a large -J value.

This implementation takes care to avoid adding any overhead to git-annex
when run without -J. When run with -J, there is a small bit of added
overhead, to manipulate the resource pool. That optimisation added a
fair bit of complexity.
2020-04-20 15:19:31 -04:00
Joey Hess
87b7b0f202
comment 2020-04-20 12:06:14 -04:00
Joey Hess
5446379cd9
Merge branch 'master' of ssh://git-annex.branchable.com 2020-04-20 10:03:38 -04:00
thk
ffeef75917 2020-04-19 08:15:47 +00:00
Joey Hess
1b2dd74d8d
bug 2020-04-18 23:57:48 -04:00
yarikoptic
6c9c974e55 Added a comment 2020-04-18 02:14:32 +00:00
yarikoptic
67f0407477 Added a comment 2020-04-18 02:05:52 +00:00
Joey Hess
b480ce01f7
Merge branch 'master' of ssh://git-annex.branchable.com 2020-04-17 17:47:59 -04:00
Joey Hess
2da760fcae
comment 2020-04-17 17:32:49 -04:00
yarikoptic
a2b2708ab6 Added a comment: quick follow up 2020-04-17 20:34:55 +00:00
Joey Hess
988317634b
comment 2020-04-17 14:11:17 -04:00
Joey Hess
6c39ec9b27
comment 2020-04-17 12:37:28 -04:00
yarikoptic
5dc513ccdb Added a comment 2020-04-16 03:43:13 +00:00
yarikoptic
1705d3657e Added a comment: it is many more "open files" in reality 2020-04-16 03:41:07 +00:00
Joey Hess
ddadc0c1aa
Merge branch 'master' of ssh://git-annex.branchable.com 2020-04-15 14:20:06 -04:00
Joey Hess
891e9a81eb
close bug that was apparently fixed satisfactorally 2020-04-15 14:17:21 -04:00
Joey Hess
a2fed82267
close 2020-04-15 14:15:41 -04:00
Joey Hess
7ef030b576
close old bug since git-annex no longer uses rsync like it used to 2020-04-15 14:08:48 -04:00
kyle
1a040e0c0a Added a comment 2020-04-15 18:02:29 +00:00
Joey Hess
43a9808292
disable journal read optimisation when alwayscommit=false
The journal read optimisation in aeca7c220 later got fixed in eedd73b84
to stage and commit any files that were left in the journal by a
previous git-annex run. That's necessary for the optimisation to work
correctly. But it also meant that alwayscommit=false started committing
the previous git-annex processes journalled changes, which defeated the
purpose of the config setting entirely.

So, disable the optimisation when alwayscommit=false, leaving the
files in the journal and not committing them. See my comments on the bug
report for why this seemed the best approach.

Also fixes a problem when annex.merge-annex-branches=false and there
are changes in the journal. That config indirectly prevents committing
the journal. (Which seems a bit odd given its name, but it always has..)
So, when there were changes in the journal, perhaps left there due to
alwayscommit=false being set before, the optimisation would prevent
git-annex from reading the journal files, and it would operate with out
of date information.
2020-04-15 13:24:33 -04:00
Joey Hess
9f17242f29
comment 2020-04-15 12:48:55 -04:00
Joey Hess
8ac44498d6
comment 2020-04-15 12:43:22 -04:00
Joey Hess
1aa7082c9a
better response 2020-04-15 12:17:57 -04:00
Joey Hess
b241f579c0
hm 2020-04-15 12:14:39 -04:00
Joey Hess
f4d5ec1457
correction 2020-04-15 12:12:11 -04:00