From 1c69ecb2dd463a5cd922e872386381e1cc17147e Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Wed, 19 Jun 2024 11:26:37 +0200 Subject: Merging debian version 1.76.0+dfsg1-1. Signed-off-by: Daniel Baumann --- ...3-tests-add-missing-cross-disabled-checks.patch | 42 ++ .../patches/cargo/c-2002_disable-net-tests.patch | 595 +++++++++++++++++++++ ...3-workaround-qemu-vfork-command-not-found.patch | 28 + .../patches/cargo/c-2200-workaround-x32-test.patch | 22 + .../patches/cargo/c-disable-fs-specific-test.patch | 22 + .../d-0012-cargo-always-return-dev-channel.patch | 26 + 6 files changed, 735 insertions(+) create mode 100644 debian/patches/cargo/c-0003-tests-add-missing-cross-disabled-checks.patch create mode 100644 debian/patches/cargo/c-2002_disable-net-tests.patch create mode 100644 debian/patches/cargo/c-2003-workaround-qemu-vfork-command-not-found.patch create mode 100644 debian/patches/cargo/c-2200-workaround-x32-test.patch create mode 100644 debian/patches/cargo/c-disable-fs-specific-test.patch create mode 100644 debian/patches/cargo/d-0012-cargo-always-return-dev-channel.patch (limited to 'debian/patches/cargo') diff --git a/debian/patches/cargo/c-0003-tests-add-missing-cross-disabled-checks.patch b/debian/patches/cargo/c-0003-tests-add-missing-cross-disabled-checks.patch new file mode 100644 index 000000000..fef435fc6 --- /dev/null +++ b/debian/patches/cargo/c-0003-tests-add-missing-cross-disabled-checks.patch @@ -0,0 +1,42 @@ +From: =?utf-8?q?Fabian_Gr=C3=BCnbichler?= +Date: Sat, 19 Nov 2022 10:24:08 +0100 +Subject: [PATCH] tests: add missing cross disabled checks +MIME-Version: 1.0 +Content-Type: text/plain; charset="utf-8" +Content-Transfer-Encoding: 8bit + +cross_conmpile::alternate states it should only be used in test cases +after checking cross_compile::disabled(), which is missing here. these +tests fail despite setting CFG_DISABLE_CROSS_TESTS on i386, since both +the host and the alternate cross target would be i686 in that case. + + +Signed-off-by: Fabian Grünbichler +--- + src/tools/cargo/tests/testsuite/build_script.rs | 6 ++++++ + 1 file changed, 6 insertions(+) + +diff --git a/src/tools/cargo/tests/testsuite/build_script.rs b/src/tools/cargo/tests/testsuite/build_script.rs +index f7361fc..f587ddd 100644 +--- a/src/tools/cargo/tests/testsuite/build_script.rs ++++ b/src/tools/cargo/tests/testsuite/build_script.rs +@@ -734,6 +734,9 @@ fn custom_build_linker_bad_host_with_arch() { + #[cargo_test] + fn custom_build_env_var_rustc_linker_cross_arch_host() { + let target = rustc_host(); ++ if cross_compile::disabled() { ++ return; ++ } + let cross_target = cross_compile::alternate(); + let p = project() + .file( +@@ -772,6 +775,9 @@ fn custom_build_env_var_rustc_linker_cross_arch_host() { + #[cargo_test] + fn custom_build_linker_bad_cross_arch_host() { + let target = rustc_host(); ++ if cross_compile::disabled() { ++ return; ++ } + let cross_target = cross_compile::alternate(); + let p = project() + .file( diff --git a/debian/patches/cargo/c-2002_disable-net-tests.patch b/debian/patches/cargo/c-2002_disable-net-tests.patch new file mode 100644 index 000000000..5ed606980 --- /dev/null +++ b/debian/patches/cargo/c-2002_disable-net-tests.patch @@ -0,0 +1,595 @@ +From: Ximin Luo +Date: Thu, 13 Jun 2024 11:16:38 +0200 +Subject: Disable network tests + +Forwarded: TODO +--- + .../cargo/tests/testsuite/credential_process.rs | 14 +-- + src/tools/cargo/tests/testsuite/git_auth.rs | 4 +- + src/tools/cargo/tests/testsuite/net_config.rs | 4 +- + src/tools/cargo/tests/testsuite/publish.rs | 104 ++++++++++----------- + 4 files changed, 63 insertions(+), 63 deletions(-) + +diff --git a/src/tools/cargo/tests/testsuite/credential_process.rs b/src/tools/cargo/tests/testsuite/credential_process.rs +index 815089f..477e5d2 100644 +--- a/src/tools/cargo/tests/testsuite/credential_process.rs ++++ b/src/tools/cargo/tests/testsuite/credential_process.rs +@@ -63,7 +63,7 @@ fn get_token_test() -> (Project, TestRegistry) { + (p, server) + } + +-#[cargo_test] ++#[allow(dead_code)] + fn publish() { + // Checks that credential-process is used for `cargo publish`. + let (p, _t) = get_token_test(); +@@ -85,7 +85,7 @@ You may press ctrl-c [..] + .run(); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn basic_unsupported() { + // Non-action commands don't support login/logout. + let registry = registry::RegistryBuilder::new() +@@ -121,7 +121,7 @@ Caused by: + .run(); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn login() { + let registry = registry::RegistryBuilder::new() + .no_configure_token() +@@ -142,7 +142,7 @@ fn login() { + .run(); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn logout() { + let server = registry::RegistryBuilder::new() + .no_configure_token() +@@ -161,7 +161,7 @@ fn logout() { + .run(); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn yank() { + let (p, _t) = get_token_test(); + +@@ -176,7 +176,7 @@ fn yank() { + .run(); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn owner() { + let (p, _t) = get_token_test(); + +@@ -191,7 +191,7 @@ fn owner() { + .run(); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn invalid_token_output() { + // Error when credential process does not output the expected format for a token. + let cred_proj = project() +diff --git a/src/tools/cargo/tests/testsuite/git_auth.rs b/src/tools/cargo/tests/testsuite/git_auth.rs +index c79ae7c..b15582e 100644 +--- a/src/tools/cargo/tests/testsuite/git_auth.rs ++++ b/src/tools/cargo/tests/testsuite/git_auth.rs +@@ -103,7 +103,7 @@ fn setup_failed_auth_test() -> (SocketAddr, JoinHandle<()>, Arc) { + } + + // Tests that HTTP auth is offered from `credential.helper`. +-#[cargo_test] ++#[allow(dead_code)] + fn http_auth_offered() { + let (addr, t, connections) = setup_failed_auth_test(); + let p = project() +@@ -167,7 +167,7 @@ Caused by: + } + + // Boy, sure would be nice to have a TLS implementation in rust! +-#[cargo_test] ++#[allow(dead_code)] + fn https_something_happens() { + let server = TcpListener::bind("127.0.0.1:0").unwrap(); + let addr = server.local_addr().unwrap(); +diff --git a/src/tools/cargo/tests/testsuite/net_config.rs b/src/tools/cargo/tests/testsuite/net_config.rs +index 569ec55..27c4132 100644 +--- a/src/tools/cargo/tests/testsuite/net_config.rs ++++ b/src/tools/cargo/tests/testsuite/net_config.rs +@@ -2,7 +2,7 @@ + + use cargo_test_support::project; + +-#[cargo_test] ++#[allow(dead_code)] + fn net_retry_loads_from_config() { + let p = project() + .file( +@@ -38,7 +38,7 @@ fn net_retry_loads_from_config() { + .run(); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn net_retry_git_outputs_warning() { + let p = project() + .file( +diff --git a/src/tools/cargo/tests/testsuite/publish.rs b/src/tools/cargo/tests/testsuite/publish.rs +index 5d29ac8..05d0f02 100644 +--- a/src/tools/cargo/tests/testsuite/publish.rs ++++ b/src/tools/cargo/tests/testsuite/publish.rs +@@ -88,7 +88,7 @@ fn validate_upload_li() { + ); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn simple() { + let registry = RegistryBuilder::new().http_api().http_index().build(); + +@@ -130,7 +130,7 @@ You may press ctrl-c to skip waiting; the crate should be available shortly. + + // Check that the `token` key works at the root instead of under a + // `[registry]` table. +-#[cargo_test] ++#[allow(dead_code)] + fn simple_publish_with_http() { + let _reg = registry::RegistryBuilder::new() + .http_api() +@@ -170,7 +170,7 @@ You may press ctrl-c to skip waiting; the crate should be available shortly. + .run(); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn simple_publish_with_asymmetric() { + let _reg = registry::RegistryBuilder::new() + .http_api() +@@ -213,7 +213,7 @@ You may press ctrl-c to skip waiting; the crate should be available shortly. + .run(); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn old_token_location() { + // `publish` generally requires a remote registry + let registry = registry::RegistryBuilder::new().http_api().build(); +@@ -270,7 +270,7 @@ You may press ctrl-c [..] + // Other tests will verify the endpoint gets the right payload. + } + +-#[cargo_test] ++#[allow(dead_code)] + fn simple_with_index() { + // `publish` generally requires a remote registry + let registry = registry::RegistryBuilder::new().http_api().build(); +@@ -315,7 +315,7 @@ You may press ctrl-c [..] + // Other tests will verify the endpoint gets the right payload. + } + +-#[cargo_test] ++#[allow(dead_code)] + fn git_deps() { + // Use local registry for faster test times since no publish will occur + let registry = registry::init(); +@@ -353,7 +353,7 @@ the `git` specification will be removed from the dependency declaration. + .run(); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn path_dependency_no_version() { + // Use local registry for faster test times since no publish will occur + let registry = registry::init(); +@@ -393,7 +393,7 @@ the `path` specification will be removed from the dependency declaration. + .run(); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn unpublishable_crate() { + // Use local registry for faster test times since no publish will occur + let registry = registry::init(); +@@ -426,7 +426,7 @@ fn unpublishable_crate() { + .run(); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn dont_publish_dirty() { + // Use local registry for faster test times since no publish will occur + let registry = registry::init(); +@@ -468,7 +468,7 @@ to proceed despite this and include the uncommitted changes, pass the `--allow-d + .run(); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn publish_clean() { + // `publish` generally requires a remote registry + let registry = registry::RegistryBuilder::new().http_api().build(); +@@ -516,7 +516,7 @@ You may press ctrl-c to skip waiting; the crate should be available shortly. + // Other tests will verify the endpoint gets the right payload. + } + +-#[cargo_test] ++#[allow(dead_code)] + fn publish_in_sub_repo() { + // `publish` generally requires a remote registry + let registry = registry::RegistryBuilder::new().http_api().build(); +@@ -565,7 +565,7 @@ You may press ctrl-c [..] + // Other tests will verify the endpoint gets the right payload. + } + +-#[cargo_test] ++#[allow(dead_code)] + fn publish_when_ignored() { + // `publish` generally requires a remote registry + let registry = registry::RegistryBuilder::new().http_api().build(); +@@ -614,7 +614,7 @@ You may press ctrl-c [..] + // Other tests will verify the endpoint gets the right payload. + } + +-#[cargo_test] ++#[allow(dead_code)] + fn ignore_when_crate_ignored() { + // `publish` generally requires a remote registry + let registry = registry::RegistryBuilder::new().http_api().build(); +@@ -662,7 +662,7 @@ You may press ctrl-c [..] + // Other tests will verify the endpoint gets the right payload. + } + +-#[cargo_test] ++#[allow(dead_code)] + fn new_crate_rejected() { + // Use local registry for faster test times since no publish will occur + let registry = registry::init(); +@@ -695,7 +695,7 @@ fn new_crate_rejected() { + .run(); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn dry_run() { + // Use local registry for faster test times since no publish will occur + let registry = registry::init(); +@@ -738,7 +738,7 @@ See [..] + assert!(!registry::api_path().join("api/v1/crates/new").exists()); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn registry_not_in_publish_list() { + let p = project() + .file( +@@ -771,7 +771,7 @@ The registry `alternative` is not listed in the `package.publish` value in Cargo + .run(); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn publish_empty_list() { + let p = project() + .file( +@@ -800,7 +800,7 @@ fn publish_empty_list() { + .run(); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn publish_allowed_registry() { + let _registry = RegistryBuilder::new() + .http_api() +@@ -860,7 +860,7 @@ You may press ctrl-c [..] + ); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn publish_implicitly_to_only_allowed_registry() { + let _registry = RegistryBuilder::new() + .http_api() +@@ -963,7 +963,7 @@ fn publish_failed_with_index_and_only_allowed_registry() { + .run(); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn publish_fail_with_no_registry_specified() { + let p = project().build(); + +@@ -997,7 +997,7 @@ The registry `crates-io` is not listed in the `package.publish` value in Cargo.t + .run(); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn block_publish_no_registry() { + let p = project() + .file( +@@ -1027,7 +1027,7 @@ fn block_publish_no_registry() { + } + + // Explicitly setting `crates-io` in the publish list. +-#[cargo_test] ++#[allow(dead_code)] + fn publish_with_crates_io_explicit() { + // `publish` generally requires a remote registry + let registry = registry::RegistryBuilder::new().http_api().build(); +@@ -1080,7 +1080,7 @@ You may press ctrl-c [..] + .run(); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn publish_with_select_features() { + // `publish` generally requires a remote registry + let registry = registry::RegistryBuilder::new().http_api().build(); +@@ -1131,7 +1131,7 @@ You may press ctrl-c [..] + .run(); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn publish_with_all_features() { + // `publish` generally requires a remote registry + let registry = registry::RegistryBuilder::new().http_api().build(); +@@ -1182,7 +1182,7 @@ You may press ctrl-c [..] + .run(); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn publish_with_no_default_features() { + // Use local registry for faster test times since no publish will occur + let registry = registry::init(); +@@ -1218,7 +1218,7 @@ fn publish_with_no_default_features() { + .run(); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn publish_with_patch() { + let registry = RegistryBuilder::new().http_api().http_index().build(); + Package::new("bar", "1.0.0").publish(); +@@ -1324,7 +1324,7 @@ You may press ctrl-c [..] + ); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn publish_checks_for_token_before_verify() { + let registry = registry::RegistryBuilder::new() + .no_configure_token() +@@ -1373,7 +1373,7 @@ fn publish_checks_for_token_before_verify() { + .run(); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn publish_with_bad_source() { + let p = project() + .file( +@@ -1422,7 +1422,7 @@ include `--registry crates-io` to use crates.io + } + + // A dependency with both `git` and `version`. +-#[cargo_test] ++#[allow(dead_code)] + fn publish_git_with_version() { + let registry = RegistryBuilder::new().http_api().http_index().build(); + +@@ -1566,7 +1566,7 @@ You may press ctrl-c [..] + ); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn publish_dev_dep_no_version() { + let registry = RegistryBuilder::new().http_api().http_index().build(); + +@@ -1656,7 +1656,7 @@ repository = "foo" + ); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn credentials_ambiguous_filename() { + // `publish` generally requires a remote registry + let registry = registry::RegistryBuilder::new().http_api().build(); +@@ -1712,7 +1712,7 @@ You may press ctrl-c [..] + + // --index will not load registry.token to avoid possibly leaking + // crates.io token to another server. +-#[cargo_test] ++#[allow(dead_code)] + fn index_requires_token() { + // Use local registry for faster test times since no publish will occur + let registry = registry::init(); +@@ -1747,7 +1747,7 @@ fn index_requires_token() { + } + + // publish with source replacement without --registry +-#[cargo_test] ++#[allow(dead_code)] + fn cratesio_source_replacement() { + registry::init(); + let p = project() +@@ -1776,7 +1776,7 @@ include `--registry dummy-registry` or `--registry crates-io` + .run(); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn publish_with_missing_readme() { + // Use local registry for faster test times since no publish will occur + let registry = registry::init(); +@@ -1824,7 +1824,7 @@ Caused by: + } + + // Registry returns an API error. +-#[cargo_test] ++#[allow(dead_code)] + fn api_error_json() { + let _registry = registry::RegistryBuilder::new() + .alternative() +@@ -1872,7 +1872,7 @@ Caused by: + } + + // Registry returns an API error with a 200 status code. +-#[cargo_test] ++#[allow(dead_code)] + fn api_error_200() { + let _registry = registry::RegistryBuilder::new() + .alternative() +@@ -1920,7 +1920,7 @@ Caused by: + } + + // Registry returns an error code without a JSON message. +-#[cargo_test] ++#[allow(dead_code)] + fn api_error_code() { + let _registry = registry::RegistryBuilder::new() + .alternative() +@@ -1975,7 +1975,7 @@ Caused by: + } + + // Registry has a network error. +-#[cargo_test] ++#[allow(dead_code)] + fn api_curl_error() { + let _registry = registry::RegistryBuilder::new() + .alternative() +@@ -2025,7 +2025,7 @@ Caused by: + } + + // Registry returns an invalid response. +-#[cargo_test] ++#[allow(dead_code)] + fn api_other_error() { + let _registry = registry::RegistryBuilder::new() + .alternative() +@@ -2075,7 +2075,7 @@ Caused by: + .run(); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn in_package_workspace() { + let registry = RegistryBuilder::new().http_api().http_index().build(); + +@@ -2127,7 +2127,7 @@ You may press ctrl-c [..] + validate_upload_li(); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn with_duplicate_spec_in_members() { + // Use local registry for faster test times since no publish will occur + let registry = registry::init(); +@@ -2179,7 +2179,7 @@ fn with_duplicate_spec_in_members() { + .run(); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn in_package_workspace_with_members_with_features_old() { + let registry = RegistryBuilder::new().http_api().http_index().build(); + +@@ -2230,7 +2230,7 @@ You may press ctrl-c [..] + validate_upload_li(); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn in_virtual_workspace() { + // Use local registry for faster test times since no publish will occur + let registry = registry::init(); +@@ -2266,7 +2266,7 @@ fn in_virtual_workspace() { + .run(); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn in_virtual_workspace_with_p() { + // `publish` generally requires a remote registry + let registry = registry::RegistryBuilder::new().http_api().build(); +@@ -2324,7 +2324,7 @@ You may press ctrl-c [..] + .run(); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn in_package_workspace_not_found() { + // Use local registry for faster test times since no publish will occur + let registry = registry::init(); +@@ -2369,7 +2369,7 @@ error: package ID specification `li` did not match any packages + .run(); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn in_package_workspace_found_multiple() { + // Use local registry for faster test times since no publish will occur + let registry = registry::init(); +@@ -2426,7 +2426,7 @@ error: the `-p` argument must be specified to select a single package to publish + .run(); + } + +-#[cargo_test] ++#[allow(dead_code)] + // https://github.com/rust-lang/cargo/issues/10536 + fn publish_path_dependency_without_workspace() { + // Use local registry for faster test times since no publish will occur +@@ -2473,7 +2473,7 @@ error: package ID specification `bar` did not match any packages + .run(); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn http_api_not_noop() { + let registry = registry::RegistryBuilder::new().http_api().build(); + +@@ -2534,7 +2534,7 @@ You may press ctrl-c [..] + p.cargo("build").run(); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn wait_for_first_publish() { + // Counter for number of tries before the package is "published" + let arc: Arc> = Arc::new(Mutex::new(0)); +@@ -2616,7 +2616,7 @@ You may press ctrl-c to skip waiting; the crate should be available shortly. + /// A separate test is needed for package names with - or _ as they hit + /// the responder twice per cargo invocation. If that ever gets changed + /// this test will need to be changed accordingly. +-#[cargo_test] ++#[allow(dead_code)] + fn wait_for_first_publish_underscore() { + // Counter for number of tries before the package is "published" + let arc: Arc> = Arc::new(Mutex::new(0)); +@@ -2712,7 +2712,7 @@ You may press ctrl-c to skip waiting; the crate should be available shortly. + p.cargo("build").with_status(0).run(); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn wait_for_subsequent_publish() { + // Counter for number of tries before the package is "published" + let arc: Arc> = Arc::new(Mutex::new(0)); +@@ -2804,7 +2804,7 @@ You may press ctrl-c to skip waiting; the crate should be available shortly. + p.cargo("check").with_status(0).run(); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn skip_wait_for_publish() { + // Intentionally using local registry so the crate never makes it to the index + let registry = registry::init(); diff --git a/debian/patches/cargo/c-2003-workaround-qemu-vfork-command-not-found.patch b/debian/patches/cargo/c-2003-workaround-qemu-vfork-command-not-found.patch new file mode 100644 index 000000000..3daad1651 --- /dev/null +++ b/debian/patches/cargo/c-2003-workaround-qemu-vfork-command-not-found.patch @@ -0,0 +1,28 @@ +From: Debian Rust Maintainers +Date: Thu, 13 Jun 2024 11:16:38 +0200 +Subject: c-2003-workaround-qemu-vfork-command-not-found + +=================================================================== +--- + src/tools/cargo/crates/cargo-test-macro/src/lib.rs | 8 ++++++++ + 1 file changed, 8 insertions(+) + +diff --git a/src/tools/cargo/crates/cargo-test-macro/src/lib.rs b/src/tools/cargo/crates/cargo-test-macro/src/lib.rs +index 14672ab..9208cb3 100644 +--- a/src/tools/cargo/crates/cargo-test-macro/src/lib.rs ++++ b/src/tools/cargo/crates/cargo-test-macro/src/lib.rs +@@ -222,6 +222,14 @@ fn has_command(command: &str) -> bool { + } + }; + if !output.status.success() { ++ // Debian specific patch, upstream wontfix: ++ // qemu has a faulty vfork where it fails to fail if a command is not ++ // found, with a unix_wait_status of 32512, or 0x7f00, 7f meaning ++ // exit code 127. See https://github.com/rust-lang/rust/issues/90825 ++ use std::os::unix::process::ExitStatusExt; ++ if output.status.into_raw() == 0x7f00 { ++ return false; ++ } + panic!( + "expected command `{}` to be runnable, got error {}:\n\ + stderr:{}\n\ diff --git a/debian/patches/cargo/c-2200-workaround-x32-test.patch b/debian/patches/cargo/c-2200-workaround-x32-test.patch new file mode 100644 index 000000000..eb78ec51c --- /dev/null +++ b/debian/patches/cargo/c-2200-workaround-x32-test.patch @@ -0,0 +1,22 @@ +From: Debian Rust Maintainers +Date: Thu, 13 Jun 2024 11:16:38 +0200 +Subject: c-2200-workaround-x32-test + +Bug: https://github.com/rust-lang/cargo/issues/10005 +--- + src/tools/cargo/tests/testsuite/cfg.rs | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/tools/cargo/tests/testsuite/cfg.rs b/src/tools/cargo/tests/testsuite/cfg.rs +index dcce654..c9e2e0c 100644 +--- a/src/tools/cargo/tests/testsuite/cfg.rs ++++ b/src/tools/cargo/tests/testsuite/cfg.rs +@@ -272,7 +272,7 @@ fn any_ok() { + + // https://github.com/rust-lang/cargo/issues/5313 + #[cargo_test] +-#[cfg(all(target_arch = "x86_64", target_os = "linux", target_env = "gnu"))] ++#[cfg(all(target_arch = "x86_64", target_os = "linux", target_env = "gnu", target_pointer_width = "64"))] + fn cfg_looks_at_rustflags_for_target() { + let p = project() + .file( diff --git a/debian/patches/cargo/c-disable-fs-specific-test.patch b/debian/patches/cargo/c-disable-fs-specific-test.patch new file mode 100644 index 000000000..84d887702 --- /dev/null +++ b/debian/patches/cargo/c-disable-fs-specific-test.patch @@ -0,0 +1,22 @@ +From: Debian Rust Maintainers +Date: Thu, 13 Jun 2024 11:16:38 +0200 +Subject: c-disable-fs-specific-test + +=================================================================== +--- + src/tools/cargo/tests/testsuite/metadata.rs | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/tools/cargo/tests/testsuite/metadata.rs b/src/tools/cargo/tests/testsuite/metadata.rs +index 888cdce..f06f73f 100644 +--- a/src/tools/cargo/tests/testsuite/metadata.rs ++++ b/src/tools/cargo/tests/testsuite/metadata.rs +@@ -3997,7 +3997,7 @@ fn dep_kinds_workspace() { + // Creating non-utf8 path is an OS-specific pain, so let's run this only on + // linux, where arbitrary bytes work. + #[cfg(target_os = "linux")] +-#[cargo_test] ++#[allow(dead_code)] + fn cargo_metadata_non_utf8() { + use std::ffi::OsString; + use std::os::unix::ffi::OsStringExt; diff --git a/debian/patches/cargo/d-0012-cargo-always-return-dev-channel.patch b/debian/patches/cargo/d-0012-cargo-always-return-dev-channel.patch new file mode 100644 index 000000000..7cbe41213 --- /dev/null +++ b/debian/patches/cargo/d-0012-cargo-always-return-dev-channel.patch @@ -0,0 +1,26 @@ +From: Debian Rust Maintainers +Date: Mon, 6 May 2024 10:25:32 +0200 +Subject: d-0012-cargo-always-return-dev-channel + +Last-Update: 2023-05-30 +Forwarded: not-needed +--- + src/tools/cargo/src/cargo/core/features.rs | 5 ++--- + 1 file changed, 2 insertions(+), 3 deletions(-) + +diff --git a/src/tools/cargo/src/cargo/core/features.rs b/src/tools/cargo/src/cargo/core/features.rs +index 4f5b069..0a42077 100644 +--- a/src/tools/cargo/src/cargo/core/features.rs ++++ b/src/tools/cargo/src/cargo/core/features.rs +@@ -1205,9 +1205,8 @@ pub fn channel() -> String { + return "dev".to_string(); + } + } +- crate::version() +- .release_channel +- .unwrap_or_else(|| String::from("dev")) ++ // Debian: always return dev channel ++ String::from("dev") + } + + /// Only for testing and developing. See ["Running with gitoxide as default git backend in tests"][1]. -- cgit v1.2.3