5 ms·
My understanding is http/2 is out of scope. The purpose is to have functional http to implement the package manager. I would expect a high performance http clie
by laserbeam 3y ago
My understanding is http/2 is out of scope. The purpose is to have functional http to implement the package manager. I would expect a high performance http client/server to be a third party library, not std lib.
- brundolf 3y agoDoes a package manager not benefit from high-performance parallel HTTP (for downloading a bunch of little files)?
- kcbanner 3y agoThe package manager is designed to download archives (.tar.gz) of packages, not the composite files.
- aseipp 3y agoMost source code packages, including their metadata, are generally small even as an aggregated compressed file, and it's very common to download a lot of them all at one time once you've resolved the necessary dependencies. It depends on several factors though -- including community ones (are lots of tiny packages encouraged?) and how things like the build system work when downloading things. In practice, it's very much an appropriate use case for multiplexing, if you ask me. But not having it isn't a dealbreaker either, IMO. It's a bit more work to support HTTP/2 and can be done rather transparently later on anyway, since the underlying transport can be switched and has an upgrade path.
- von_lohengramm 3y ago> are lots of tiny packages encouraged? Very much the opposite
- laserbeam 3y agoSure. But I wouldn't do that for 1.0 of the lang. It sounds quite feasible to add support for that in 1.x if the community needs it. There's a reasonable path to upgrade to http/2 while spending more effort into what's critical for the lang to get to 1.0. [Edit] And it's quite feasible to decide later that http/2 was never needed for this usecase.
- brundolf 3y agoSure, but GP was saying "out of scope" in a way that sounded like "forever, for this use-case", not just "for 1.0". I may have misinterpreted
- EscapeFromNY 3y agoIf that's the only purpose, why is there an http server too? The package manager should only need an http client.
- jsyolo 3y agoTo host packages metadata?
- squeek502 3y agoMy understanding is that it's there to allow for testing the client. Relevant issue: https://github.com/ziglang/zig/issues/910 https://github.com/ziglang/zig/issues/910
- synergy20 3y agois this true? i was excited that zig will provide a http server in its stdlib similar to what go does in fact.