git-annex/Remote/Helper
Joey Hess 08814327ff
use P2P protocol for checkpresent, retrieve, and store
Note that, due to not using rsync to transfer files to ssh remotes
any longer, permissions and other file metadata of annexed files
will no longer be preserved when copying them to ssh remotes.
Other remotes never supported preserving that information, so
this is not considered a regression. Added NEWS item about this.

Another significant side effect of this is that, even when rsync is run to
retrieve a file, its progress display will no longer be shown, and
instead the native git-annex progress display will appear. It would be
possible to use the rsync process display when rsync is used (old
git-annex-shell and also retrieval from a local repository), but it
would have complicated the code unncessarily, and been inconsistent
behavior.

(I'd been thinking for a while about eliminating the rsync progress
display, since it's got some annoying verbosities, including display of
the key and the "(xfr#1, to-chk=0/1)" bit and was already somewhat
inconsistent.)

retrieveKeyFileCheap still uses rsync, since that ensures that it gets
the actual file content from the remote. Using the P2P protocol would
use the local content, as long as the local and remote size are the
same.

This commit was sponsored by John Pellman on Patreon.
2018-03-09 13:25:16 -04:00
..
Chunked remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
AWS.hs S3: Support the special case endpoint needed for the cn-north-1 region. 2016-11-07 11:49:34 -04:00
Chunked.hs fix giveup shadowing 2016-11-16 00:28:10 -04:00
Encryptable.hs implement exporttree=yes configuration 2017-09-04 13:09:38 -04:00
Export.hs refactor 2017-09-20 16:22:32 -04:00
Git.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
Hooks.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
Http.hs Avoid backtraces on expected failures when built with ghc 8; only use backtraces for unexpected errors. 2016-11-15 21:29:54 -04:00
Messages.hs Avoid backtraces on expected failures when built with ghc 8; only use backtraces for unexpected errors. 2016-11-15 21:29:54 -04:00
P2P.hs use P2P protocol for checkpresent, retrieve, and store 2018-03-09 13:25:16 -04:00
ReadOnly.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
Special.hs add gitAnnexTmpWorkDir and withTmpWorkDir 2017-11-29 13:53:39 -04:00
Ssh.hs use P2P protocol for drop 2018-03-08 16:56:17 -04:00