feat(tvix/derivation): implement Derivation::validate()

Change-Id: I87dfadda872439e108e5f678a5da63dd5b1915d1
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7732
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
This commit is contained in:
Florian Klink 2023-01-04 13:38:28 +01:00 committed by flokli
parent 407a9cd90f
commit cc626d686c
7 changed files with 207 additions and 2 deletions

View file

@ -1155,6 +1155,33 @@ rec {
"rustc-hash" = [ "dep:rustc-hash" ];
};
};
"cpufeatures" = rec {
crateName = "cpufeatures";
version = "0.2.5";
edition = "2018";
sha256 = "08535izlz4kx8z1kkcp0gy80gqk7k19dqiiysj6r5994bsyrgn98";
authors = [
"RustCrypto Developers"
];
dependencies = [
{
name = "libc";
packageId = "libc";
target = { target, features }: (pkgs.rust.lib.toRustTarget stdenv.hostPlatform == "aarch64-apple-darwin");
}
{
name = "libc";
packageId = "libc";
target = { target, features }: (pkgs.rust.lib.toRustTarget stdenv.hostPlatform == "aarch64-linux-android");
}
{
name = "libc";
packageId = "libc";
target = { target, features }: (("aarch64" == target."arch") && ("linux" == target."os"));
}
];
};
"criterion" = rec {
crateName = "criterion";
version = "0.4.0";
@ -1473,6 +1500,10 @@ rec {
then lib.cleanSourceWith { filter = sourceFilter; src = ./derivation; }
else ./derivation;
dependencies = [
{
name = "anyhow";
packageId = "anyhow";
}
{
name = "glob";
packageId = "glob";
@ -1482,12 +1513,24 @@ rec {
packageId = "serde";
features = [ "derive" ];
}
{
name = "sha2";
packageId = "sha2";
}
{
name = "tvix-store";
packageId = "tvix-store";
}
];
devDependencies = [
{
name = "serde_json";
packageId = "serde_json";
}
{
name = "test-case";
packageId = "test-case";
}
{
name = "test-generator";
packageId = "test-generator";
@ -4775,6 +4818,46 @@ rec {
};
resolvedDefaultFeatures = [ "default" "std" ];
};
"sha2" = rec {
crateName = "sha2";
version = "0.10.6";
edition = "2018";
sha256 = "1h5xrrv2y06kr1gsz4pwrm3lsp206nm2gjxgbf21wfrfzsavgrl2";
authors = [
"RustCrypto Developers"
];
dependencies = [
{
name = "cfg-if";
packageId = "cfg-if";
}
{
name = "cpufeatures";
packageId = "cpufeatures";
target = { target, features }: (("aarch64" == target."arch") || ("x86_64" == target."arch") || ("x86" == target."arch"));
}
{
name = "digest";
packageId = "digest";
}
];
devDependencies = [
{
name = "digest";
packageId = "digest";
features = [ "dev" ];
}
];
features = {
"asm" = [ "sha2-asm" ];
"asm-aarch64" = [ "asm" ];
"default" = [ "std" ];
"oid" = [ "digest/oid" ];
"sha2-asm" = [ "dep:sha2-asm" ];
"std" = [ "digest/std" ];
};
resolvedDefaultFeatures = [ "default" "std" ];
};
"sharded-slab" = rec {
crateName = "sharded-slab";
version = "0.1.4";