tvl-depot/tvix/glue
Florian Klink 8181817e53 feat(tvix/glue/fetchers): support file:// URLs
Nix supports file:// - URLs for `fetchurl` and `fetchTarball`.

Convert the enums and function arguments to hold a URL type.
reqwest::Url is a re-export of the url crate, but they don't re-export
the parsing errors, and as we want to hold these in our Error types, add
it to Cargo.toml explicitly.

The Fetcher::download function now checks on the scheme, and either
opens the file locally, or does do a HTTP request as before.

Fetch gets its custom debug impl, removing potentially sensitive
username and password out of URLs.

Change-Id: I777db1fe487370e822cbfec4624034aca5e08045
Reviewed-on: https://cl.tvl.fyi/c/depot/+/11504
Autosubmit: flokli <flokli@flokli.de>
Reviewed-by: raitobezarius <tvl@lahfa.xyz>
Tested-by: BuildkiteCI
2024-04-23 12:41:17 +00:00
..
benches revert(tvix): don't use Rc::clone explicitly 2024-02-21 18:36:11 +00:00
src feat(tvix/glue/fetchers): support file:// URLs 2024-04-23 12:41:17 +00:00
Cargo.toml feat(tvix/glue/fetchers): support file:// URLs 2024-04-23 12:41:17 +00:00
default.nix feat(tvix/glue): Implement builtins.fetchurl 2024-03-11 02:21:54 +00:00