Closed StefanKarpinski closed 8 years ago
We do ship curl on master, everywhere that libgit2 uses it.
Though we do not build curl on windows, I hope that is relatively easy to get going. I have been advocating that if we are doing curl for libgit2 transport, it is worth having really high quality bindings in packages for web stuff.
The curl bindings in packages are much less widely-used than the http-parser bindings. http-parser is also a dependency of libgit2, and is less likely to be removed in future versions of libgit2 than libcurl is (ref https://github.com/JuliaLang/julia/issues/17889#issuecomment-238303022). We could fairly easily move out the build of http-parser to be a separate library rather than let libgit2 use its vendored copy of the source, then the webstack could use it more easily.
And to have this written down somewhere, note that currently we ship and bundle mbedtls even on windows, but aren't linking to it there. Both libgit2 and libssh2 are using the native Windows crypto.
The motivation for this issue was to make support for web protocols smoother and more reliable.
Support for web stuff should be a bit smoother – and everyone needs this, including the package manager. We should consider building and shipping with libcurl + mbedtls (or some alternative TLS provider) and making sure that it's consistently smooth and easy to use. We don't need to have all the types and functions needed to do web stuff in the standard library, but if we standardize on a set of libraries and make sure they work, it will make life better.