feat(nix-compat/narinfo): drop .drv from Narinfo.deriver field

We always know this needs to end with a .drv, and fail parsing if it
doesn't, so there's no need to hang onto these 4 bytes.

This will make it much easier to synthesize a NarInfo<'_> later on from
a PathInfo proto, because we don't have to make this ".drv" appear out
of thin air.

Change-Id: Id95e7fd937d7c9a420a39b5a4bab73985640ca3b
Reviewed-on: https://cl.tvl.fyi/c/depot/+/10084
Tested-by: BuildkiteCI
Reviewed-by: edef <edef@edef.eu>
Reviewed-by: raitobezarius <tvl@lahfa.xyz>
Autosubmit: flokli <flokli@flokli.de>
This commit is contained in:
Florian Klink 2023-11-22 20:11:22 +02:00 committed by clbot
parent ef8a8af0bf
commit eb84898c17
2 changed files with 15 additions and 15 deletions

View file

@ -212,10 +212,7 @@ impl From<&nix_compat::narinfo::NarInfo<'_>> for NarInfo {
signatures,
reference_names: value.references.iter().map(|r| r.to_string()).collect(),
deriver: value.deriver.as_ref().map(|sp| StorePath {
// The parser already errors out with an error if the .drv suffix was missing,
// so you can only miss the suffix if you're manually constructing,
// which means we can unwrap here.
name: sp.name().strip_suffix(".drv").unwrap().to_owned(),
name: sp.name().to_owned(),
digest: Bytes::copy_from_slice(sp.digest()),
}),
ca,