OC3QJUVKGGEZLDNV2O7ZC3OAB63DJNNRFEPEYKERJRY477MUT2YQC
6XDVUSBMBXM4LKKKR7YPJ5PF4ISOZNT465GSOFR2GF7NTL5SNLZAC
LNZVL2QQXGPOLEY43J2UARWVLOKDOCMB6LYUXVLV4NHSMVSSSCJAC
ZWPPIJXFKEL3RP2MEYGB3BPTE73GYRW6FSRZDQKFBJFOK4JBNQ4AC
SXEYMYF7P4RZMZ46WPL4IZUTSQ2ATBWYZX7QNVMS3SGOYXYOHAGQC
G734WNM64AR5BLAZMN5MDPKSFTYXTUQR6MAGB32NRBC5FXFRWSJAC
HDGRZISM2SS4TK5BMNGDIYG22SOXAZRTTC6YFIOPY4LSO53QDWZQC
Y7KH4QOPBZSWPVYL45TF2G5VBQWUJXJWIKOLTFTB5GE5FVH4CK6AC
CCLLB7OIFNFYJZTG3UCI7536TOCWSCSXR67VELSB466R24WLJSDAC
J6UIWIYYFEG3F4XJOZEGBV7UEFJA53356GG63JPUNZPYJEKUGZRQC
HKA66XOQ5LOF3E5DIQGVKPEZGZKCXLLYRVTKDK7SAD7Y5JZB5OUQC
SAGSYAPXQ2T6GC3B3TNRPNFTZMS7UMME6YQGSF5MOIM66S5NKB2QC
I24UEJQLCH2SOXA4UHIYWTRDCHSOPU7AFTRUOTX7HZIAV4AZKYEQC
I52XSRUH5RVHQBFWVMAQPTUSPAJ4KNVID2RMI3UGCVKFLYUO6WZAC
B3QWIGDERNMB3M6P5WTWP5CN2DB3KCS7MVTEPC2XVJ237ZXVQGMAC
LPOLG44WARRIWHNNOXVDOWPKGTYJGUATBXNVAQSEXR2WW7KHGWVAC
7ZFRYVVQQGJYG3POPWJWL3CDW37YDXZYZQC3OSWFHWEUSEMYQ4EQC
6DOXSHWGKJIMIPFCNLASGKBAJCJMJULW5HFRZAZ67EYSMXXGJ3KAC
KUMJITTFBIAA7MFVPE6O7ZKIRSX553JNM72LF3KQJ6U3CXZI6MMQC
Q7CAYX5N2GFOGMZL3VXVWORMAPWEOECXE22BLXK7Q4WEPS4CE2SAC
BNPSVXIC72C3WT33YKCH766OBLLNCS7POX6U6JXZSQQPJF2M22MQC
ENKQ3QZGH2QW246C7GSZRKYLODJOQHKZZSYV7QHB7VPOFP5PASVQC
H62VFFJEBL2I3O4D3BAJZ57ROPWUISC7JCDIWFBC5DAYJRHMMDXAC
then lib.warn "crate2nix: Passing `buildRustCrate` as argument to Cargo.nix is deprecated. If you don't customize `buildRustCrate`, replace `callPackage ./Cargo.nix {}` by `import ./Cargo.nix { inherit pkgs; }`, and if you need to customize `buildRustCrate`, use `buildRustCrateForPkgs` instead." (_: buildRustCrate)
then lib.warn "`buildRustCrate` is deprecated, use `buildRustCrateForPkgs` instead" (_: buildRustCrate)
sha256 = "0fkz8sgwp9lbhzfch89wimn4qx16a8l62vfx07hrw85y3xxf98p7";
authors = [
"Nick Fitzgerald <fitzgen@gmail.com>"
"Philip Craig <philipjcraig@gmail.com>"
"Jon Gjengset <jon@thesquareplanet.com>"
"Noah Bergbauer <noah.bergbauer@tum.de>"
];
sha256 = "1kday4xm4ky46ihsys3ch1vf5cv3lfjclfi610mpsb1xz6vz4q9y";
};
"cfg-if 0.1.10" = rec {
crateName = "cfg-if";
version = "0.1.10";
edition = "2018";
sha256 = "08h80ihs74jcyp24cd75wwabygbbdgl05k6p5dmq8akbr78vv1a7";
authors = [
"Alex Crichton <alex@alexcrichton.com>"
];
features = {
"rustc-dep-of-std" = [ "core" "compiler_builtins" ];
};
resolvedDefaultFeatures = [ "atty" "cargo" "clap_derive" "color" "default" "derive" "lazy_static" "std" "strsim" "suggestions" "termcolor" ];
resolvedDefaultFeatures = [ "atty" "cargo" "clap_derive" "color" "default" "derive" "env" "lazy_static" "std" "strsim" "suggestions" "termcolor" "unicode_help" ];
version = "0.11.0";
edition = "2018";
sha256 = "0ghh3qmjf7hv580zqdk4yrbg99v57jx773zb7lzi7j4hj24bdyi5";
authors = [
"RustCrypto Developers"
];
dependencies = [
{
name = "generic-array";
packageId = "generic-array";
}
{
name = "subtle";
packageId = "subtle";
usesDefaultFeatures = false;
}
];
features = {
"dev" = [ "blobby" ];
};
};
"crypto-mac 0.8.0" = rec {
crateName = "crypto-mac";
version = "0.8.0";
version = "0.11.1";
sha256 = "12c1arfrzvw0lxy487wm66xb3vn7wy0r1v5hvn32fri6cqw7ah0f";
authors = [
"Nick Fitzgerald <fitzgen@gmail.com>"
"Philip Craig <philipjcraig@gmail.com>"
];
sha256 = "1rwgmjp94ivk872xd2s9lfb7wpz6rj1s9bzqnhnkn6l4jw21x87h";
sha256 = "1irb91bk41kfd4bpr1ypda8hv1qn9js43zvl003b8mvsd7ijp3x3";
authors = [
"Nick Fitzgerald <fitzgen@gmail.com>"
"Philip Craig <philipjcraig@gmail.com>"
];
sha256 = "11mk7swplzi32wq8ja4q2dplv1yj6x1a2j4q94i8ih5lgwqjfn65";
version = "0.4.3";
edition = "2015";
sha256 = "09v57dmy9gnfcj3c6gywp7wi09zywxf0ppj07w02hfvy38ysqwzi";
version = "0.4.4";
edition = "2018";
sha256 = "1465rj4y59qjvzxik0v2m0mp71q50m9xfigxqww7yhsw3hna61y3";
testCrateFlags: list of flags to pass to the test exectuable
testInputs: list of packages that should be available during test execution
testCrateFlags: list of flags to pass to the test exectuable
testInputs: list of packages that should be available during test execution
# If the user hasn't set any pre/post commands, we don't want to
# insert empty lines. This means that any existing users of crate2nix
# don't get a spurious rebuild unless they set these explicitly.
testCommand = pkgs.lib.concatStringsSep "\n"
(pkgs.lib.filter (s: s != "") [
testPreRun
"$f $testCrateFlags 2>&1 | tee -a $out"
testPostRun
]);
If multiple paths to a dependency enable different features, the
corresponding feature sets are merged. Features in rust are additive.
If multiple paths to a dependency enable different features, the
corresponding feature sets are merged. Features in rust are additive.
featureMap is an attribute set which maps feature names to lists of further
feature names to enable in case this feature is selected.
featureMap is an attribute set which maps feature names to lists of further
feature names to enable in case this feature is selected.
/* This function adds optional dependencies as features if they are enabled
indirectly by dependency features. This function mimics Cargo's behavior
described in a note at:
https://doc.rust-lang.org/nightly/cargo/reference/features.html#dependency-features
*/
enableFeatures = dependencies: features:
assert (builtins.isList features);
assert (builtins.isList dependencies);
let
additionalFeatures = lib.concatMap
(
dependency:
assert (builtins.isAttrs dependency);
let
enabled = builtins.any (doesFeatureEnableDependency dependency) features;
in
if (dependency.optional or false) && enabled then [ dependency.name ] else [ ]
)
dependencies;
in
sortedUnique (features ++ additionalFeatures);
};
}