This commit is contained in:
Joey Hess 2018-04-04 14:32:32 -04:00
parent 72014550f8
commit 0783352fae
No known key found for this signature in database
GPG key ID: DB12DB0FF05F8F38

View file

@ -0,0 +1,29 @@
Currently git-annex uses wget and curl for downloading urls.
Which is used depends on the situation, since both have their limitations
and quirks.
This often confuses users, who expect annex.web-options to only apply
to whichever program git-annex was running, and put in an option that
breaks the other program. Or, configure a netrc file, which wget uses by
default, but curl does not.
Also, using these external programs avoids keeping a http connection open
and pipelining requests, so it makes mass url downloads a lot slower than
if git-annex used http-conduit to do url downloads itself. [[users/yoh]]
has requested http pipelining.
For file: ftp: and more unusual urls, http-conduit can't support them.
git-annex does support those urls, and people rely on that, so it would
still need to use wget or curl for those.
wget is also not shipped with git-annex on Windows or OSX, only curl is,
and it would be good to only use one of the programs, not both, when
handing those unusual urls.
See also, [[support_.netrc_for_fsck_--from_web]]. That some users rely on
git-annex using wget and a netrc file is kind of problimatic if switching
to http-conduit which does not support it. Maybe require users to set
`annex.web-download-command` if they want to make it use something that
supports netrc?
--[[Joey]]