cargo-geiger: 0.11.7 -> 0.12.0, migrate to new apple sdk (#397897)

Changed files
+34 -107
pkgs
-12
pkgs/by-name/ca/cargo-geiger/allow-warnings.patch
···
-
diff --git a/cargo-geiger/src/lib.rs b/cargo-geiger/src/lib.rs
-
index cc08146..d220ad9 100644
-
--- a/cargo-geiger/src/lib.rs
-
+++ b/cargo-geiger/src/lib.rs
-
@@ -5,7 +5,6 @@
-
#![deny(clippy::cargo)]
-
#![deny(clippy::doc_markdown)]
-
#![forbid(unsafe_code)]
-
-#![deny(warnings)]
-
-
/// Argument parsing
-
pub mod args;
···
-48
pkgs/by-name/ca/cargo-geiger/fix-build-with-rust-1.80.patch
···
-
diff --git a/Cargo.lock b/Cargo.lock
-
index 48c5606f..4c796675 100644
-
--- a/Cargo.lock
-
+++ b/Cargo.lock
-
@@ -2238,6 +2238,12 @@ dependencies = [
-
"winapi",
-
]
-
-
+[[package]]
-
+name = "num-conv"
-
+version = "0.1.0"
-
+source = "registry+https://github.com/rust-lang/crates.io-index"
-
+checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9"
-
+
-
[[package]]
-
name = "num-traits"
-
version = "0.2.17"
-
@@ -3148,13 +3154,14 @@ dependencies = [
-
-
[[package]]
-
name = "time"
-
-version = "0.3.30"
-
+version = "0.3.36"
-
source = "registry+https://github.com/rust-lang/crates.io-index"
-
-checksum = "c4a34ab300f2dee6e562c10a046fc05e358b29f9bf92277f30c3c8d82275f6f5"
-
+checksum = "5dfd88e563464686c916c7e46e623e520ddc6d79fa6641390f2e3fa86e83e885"
-
dependencies = [
-
"deranged",
-
"itoa",
-
"libc",
-
+ "num-conv",
-
"num_threads",
-
"powerfmt",
-
"serde",
-
@@ -3170,10 +3177,11 @@ checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3"
-
-
[[package]]
-
name = "time-macros"
-
-version = "0.2.15"
-
+version = "0.2.18"
-
source = "registry+https://github.com/rust-lang/crates.io-index"
-
-checksum = "4ad70d68dba9e1f8aceda7aa6711965dfec1cac869f311a51bd08b3a2ccbce20"
-
+checksum = "3f252a68540fde3a3877aeea552b832b40ab9a69e318efd078774a01ddee1ccf"
-
dependencies = [
-
+ "num-conv",
-
"time-core",
-
]
-
···
+34 -47
pkgs/by-name/ca/cargo-geiger/package.nix
···
{
-
stdenv,
lib,
fetchFromGitHub,
rustPlatform,
pkg-config,
openssl,
-
# darwin dependencies
-
darwin,
-
libiconv,
-
curl,
}:
rustPlatform.buildRustPackage rec {
pname = "cargo-geiger";
-
version = "0.11.7";
src = fetchFromGitHub {
-
owner = "rust-secure-code";
repo = "cargo-geiger";
-
rev = "cargo-geiger@v${version}";
-
hash = "sha256-/5yuayqneZV6aVQ6YFgqNS2XY3W6yETRQ0kE5ovc7p8=";
};
-
cargoPatches = [
-
# https://github.com/geiger-rs/cargo-geiger/pull/528
-
./fix-build-with-rust-1.80.patch
];
-
useFetchCargoVendor = true;
-
cargoHash = "sha256-n6RfulzrK9QebC1tgVVd/YnBc21Jf0OSfHApRO1c0ew=";
-
-
patches = [
-
./allow-warnings.patch
];
-
buildInputs =
-
[ openssl ]
-
++ lib.optionals stdenv.hostPlatform.isDarwin (
-
with darwin.apple_sdk.frameworks;
-
[
-
CoreFoundation
-
Security
-
libiconv
-
curl
-
]
-
);
-
nativeBuildInputs =
-
[ pkg-config ]
-
# curl-sys wants to run curl-config on darwin
-
++ lib.optionals stdenv.hostPlatform.isDarwin [ curl.dev ];
-
# skip tests with networking or other failures
checkFlags = [
-
"--skip serialize_test1_quick_report"
"--skip serialize_test2_quick_report"
"--skip serialize_test3_quick_report"
-
"--skip serialize_test4_quick_report"
"--skip serialize_test6_quick_report"
-
"--skip serialize_test7_quick_report"
-
"--skip serialize_test1_report"
"--skip serialize_test2_report"
"--skip serialize_test3_report"
-
"--skip serialize_test4_report"
"--skip serialize_test6_report"
-
"--skip serialize_test7_report"
-
# multiple test cases that time-out or cause memory leaks
-
"--skip test_package"
"--skip test_package_update_readme::case_2"
"--skip test_package_update_readme::case_3"
"--skip test_package_update_readme::case_5"
];
-
meta = with lib; {
-
homepage = "https://github.com/rust-secure-code/cargo-geiger";
-
changelog = "https://github.com/rust-secure-code/cargo-geiger/blob/cargo-geiger-${version}/CHANGELOG.md";
description = "Detects usage of unsafe Rust in a Rust crate and its dependencies";
-
mainProgram = "cargo-geiger";
longDescription = ''
A cargo plugin that detects the usage of unsafe Rust in a Rust crate and
its dependencies. It provides information to aid auditing and guide
dependency selection but it can not help you decide when and why unsafe
code is appropriate.
'';
-
license = with licenses; [
asl20 # or
mit
];
-
maintainers = with maintainers; [
evanjs
gepbird
jk
···
{
lib,
fetchFromGitHub,
rustPlatform,
pkg-config,
openssl,
+
# testing
+
testers,
+
cargo-geiger,
}:
rustPlatform.buildRustPackage rec {
pname = "cargo-geiger";
+
version = "0.12.0";
src = fetchFromGitHub {
+
owner = "geiger-rs";
repo = "cargo-geiger";
+
tag = "cargo-geiger-${version}";
+
hash = "sha256-OW/LOZUCGOIl7jeWnzt4SXTo3gplJx/wbC21S1TdZx0=";
};
+
useFetchCargoVendor = true;
+
cargoHash = "sha256-aDgpEfX0QRkQD6c4ant6uSN18WLHVnZISRr7lyu9IzA=";
+
+
nativeBuildInputs = [
+
pkg-config
];
+
buildInputs = [
+
openssl
];
+
preCheck = ''
+
export HOME=$(mktemp -d)
+
'';
checkFlags = [
+
# panics
"--skip serialize_test2_quick_report"
"--skip serialize_test3_quick_report"
"--skip serialize_test6_quick_report"
"--skip serialize_test2_report"
"--skip serialize_test3_report"
"--skip serialize_test6_report"
+
# requires networking
+
"--skip test_package::case_2"
+
"--skip test_package::case_3"
+
"--skip test_package::case_6"
+
"--skip test_package::case_9"
+
# panics, snapshot assertions fails
"--skip test_package_update_readme::case_2"
"--skip test_package_update_readme::case_3"
"--skip test_package_update_readme::case_5"
];
+
passthru.tests.version = testers.testVersion {
+
package = cargo-geiger;
+
};
+
+
meta = {
description = "Detects usage of unsafe Rust in a Rust crate and its dependencies";
longDescription = ''
A cargo plugin that detects the usage of unsafe Rust in a Rust crate and
its dependencies. It provides information to aid auditing and guide
dependency selection but it can not help you decide when and why unsafe
code is appropriate.
'';
+
homepage = "https://github.com/geiger-rs/cargo-geiger";
+
changelog = "https://github.com/geiger-rs/cargo-geiger/blob/cargo-geiger-${version}/CHANGELOG.md";
+
mainProgram = "cargo-geiger";
+
license = with lib.licenses; [
asl20 # or
mit
];
+
maintainers = with lib.maintainers; [
evanjs
gepbird
jk