Commit graph

32608 commits

Author SHA1 Message Date
Joey Hess
b9d59cf721
document sync in adjusted branch behavior
This was documented in the git-annex-adjust man page, but not in
git-annex-sync
2023-02-08 12:48:31 -04:00
Joey Hess
dcaea65e39
comment 2023-02-08 12:41:54 -04:00
Joey Hess
21e8d201f3
link to related todo 2023-02-08 12:35:29 -04:00
Joey Hess
6f59d2e8eb
comment 2023-02-08 12:24:35 -04:00
Joey Hess
f3d9221131
Merge branch 'master' of ssh://git-annex.branchable.com 2023-02-08 12:22:42 -04:00
Joey Hess
ece8f393f8
fix spelling 2023-02-08 12:21:53 -04:00
Joey Hess
f19ee2c479
thought 2023-02-08 12:21:33 -04:00
anarcat
277ad51876 Added a comment 2023-02-08 15:38:03 +00:00
Joey Hess
9a8f6e8d67
todo 2023-02-08 09:40:07 -04:00
nobodyinperson
4f733c25ba Added a comment 2023-02-07 20:54:48 +00:00
Joey Hess
aa0350ff49
add directory to views for files that lack specified metadata
* view: New field?=glob and ?tag syntax that includes a directory "_"
  in the view for files that do not have the specified metadata set.
* Added annex.viewunsetdirectory git config to change the name of the
  "_" directory in a view.

When in a view using the new syntax, old git-annex will fail to parse the
view log. It errors with "Not in a view.", which is not ideal. But that
only affects view commands.

annex.viewunsetdirectory is included in the View for a couple of reasons.
One is to avoid needing to warn the user that it should not be changed when
in a view, since that would confuse git-annex. Another reason is that it
helped with plumbing the value through to some pure functions.

annex.viewunsetdirectory is actually mangled the same as any other view
directory. So if it's configured to something like "N/A", there won't be
multiple levels of directories, which would also confuse git-annex.

Sponsored-By: Jack Hill on Patreon
2023-02-07 16:28:46 -04:00
Joey Hess
fb30ad7846
comment 2023-02-07 13:31:45 -04:00
Joey Hess
5e7aa16d06
improve docs of view exclude values 2023-02-07 12:46:19 -04:00
Joey Hess
115f72766b
correct docs on view exclude values to not say globs work
globs have never worked in field!=
see commit c2e8c21ca6 when the feature was
added, which discussed why
2023-02-07 12:42:26 -04:00
Joey Hess
4b330203fc
comment 2023-02-07 12:35:01 -04:00
anarcat
a7ece3af99 2023-02-06 21:15:40 +00:00
MatusGoljer1
43a66d9396 Added a comment 2023-02-06 19:30:02 +00:00
Joey Hess
04ec726d3b
S3 region=
S3: Support a region= configuration useful for some non-Amazon S3
implementations. This feature needs git-annex to be built with aws-0.24.

datacenter= sets both the AWS hostname and region in one setting, which is
easy when using AWS, but not useful for other hosts. So kept datacenter
as-is, but added this additional config.

Sponsored-By: Brett Eisenberg on Patreon
2023-02-06 14:08:45 -04:00
Joey Hess
5aacc8eb59
comment 2023-02-06 13:05:27 -04:00
Joey Hess
29f4ec248f
comment 2023-02-06 12:50:34 -04:00
mike@2d6d71f56ce2a992244350475251df87c26fe351
0bf650432d Added a comment 2023-02-05 22:41:28 +00:00
nobodyinperson
3965919100 2023-02-03 13:40:41 +00:00
nobodyinperson
6de19ba619 Added a comment: 👍 +1 for updating the view when committing 2023-02-03 13:25:22 +00:00
jpds
209dd1f6c9 Added a comment 2023-02-02 15:53:34 +00:00
jwodder
16fab4676b 2023-02-01 19:55:29 +00:00
hurlebouc
35083c490a Added a comment 2023-02-01 12:26:05 +00:00
markus.l2ll@17cbf3ea36ca05f481e573fd58be50dce9bf8ef9
6aab372119 Added a comment: same error, same fix 2023-02-01 06:44:22 +00:00
jpds
048e77a04c Added a comment 2023-01-31 22:28:16 +00:00
Joey Hess
bc6e606014
analysis 2023-01-31 15:58:21 -04:00
Joey Hess
afd3cf4433
comment 2023-01-31 13:29:57 -04:00
hurlebouc
582dd16e63 2023-01-29 06:54:07 +00:00
jpds
dd923afc56 Added a comment 2023-01-28 00:00:13 +00:00
mih
363412f691 Added a comment: file:/// must be forced to file:// on windows 2023-01-27 09:19:10 +00:00
Joey Hess
da74f05a1e
add news item for git-annex 10.20230126 2023-01-26 15:27:44 -04:00
Joey Hess
8552b4e1a0
new linux autobuilder 2023-01-26 15:25:54 -04:00
aca
ac824ff96b Added a comment: thanks 2023-01-25 14:01:08 +00:00
nobodyinperson
d8d5564e69 Added a comment: Thank you!! 2023-01-24 21:15:50 +00:00
Joey Hess
b7c9d907e5
Merge branch 'master' of ssh://git-annex.branchable.com 2023-01-24 14:08:40 -04:00
Joey Hess
579d9b60c1
improve concurrency of move/copy --from --to
Use separate stages for download and upload. In the common case where
it downloads the file from one remote and then uploads to the other,
those are by far the most expensive operations, and there's a decent
chance the two remotes bottleneck on different resources.

Suppose it's being run with -J2 and a bunch of 10 mb files. Two threads
will be started both downloading from the src remote. They will probably
finish at the same time. Then two threads will be started uploading to
the dst remote. They will probably take the same time as well. Before
this change, it would alternate back and forth, bottlenecking on src and dst.
With this change, as soon as the two threads start uploading to dst, two
more threads are able to start, downloading from src. So bandwidth to
both remotes is saturated more often.

Other commands that use transferStages only send in one direction at a
time. So the worker threads for the other direction will sit idle, and
there will be no change in their behavior.

Sponsored-by: Dartmouth College's DANDI project
2023-01-24 13:59:39 -04:00
jpds
50af8467e3 Added a comment 2023-01-24 15:55:36 +00:00
nobodyinperson
4edae1430a Added a comment 2023-01-23 22:55:11 +00:00
nobodyinperson
c2c405d45a Added a comment 2023-01-23 22:38:28 +00:00
Joey Hess
57987ed2cd
update 2023-01-23 18:08:55 -04:00
Joey Hess
62f8a26dd9
Merge branch 'fromto' 2023-01-23 18:01:57 -04:00
Joey Hess
2a9999f5f1
Merge branch 'master' of ssh://git-annex.branchable.com 2023-01-23 18:01:12 -04:00
Joey Hess
1ee72de32e
done 2023-01-23 17:57:15 -04:00
Joey Hess
77266e46dd
fix behavior of copy --from --to
Sponsored-by: Dartmouth College's DANDI project
2023-01-23 17:55:16 -04:00
Joey Hess
3585481470
Merge branch 'master' into fromto 2023-01-23 17:44:44 -04:00
Joey Hess
acc3f6211f
finishing up move --from --to
Lock the local content for drop after getting it from src, to prevent another
process from using the local content as a copy and dropping it from src,
which would prevent dropping the local content after sending it to dest.

Support resuming an interrupted move that downloaded the content from
src, leaving the local content populated. In this case, the location log
has not been updated to say the content is present locally, so we can
assume that it's resuming and go ahead and drop the local content after
sending it to dest.

Note that if a `git-annex get` is being ran at the same time as a
`git-annex move --from --to`, it may get a file just before the move
processes it. So the location log has not been updated yet, and the move
thinks it's resuming. Resulting in local copy being dropped after it's
sent to the dest. This race is something we'll just have to live with,
it seems.

I also gave up on the idea of checking if the location log had been updated
by a `git-annex get` that is ran at the same time. That wouldn't work, because
the location log is precached in the seek stage, so reading it again after
sending the content to dest would not notice changes made to it, unless the cache
were invalidated, which would slow it down a lot. That idea anyway was subject
to races where it would not detect the concurrent `git-annex get`.

So concurrent `git-annex get` will have results that may be surprising.
To make that less surprising, updated the documentation of this feature to
be explicit that it downloads content to the local repository
temporarily.

Sponsored-by: Dartmouth College's DANDI project
2023-01-23 17:43:48 -04:00
Joey Hess
05b2ae30f0
update 2023-01-23 12:45:01 -04:00
meribold
aad9581d11 Fix typo in heading that seems to result in git-annex-drop not showing up in man -k output 2023-01-22 15:25:35 +00:00
Joey Hess
45c338204f
Merge branch 'master' of ssh://git-annex.branchable.com 2023-01-20 11:23:24 -04:00
Joey Hess
5645017a03
comment 2023-01-20 11:23:04 -04:00
Joey Hess
6f95f821cb
remove --fast from man page
git-annex move does not actually behave any differently with --fast than
without it. (git-annex copy does)

(cherry picked from commit f74904ee2c)
2023-01-20 11:11:31 -04:00
nobodyinperson
f14346bf07 2023-01-20 10:29:33 +00:00
jpds
73cc3fcd12 Added a comment 2023-01-19 16:28:19 +00:00
jpds
dce215e11a Added a comment 2023-01-19 15:09:01 +00:00
jpds
c071ea267d Added a comment 2023-01-18 22:57:58 +00:00
jpds
da6504ee13 2023-01-18 22:45:06 +00:00
Joey Hess
f74904ee2c
remove --fast from man page
git-annex move does not actually behave any differently with --fast than
without it. (git-annex copy does)
2023-01-18 15:15:41 -04:00
Joey Hess
a6c1d9752b
move/copy: option parsing for --from with --to
Allowing --from and --to as an alternative to --from or --to
is hard to do with optparse-applicative!

The obvious approach of (pfrom <|> pto <|> pfromandto) does not work
when pfromandto uses the same option names as pfrom and pto do.
It compiles but the generated parser does not work for all desired
combinations.

Instead, have to parse optionally from and optionally to. When neither
is provided, the parser succeeds, but it's a result that can't be
handled. So, have to giveup after option parsing. There does not seem to
be a way to make an optparse-applicative Parser give up internally
either.

Also, need seek' because I first tried making fto be a where binding,
but that resulted in a hang when git-annex move was run without --from
or --to. I think because startConcurrency was not expecting the stages
value to contain an exception and so ended up blocking.

Sponsored-by: Dartmouth College's DANDI project
2023-01-18 14:42:39 -04:00
yarikoptic
ea44f2416c Added a comment 2023-01-18 17:55:50 +00:00
Joey Hess
2a92f5cc2c
comment 2023-01-18 13:05:47 -04:00
Joey Hess
f8bc208e89
findkeys: New command, very similar to git-annex find but operating on keys
I've long been asked for `git-annex find --all` or something like that,
but pushed back on it because I feel that the command is analagous to
find(1) and so it would be surprising for it to list keys rather than
files. So instead, add a new findkeys subcommand.

Note that the use of withKeyOptions is rather strange because usually
that is used to fall back to --all rather than listing files, but here
it's made to default to --all like behavior and never list files.

A performance thing that could be improved is that withKeyOptions
always reads and caches location logs. But findkeys with no options does
not need them, so it could be made faster. That caching does speed up
options like --in though. This is really just a subset of a more general
performance thing that --all reads location logs sometimes unncessarily.
Anyway, it needs to read the location log in order to checkDead,
and it seems good that findkeys does skip dead keys.

Also, cleaned up comments on git-annex-find man page asking for --all
option.

Sponsored-by: Dartmouth College's DANDI project
2023-01-17 14:51:57 -04:00
Joey Hess
ce241f9aa9
comment 2023-01-17 13:10:28 -04:00
Joey Hess
eb5b072e2e
comment 2023-01-17 13:08:49 -04:00
daven.quinn@d0ed4e0e5e4462d9a74a5d5a8fbd1b17f85db13e
be6aec3100 Added a comment: comment 1 response 2023-01-16 21:45:35 +00:00
yarikoptic
e42ac8844e Added a comment 2023-01-16 21:43:40 +00:00
yarikoptic
fdca11e815 Added a comment 2023-01-16 21:32:09 +00:00
yarikoptic
4890c70a1b Added a comment 2023-01-16 21:27:12 +00:00
Joey Hess
fdd0b4bae0
comment 2023-01-16 16:12:16 -04:00
Joey Hess
c172855a7f
Merge branch 'master' of ssh://git-annex.branchable.com 2023-01-16 15:53:14 -04:00
Joey Hess
e97da33773
comment 2023-01-16 15:52:52 -04:00
yarikoptic
35435cd955 initial report on difficulty moving frozen file 2023-01-16 19:36:07 +00:00
Joey Hess
527e70fc69
comment 2023-01-16 15:26:21 -04:00
Joey Hess
cae12e0ccd
comment 2023-01-16 15:15:21 -04:00
Joey Hess
8bb078e0df
response 2023-01-16 15:13:00 -04:00
Joey Hess
9be56daf07
comment 2023-01-16 15:07:46 -04:00
Joey Hess
ec0107098d
close wontfix with submitter agreement 2023-01-16 14:40:30 -04:00
Joey Hess
321850a67d
close as dup 2023-01-16 14:37:44 -04:00
Joey Hess
62dd19e391
comment 2023-01-16 14:28:46 -04:00
Joey Hess
086cb30eb1
comment 2023-01-16 14:16:13 -04:00
Joey Hess
f87c74566a
close wontfix 2023-01-16 14:08:37 -04:00
Joey Hess
7f39037e57
close 2023-01-16 14:02:10 -04:00
Joey Hess
4229e6761e
close 2023-01-16 13:57:54 -04:00
Joey Hess
817b06b439
close wontfix 2023-01-16 13:53:54 -04:00
Joey Hess
90e21c59a1
comment 2023-01-16 13:51:19 -04:00
Joey Hess
6156fe625d
close this old todo 2023-01-16 13:45:24 -04:00
Joey Hess
dcebf6851a
comment 2023-01-16 13:36:08 -04:00
Joey Hess
df5a3a6ca4
respond and wontfix 2023-01-16 13:35:14 -04:00
Joey Hess
8955a9c7d2
comment 2023-01-16 13:16:02 -04:00
Joey Hess
156842cff6
comment 2023-01-16 12:58:32 -04:00
yarikoptic
3b769d91dd Added a comment 2023-01-12 20:48:48 +00:00
Joey Hess
cfaae7e931
added an optional cost= configuration to all special remotes
Note that when this is specified and an older git-annex is used to
enableremote such a special remote, it will simply ignore the cost= field
and use whatever the default cost is.

In passing, fixed adb to support the remote.name.cost and
remote.name.cost-command configs.

Sponsored-by: Dartmouth College's DANDI project
2023-01-12 13:42:28 -04:00
nobodyinperson
8da345b1fb 2023-01-12 10:10:37 +00:00
Joey Hess
8a305e5fa3
respect urlinclude/urlexclude of other web special remotes
When a web special remote does not have urlinclude/urlexclude
configured, make it respect the configuration of other web special
remotes and avoid using urls that match the config of another.

Note that the other web special remote does not have to be enabled.
That seems ok, it would have been extra work to check for only ones that
are enabled.

The implementation does mean that the web special remote re-parses
its own config once at startup, as well as re-parsing the configs of any
other web special remotes. This should be a very small slowdown
unless there are lots of web special remotes.

Sponsored-by: Dartmouth College's DANDI project
2023-01-10 14:58:53 -04:00
Joey Hess
0fc476f16e
comments 2023-01-10 11:52:11 -04:00
yarikoptic
79be0eea2f Added a comment: Concern 2023-01-10 13:17:30 +00:00
nobodyinperson
4a13131ce7 Added a comment: {copy,move} with both --to and --from would be great! 2023-01-10 09:38:39 +00:00
yarikoptic
dfaccf0b21 Added a comment 2023-01-09 22:04:11 +00:00