Commit graph

28732 commits

Author SHA1 Message Date
Joey Hess
a10f2616c4
close 2020-10-06 10:24:09 -04:00
Joey Hess
10ec4aa7cb
Merge branch 'master' of ssh://git-annex.branchable.com into master 2020-10-06 10:07:48 -04:00
Joey Hess
4795bd7238
update 2020-10-06 10:07:27 -04:00
yarikoptic
95d02d6e29 Added a comment 2020-10-06 01:27:01 +00:00
yarikoptic
b98d601bfb Added a comment: FTR 2020-10-06 00:04:38 +00:00
yarikoptic
8035e2073d Added a comment 2020-10-05 23:17:08 +00:00
yarikoptic
ed7a0c9956 Added a comment: just comments 2020-10-05 23:11:32 +00:00
Joey Hess
2daa28c05f
comment 2020-10-05 15:19:48 -04:00
Joey Hess
471bcfaf37
comment 2020-10-05 14:51:19 -04:00
Joey Hess
2c68c60961
comment 2020-10-05 14:38:29 -04:00
Joey Hess
8c9a38a91f
Merge branch 'master' of ssh://git-annex.branchable.com into master 2020-10-05 14:37:33 -04:00
Joey Hess
36ebcd94aa
fix confirmed 2020-10-05 14:36:36 -04:00
kyle
a39f9e8c7f Added a comment 2020-10-05 18:09:07 +00:00
Joey Hess
f0ec725234
include buildid in LOCPATH
This avoids the possibility that the bundle could be updated in place,
leading to LOCPATH existing but containing locales for the old version,
which needed to be tested for with code that was not race-free.

LOCPATH/buildid is still written and checked when cleaning up stale caches.
That is not actually necessary, except old versions of the standalone
bundle expect to see it, and this prevents them cleaning up the locale
cache of a new version. And still checking it prevents the new version
cleaning up the locale cache of the old version while the old version is
still in use.

Added explicit tests before creating LOCPATH and the base and buildid files.

The buildid file no longer needs to be updated every time, because it's
stable for the given LOCPATH directory.

And the base file actually did not need to be updated every time,
because the LOCPATH is derived from base, so if the bundle is moved
elsewhere, a different LOCPATH will be used.

Transitioning to this will mean that two git-annex builds that otherwise
have the same buildid -- the same git-annex md5sum -- will use different
LOCPATH values, but that's handled fine by the cache cleanup code, so at
most it will mean one extra generation of the locale files.
2020-10-05 14:04:49 -04:00
yarikoptic
0bb7569e1c Added a comment 2020-10-05 18:02:51 +00:00
kyle
64ca40e11c Added a comment 2020-10-05 17:42:26 +00:00
Joey Hess
9e12e4c419
comment 2020-10-05 12:57:16 -04:00
Joey Hess
cd9a60bc7d
runshell: Fix a edge case where rm errors were sent to stdout, which could confuse things parsing git-annex output. 2020-10-05 12:44:40 -04:00
Joey Hess
3363cc7515
Merge branch 'master' of ssh://git-annex.branchable.com into master 2020-10-05 12:37:43 -04:00
Joey Hess
8c221eac83
update 2020-10-05 12:36:36 -04:00
yarikoptic
4bb980bfb9 Added a comment 2020-10-05 15:26:10 +00:00
Ilya_Shlyakhter
574d7a7cce Added a comment: standalone build 2020-10-04 15:45:16 +00:00
yarikoptic
77dab95e69 Initial report on hanging batched processes 2020-10-03 04:04:28 +00:00
yarikoptic
3be96e60b0 initial report on rm failing to remove cache/locales 2020-10-03 03:52:33 +00:00
kyle
742ce7ec87 Added a comment 2020-10-01 19:07:48 +00:00
yarikoptic
1bf55a8fc1 Added a comment 2020-10-01 17:26:10 +00:00
Joey Hess
37b1f2f2ed
response 2020-10-01 13:08:09 -04:00
Joey Hess
c6674b6271
Merge branch 'master' of ssh://git-annex.branchable.com into master 2020-10-01 12:53:24 -04:00
yarikoptic
23103e225a Added a comment 2020-10-01 14:06:34 +00:00
Joey Hess
c56efbbdb6
import: Check gitignores when importing trees from special remotes
It seemed best to do this, for consistency with every other way files can
get into a git-annex repo. Although it's just a bit strange that a local
.gitignore file affects the pseudo-commits made for the remote that's
imported from.

This commit was sponsored by Brett Eisenberg on Patreon.
2020-09-30 10:41:59 -04:00
Joey Hess
a9128d4b45
typo 2020-09-30 09:40:06 -04:00
Joey Hess
4c7335caf3
add a pointer for git-annex repos over http
So users are less likely to try to use httpalso for them, which is not
its purpose.
2020-09-29 13:59:51 -04:00
Joey Hess
084b502c7a
httpalso: Support being used with special remotes that do not have encryption= in their config. 2020-09-29 13:56:27 -04:00
Joey Hess
b2cf284d2a
upgrade: Avoid an upgrade failure of a bare repo in unusual circumstances 2020-09-29 13:45:14 -04:00
Joey Hess
aa06c69a6f
close 2020-09-29 13:26:48 -04:00
Joey Hess
8615d4b4b3
Merge branch 'master' of ssh://git-annex.branchable.com into master 2020-09-29 13:25:31 -04:00
Joey Hess
1610d94776
addurl: Avoid a redundant git ignores check for speed
Ensure that checkCanAdd is used everywhere a file is added to git,
so git add is run with -f, presumably avoiding the work it would usually
do to check ignores.
2020-09-29 13:00:41 -04:00
rto@914936d87a43105f8c5df5ae4787140e7eb5d846
42bd4f1110 2020-09-29 16:51:49 +00:00
Joey Hess
d10cbaa084
comment 2020-09-29 12:25:40 -04:00
lykos@d125a37d89b1cfac20829f12911656c40cb70018
a3083436dc removed 2020-09-29 08:36:37 +00:00
lykos@d125a37d89b1cfac20829f12911656c40cb70018
7b37f22880 Added a comment 2020-09-29 08:36:19 +00:00
lykos@d125a37d89b1cfac20829f12911656c40cb70018
ff0784dad9 Added a comment 2020-09-29 08:32:22 +00:00
mark@6b90344cdab3158eacb94a3944460d138afc9bef
26842956b5 Added a comment 2020-09-28 21:40:23 +00:00
mark@6b90344cdab3158eacb94a3944460d138afc9bef
a8e4539d15 Added a comment 2020-09-28 21:10:58 +00:00
mark@6b90344cdab3158eacb94a3944460d138afc9bef
32cd9a44ca 2020-09-28 21:09:27 +00:00
yarikoptic
67144b1c46 Added a comment 2020-09-28 19:44:08 +00:00
Joey Hess
e44a132085
Merge branch 'master' of ssh://git-annex.branchable.com into master 2020-09-28 15:30:23 -04:00
Joey Hess
3eaaec3113
consistently use importKey when available
This avoids import with --no-content and with --content potentially
generating two different trees, leading to a merge conflict when run in
two different clones of a repo. And it's necessary groundwork to make
git-annex sync --no-content import from special remotes that support
importKey.

Only the directory special remote currently supports importKey, and it
generates the same key as git-annex usually does, so there is no
behavior change for it.

Future special remotes will need to take care when adding importKey,
if it generates different keys. Added some warnings about that to
comments.

This commit was sponsored by Noam Kremen on Patreon.
2020-09-28 15:27:46 -04:00
Joey Hess
15c1ee16d9
import --no-content: Check annex.largefiles
Import small files into git, the same as is done when importing with content.
Which means, for small files, --no-content does download them.

If the largefiles expression needs the file content available
(due to mimetype or mimeencoding being used), the import will fail.

This commit was sponsored by Jake Vosloo on Patreon.
2020-09-28 13:28:57 -04:00
Joey Hess
9e676f062f
split out todo 2020-09-28 10:40:13 -04:00
Joey Hess
1aec0fc6b9
close as unreproducible 2020-09-28 10:13:15 -04:00
Joey Hess
933097b327
moreinfo 2020-09-28 10:11:24 -04:00
Joey Hess
f324cfa9e7
close 2020-09-28 10:04:38 -04:00
mhauru
5aa85fa092 2020-09-27 14:03:12 +00:00
yarikoptic
9651c1da96 Added a comment 2020-09-27 13:42:18 +00:00
mhauru
20e1afc804 Added a comment: NeuroDebian seems to have stopped updating 2020-09-27 12:40:57 +00:00
Joey Hess
6a41a615b9
Merge branch 'master' of ssh://git-annex.branchable.com into master 2020-09-25 13:51:20 -04:00
Joey Hess
13f9c88123
add todo 2020-09-25 13:51:04 -04:00
Lukey
12eb7a3ceb Added a comment 2020-09-25 16:33:42 +00:00
Joey Hess
b5b1aeacba
devblog (for yesterday, forgot to add) 2020-09-25 10:56:07 -04:00
Joey Hess
ace02f41b0
seek: defer matcher check until more info is known
Sped up seeking for files to operate on, when using options like --copies
or --in, by around 20%.

Benchmark showed an increase for --copies from 155 seconds to 121
seconds, and --in remote will be similar to that.

For --in here, the speedup was less, 5-10% or so.

(both warm cache)

This commit was sponsored by Jack Hill on Patreon.
2020-09-24 17:59:12 -04:00
Joey Hess
c2d1d4e16e
close this
phibs who was seeing hangs confirmed they're gone on irc
2020-09-24 16:51:30 -04:00
Joey Hess
b3af8a40f3
Merge branch 'master' of ssh://git-annex.branchable.com into master 2020-09-24 15:13:33 -04:00
Joey Hess
d89984b121
sync --all avoid unncessary first pass
Sped up seeking to around twice as fast, by avoiding a pass over the
worktree files when preferred content expressions of the local repo and
remotes don't use include=/exclude=.

Thanks to Lukey for identifying the optimisation.

This commit was sponsored by Brock Spratlen on Patreon.
2020-09-24 15:12:09 -04:00
yarikoptic
12f8d42a23 Added a comment 2020-09-24 18:49:06 +00:00
Joey Hess
c1b4d76e6b
make MatchFiles introspectable
matchNeedsFileContent is not used yet, but shows how to add information
about terminals. That one would be needed for
https://git-annex.branchable.com/todo/sync_fast_import/

Note the tricky bit in Annex.FileMatcher.call where it folds over the
included matcher to propagate the information.

This commit was sponsored by Svenne Krap on Patreon.
2020-09-24 14:01:53 -04:00
Joey Hess
6d95361f35
add meta todo 2020-09-24 12:54:54 -04:00
Joey Hess
4d4f963c46
Merge branch 'master' of ssh://git-annex.branchable.com into master 2020-09-24 12:42:32 -04:00
Joey Hess
68f9766544
Improve --debug output to show pid of processes that are started and stopped
getPid returns Nothing if the process has already been stopped, and in that
case, the pid will not be displayed. I think that would only happen if
waitForProcess or similar gets called more than once on the same process
handle though.

getPid on unix has an overhead of only a MVar read. On Windows it needs to
make a syscall, so will be probably more expensive. While the added expense
happens even when debug logging is disabled, it should be small enough
compared with the overhead of starting a process that it's not a problem.

(It does occur to me that a debugM that took an IO String could only run it
when debugging is really enabled, which would improve performance. It does
not seem possible to use the current hslogger interface to do that though;
it does not expose the information that would be needed.)
2020-09-24 12:39:57 -04:00
Lukey
221b47162d 2020-09-24 16:36:12 +00:00
yarikoptic
661fdbf51e Added a comment: is -J shared between workers and ASYNC or "multipliticative"? 2020-09-24 15:37:21 +00:00
yarikoptic
9e033f3001 initial TODO for making failure messages for processes be more informative 2020-09-23 13:03:38 +00:00
Joey Hess
6a5e0cbfc7
Improve the "Try making some of these repositories available" message
With some hints for the user for what to do.

Took care to avoid changing the json output. It would have been ok to add
the new separated lists to it, in addition to the old list, but I didn't
do that because I didn't see much point.
2020-09-22 14:10:30 -04:00
Joey Hess
5cfcf1f05f
cache remote.log
Unlikely to speed up any of the existing uses much, but I want to use it
in a message that might be displayed many times.
2020-09-22 13:52:26 -04:00
Joey Hess
ebdce707da
fix typo 2020-09-22 13:26:49 -04:00
Joey Hess
361ef19999
wording 2020-09-22 12:39:33 -04:00
Joey Hess
41044de833
comment 2020-09-22 12:24:22 -04:00
achilleas.k@14be77d42a1252fab5ec9dbf4e5ea03c5833e8c8
c084bf7a31 Added a comment 2020-09-21 14:42:03 +00:00
kyle
8ae39dc930 Added a comment 2020-09-21 14:38:26 +00:00
achilleas.k@14be77d42a1252fab5ec9dbf4e5ea03c5833e8c8
88729cbfeb 2020-09-21 14:15:18 +00:00
NicholasLee
ed04443d36 Added a comment 2020-09-21 00:24:32 +00:00
Ilya_Shlyakhter
7768406d49 Added a comment: history of annexed file 2020-09-20 21:58:45 +00:00
NicholasLee
7108ff5933 Added a comment 2020-09-20 02:28:11 +00:00
yarikoptic
c44cd27520 Added a comment 2020-09-18 20:11:27 +00:00
Joey Hess
46a7fcef0d
close 2020-09-18 13:21:32 -04:00
Joey Hess
186c3827d0
comment 2020-09-18 13:21:00 -04:00
Joey Hess
d0b06c17c0
Added --no-check-gitignore option for finer grained control than using --force.
add, addurl, importfeed, import: Added --no-check-gitignore option
for finer grained control than using --force.

(--force is used for too many different things, and at least one
of these also uses it for something else. I would like to reduce
--force's footprint until it only forces drops or a few other data
losses. For now, --force still disables checking ignores too.)

addunused: Don't check .gitignores when adding files. This is a behavior
change, but I justify it by analogy with git add of a gitignored file
adding it, asking to add all unused files back should add them all back,
not skip some. The old behavior was surprising.

In Command.Lock and Command.ReKey, CheckGitIgnore False does not change
behavior, it only makes explicit what is done. Since these commands are run
on annexed files, the file is already checked into git, so git add won't
check ignores.
2020-09-18 13:19:13 -04:00
Joey Hess
500454935f
comment 2020-09-18 12:08:11 -04:00
Joey Hess
956ff1350a
Merge branch 'master' of ssh://git-annex.branchable.com into master 2020-09-18 12:00:12 -04:00
Joey Hess
81a38df5a7
add missing CHECKURL-FAILURE ErrorMsg to docs 2020-09-18 11:58:18 -04:00
yarikoptic
b48acde47d some whining about check-ignore 2020-09-18 15:30:23 +00:00
yarikoptic
f913822c03 initial todo to add ErrorMsg to all -FAILURE responses 2020-09-17 23:39:42 +00:00
Joey Hess
922621301a
Serialize use of C magic library, which is not thread safe.
This fixes failures uploading to S3 when using -J.

This commit was sponsored by Denis Dzyubenko on Patreon.
2020-09-17 17:27:42 -04:00
Joey Hess
59f5d6509c
comment 2020-09-17 17:19:58 -04:00
Joey Hess
d293c0bced
improve this comment 2020-09-17 17:19:45 -04:00
https://christian.amsuess.com/chrysn
b301a64aa2 Added a comment: Re: comment 1 2020-09-17 20:42:12 +00:00
Joey Hess
f2cdacdb68
reproduced, some tcpdump analysis 2020-09-17 16:23:29 -04:00
Joey Hess
16c05c176c
comment 2020-09-17 14:26:16 -04:00
https://christian.amsuess.com/chrysn
7749b2278b Added a comment: update 2020-09-17 14:57:54 +00:00
https://christian.amsuess.com/chrysn
0d8f6e70f5 document bug i ran into early while exploring httpalso 2020-09-17 14:43:49 +00:00
Joey Hess
83df401d93
Merge branch 'batchasync' into master 2020-09-16 13:02:58 -04:00
Joey Hess
10f9107c1b
close 2020-09-16 13:02:35 -04:00
Joey Hess
38e9fc0161
tip documenting mostly --batch --json including with -J 2020-09-16 13:00:47 -04:00
Joey Hess
877ef84a1b
support --batch -J
--batch combined with -J now runs batch requests concurrently for many
commands. Before, the combination was accepted, but did not enable
concurrency. Since the output of batch requests can be in any order, --json
with the new "input" field is recommended to be used, to determine which
batch request each response corresponds to.

If --json is not used, batch mode still runs concurrently, using the usual
concurrent-output. That will not be very useful for most batch mode users,
probably, but who knows.

If a program was using --batch -J before, and was parsing non-json output,
this could break it. But, it was relying on git-annex not supporting
concurrency despite it being enabled, so it should have expected concurrent
output. So, I think that's ok.

annex.jobs does not enable concurrency in --batch mode, because that would
confuse programs that use --batch but don't expect concurrency.
2020-09-16 12:10:37 -04:00
Joey Hess
d677a30d54
comment 2020-09-15 16:41:01 -04:00
Joey Hess
2a7005a52f
Merge branch 'master' of ssh://git-annex.branchable.com into master 2020-09-15 16:30:22 -04:00
Joey Hess
929de3bb37
groundwork complete 2020-09-15 16:29:38 -04:00
jochen.keil@38b1f86ab65128dab3e62e726403ceee4f5141bf
56c19a8da4 Added a comment 2020-09-15 13:34:48 +00:00
Joey Hess
a5d5935c0e
few more details 2020-09-14 20:00:54 -04:00
Joey Hess
ad9bb120f0
info gathered from irc 2020-09-14 19:52:49 -04:00
Joey Hess
c87f73f638
point to commit that may fix this 2020-09-14 18:30:41 -04:00
Joey Hess
e26960752c
close as dup 2020-09-14 17:19:10 -04:00
Joey Hess
519aba2beb
close as dup 2020-09-14 17:15:54 -04:00
Joey Hess
c6e159550d
update 2020-09-14 16:57:47 -04:00
kyotov
b6d3c8a0af 2020-09-13 16:40:53 +00:00
Ilya_Shlyakhter
9f91f83b75 Added a comment: standalone build version oddity 2020-09-12 19:07:58 +00:00
falsifian
d2427daa5c clarify first fsck call gave no output 2020-09-12 15:50:18 +00:00
falsifian
1eac1c26bf 2020-09-12 15:43:49 +00:00
falsifian
2cedadf82a removed 2020-09-12 15:30:38 +00:00
falsifian
37abb540e9 Added a comment 2020-09-12 15:30:06 +00:00
falsifian
9fb8397936 Added a comment 2020-09-12 15:29:42 +00:00
Ilya_Shlyakhter
be59e433b4 Added a comment: updating the standalone distribution to 8.20200908 2020-09-12 15:20:21 +00:00
falsifian
6308af9cf5 2020-09-12 15:14:00 +00:00
falsifian
c3cd22877a removed 2020-09-12 03:52:07 +00:00
falsifian
320f918e9c removed 2020-09-12 03:51:52 +00:00
falsifian
7691d758bc Added a comment 2020-09-12 03:44:52 +00:00
falsifian
62fad04cce Added a comment: Can I actually add a requirement like "at least two copies stored offsite" without specifying a particular repo? 2020-09-12 03:36:03 +00:00
yarikoptic
175fe50a65 initial report on the stuck test on osx 2020-09-11 02:18:21 +00:00
Joey Hess
8955ac39f8
Merge branch 'master' of ssh://git-annex.branchable.com into master 2020-09-10 13:14:06 -04:00
Joey Hess
63d6cb27a9
thoughts 2020-09-10 13:13:39 -04:00
git@3af0a87771c4b55bee8a599b934914cd98d4bc0b
ee1722f7f8 Added a comment 2020-09-10 17:13:00 +00:00
Joey Hess
457036edf9
Merge branch 'master' of ssh://git-annex.branchable.com into master 2020-09-10 09:10:00 -04:00
Joey Hess
6813373490
todo 2020-09-10 09:08:40 -04:00
kyle
91f028fab7 Added a comment 2020-09-09 14:28:51 +00:00
git@3af0a87771c4b55bee8a599b934914cd98d4bc0b
cfc74c2f44 Added a comment: Re: Unknown remote type webdav 2020-09-09 10:19:25 +00:00
git@3af0a87771c4b55bee8a599b934914cd98d4bc0b
72f16a8fed Added a comment: Re: Unknown remote type webdav 2020-09-09 09:48:16 +00:00
Joey Hess
3a9d6a2e12
add news item for git-annex 8.20200908 2020-09-08 14:21:26 -04:00
Joey Hess
6ea511beb4
Removed the S3 and WebDAV build flags
So these special remotes are always supported.

IIRC these build flags were added because the dep chains were a bit too
long, or perhaps because the libraries were not available in Debian stable,
or something like that. That was long ago, those reasons no longer apply,
and users get confused when builtin special remotes are not available, so
it seems best to remove the build flags now.

If this does cause a problem it can be reverted of course..

This commit was sponsored by Jochen Bartl on Patreon.
2020-09-08 12:42:59 -04:00
Joey Hess
17479e45ab
comment 2020-09-08 12:31:37 -04:00
Joey Hess
101401e473
Merge branch 'master' of ssh://git-annex.branchable.com into master 2020-09-08 12:26:12 -04:00
Joey Hess
54404370e5
followup 2020-09-08 12:17:08 -04:00
git@3af0a87771c4b55bee8a599b934914cd98d4bc0b
dee38c54d9 Added a comment: Unknown remote type webdav 2020-09-08 13:19:51 +00:00
Joey Hess
62372ee052
resolvemerge: Improve cleanup of cruft left in the working tree by a conflicted merge
This commit was sponsored by Jake Vosloo on Patreon.
2020-09-07 16:50:27 -04:00
Joey Hess
03dee56546
revert change that broke test suite
Opened a new bug about it.

This commit was sponsored by Ethan Aubin.
2020-09-07 15:42:38 -04:00
Joey Hess
0389a22be3
devblog 2020-09-07 15:12:03 -04:00
Joey Hess
d120c73302
sync, assistant: When merge.directoryRenames is not set, default it it to "false"
Works better with automatic merge conflict resolution than git's ususual
default of "conflict".

This is not done when automatic merge conflict resolution is disabled.

This commit was sponsored by Mark Reidenbach on Patreon.
2020-09-07 13:50:58 -04:00
Joey Hess
69053a93a2
resolvemerge: Improve cleanup of files that were deleted by one side of a conflicted merge, and modified by the other side
This case was handled by cleanConflictCruft, but only when the annexed
file's object was present. When not present, it left the annexed file
with the original name, not checked into git, while adding the variant
file. So, add an explicit deletion of the deleted file in this case.

My specific case where this happened actually involves
merge.directoryRenames=conflict. After a merge involving that,
the situation was the file appears as "added by them", because that
caused the file that they added to be moved into a directory we renamed.

That case is the same as them adding a modified version of the file,
while we deleted it. (Except for the history of the file, since it's a
new file, but this doesn't look at history.)

This commit was sponsored by Boyd Stephen Smith Jr. on Patreon.
2020-09-07 12:25:57 -04:00
Joey Hess
a360437215
make automerge behavior when one side deleted explict
This does not actually change how the merge conflict is resolved when
one side deleted the file, but it was not documented before, and I think
it only worked by accident.

This commit was sponsored by Brett Eisenberg on Patreon.
2020-09-07 12:01:03 -04:00
Joey Hess
13fdba133f
more 2020-09-06 10:51:23 -04:00
Joey Hess
842afa71ab
bug 2020-09-06 10:42:19 -04:00