Commit graph

28088 commits

Author SHA1 Message Date
superhair123
1614e3e4cd 2020-06-01 13:46:52 +00:00
superhair123
401f0f7d5a 2020-06-01 13:44:15 +00:00
TroisSinges
ef04af6869 2020-06-01 07:36:47 +00:00
thk
8ac64700ec 2020-05-31 18:32:52 +00:00
thk
3ece3aafe6 2020-05-31 18:12:40 +00:00
branchable@bafd175a4b99afd6ed72501042e364ebd3e0c45e
32ef0206fb Added a comment 2020-05-31 11:03:05 +00:00
Joey Hess
2b52962ea2
commnet 2020-05-29 15:36:42 -04:00
Joey Hess
ed2d2ae256
Merge branch 'master' of ssh://git-annex.branchable.com 2020-05-29 13:09:01 -04:00
Joey Hess
0ba6144597
devblog 2020-05-29 13:08:38 -04:00
yarikoptic
e8dd62689b Added a comment 2020-05-28 23:53:58 +00:00
kyle
f5e300909f Added a comment 2020-05-28 20:41:48 +00:00
Joey Hess
0243c6b6c5
comment 2020-05-28 16:31:53 -04:00
Joey Hess
ba11fad102
Merge branch 'master' of ssh://git-annex.branchable.com 2020-05-28 15:56:07 -04:00
Joey Hess
89b2542d3c
annex.skipunknown with transition plan
Added annex.skipunknown git config, that can be set to false to change the
behavior of commands like `git annex get foo*`, to not skip over files/dirs
that are not checked into git and are explicitly listed in the command
line.

Significant complexity was needed to handle git-annex add, which uses some
git ls-files calls, but needs to not use --error-unmatch because of course
the files are not known to git.

annex.skipunknown is planned to change to default to false in a
git-annex release in early 2022. There's a todo for that.
2020-05-28 15:55:17 -04:00
kyle
8b280d4d8a Added a comment 2020-05-28 17:55:11 +00:00
Joey Hess
5b28a37ea1
titles 2020-05-28 13:21:56 -04:00
Joey Hess
5ffc864718
comment 2020-05-28 13:21:40 -04:00
branchable@bafd175a4b99afd6ed72501042e364ebd3e0c45e
19ad80de22 2020-05-28 16:25:27 +00:00
Joey Hess
4bf8f45efe
comment 2020-05-28 12:22:52 -04:00
Joey Hess
5e71e81fb6
close 2020-05-28 12:10:52 -04:00
Joey Hess
1572d72931
remove dup comment 2020-05-28 12:09:37 -04:00
Joey Hess
f2d91be78b
close 2020-05-28 12:08:26 -04:00
Joey Hess
e84d4c7a64
followup 2020-05-28 12:01:35 -04:00
Joey Hess
1d63d2bc83
close 2020-05-28 11:36:30 -04:00
Joey Hess
399eb4bdec
close 2020-05-28 11:32:27 -04:00
https://christian.amsuess.com/chrysn
e18af2d5d9 Formatting fixes (markdown swallowed the line breaks making the entry hard to read) 2020-05-28 12:47:51 +00:00
thk
c0437bfd2c Added a comment 2020-05-27 20:41:03 +00:00
thk
700559737d 2020-05-27 19:13:30 +00:00
Joey Hess
fb642d3d3f
response 2020-05-27 14:33:30 -04:00
thk
c342501c17 2020-05-27 17:52:29 +00:00
Joey Hess
a6271b1323
Merge branch 'master' of ssh://git-annex.branchable.com 2020-05-27 12:46:52 -04:00
Joey Hess
484a74f073
auto-init autoenable=yes
Try to enable special remotes configured with autoenable=yes when git-annex
auto-initialization happens in a new clone of an existing repo. Previously,
git-annex init had to be explicitly run to enable them. That was a bit of a
wart of a special case for users to need to keep in mind.

Special remotes cannot display anything when autoenabled this way, to avoid
interfering with the output of git-annex query commands.

Any error messages will be hidden, and if it fails, nothing is displayed.
The user will realize the remote isn't enable when they try to use it,
and can run git-annex init manually then to try the autoenable again and
see what failed.

That seems like a reasonable approach, and it's less complicated than
communicating something across a pipe in order to display it as a side
message. Other reason not to do that is that, if the first command the
user runs is one like git-annex find that has machine readable output,
any message about autoenable failing would need to not be displayed anyway.
So better to not display a failure message ever, for consistency.

(Had to split out Remote.List.Util to avoid an import cycle.)
2020-05-27 12:40:35 -04:00
mike@2d6d71f56ce2a992244350475251df87c26fe351
311e605c28 Added a comment: .noannex 2020-05-27 15:34:54 +00:00
Joey Hess
731815891d
improve wording 2020-05-27 11:19:15 -04:00
kyle
3e717128f8 Added a comment 2020-05-27 15:19:13 +00:00
mike@2d6d71f56ce2a992244350475251df87c26fe351
7776691ead 2020-05-27 15:10:57 +00:00
Joey Hess
3cf5f303ea
close 2020-05-27 11:03:18 -04:00
Joey Hess
298fa1c081
done 2020-05-27 11:00:57 -04:00
TroisSinges
610d04dbf7 2020-05-27 10:35:42 +00:00
git-annex@17927e6dc041ab425c14217a97a685adf3ecf44f
ff62042ba3 2020-05-27 05:21:35 +00:00
Joey Hess
7aba1aa49b
Merge branch 'master' of ssh://git-annex.branchable.com 2020-05-26 14:02:24 -04:00
Joey Hess
864ba4ecaa
disable buggy concurrency in Command.Export
Fix a crash or potentially not all files being exported when sync -J
--content is used with an export remote.

Crash as described in fixed bug report.

waitForAllRunningCommandActions inserted in several points where all the
commandActions started before need to have finished before moving on to
the next stage of the export. A race across those points could have
maybe resulted in not all files being exported, or a wrong tree being
export.

For example, changeExport starting up an action like
a rename of A to B. Then, with that action still running, fillExport
uploading a new A, *before* the rename occurred. That race seems
unlikely to have happened. There are some other ones that this also
fixes.
2020-05-26 13:54:08 -04:00
https://christian.amsuess.com/chrysn
7211cf63b6 Added a comment 2020-05-26 16:35:25 +00:00
Joey Hess
0bcecb67f5
export: Let concurrent transfers be done with -J or annex.jobs
Tested working, although I did find this bug in my testing, which also
afflicts sync -J to an export remote.
2020-05-26 11:44:07 -04:00
Joey Hess
f7fe71602c
import: Added --json-progress
Already supported --json, but not that.

Also checked all other commands that only support --json, and the only
other one that does transfers is fsck (--from), which it did not seem worth
adding --json-progress to really.
2020-05-26 11:27:47 -04:00
Joey Hess
e283c28249
comment 2020-05-26 11:21:10 -04:00
Joey Hess
fc9833f68d
export: Added options for json output
Just worked, no need to do anything except add the options.
2020-05-26 10:31:10 -04:00
Joey Hess
bbdba72624
Merge branch 'master' of ssh://git-annex.branchable.com 2020-05-26 10:21:21 -04:00
yarikoptic
d30dd6daa4 TODO for export --json* options 2020-05-26 04:14:57 +00:00
Joey Hess
6eea4969d3
close 2020-05-25 12:04:56 -04:00
Joey Hess
234764518a
close 2020-05-25 12:02:23 -04:00
Joey Hess
e46717bf18
close 2020-05-25 11:59:21 -04:00
Joey Hess
133de41e49
close 2020-05-25 11:56:27 -04:00
Joey Hess
5f5a2a6b56
close 2020-05-25 11:52:45 -04:00
Joey Hess
fcb288be13
close dup 2020-05-25 11:48:39 -04:00
Joey Hess
4d87d255ee
comment 2020-05-25 11:47:10 -04:00
Joey Hess
7cc5e955b6
close 2020-05-25 11:31:38 -04:00
braun.markus89@51b521a42cc994db864df308627bd6454f9c309d
1ac2b8cc07 Added a comment 2020-05-25 11:07:08 +00:00
braun.markus89@51b521a42cc994db864df308627bd6454f9c309d
91a8b271f7 Added a comment 2020-05-25 11:06:05 +00:00
https://christian.amsuess.com/chrysn
6ae6242a42 Tried --preserve-filename with a torrent, didn't work 2020-05-25 10:03:16 +00:00
Joey Hess
87dc9cd0f8
add news item for git-annex 8.20200522 2020-05-22 12:08:32 -04:00
arseni.lapunov@34f437c25a6a8c6d317dce0bb7c5b44d568fa595
55acb2e522 Added a comment: git-annex get fails 2020-05-22 14:28:24 +00:00
basile.pinsard@f1a7fae9f3bd9d5282fca11f62ad53b45a8eb317
93be470d2c Added a comment 2020-05-22 13:24:19 +00:00
beryllium@5bc3c32eb8156390f96e363e4ba38976567425ec
49a01413bc 2020-05-22 11:15:27 +00:00
Joey Hess
5acc9f2a9f
remove this post to a deleted topic 2020-05-21 15:33:14 -04:00
Joey Hess
1264ae3315
response 2020-05-21 15:32:48 -04:00
Joey Hess
ae2c4e5c7b
Merge branch 'master' of ssh://git-annex.branchable.com 2020-05-21 15:27:01 -04:00
Joey Hess
27459c6e3f
Support building with tasty-1.3
This commit was sponsored by Ethan Aubin.
2020-05-21 15:26:44 -04:00
codelix
f533957ab3 Added a comment 2020-05-21 19:17:55 +00:00
Joey Hess
df5d72c88b
Merge branch 'master' of ssh://git-annex.branchable.com 2020-05-21 15:11:33 -04:00
codelix
efdcf0872a Added a comment 2020-05-21 19:11:01 +00:00
Joey Hess
6702bc961b
remove this thread, which has outlived its usefulness
Based on the last three comments on this thread it was going to keep
collecting complaints from people who glanced at the thread, did not
notice it was for an old, solved issue, and decided to followup.

Also, the tone of this thread, while very constructive in some places,
is very very outraged in others. This apparently leads people to feel
that randomly saying they don't trust me is a reasonable thing to post
at the end of a long thread they have not bothered to read all of, by
their own admission.

So this thread seems to have become a source of confusion for users, and
a source of pain and disincentive to worm on git-annex for me. Yes, I'm
taking the rest of today to go do something actually fun obviously.
2020-05-21 15:03:29 -04:00
Joey Hess
67e9efa03a
response 2020-05-21 14:55:14 -04:00
Joey Hess
75bfcca462
Merge branch 'master' of ssh://git-annex.branchable.com 2020-05-21 14:47:51 -04:00
Joey Hess
e63dcbf36c
fix embedcreds=yes reversion
Fix bug that made enableremote of S3 and webdav remotes, that have
embedcreds=yes, fail to set up the embedded creds, so accessing the remotes
failed.

(Regression introduced in version 7.20200202.7 in when reworking all the
remote configs to be parsed.)

Root problem is that parseEncryptionConfig excludes all other config keys
except encryption ones, so it is then unable to find the
credPairRemoteField. And since that field is not required to be
present, it proceeds as if it's not, rather than failing in any visible
way.

This causes it to not find any creds, and so it does not cache
them. When when the S3 remote tries to make a S3 connection, it finds no
creds, so assumes it's being used in no-creds mode, and tries to find a
public url. With no public url available, it fails, but the failure doesn't
say a lack of creds is the problem.

Fix is to provide setRemoteCredPair with a ParsedRemoteConfig, so the full
set of configs of the remote can be parsed. A bit annoying to need to
parse the remote config before the full config (as returned by
setRemoteCredPair) is available, but this avoids the problem.

I assume webdav also had the problem by inspection, but didn't try to
reproduce it with it.

Also, getRemoteCredPair used getRemoteConfigValue to get a ProposedAccepted
String, but that does not seem right. Now that it runs that code, it
crashed saying it had just a String.

Remotes that have already been enableremoted, and so lack the cached creds
file will work after this fix, because getRemoteCredPair will extract
the creds from the remote config, writing the missing file.

This commit was sponsored by Ilya Shlyakhter on Patreon.
2020-05-21 14:35:30 -04:00
codelix
0f3dba8be8 Added a comment 2020-05-21 18:00:58 +00:00
codelix
9ae7eb023f Added a comment: SO frustrating 2020-05-21 17:55:09 +00:00
Joey Hess
0ae63d5eec
comment 2020-05-21 13:06:46 -04:00
kyle
9aa1c525e6 Added a comment 2020-05-21 17:06:12 +00:00
codelix
fa50b31ea5 2020-05-21 16:42:58 +00:00
Joey Hess
d5b7d2a473
followup and close 2020-05-21 12:30:51 -04:00
Joey Hess
2de40ba4da
improve docs around uri claiming 2020-05-21 11:58:57 -04:00
basile.pinsard@f1a7fae9f3bd9d5282fca11f62ad53b45a8eb317
5cd0b7f204 Added a comment: reverting metadata 2020-05-21 13:39:37 +00:00
braun.markus89@51b521a42cc994db864df308627bd6454f9c309d
50357aa48b Added a comment 2020-05-20 13:54:23 +00:00
Joey Hess
d7c7245438
whereis: Added --format option.
One way this can be used is to remove all urls for some website that went
away:

git-annex whereis --format '${file} ${url}\0' | \
	grep -z whatever.com | git-annex rmurl --batch -z

Combining ${url} and ${uuid} is a bit of a combinatorial explosion.
It didn't seem worth only outputting a uuid alongside an url belonging
to it, so each uuid is output beside each url.
2020-05-19 16:20:56 -04:00
Joey Hess
224208a657
comment 2020-05-19 13:18:34 -04:00
tobias@900fabbc7137f1974fb072b778e826e3dd931e5f
223941e1fb 2020-05-19 09:58:07 +00:00
tobias@900fabbc7137f1974fb072b778e826e3dd931e5f
92ede0970f 2020-05-19 07:44:07 +00:00
tobias@900fabbc7137f1974fb072b778e826e3dd931e5f
a76899b11f 2020-05-19 00:09:42 +00:00
arseni.lapunov@34f437c25a6a8c6d317dce0bb7c5b44d568fa595
de86a8d579 2020-05-18 15:07:35 +00:00
braun.markus89@51b521a42cc994db864df308627bd6454f9c309d
1259b73c39 2020-05-18 08:00:16 +00:00
braun.markus89@51b521a42cc994db864df308627bd6454f9c309d
b4e94b2a41 2020-05-18 07:59:55 +00:00
braun.markus89@51b521a42cc994db864df308627bd6454f9c309d
7ab8b9a451 2020-05-18 07:58:43 +00:00
braun.markus89@51b521a42cc994db864df308627bd6454f9c309d
b0bfb1e0e5 2020-05-17 08:13:41 +00:00
braun.markus89@51b521a42cc994db864df308627bd6454f9c309d
0b1e94074e 2020-05-16 15:08:34 +00:00
braun.markus89@51b521a42cc994db864df308627bd6454f9c309d
42072fe9ad 2020-05-16 15:07:41 +00:00
braun.markus89@51b521a42cc994db864df308627bd6454f9c309d
fc7caa5b2b 2020-05-16 15:06:42 +00:00
jeanpmbox-456@7222359de8d1f37a7cf25a519e8faf90a9517b50
99c4eb020e Added a comment 2020-05-15 21:21:30 +00:00
jeanpmbox-456@7222359de8d1f37a7cf25a519e8faf90a9517b50
2db70d70d1 Added a comment 2020-05-15 21:14:53 +00:00
Joey Hess
9dfcd60b8e
Merge branch 'master' of ssh://git-annex.branchable.com 2020-05-15 15:12:49 -04:00
Joey Hess
6361074174
convert renameExport to throw exception
Finishes the transition to make remote methods throw exceptions, rather
than silently hide them.

A bit on the fence about this one, because when renameExport fails,
it falls back to deleting instead, and so does the user care why it failed?

However, it did let me clean up several places in the code.

This commit was sponsored by Ethan Aubin.
2020-05-15 15:08:09 -04:00
Joey Hess
00448349de
devblog 2020-05-15 14:53:41 -04:00
https://christian.amsuess.com/chrysn
112d2f8e7b Added a comment: Re: Usefulness of batch key processing 2020-05-15 09:33:22 +00:00
https://christian.amsuess.com/chrysn
340287ef94 Added a comment: Usefulness of batch key processing 2020-05-15 09:21:15 +00:00
globallyunique@da2274b36ca296fe35912b9fd7387e3a5bd17c7c
acec8e3c89 Added a comment: GCS using S3: removeKey when not present: FAIL 2020-05-14 20:39:21 +00:00
globallyunique@da2274b36ca296fe35912b9fd7387e3a5bd17c7c
e6937e7643 2020-05-14 01:52:30 +00:00
https://launchpad.net/~felixonmars
f246e78fd7 2020-05-13 20:35:29 +00:00
Joey Hess
a6adea4aaf
Merge branch 'master' of ssh://git-annex.branchable.com 2020-05-13 14:05:11 -04:00
Joey Hess
c1cd402081
make storeKey throw exceptions
When storing content on remote fails, always display a reason why.

Since the Storer used by special remotes already did, this mostly affects
git remotes, but not entirely. For example, if git-lfs failed to connect to
the endpoint, it used to silently return False.
2020-05-13 14:03:00 -04:00
Chymera
e42d2ce0c7 Added a comment 2020-05-13 04:15:53 +00:00
ryan.singer@5db89d157f0565db67eac571e2433fa96c187e32
3b231f900c Added a comment 2020-05-12 23:26:11 +00:00
Joey Hess
898770dda1
comment 2020-05-12 13:58:14 -04:00
Joey Hess
35b3c891af
followup 2020-05-12 12:48:07 -04:00
Joey Hess
64e081d585
Merge branch 'master' of ssh://git-annex.branchable.com 2020-05-12 09:56:21 -04:00
Joey Hess
75add873de
fix paste 2020-05-12 09:55:54 -04:00
efraim@78c5af2ab57cf0d7aa23bae3dd0adb700c98217c
f0fc1a3906 Added a comment 2020-05-12 13:16:51 +00:00
Joey Hess
959ae7733a
man pages improvements
Added some examples. Tightened up some language and removed some
unncessary duplicate documentaton.
2020-05-12 09:07:45 -04:00
Chymera
47bd71b096 2020-05-12 07:05:23 +00:00
Joey Hess
2a8fdfc7d8
Display a warning message when asked to operate on a file inside a directory that's a symbolic link to elsewhere
This relicates git's behavior. It adds a few stat calls for the command
line parameters, so there is some minor slowdown, but even with thousands
of parameters it will not be very noticable, and git does the same statting
in similar circumstances.

Note that this does not prevent eg "git annex add symlink"; the symlink
will be added to git as usual. And "git annex find symlink" will silently
list nothing as well. It's only "symlink/foo" or "subdir/symlink/foo" that
triggers the warning.
2020-05-11 15:03:35 -04:00
Joey Hess
39d7e6dd2a
addurl --preserve-filename for other remotes
Finishing work begun in 6952060665

Also, truncate filenames provided by other remotes if they're too long,
when --preserve-filename is not used. That seems to have been omitted
before by accident.
2020-05-11 14:33:27 -04:00
Joey Hess
cabbc91b18
addurl, importfeed: Allow '-' in filenames, as long as it's not the first character 2020-05-11 13:50:49 -04:00
Joey Hess
57451bd9a1
followup 2020-05-11 13:06:39 -04:00
Joey Hess
3b15145703
fix name of option 2020-05-11 13:05:57 -04:00
Joey Hess
79cc7cba93
response 2020-05-11 12:56:34 -04:00
Joey Hess
568c2b58c2
comments 2020-05-11 12:49:50 -04:00
Joey Hess
0e2e8df8bf
bug 2020-05-11 12:38:40 -04:00
efraim@78c5af2ab57cf0d7aa23bae3dd0adb700c98217c
84d5f77630 Added a comment 2020-05-11 11:29:34 +00:00
yarikoptic
2d8c8868ef Added a comment 2020-05-10 16:30:51 +00:00
yarikoptic
2b125e0dd7 Added a comment 2020-05-09 22:10:44 +00:00
globallyunique@da2274b36ca296fe35912b9fd7387e3a5bd17c7c
f02ec096d4 2020-05-09 19:25:28 +00:00
the13thletter
b8a472ba84 2020-05-08 22:10:29 +00:00
Joey Hess
6952060665
addurl --preserve-filename and a few related changes
* addurl --preserve-filename: New option, uses server-provided filename
  without any sanitization, but with some security checking.

  Not yet implemented for remotes other than the web.

* addurl, importfeed: Avoid adding filenames with leading '.', instead
  it will be replaced with '_'.

  This might be considered a security fix, but a CVE seems unwattanted.
  It was possible for addurl to create a dotfile, which could change
  behavior of some program. It was also possible for a web server to say
  the file name was ".git" or "foo/.git". That would not overrwrite the
  .git directory, but would cause addurl to fail; of course git won't
  add "foo/.git".

sanitizeFilePath is too opinionated to remain in Utility, so moved it.

The changes to mkSafeFilePath are because it used sanitizeFilePath.
In particular:

	isDrive will never succeed, because "c:" gets munged to "c_"
	".." gets sanitized now
	".git" gets sanitized now
	It will never be null, because sanitizeFilePath keeps the length
	the same, and splitDirectories never returns a null path.

Also, on the off chance a web server suggests a filename of "",
ignore that, rather than trying to save to such a filename, which would
fail in some way.
2020-05-08 16:22:55 -04:00
Joey Hess
54599207f7
note 2020-05-08 15:56:15 -04:00
Joey Hess
980de9c910
comment 2020-05-08 13:21:16 -04:00
Joey Hess
de396fac80
comment 2020-05-08 13:16:46 -04:00
ryan.singer@5db89d157f0565db67eac571e2433fa96c187e32
25b6f7ca96 2020-05-07 22:11:04 +00:00
ryan.singer@5db89d157f0565db67eac571e2433fa96c187e32
f88c26c211 2020-05-07 22:09:44 +00:00
ryan.singer@5db89d157f0565db67eac571e2433fa96c187e32
6b49594d91 2020-05-07 22:08:30 +00:00
yarikoptic
a3d196fe39 original complaint about filenames obfuscated by addurl 2020-05-07 21:07:28 +00:00
Joey Hess
1532d67c3e
S3: Support signature=v4
To use S3 Signature Version 4. Some S3 services seem to require v4, while
others may only support v2, which remains the default.

I'm also not sure if v4 works correctly in all cases, there is this
upstream bug report: https://github.com/aristidb/aws/issues/262
I've only tested it against the default S3 endpoint.
2020-05-07 13:18:11 -04:00
Joey Hess
bb88a01910
upgrade: When upgrade fails due to an exception, display it.
37b42e72e7 made it catch exceptions but
thought they were unlikely to be useful to display, which may be right when
a git command fails, but not in the case yoh found.
2020-05-07 12:22:32 -04:00
Joey Hess
5eb101b720
respond and close 2020-05-07 12:10:46 -04:00
yarikoptic
c719998eed initial report on silent fail to upgrade 2020-05-07 15:02:41 +00:00
glasserc
6a9c3a710d Added a comment: Is dead really the solution here? 2020-05-06 20:29:04 +00:00
efraim@78c5af2ab57cf0d7aa23bae3dd0adb700c98217c
1fdcd6d916 2020-05-06 14:17:52 +00:00
Joey Hess
0040d2c129
sync: Avoid an ugly error message when nothing has been committed to master yet and there is a synced master branch to merge from
Now the warning gets displayed, which is better than an arcane git error.

The warning is still kind of ugly, especially when the pull later in the
sync will clear up what it warns about. But, this is an unusual situation
not likely to happen, and if there is no remote to pull from, the warning
message is needed or the sync will seem to succeed despite not merging the
synced master branch.

Would still be better if it could merge the synced master branch in this
situation, making an empty commit to master to do it seems wrong, and
otherwise it would need a whole separate code path, and would bypass using
git merge in favor of say, setting master to the syned branch. Which would
bypass git configs like arguably merge.ff and certianly
merge.verifySignatures. So don't want to do that.
2020-05-05 14:31:37 -04:00
Joey Hess
e3585dc674
remove misplaced comments
an installation page is not a catch-all for random questions, or a
comprehensive link farm for documentation
2020-05-05 13:02:47 -04:00
Joey Hess
681928e828
close 2020-05-05 12:52:23 -04:00
Joey Hess
ebbd8f94e6
response 2020-05-05 12:45:35 -04:00
Joey Hess
93db6bef15
improve docs 2020-05-05 12:39:38 -04:00
Joey Hess
5b5a9aaf92
comment 2020-05-05 12:33:28 -04:00
Joey Hess
f3a776bc5e
response 2020-05-05 12:29:25 -04:00
Joey Hess
2955de6f4c
update 2020-05-05 11:13:10 -04:00
Joey Hess
1fb5a2e804
Revert "update"
This reverts commit f8b9b98ca8.

Broken script due to patreon changes..
2020-05-05 11:09:13 -04:00
Joey Hess
f8b9b98ca8
update 2020-05-05 11:08:46 -04:00
moaxey
4fff42d79a 2020-05-04 21:50:05 +00:00
Joey Hess
d2e78dfc0d
prove this optimisation would not be safe, so close 2020-05-04 14:49:42 -04:00
Joey Hess
2ab2b1f9e2
comment 2020-05-04 13:25:10 -04:00
Joey Hess
3e91461c0f
close too old version 2020-05-04 13:05:41 -04:00
Joey Hess
f9ed30de3b
avoid beware of the leopard situation
* Display a warning message when a remote uses a protocol, such as
  git://, that git-annex does not support. Silently skipping such a
  remote was confusing behavior.

  It sets annex-ignore, so the warning is only displayed once.

* Also display a warning message when a remote, without a known uuid,
  is located in a directory that does not currently exist, to avoid
  silently skipping such a remote.

  This is a bit more debatable, since git-annex get will say,
  try making repository available. And since it does not set annex-ignore,
  the warning will be displayed repeatedly. It's also an extreme edge case,
  I don't think I've ever seen it happen in real life.
2020-05-04 13:01:11 -04:00
Joey Hess
5d407aa5a4
response 2020-05-04 12:55:41 -04:00
beryllium@5bc3c32eb8156390f96e363e4ba38976567425ec
e116eb642a Added a comment: Still fails with git-annex 8.20200330 via backports 2020-05-04 09:02:03 +00:00
beryllium@5bc3c32eb8156390f96e363e4ba38976567425ec
e81d516a0a 2020-05-03 02:39:31 +00:00
Joey Hess
d2026a5351
add news item for git-annex 8.20200501 2020-05-01 17:42:32 -04:00
Joey Hess
e4a626018f
reproduced and some analysis 2020-05-01 14:58:24 -04:00
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
Joey Hess
9b57e6c424
Merge branch 'master' of ssh://git-annex.branchable.com 2020-04-30 13:54:45 -04:00
Joey Hess
9fa940569c
added remote variants
Todo item is done at last.

Might later want to think about testing some other types of remotes that
can be tested locally. The git remote itself is probably already well
enough tested by the test suite that testremote is not needed. Could
test things like bup, or rsync to a local directory. Or even external,
although that would require embedding an external special remote program
into the test suite..
2020-04-30 13:52:03 -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
b41c0edebd
todo 2020-04-28 17:24:53 -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
Joey Hess
d8a218806c
Merge branch 'master' of ssh://git-annex.branchable.com 2020-04-28 15:55:33 -04:00
Joey Hess
19d8f5a334
make the git-annex-snapshot a link to the log 2020-04-28 15:54: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
xloem
b0196ebc48 2020-04-27 18:53:17 +00:00
Joey Hess
45d884db9b
comment 2020-04-27 14:15:06 -04:00
Joey Hess
9b1e4de31a
response 2020-04-27 12:32:08 -04:00
Joey Hess
ac404a289f
response 2020-04-27 12:23:27 -04:00
Joey Hess
79c20858b1
comment 2020-04-27 12:20:07 -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
ct.git-annex@230092d9bd3cf09ced2b9605cdb14ad0a3db265d
d3270a8b9a Added a comment 2020-04-26 20:18:48 +00:00
thk
6431fc1b26 Added a comment: Delete duplicates and specify preferred locations 2020-04-26 11:18:39 +00:00
Joey Hess
985dd4f2ad
comment 2020-04-23 16:21:18 -04: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
kyle
d1dbd45743 remove spam 2020-04-22 13:53:20 +00:00
harimau
d23fee6a9e 2020-04-21 20:54:48 +00:00
Ilya_Shlyakhter
461e3c0b62 Added a comment: "dry run" option 2020-04-21 19:04:07 +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
Dan
b325dfea4d Added a comment: find wanted on remote? 2020-04-16 21:19:44 +00: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
957a87b437
fix absolute filenames fed into --batch and git-annex info 2020-04-15 16:04:05 -04:00
Joey Hess
a14168a321
reproduced 2020-04-15 15:06:53 -04:00
Joey Hess
503abb6d54
remove warning about git gc for annex.alwayscommit=false
I doubt that warning has ever been right, but I'm sure it is not right
now.

For there to be a risk of git gc deleting objects that are in the annex
index, journal files would have to be staged into it, and deleted, but
the index not committed to the git-annex branch. And AFAICS, there is no
code path where that actually happens. I considered adding one recently,
but didn't.

The way it actually works is, as long as the user has annex.alwayscommit=false
the data lives in the journal, where it's safe from git gc. Then when
git-annex is run w/o that config, the journal is staged into the index,
which is immediately committed to the branch. There's no window where
git gc could delete the objects, because git gc only deletes objects
after some time (2 weeks by default).

Now, if git-annex gets suspended at just the wrong time, or interrupted,
then yes, it's possible. But doesn't matter whether that config was ever
set or not. And many uses of git-annex also recover from that situation
by committing to the git-annex branch.
2020-04-15 14:25:33 -04: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
Joey Hess
520ddf1c75
comment 2020-04-15 12:10:51 -04:00
Christoph.Schmidpeter@d3e5d124c7d5459315c2a9f983ab9a70b88e1d03
95b505c22f 2020-04-15 13:06:14 +00:00
Christoph.Schmidpeter@d3e5d124c7d5459315c2a9f983ab9a70b88e1d03
98c1047a29 removed 2020-04-15 13:00:12 +00:00
Christoph.Schmidpeter@d3e5d124c7d5459315c2a9f983ab9a70b88e1d03
c510e83001 Added a comment: Problems with Assistant and Android 2020-04-15 12:59:44 +00:00
Christoph.Schmidpeter@d3e5d124c7d5459315c2a9f983ab9a70b88e1d03
98fac2be0e 2020-04-15 12:59:04 +00:00
Christoph.Schmidpeter@d3e5d124c7d5459315c2a9f983ab9a70b88e1d03
61ba4d6387 2020-04-15 12:09:08 +00:00
kyle
b11931a4aa bug: alwayscommit=false creating commits 2020-04-14 22:43:34 +00:00
erewhon
92c1d0863b Added a comment 2020-04-14 21:45:35 +00:00
erewhon
5d1495ee0f removed 2020-04-14 21:30:38 +00:00
erewhon
40a3545149 Added a comment 2020-04-14 21:20:51 +00:00
erewhon
a9f7770cde removed 2020-04-14 21:19:46 +00:00
erewhon
6add91fefd Added a comment 2020-04-14 21:18:23 +00:00
Joey Hess
ba6f46c113
--auto doc wording
try to make more clear that --auto is not --all
2020-04-13 16:12:48 -04:00
kyle
b60f29f17b Added a comment 2020-04-13 18:58:50 +00:00
Joey Hess
c22c07bbed
Merge branch 'master' of ssh://git-annex.branchable.com 2020-04-13 14:32:46 -04:00
Joey Hess
e57aebf6ad
comment 2020-04-13 14:07:23 -04:00