summaryrefslogtreecommitdiffstats
path: root/debian/patches/prune
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-06-19 09:26:01 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-06-19 09:26:01 +0000
commitc29d7c1ba10d6debd11f9d8aad5d069a6491e60e (patch)
treea2ad46eb513b315f0efd8170af5eb08870165757 /debian/patches/prune
parentMerging upstream version 1.76.0+dfsg1. (diff)
downloadrustc-debian/1.76.0+dfsg1-1.tar.xz
rustc-debian/1.76.0+dfsg1-1.zip
Adding debian version 1.76.0+dfsg1-1.debian/1.76.0+dfsg1-1debian
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'debian/patches/prune')
-rw-r--r--debian/patches/prune/d-0000-ignore-removed-submodules.patch246
-rw-r--r--debian/patches/prune/d-0001-pkg-config-no-special-snowflake.patch96
-rw-r--r--debian/patches/prune/d-0002-mdbook-strip-embedded-libs.patch577
-rw-r--r--debian/patches/prune/d-0005-no-jemalloc.patch51
-rw-r--r--debian/patches/prune/d-0010-cargo-remove-vendored-c-crates.patch39
-rw-r--r--debian/patches/prune/d-0011-cargo-remove-nghttp2.patch26
-rw-r--r--debian/patches/prune/d-0020-remove-windows-dependencies.patch382
-rw-r--r--debian/patches/prune/d-0021-vendor-remove-windows-dependencies.patch1007
8 files changed, 2424 insertions, 0 deletions
diff --git a/debian/patches/prune/d-0000-ignore-removed-submodules.patch b/debian/patches/prune/d-0000-ignore-removed-submodules.patch
new file mode 100644
index 000000000..f3a7b7030
--- /dev/null
+++ b/debian/patches/prune/d-0000-ignore-removed-submodules.patch
@@ -0,0 +1,246 @@
+From: Debian Rust Maintainers <pkg-rust-maintainers@alioth-lists.debian.net>
+Date: Sat, 2 Oct 2021 01:07:59 +0100
+Subject: d-0000-ignore-removed-submodules
+
+Description: remove upstream parts that are not needed for the Debian build, in
+order to both reduce the orig tarball and the vendored crates within.
+
+Forwarded: not-needed
+---
+ Cargo.toml | 7 ----
+ src/bootstrap/bootstrap.py | 4 ---
+ src/bootstrap/src/core/build_steps/test.rs | 12 +------
+ src/bootstrap/src/core/builder.rs | 54 +++++++-----------------------
+ src/tools/rust-analyzer/Cargo.toml | 11 +++++-
+ 5 files changed, 24 insertions(+), 64 deletions(-)
+
+diff --git a/Cargo.toml b/Cargo.toml
+index 9b11ae8..19a98f9 100644
+--- a/Cargo.toml
++++ b/Cargo.toml
+@@ -19,22 +19,15 @@ members = [
+ "src/tools/tidy",
+ "src/tools/tier-check",
+ "src/tools/build-manifest",
+- "src/tools/remote-test-client",
+- "src/tools/remote-test-server",
+ "src/tools/rust-installer",
+ "src/tools/rust-demangler",
+ "src/tools/rustdoc",
+- "src/tools/rls",
+ "src/tools/rustfmt",
+- "src/tools/miri",
+- "src/tools/miri/cargo-miri",
+ "src/tools/rustdoc-themes",
+ "src/tools/unicode-table-generator",
+- "src/tools/expand-yaml-anchors",
+ "src/tools/jsondocck",
+ "src/tools/jsondoclint",
+ "src/tools/html-checker",
+- "src/tools/bump-stage0",
+ "src/tools/replace-version-placeholder",
+ "src/tools/lld-wrapper",
+ "src/tools/collect-license-metadata",
+diff --git a/src/bootstrap/bootstrap.py b/src/bootstrap/bootstrap.py
+index fea194a..ed99a47 100644
+--- a/src/bootstrap/bootstrap.py
++++ b/src/bootstrap/bootstrap.py
+@@ -955,10 +955,6 @@ class RustBuild(object):
+ args = [self.cargo(), "build", "--manifest-path",
+ os.path.join(self.rust_root, "src/bootstrap/Cargo.toml")]
+ args.extend("--verbose" for _ in range(self.verbose))
+- if self.use_locked_deps:
+- args.append("--locked")
+- if self.use_vendored_sources:
+- args.append("--frozen")
+ if self.get_toml("metrics", "build"):
+ args.append("--features")
+ args.append("build-metrics")
+diff --git a/src/bootstrap/src/core/build_steps/test.rs b/src/bootstrap/src/core/build_steps/test.rs
+index 4eb7766..5c115cf 100644
+--- a/src/bootstrap/src/core/build_steps/test.rs
++++ b/src/bootstrap/src/core/build_steps/test.rs
+@@ -2295,17 +2295,7 @@ impl Step for RustcGuide {
+ }
+
+ fn run(self, builder: &Builder<'_>) {
+- let relative_path = Path::new("src").join("doc").join("rustc-dev-guide");
+- builder.update_submodule(&relative_path);
+-
+- let src = builder.src.join(relative_path);
+- let mut rustbook_cmd = builder.tool_cmd(Tool::Rustbook);
+- let toolstate = if builder.run_delaying_failure(rustbook_cmd.arg("linkcheck").arg(&src)) {
+- ToolState::TestPass
+- } else {
+- ToolState::TestFail
+- };
+- builder.save_toolstate("rustc-dev-guide", toolstate);
++ builder.save_toolstate("rustc-dev-guide", ToolState::TestPass);
+ }
+ }
+
+diff --git a/src/bootstrap/src/core/builder.rs b/src/bootstrap/src/core/builder.rs
+index e180964..7245d11 100644
+--- a/src/bootstrap/src/core/builder.rs
++++ b/src/bootstrap/src/core/builder.rs
+@@ -498,20 +498,20 @@ impl<'a> ShouldRun<'a> {
+ static SUBMODULES_PATHS: OnceLock<Vec<String>> = OnceLock::new();
+
+ let init_submodules_paths = |src: &PathBuf| {
+- let file = File::open(src.join(".gitmodules")).unwrap();
++ //let file = File::open(src.join(".gitmodules")).unwrap();
+
+ let mut submodules_paths = vec![];
+- for line in BufReader::new(file).lines() {
+- if let Ok(line) = line {
+- let line = line.trim();
+-
+- if line.starts_with("path") {
+- let actual_path =
+- line.split(' ').last().expect("Couldn't get value of path");
+- submodules_paths.push(actual_path.to_owned());
+- }
+- }
+- }
++ //for line in BufReader::new(file).lines() {
++ // if let Ok(line) = line {
++ // let line = line.trim();
++
++ // if line.starts_with("path") {
++ // let actual_path =
++ // line.split(' ').last().expect("Couldn't get value of path");
++ // submodules_paths.push(actual_path.to_owned());
++ // }
++ // }
++ //}
+
+ submodules_paths
+ };
+@@ -685,25 +685,14 @@ impl<'a> Builder<'a> {
+ tool::Linkchecker,
+ tool::CargoTest,
+ tool::Compiletest,
+- tool::RemoteTestServer,
+- tool::RemoteTestClient,
+ tool::RustInstaller,
+ tool::Cargo,
+- tool::Rls,
+- tool::RustAnalyzer,
+ tool::RustAnalyzerProcMacroSrv,
+ tool::RustDemangler,
+ tool::Rustdoc,
+ tool::Clippy,
+ tool::CargoClippy,
+- llvm::Llvm,
+- llvm::Sanitizers,
+ tool::Rustfmt,
+- tool::Miri,
+- tool::CargoMiri,
+- llvm::Lld,
+- llvm::CrtBeginEnd,
+- tool::RustdocGUITest,
+ tool::OptimizedDist,
+ tool::CoverageDump,
+ ),
+@@ -713,12 +702,7 @@ impl<'a> Builder<'a> {
+ check::Rustdoc,
+ check::CodegenBackend,
+ check::Clippy,
+- check::Miri,
+- check::CargoMiri,
+- check::MiroptTestTools,
+- check::Rls,
+ check::Rustfmt,
+- check::RustAnalyzer,
+ check::Bootstrap
+ ),
+ Kind::Test => describe!(
+@@ -751,7 +735,6 @@ impl<'a> Builder<'a> {
+ test::TierCheck,
+ test::Cargotest,
+ test::Cargo,
+- test::RustAnalyzer,
+ test::ErrorIndex,
+ test::Distcheck,
+ test::RunMakeFullDeps,
+@@ -767,7 +750,6 @@ impl<'a> Builder<'a> {
+ test::EmbeddedBook,
+ test::EditionGuide,
+ test::Rustfmt,
+- test::Miri,
+ test::Clippy,
+ test::RustDemangler,
+ test::CompiletestTest,
+@@ -804,7 +786,6 @@ impl<'a> Builder<'a> {
+ doc::CargoBook,
+ doc::Clippy,
+ doc::ClippyBook,
+- doc::Miri,
+ doc::EmbeddedBook,
+ doc::EditionGuide,
+ doc::StyleGuide,
+@@ -824,12 +805,9 @@ impl<'a> Builder<'a> {
+ dist::Analysis,
+ dist::Src,
+ dist::Cargo,
+- dist::Rls,
+- dist::RustAnalyzer,
+ dist::Rustfmt,
+ dist::RustDemangler,
+ dist::Clippy,
+- dist::Miri,
+ dist::LlvmTools,
+ dist::RustDev,
+ dist::Bootstrap,
+@@ -846,11 +824,9 @@ impl<'a> Builder<'a> {
+ install::Docs,
+ install::Std,
+ install::Cargo,
+- install::RustAnalyzer,
+ install::Rustfmt,
+ install::RustDemangler,
+ install::Clippy,
+- install::Miri,
+ install::LlvmTools,
+ install::Src,
+ install::Rustc
+@@ -860,7 +836,6 @@ impl<'a> Builder<'a> {
+ run::BuildManifest,
+ run::BumpStage0,
+ run::ReplaceVersionPlaceholder,
+- run::Miri,
+ run::CollectLicenseMetadata,
+ run::GenerateCopyright,
+ run::GenerateWindowsSys,
+@@ -2080,10 +2055,7 @@ impl<'a> Builder<'a> {
+ }
+ }
+
+- if self.config.locked_deps {
+- cargo.arg("--locked");
+- }
+- if self.config.vendor || self.is_sudo {
++ if self.is_sudo {
+ cargo.arg("--frozen");
+ }
+
+diff --git a/src/tools/rust-analyzer/Cargo.toml b/src/tools/rust-analyzer/Cargo.toml
+index 1213979..71f9aa7 100644
+--- a/src/tools/rust-analyzer/Cargo.toml
++++ b/src/tools/rust-analyzer/Cargo.toml
+@@ -1,5 +1,14 @@
+ [workspace]
+-members = ["xtask/", "lib/*", "crates/*"]
++members = [
++ "xtask/",
++ "lib/*",
++ "crates/proc-macro-srv",
++ "crates/proc-macro-srv-cli",
++ "crates/tt",
++ "crates/mbe",
++ "crates/paths",
++ "crates/proc-macro-api",
++]
+ exclude = ["crates/proc-macro-test/imp"]
+ resolver = "2"
+
diff --git a/debian/patches/prune/d-0001-pkg-config-no-special-snowflake.patch b/debian/patches/prune/d-0001-pkg-config-no-special-snowflake.patch
new file mode 100644
index 000000000..13e1cceda
--- /dev/null
+++ b/debian/patches/prune/d-0001-pkg-config-no-special-snowflake.patch
@@ -0,0 +1,96 @@
+From: Debian Rust Maintainers <pkg-rust-maintainers@alioth-lists.debian.net>
+Date: Sat, 2 Oct 2021 01:08:00 +0100
+Subject: d-0001-pkg-config-no-special-snowflake
+
+Description: always enable cross compilation via pkgconf, and set the right binary name.
+
+Forwarded: not-needed
+---
+ vendor/pkg-config/src/lib.rs | 25 ++++++++++---------------
+ vendor/pkg-config/tests/test.rs | 2 --
+ 2 files changed, 10 insertions(+), 17 deletions(-)
+
+diff --git a/vendor/pkg-config/src/lib.rs b/vendor/pkg-config/src/lib.rs
+index 3653032..553ac75 100644
+--- a/vendor/pkg-config/src/lib.rs
++++ b/vendor/pkg-config/src/lib.rs
+@@ -117,11 +117,8 @@ pub enum Error {
+ /// Contains the name of the responsible environment variable.
+ EnvNoPkgConfig(String),
+
+- /// Detected cross compilation without a custom sysroot.
+- ///
+- /// Ignore the error with `PKG_CONFIG_ALLOW_CROSS=1`,
+- /// which may let `pkg-config` select libraries
+- /// for the host's architecture instead of the target's.
++ /// Cross compilation detected. Kept for compatibility;
++ /// the Debian package never emits this.
+ CrossCompilation,
+
+ /// Failed to run `pkg-config`.
+@@ -161,14 +158,6 @@ impl fmt::Display for Error {
+ fn fmt(&self, f: &mut fmt::Formatter) -> Result<(), fmt::Error> {
+ match *self {
+ Error::EnvNoPkgConfig(ref name) => write!(f, "Aborted because {} is set", name),
+- Error::CrossCompilation => f.write_str(
+- "pkg-config has not been configured to support cross-compilation.\n\
+- \n\
+- Install a sysroot for the target platform and configure it via\n\
+- PKG_CONFIG_SYSROOT_DIR and PKG_CONFIG_PATH, or install a\n\
+- cross-compiling wrapper for pkg-config and set it via\n\
+- PKG_CONFIG environment variable.",
+- ),
+ Error::Command {
+ ref command,
+ ref cause,
+@@ -226,7 +215,7 @@ impl fmt::Display for Error {
+ )?;
+ format_output(output, f)
+ }
+- Error::__Nonexhaustive => panic!(),
++ Error::CrossCompilation | Error::__Nonexhaustive => panic!(),
+ }
+ }
+ }
+@@ -420,6 +409,8 @@ impl Config {
+ if host == target {
+ return true;
+ }
++ // always enable PKG_CONFIG_ALLOW_CROSS override in Debian
++ return true;
+
+ // pkg-config may not be aware of cross-compilation, and require
+ // a wrapper script that sets up platform-specific prefixes.
+@@ -477,7 +468,11 @@ impl Config {
+ }
+
+ fn run(&self, name: &str, args: &[&str]) -> Result<Vec<u8>, Error> {
+- let pkg_config_exe = self.targetted_env_var("PKG_CONFIG");
++ let pkg_config_exe = self.targetted_env_var("PKG_CONFIG")
++ .or_else(|| {
++ self.env_var_os("DEB_HOST_GNU_TYPE")
++ .map(|mut t| { t.push(OsString::from("-pkgconf")); t })
++ });
+ let fallback_exe = if pkg_config_exe.is_none() {
+ Some(OsString::from("pkgconf"))
+ } else {
+diff --git a/vendor/pkg-config/tests/test.rs b/vendor/pkg-config/tests/test.rs
+index 0f37c72..f70e8b7 100644
+--- a/vendor/pkg-config/tests/test.rs
++++ b/vendor/pkg-config/tests/test.rs
+@@ -31,7 +31,6 @@ fn find(name: &str) -> Result<pkg_config::Library, Error> {
+ pkg_config::probe_library(name)
+ }
+
+-#[test]
+ fn cross_disabled() {
+ let _g = LOCK.lock();
+ reset();
+@@ -43,7 +42,6 @@ fn cross_disabled() {
+ }
+ }
+
+-#[test]
+ fn cross_enabled() {
+ let _g = LOCK.lock();
+ reset();
diff --git a/debian/patches/prune/d-0002-mdbook-strip-embedded-libs.patch b/debian/patches/prune/d-0002-mdbook-strip-embedded-libs.patch
new file mode 100644
index 000000000..62d97a13f
--- /dev/null
+++ b/debian/patches/prune/d-0002-mdbook-strip-embedded-libs.patch
@@ -0,0 +1,577 @@
+From: Debian Rust Maintainers <pkg-rust-maintainers@alioth-lists.debian.net>
+Date: Sat, 2 Oct 2021 01:08:00 +0100
+Subject: d-0002-mdbook-strip-embedded-libs
+
+Description: Use https://github.com/infinity0/mdBook/tree/debian to help you rebase
+the patch on top of a newer version. . Make sure the paths here match the ones
+in debian/rust-doc.links
+
+Forwarded: not-needed
+---
+ src/doc/rust-by-example/theme/index.hbs | 86 +----------------
+ src/tools/linkchecker/main.rs | 28 +++++-
+ vendor/mdbook/src/book/init.rs | 19 ----
+ .../src/renderer/html_handlebars/hbs_renderer.rs | 104 ++++-----------------
+ .../mdbook/src/renderer/html_handlebars/search.rs | 2 -
+ vendor/mdbook/src/theme/index.hbs | 86 +----------------
+ vendor/mdbook/src/theme/mod.rs | 27 ------
+ vendor/mdbook/src/theme/searcher/mod.rs | 2 -
+ 8 files changed, 51 insertions(+), 303 deletions(-)
+
+diff --git a/src/doc/rust-by-example/theme/index.hbs b/src/doc/rust-by-example/theme/index.hbs
+index 1ae579f..effac81 100644
+--- a/src/doc/rust-by-example/theme/index.hbs
++++ b/src/doc/rust-by-example/theme/index.hbs
+@@ -33,10 +33,7 @@
+ {{/if}}
+
+ <!-- Fonts -->
+- <link rel="stylesheet" href="{{ path_to_root }}FontAwesome/css/font-awesome.css">
+- {{#if copy_fonts}}
+- <link rel="stylesheet" href="{{ path_to_root }}fonts/fonts.css">
+- {{/if}}
++ <link rel="stylesheet" href="{{ path_to_root }}css/font-awesome.min.css">
+
+ <!-- Highlight.js Stylesheets -->
+ <link rel="stylesheet" href="{{ path_to_root }}highlight.css">
+@@ -50,7 +47,7 @@
+
+ {{#if mathjax_support}}
+ <!-- MathJax -->
+- <script async src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.1/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script>
++ <script async src="MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script>
+ {{/if}}
+ </head>
+ <body class="sidebar-visible no-js">
+@@ -61,35 +58,6 @@
+ var default_theme = window.matchMedia("(prefers-color-scheme: dark)").matches ? "{{ preferred_dark_theme }}" : "{{ default_theme }}";
+ </script>
+
+- <!-- Work around some values being stored in localStorage wrapped in quotes -->
+- <script>
+- try {
+- var theme = localStorage.getItem('mdbook-theme');
+- var sidebar = localStorage.getItem('mdbook-sidebar');
+-
+- if (theme.startsWith('"') && theme.endsWith('"')) {
+- localStorage.setItem('mdbook-theme', theme.slice(1, theme.length - 1));
+- }
+-
+- if (sidebar.startsWith('"') && sidebar.endsWith('"')) {
+- localStorage.setItem('mdbook-sidebar', sidebar.slice(1, sidebar.length - 1));
+- }
+- } catch (e) { }
+- </script>
+-
+- <!-- Set the theme before any content is loaded, prevents flash -->
+- <script>
+- var theme;
+- try { theme = localStorage.getItem('mdbook-theme'); } catch(e) { }
+- if (theme === null || theme === undefined) { theme = default_theme; }
+- var html = document.querySelector('html');
+- html.classList.remove('{{ default_theme }}')
+- html.classList.add(theme);
+- var body = document.querySelector('body');
+- body.classList.remove('no-js')
+- body.classList.add('js');
+- </script>
+-
+ <input type="checkbox" id="sidebar-toggle-anchor" class="hidden">
+
+ <!-- Hide / unhide sidebar before it is displayed -->
+@@ -309,54 +277,8 @@
+ </script>
+ {{/if}}
+
+- {{#if google_analytics}}
+- <!-- Google Analytics Tag -->
+- <script>
+- var localAddrs = ["localhost", "127.0.0.1", ""];
+-
+- // make sure we don't activate google analytics if the developer is
+- // inspecting the book locally...
+- if (localAddrs.indexOf(document.location.hostname) === -1) {
+- (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+- (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+- m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+- })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
+-
+- ga('create', '{{google_analytics}}', 'auto');
+- ga('send', 'pageview');
+- }
+- </script>
+- {{/if}}
+-
+- {{#if playground_line_numbers}}
+- <script>
+- window.playground_line_numbers = true;
+- </script>
+- {{/if}}
+-
+- {{#if playground_copyable}}
+- <script>
+- window.playground_copyable = true;
+- </script>
+- {{/if}}
+-
+- {{#if playground_js}}
+- <script src="{{ path_to_root }}ace.js"></script>
+- <script src="{{ path_to_root }}editor.js"></script>
+- <script src="{{ path_to_root }}mode-rust.js"></script>
+- <script src="{{ path_to_root }}theme-dawn.js"></script>
+- <script src="{{ path_to_root }}theme-tomorrow_night.js"></script>
+- {{/if}}
+-
+- {{#if search_js}}
+- <script src="{{ path_to_root }}elasticlunr.min.js"></script>
+- <script src="{{ path_to_root }}mark.min.js"></script>
+- <script src="{{ path_to_root }}searcher.js"></script>
+- {{/if}}
+-
+- <script src="{{ path_to_root }}clipboard.min.js"></script>
+- <script src="{{ path_to_root }}highlight.js"></script>
+- <script src="{{ path_to_root }}book.js"></script>
++ <script src="{{ path_to_root }}highlight.js" type="text/javascript" charset="utf-8"></script>
++ <script src="{{ path_to_root }}book.js" type="text/javascript" charset="utf-8"></script>
+
+ <!-- Custom JS scripts -->
+ {{#each additional_js}}
+diff --git a/src/tools/linkchecker/main.rs b/src/tools/linkchecker/main.rs
+index 7f73cac..e4805cc 100644
+--- a/src/tools/linkchecker/main.rs
++++ b/src/tools/linkchecker/main.rs
+@@ -159,7 +159,17 @@ impl Checker {
+ for entry in t!(dir.read_dir()).map(|e| t!(e)) {
+ let path = entry.path();
+ // Goes through symlinks
+- let metadata = t!(fs::metadata(&path));
++ let metadata = fs::metadata(&path);
++ if let Err(err) = metadata {
++ if let Ok(target) = fs::read_link(&path) {
++ if target.starts_with("/usr/share") {
++ // broken symlink to /usr/share, ok for our Debian build
++ return;
++ }
++ }
++ panic!("error at file {:?} while walking - {:?}", path, err)
++ }
++ let metadata = t!(metadata);
+ if metadata.is_dir() {
+ self.walk(&path, report);
+ } else {
+@@ -172,7 +182,15 @@ impl Checker {
+ fn check(&mut self, file: &Path, report: &mut Report) {
+ let (pretty_path, entry) = self.load_file(file, report);
+ let source = match entry {
+- FileEntry::Missing => panic!("missing file {:?} while walking", file),
++ FileEntry::Missing => {
++ if let Ok(target) = fs::read_link(&file) {
++ if target.starts_with("/usr/share") {
++ // broken symlink to /usr/share, ok for our Debian build
++ return;
++ }
++ }
++ panic!("missing file {:?} while walking", file)
++ }
+ FileEntry::Dir => unreachable!("never with `check` path"),
+ FileEntry::OtherFile => return,
+ FileEntry::Redirect { .. } => return,
+@@ -238,6 +256,12 @@ impl Checker {
+ let (target_pretty_path, target_entry) = self.load_file(&path, report);
+ let (target_source, target_ids) = match target_entry {
+ FileEntry::Missing => {
++ if let Ok(target) = fs::read_link(&path) {
++ if target.starts_with("/usr/share") {
++ // broken symlink to /usr/share, ok for our Debian build
++ return;
++ }
++ }
+ if is_exception(file, &target_pretty_path) {
+ report.links_ignored_exception += 1;
+ } else {
+diff --git a/vendor/mdbook/src/book/init.rs b/vendor/mdbook/src/book/init.rs
+index faca1d0..c1a82a3 100644
+--- a/vendor/mdbook/src/book/init.rs
++++ b/vendor/mdbook/src/book/init.rs
+@@ -153,25 +153,6 @@ impl BookBuilder {
+ let mut js = File::create(themedir.join("book.js"))?;
+ js.write_all(theme::JS)?;
+
+- let mut highlight_css = File::create(themedir.join("highlight.css"))?;
+- highlight_css.write_all(theme::HIGHLIGHT_CSS)?;
+-
+- let mut highlight_js = File::create(themedir.join("highlight.js"))?;
+- highlight_js.write_all(theme::HIGHLIGHT_JS)?;
+-
+- write_file(&themedir.join("fonts"), "fonts.css", theme::fonts::CSS)?;
+- for (file_name, contents) in theme::fonts::LICENSES {
+- write_file(&themedir, file_name, contents)?;
+- }
+- for (file_name, contents) in theme::fonts::OPEN_SANS.iter() {
+- write_file(&themedir, file_name, contents)?;
+- }
+- write_file(
+- &themedir,
+- theme::fonts::SOURCE_CODE_PRO.0,
+- theme::fonts::SOURCE_CODE_PRO.1,
+- )?;
+-
+ Ok(())
+ }
+
+diff --git a/vendor/mdbook/src/renderer/html_handlebars/hbs_renderer.rs b/vendor/mdbook/src/renderer/html_handlebars/hbs_renderer.rs
+index 8ea2f49..3cb1c9f 100644
+--- a/vendor/mdbook/src/renderer/html_handlebars/hbs_renderer.rs
++++ b/vendor/mdbook/src/renderer/html_handlebars/hbs_renderer.rs
+@@ -3,13 +3,14 @@ use crate::config::{BookConfig, Code, Config, HtmlConfig, Playground, RustEditio
+ use crate::errors::*;
+ use crate::renderer::html_handlebars::helpers;
+ use crate::renderer::{RenderContext, Renderer};
+-use crate::theme::{self, playground_editor, Theme};
++use crate::theme::{self, Theme};
+ use crate::utils;
+
+ use std::borrow::Cow;
+ use std::collections::BTreeMap;
+ use std::collections::HashMap;
+ use std::fs::{self, File};
++use std::os::unix::fs::symlink;
+ use std::path::{Path, PathBuf};
+
+ use crate::utils::fs::get_404_output_file;
+@@ -250,99 +251,28 @@ impl HtmlHandlebars {
+ if let Some(contents) = &theme.favicon_svg {
+ write_file(destination, "favicon.svg", contents)?;
+ }
+- write_file(destination, "highlight.css", &theme.highlight_css)?;
+ write_file(destination, "tomorrow-night.css", &theme.tomorrow_night_css)?;
+ write_file(destination, "ayu-highlight.css", &theme.ayu_highlight_css)?;
+- write_file(destination, "highlight.js", &theme.highlight_js)?;
+- write_file(destination, "clipboard.min.js", &theme.clipboard_js)?;
+- write_file(
+- destination,
+- "FontAwesome/css/font-awesome.css",
+- theme::FONT_AWESOME,
+- )?;
+- write_file(
+- destination,
+- "FontAwesome/fonts/fontawesome-webfont.eot",
+- theme::FONT_AWESOME_EOT,
+- )?;
+- write_file(
+- destination,
+- "FontAwesome/fonts/fontawesome-webfont.svg",
+- theme::FONT_AWESOME_SVG,
++ symlink(
++ "/usr/share/fonts-font-awesome/css/font-awesome.min.css",
++ destination.join("css/font-awesome.min.css"),
+ )?;
+- write_file(
+- destination,
+- "FontAwesome/fonts/fontawesome-webfont.ttf",
+- theme::FONT_AWESOME_TTF,
++ symlink(
++ "/usr/share/fonts-font-awesome/fonts",
++ destination.join("fonts"),
+ )?;
+- write_file(
+- destination,
+- "FontAwesome/fonts/fontawesome-webfont.woff",
+- theme::FONT_AWESOME_WOFF,
++ symlink(
++ "/usr/share/javascript/highlight.js/styles/atelier-dune-light.css",
++ destination.join("highlight.css"),
+ )?;
+- write_file(
+- destination,
+- "FontAwesome/fonts/fontawesome-webfont.woff2",
+- theme::FONT_AWESOME_WOFF2,
++ symlink(
++ "/usr/share/javascript/highlight.js/highlight.js",
++ destination.join("highlight.js"),
+ )?;
+- write_file(
+- destination,
+- "FontAwesome/fonts/FontAwesome.ttf",
+- theme::FONT_AWESOME_TTF,
++ symlink(
++ "/usr/share/javascript/mathjax/MathJax.js",
++ destination.join("MathJax.js"),
+ )?;
+- // Don't copy the stock fonts if the user has specified their own fonts to use.
+- if html_config.copy_fonts && theme.fonts_css.is_none() {
+- write_file(destination, "fonts/fonts.css", theme::fonts::CSS)?;
+- for (file_name, contents) in theme::fonts::LICENSES.iter() {
+- write_file(destination, file_name, contents)?;
+- }
+- for (file_name, contents) in theme::fonts::OPEN_SANS.iter() {
+- write_file(destination, file_name, contents)?;
+- }
+- write_file(
+- destination,
+- theme::fonts::SOURCE_CODE_PRO.0,
+- theme::fonts::SOURCE_CODE_PRO.1,
+- )?;
+- }
+- if let Some(fonts_css) = &theme.fonts_css {
+- if !fonts_css.is_empty() {
+- write_file(destination, "fonts/fonts.css", fonts_css)?;
+- }
+- }
+- if !html_config.copy_fonts && theme.fonts_css.is_none() {
+- warn!(
+- "output.html.copy-fonts is deprecated.\n\
+- This book appears to have copy-fonts=false in book.toml without a fonts.css file.\n\
+- Add an empty `theme/fonts/fonts.css` file to squelch this warning."
+- );
+- }
+- for font_file in &theme.font_files {
+- let contents = fs::read(font_file)?;
+- let filename = font_file.file_name().unwrap();
+- let filename = Path::new("fonts").join(filename);
+- write_file(destination, filename, &contents)?;
+- }
+-
+- let playground_config = &html_config.playground;
+-
+- // Ace is a very large dependency, so only load it when requested
+- if playground_config.editable && playground_config.copy_js {
+- // Load the editor
+- write_file(destination, "editor.js", playground_editor::JS)?;
+- write_file(destination, "ace.js", playground_editor::ACE_JS)?;
+- write_file(destination, "mode-rust.js", playground_editor::MODE_RUST_JS)?;
+- write_file(
+- destination,
+- "theme-dawn.js",
+- playground_editor::THEME_DAWN_JS,
+- )?;
+- write_file(
+- destination,
+- "theme-tomorrow_night.js",
+- playground_editor::THEME_TOMORROW_NIGHT_JS,
+- )?;
+- }
+
+ Ok(())
+ }
+diff --git a/vendor/mdbook/src/renderer/html_handlebars/search.rs b/vendor/mdbook/src/renderer/html_handlebars/search.rs
+index 24d62fd..849a48c 100644
+--- a/vendor/mdbook/src/renderer/html_handlebars/search.rs
++++ b/vendor/mdbook/src/renderer/html_handlebars/search.rs
+@@ -53,8 +53,6 @@ pub fn create_files(search_config: &Search, destination: &Path, book: &Book) ->
+ format!("Object.assign(window.search, {});", index).as_bytes(),
+ )?;
+ utils::fs::write_file(destination, "searcher.js", searcher::JS)?;
+- utils::fs::write_file(destination, "mark.min.js", searcher::MARK_JS)?;
+- utils::fs::write_file(destination, "elasticlunr.min.js", searcher::ELASTICLUNR_JS)?;
+ debug!("Copying search files ✓");
+ }
+
+diff --git a/vendor/mdbook/src/theme/index.hbs b/vendor/mdbook/src/theme/index.hbs
+index 080b785..f6064f6 100644
+--- a/vendor/mdbook/src/theme/index.hbs
++++ b/vendor/mdbook/src/theme/index.hbs
+@@ -33,10 +33,7 @@
+ {{/if}}
+
+ <!-- Fonts -->
+- <link rel="stylesheet" href="{{ path_to_root }}FontAwesome/css/font-awesome.css">
+- {{#if copy_fonts}}
+- <link rel="stylesheet" href="{{ path_to_root }}fonts/fonts.css">
+- {{/if}}
++ <link rel="stylesheet" href="{{ path_to_root }}css/font-awesome.min.css">
+
+ <!-- Highlight.js Stylesheets -->
+ <link rel="stylesheet" href="{{ path_to_root }}highlight.css">
+@@ -50,7 +47,7 @@
+
+ {{#if mathjax_support}}
+ <!-- MathJax -->
+- <script async src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.1/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script>
++ <script async src="MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script>
+ {{/if}}
+ </head>
+ <body class="sidebar-visible no-js">
+@@ -61,35 +58,6 @@
+ var default_theme = window.matchMedia("(prefers-color-scheme: dark)").matches ? "{{ preferred_dark_theme }}" : "{{ default_theme }}";
+ </script>
+
+- <!-- Work around some values being stored in localStorage wrapped in quotes -->
+- <script>
+- try {
+- var theme = localStorage.getItem('mdbook-theme');
+- var sidebar = localStorage.getItem('mdbook-sidebar');
+-
+- if (theme.startsWith('"') && theme.endsWith('"')) {
+- localStorage.setItem('mdbook-theme', theme.slice(1, theme.length - 1));
+- }
+-
+- if (sidebar.startsWith('"') && sidebar.endsWith('"')) {
+- localStorage.setItem('mdbook-sidebar', sidebar.slice(1, sidebar.length - 1));
+- }
+- } catch (e) { }
+- </script>
+-
+- <!-- Set the theme before any content is loaded, prevents flash -->
+- <script>
+- var theme;
+- try { theme = localStorage.getItem('mdbook-theme'); } catch(e) { }
+- if (theme === null || theme === undefined) { theme = default_theme; }
+- var html = document.querySelector('html');
+- html.classList.remove('{{ default_theme }}')
+- html.classList.add(theme);
+- var body = document.querySelector('body');
+- body.classList.remove('no-js')
+- body.classList.add('js');
+- </script>
+-
+ <input type="checkbox" id="sidebar-toggle-anchor" class="hidden">
+
+ <!-- Hide / unhide sidebar before it is displayed -->
+@@ -269,54 +237,8 @@
+ </script>
+ {{/if}}
+
+- {{#if google_analytics}}
+- <!-- Google Analytics Tag -->
+- <script>
+- var localAddrs = ["localhost", "127.0.0.1", ""];
+-
+- // make sure we don't activate google analytics if the developer is
+- // inspecting the book locally...
+- if (localAddrs.indexOf(document.location.hostname) === -1) {
+- (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+- (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+- m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+- })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
+-
+- ga('create', '{{google_analytics}}', 'auto');
+- ga('send', 'pageview');
+- }
+- </script>
+- {{/if}}
+-
+- {{#if playground_line_numbers}}
+- <script>
+- window.playground_line_numbers = true;
+- </script>
+- {{/if}}
+-
+- {{#if playground_copyable}}
+- <script>
+- window.playground_copyable = true;
+- </script>
+- {{/if}}
+-
+- {{#if playground_js}}
+- <script src="{{ path_to_root }}ace.js"></script>
+- <script src="{{ path_to_root }}editor.js"></script>
+- <script src="{{ path_to_root }}mode-rust.js"></script>
+- <script src="{{ path_to_root }}theme-dawn.js"></script>
+- <script src="{{ path_to_root }}theme-tomorrow_night.js"></script>
+- {{/if}}
+-
+- {{#if search_js}}
+- <script src="{{ path_to_root }}elasticlunr.min.js"></script>
+- <script src="{{ path_to_root }}mark.min.js"></script>
+- <script src="{{ path_to_root }}searcher.js"></script>
+- {{/if}}
+-
+- <script src="{{ path_to_root }}clipboard.min.js"></script>
+- <script src="{{ path_to_root }}highlight.js"></script>
+- <script src="{{ path_to_root }}book.js"></script>
++ <script src="{{ path_to_root }}highlight.js" type="text/javascript" charset="utf-8"></script>
++ <script src="{{ path_to_root }}book.js" type="text/javascript" charset="utf-8"></script>
+
+ <!-- Custom JS scripts -->
+ {{#each additional_js}}
+diff --git a/vendor/mdbook/src/theme/mod.rs b/vendor/mdbook/src/theme/mod.rs
+index 6e6b509..ef8886b 100644
+--- a/vendor/mdbook/src/theme/mod.rs
++++ b/vendor/mdbook/src/theme/mod.rs
+@@ -1,9 +1,5 @@
+ #![allow(missing_docs)]
+
+-pub mod playground_editor;
+-
+-pub mod fonts;
+-
+ #[cfg(feature = "search")]
+ pub mod searcher;
+
+@@ -24,19 +20,8 @@ pub static VARIABLES_CSS: &[u8] = include_bytes!("css/variables.css");
+ pub static FAVICON_PNG: &[u8] = include_bytes!("favicon.png");
+ pub static FAVICON_SVG: &[u8] = include_bytes!("favicon.svg");
+ pub static JS: &[u8] = include_bytes!("book.js");
+-pub static HIGHLIGHT_JS: &[u8] = include_bytes!("highlight.js");
+ pub static TOMORROW_NIGHT_CSS: &[u8] = include_bytes!("tomorrow-night.css");
+-pub static HIGHLIGHT_CSS: &[u8] = include_bytes!("highlight.css");
+ pub static AYU_HIGHLIGHT_CSS: &[u8] = include_bytes!("ayu-highlight.css");
+-pub static CLIPBOARD_JS: &[u8] = include_bytes!("clipboard.min.js");
+-pub static FONT_AWESOME: &[u8] = include_bytes!("FontAwesome/css/font-awesome.min.css");
+-pub static FONT_AWESOME_EOT: &[u8] = include_bytes!("FontAwesome/fonts/fontawesome-webfont.eot");
+-pub static FONT_AWESOME_SVG: &[u8] = include_bytes!("FontAwesome/fonts/fontawesome-webfont.svg");
+-pub static FONT_AWESOME_TTF: &[u8] = include_bytes!("FontAwesome/fonts/fontawesome-webfont.ttf");
+-pub static FONT_AWESOME_WOFF: &[u8] = include_bytes!("FontAwesome/fonts/fontawesome-webfont.woff");
+-pub static FONT_AWESOME_WOFF2: &[u8] =
+- include_bytes!("FontAwesome/fonts/fontawesome-webfont.woff2");
+-pub static FONT_AWESOME_OTF: &[u8] = include_bytes!("FontAwesome/fonts/FontAwesome.otf");
+
+ /// The `Theme` struct should be used instead of the static variables because
+ /// the `new()` method will look if the user has a theme directory in their
+@@ -59,11 +44,8 @@ pub struct Theme {
+ pub favicon_png: Option<Vec<u8>>,
+ pub favicon_svg: Option<Vec<u8>>,
+ pub js: Vec<u8>,
+- pub highlight_css: Vec<u8>,
+ pub tomorrow_night_css: Vec<u8>,
+ pub ayu_highlight_css: Vec<u8>,
+- pub highlight_js: Vec<u8>,
+- pub clipboard_js: Vec<u8>,
+ }
+
+ impl Theme {
+@@ -93,9 +75,6 @@ impl Theme {
+ theme_dir.join("css/variables.css"),
+ &mut theme.variables_css,
+ ),
+- (theme_dir.join("highlight.js"), &mut theme.highlight_js),
+- (theme_dir.join("clipboard.min.js"), &mut theme.clipboard_js),
+- (theme_dir.join("highlight.css"), &mut theme.highlight_css),
+ (
+ theme_dir.join("tomorrow-night.css"),
+ &mut theme.tomorrow_night_css,
+@@ -183,11 +162,8 @@ impl Default for Theme {
+ favicon_png: Some(FAVICON_PNG.to_owned()),
+ favicon_svg: Some(FAVICON_SVG.to_owned()),
+ js: JS.to_owned(),
+- highlight_css: HIGHLIGHT_CSS.to_owned(),
+ tomorrow_night_css: TOMORROW_NIGHT_CSS.to_owned(),
+ ayu_highlight_css: AYU_HIGHLIGHT_CSS.to_owned(),
+- highlight_js: HIGHLIGHT_JS.to_owned(),
+- clipboard_js: CLIPBOARD_JS.to_owned(),
+ }
+ }
+ }
+@@ -273,11 +249,8 @@ mod tests {
+ favicon_png: Some(Vec::new()),
+ favicon_svg: Some(Vec::new()),
+ js: Vec::new(),
+- highlight_css: Vec::new(),
+ tomorrow_night_css: Vec::new(),
+ ayu_highlight_css: Vec::new(),
+- highlight_js: Vec::new(),
+- clipboard_js: Vec::new(),
+ };
+
+ assert_eq!(got, empty);
+diff --git a/vendor/mdbook/src/theme/searcher/mod.rs b/vendor/mdbook/src/theme/searcher/mod.rs
+index d5029db..59eda8a 100644
+--- a/vendor/mdbook/src/theme/searcher/mod.rs
++++ b/vendor/mdbook/src/theme/searcher/mod.rs
+@@ -2,5 +2,3 @@
+ //! the "search" cargo feature is disabled.
+
+ pub static JS: &[u8] = include_bytes!("searcher.js");
+-pub static MARK_JS: &[u8] = include_bytes!("mark.min.js");
+-pub static ELASTICLUNR_JS: &[u8] = include_bytes!("elasticlunr.min.js");
diff --git a/debian/patches/prune/d-0005-no-jemalloc.patch b/debian/patches/prune/d-0005-no-jemalloc.patch
new file mode 100644
index 000000000..611b87028
--- /dev/null
+++ b/debian/patches/prune/d-0005-no-jemalloc.patch
@@ -0,0 +1,51 @@
+From: Debian Rust Maintainers <pkg-rust-maintainers@alioth-lists.debian.net>
+Date: Sat, 2 Oct 2021 01:08:00 +0100
+Subject: d-0005-no-jemalloc
+
+Description: remove jemalloc-sys
+
+Forwarded: not-needed
+---
+ compiler/rustc/Cargo.toml | 6 ------
+ src/tools/rust-analyzer/crates/profile/Cargo.toml | 2 --
+ 2 files changed, 8 deletions(-)
+
+diff --git a/compiler/rustc/Cargo.toml b/compiler/rustc/Cargo.toml
+index 3cb56a7..af37dfc 100644
+--- a/compiler/rustc/Cargo.toml
++++ b/compiler/rustc/Cargo.toml
+@@ -20,14 +20,8 @@ rustc_smir = { path = "../rustc_smir" }
+ stable_mir = { path = "../stable_mir" }
+ # tidy-alphabetical-end
+
+-[dependencies.jemalloc-sys]
+-version = "0.5.0"
+-optional = true
+-features = ['unprefixed_malloc_on_supported_platforms']
+-
+ [features]
+ # tidy-alphabetical-start
+-jemalloc = ['jemalloc-sys']
+ llvm = ['rustc_driver_impl/llvm']
+ max_level_info = ['rustc_driver_impl/max_level_info']
+ rustc_use_parallel_compiler = ['rustc_driver_impl/rustc_use_parallel_compiler']
+diff --git a/src/tools/rust-analyzer/crates/profile/Cargo.toml b/src/tools/rust-analyzer/crates/profile/Cargo.toml
+index 56ce9d1..4fb2760 100644
+--- a/src/tools/rust-analyzer/crates/profile/Cargo.toml
++++ b/src/tools/rust-analyzer/crates/profile/Cargo.toml
+@@ -17,7 +17,6 @@ cfg-if = "1.0.0"
+ la-arena.workspace = true
+ libc.workspace = true
+ countme = { version = "3.0.1", features = ["enable"] }
+-jemalloc-ctl = { version = "0.5.0", package = "tikv-jemalloc-ctl", optional = true }
+
+ [target.'cfg(target_os = "linux")'.dependencies]
+ perf-event = "=0.4.7"
+@@ -27,7 +26,6 @@ winapi = { version = "0.3.9", features = ["processthreadsapi", "psapi"] }
+
+ [features]
+ cpu_profiler = []
+-jemalloc = ["jemalloc-ctl"]
+
+ # Uncomment to enable for the whole crate graph
+ # default = [ "cpu_profiler" ]
diff --git a/debian/patches/prune/d-0010-cargo-remove-vendored-c-crates.patch b/debian/patches/prune/d-0010-cargo-remove-vendored-c-crates.patch
new file mode 100644
index 000000000..30b3198b4
--- /dev/null
+++ b/debian/patches/prune/d-0010-cargo-remove-vendored-c-crates.patch
@@ -0,0 +1,39 @@
+From: Debian Rust Maintainers <pkg-rust-maintainers@alioth-lists.debian.net>
+Date: Mon, 6 May 2024 10:25:32 +0200
+Subject: d-0010-cargo-remove-vendored-c-crates
+
+Description: remove all vendoring features of crates normally shipping bundled
+C libs. that C code is stripped when repacking, so the features can't work
+anyway.
+Last-Update: 2023-05-17
+
+Forwarded: not-needed
+---
+ src/tools/cargo/Cargo.toml | 6 ++----
+ 1 file changed, 2 insertions(+), 4 deletions(-)
+
+diff --git a/src/tools/cargo/Cargo.toml b/src/tools/cargo/Cargo.toml
+index c07b004..2a81642 100644
+--- a/src/tools/cargo/Cargo.toml
++++ b/src/tools/cargo/Cargo.toml
+@@ -73,7 +73,7 @@ proptest = "1.4.0"
+ pulldown-cmark = { version = "0.9.3", default-features = false }
+ rand = "0.8.5"
+ regex = "1.10.2"
+-rusqlite = { version = "0.30.0", features = ["bundled"] }
++rusqlite = { version = "0.30.0", features = [] }
+ rustfix = { version = "0.7.0", path = "crates/rustfix" }
+ same-file = "1.0.6"
+ security-framework = "2.9.2"
+@@ -243,10 +243,8 @@ test = false
+ doc = false
+
+ [features]
+-vendored-openssl = ["openssl/vendored"]
+-vendored-libgit2 = ["libgit2-sys/vendored"]
++# Debian: removed vendoring flags
+ # This is primarily used by rust-lang/rust distributing cargo the executable.
+-all-static = ['vendored-openssl', 'curl/static-curl', 'curl/force-system-lib-on-osx', 'vendored-libgit2']
+
+ [lints]
+ workspace = true
diff --git a/debian/patches/prune/d-0011-cargo-remove-nghttp2.patch b/debian/patches/prune/d-0011-cargo-remove-nghttp2.patch
new file mode 100644
index 000000000..3255e98fc
--- /dev/null
+++ b/debian/patches/prune/d-0011-cargo-remove-nghttp2.patch
@@ -0,0 +1,26 @@
+From: Debian Rust Maintainers <pkg-rust-maintainers@alioth-lists.debian.net>
+Date: Mon, 6 May 2024 10:25:32 +0200
+Subject: d-0011-cargo-remove-nghttp2
+
+Description: remove dependency on libnghttp2-sys so it can be pruned.
+
+Last-Update: 2023-05-17
+
+Forwarded: not-needed
+---
+ vendor/curl-sys/Cargo.toml | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/vendor/curl-sys/Cargo.toml b/vendor/curl-sys/Cargo.toml
+index daf925e..624fabf 100644
+--- a/vendor/curl-sys/Cargo.toml
++++ b/vendor/curl-sys/Cargo.toml
+@@ -52,7 +52,7 @@ version = "0.3.3"
+ [features]
+ default = ["ssl"]
+ force-system-lib-on-osx = []
+-http2 = ["libnghttp2-sys"]
++http2 = []
+ mesalink = []
+ ntlm = []
+ poll_7_68_0 = []
diff --git a/debian/patches/prune/d-0020-remove-windows-dependencies.patch b/debian/patches/prune/d-0020-remove-windows-dependencies.patch
new file mode 100644
index 000000000..29604db35
--- /dev/null
+++ b/debian/patches/prune/d-0020-remove-windows-dependencies.patch
@@ -0,0 +1,382 @@
+From: Debian Rust Maintainers <pkg-rust-maintainers@alioth-lists.debian.net>
+Date: Mon, 6 May 2024 10:25:32 +0200
+Subject: d-0020-remove-windows-dependencies
+
+use something like
+
+ find src compiler library -iname Cargo.toml -exec grep -H -n -e 'windows-sys' -e 'winapi' -e 'ntapi' -e 'wincon' -e 'winreg' -e 'windows' {} \; >
+
+to find and eliminate dependencies on windows-only crates when rebasing.
+
+windows-bindgen and windows-metadata should not be removed, they are needed for
+the build and don't pull in windows-sys and friends.
+
+Forwarded: not-needed
+
+===================================================================
+---
+ compiler/rustc_codegen_ssa/Cargo.toml | 4 ----
+ compiler/rustc_data_structures/Cargo.toml | 10 ---------
+ compiler/rustc_driver_impl/Cargo.toml | 6 -----
+ compiler/rustc_errors/Cargo.toml | 8 -------
+ compiler/rustc_session/Cargo.toml | 7 ------
+ library/backtrace/Cargo.toml | 13 -----------
+ src/bootstrap/Cargo.toml | 15 -------------
+ src/tools/cargo/Cargo.toml | 26 ++++------------------
+ .../cargo/crates/cargo-test-support/Cargo.toml | 3 ---
+ src/tools/cargo/crates/cargo-util/Cargo.toml | 7 ------
+ src/tools/cargo/crates/home/Cargo.toml | 3 ---
+ .../cargo/credential/cargo-credential/Cargo.toml | 3 ---
+ src/tools/cargo/src/cargo/util/auth/mod.rs | 5 -----
+ src/tools/compiletest/Cargo.toml | 10 ---------
+ src/tools/rust-analyzer/crates/profile/Cargo.toml | 3 ---
+ .../rust-analyzer/crates/rust-analyzer/Cargo.toml | 6 -----
+ src/tools/rust-analyzer/crates/stdx/Cargo.toml | 4 ----
+ 17 files changed, 4 insertions(+), 129 deletions(-)
+
+diff --git a/compiler/rustc_codegen_ssa/Cargo.toml b/compiler/rustc_codegen_ssa/Cargo.toml
+index 3f2ed25..bf0ad91 100644
+--- a/compiler/rustc_codegen_ssa/Cargo.toml
++++ b/compiler/rustc_codegen_ssa/Cargo.toml
+@@ -49,7 +49,3 @@ libc = "0.2.50"
+ version = "0.32.1"
+ default-features = false
+ features = ["read_core", "elf", "macho", "pe", "xcoff", "unaligned", "archive", "write"]
+-
+-[target.'cfg(windows)'.dependencies.windows]
+-version = "0.48.0"
+-features = ["Win32_Globalization"]
+diff --git a/compiler/rustc_data_structures/Cargo.toml b/compiler/rustc_data_structures/Cargo.toml
+index 4732783..bbfcb55 100644
+--- a/compiler/rustc_data_structures/Cargo.toml
++++ b/compiler/rustc_data_structures/Cargo.toml
+@@ -32,16 +32,6 @@ tracing = "0.1"
+ [dependencies.parking_lot]
+ version = "0.12"
+
+-[target.'cfg(windows)'.dependencies.windows]
+-version = "0.48.0"
+-features = [
+- "Win32_Foundation",
+- "Win32_Storage_FileSystem",
+- "Win32_System_IO",
+- "Win32_System_ProcessStatus",
+- "Win32_System_Threading",
+-]
+-
+ [target.'cfg(not(target_arch = "wasm32"))'.dependencies]
+ # tidy-alphabetical-start
+ memmap2 = "0.2.1"
+diff --git a/compiler/rustc_driver_impl/Cargo.toml b/compiler/rustc_driver_impl/Cargo.toml
+index 4904298..2918095 100644
+--- a/compiler/rustc_driver_impl/Cargo.toml
++++ b/compiler/rustc_driver_impl/Cargo.toml
+@@ -59,12 +59,6 @@ tracing = { version = "0.1.35" }
+ libc = "0.2"
+ # tidy-alphabetical-end
+
+-[target.'cfg(windows)'.dependencies.windows]
+-version = "0.48.0"
+-features = [
+- "Win32_System_Diagnostics_Debug",
+-]
+-
+ [features]
+ # tidy-alphabetical-start
+ llvm = ['rustc_interface/llvm']
+diff --git a/compiler/rustc_errors/Cargo.toml b/compiler/rustc_errors/Cargo.toml
+index fc3ff83..4f74aec 100644
+--- a/compiler/rustc_errors/Cargo.toml
++++ b/compiler/rustc_errors/Cargo.toml
+@@ -27,14 +27,6 @@ tracing = "0.1"
+ unicode-width = "0.1.4"
+ # tidy-alphabetical-end
+
+-[target.'cfg(windows)'.dependencies.windows]
+-version = "0.48.0"
+-features = [
+- "Win32_Foundation",
+- "Win32_Security",
+- "Win32_System_Threading",
+-]
+-
+ [features]
+ # tidy-alphabetical-start
+ rustc_use_parallel_compiler = ['rustc_error_messages/rustc_use_parallel_compiler']
+diff --git a/compiler/rustc_session/Cargo.toml b/compiler/rustc_session/Cargo.toml
+index 1f51dd6..2974bd0 100644
+--- a/compiler/rustc_session/Cargo.toml
++++ b/compiler/rustc_session/Cargo.toml
+@@ -28,10 +28,3 @@ tracing = "0.1"
+ # tidy-alphabetical-start
+ libc = "0.2"
+ # tidy-alphabetical-end
+-
+-[target.'cfg(windows)'.dependencies.windows]
+-version = "0.48.0"
+-features = [
+- "Win32_Foundation",
+- "Win32_System_LibraryLoader",
+-]
+diff --git a/library/backtrace/Cargo.toml b/library/backtrace/Cargo.toml
+index 932310b..dce3c3f 100644
+--- a/library/backtrace/Cargo.toml
++++ b/library/backtrace/Cargo.toml
+@@ -48,9 +48,6 @@ version = "0.32.0"
+ default-features = false
+ features = ['read_core', 'elf', 'macho', 'pe', 'xcoff', 'unaligned', 'archive']
+
+-[target.'cfg(windows)'.dependencies]
+-winapi = { version = "0.3.9", optional = true }
+-
+ [build-dependencies]
+ # Only needed for Android, but cannot be target dependent
+ # https://github.com/rust-lang/cargo/issues/4932
+@@ -88,16 +85,6 @@ libbacktrace = []
+ libunwind = []
+ unix-backtrace = []
+ verify-winapi = [
+- 'winapi/dbghelp',
+- 'winapi/handleapi',
+- 'winapi/libloaderapi',
+- 'winapi/memoryapi',
+- 'winapi/minwindef',
+- 'winapi/processthreadsapi',
+- 'winapi/synchapi',
+- 'winapi/tlhelp32',
+- 'winapi/winbase',
+- 'winapi/winnt',
+ ]
+
+ [[example]]
+diff --git a/src/bootstrap/Cargo.toml b/src/bootstrap/Cargo.toml
+index 077d195..b9ad241 100644
+--- a/src/bootstrap/Cargo.toml
++++ b/src/bootstrap/Cargo.toml
+@@ -65,21 +65,6 @@ sysinfo = { version = "0.26.0", optional = true }
+ [target.'cfg(not(target_os = "solaris"))'.dependencies]
+ fd-lock = "3.0.13"
+
+-[target.'cfg(windows)'.dependencies.junction]
+-version = "1.0.0"
+-
+-[target.'cfg(windows)'.dependencies.windows]
+-version = "0.51.1"
+-features = [
+- "Win32_Foundation",
+- "Win32_Security",
+- "Win32_System_Diagnostics_Debug",
+- "Win32_System_JobObjects",
+- "Win32_System_ProcessStatus",
+- "Win32_System_Threading",
+- "Win32_System_Time",
+-]
+-
+ [dev-dependencies]
+ pretty_assertions = "1.4"
+
+diff --git a/src/tools/cargo/Cargo.toml b/src/tools/cargo/Cargo.toml
+index 2a81642..76a8cf2 100644
+--- a/src/tools/cargo/Cargo.toml
++++ b/src/tools/cargo/Cargo.toml
+@@ -2,7 +2,9 @@
+ resolver = "2"
+ members = [
+ "crates/*",
+- "credential/*",
++ "credential/cargo-credential",
++ "credential/cargo-credential-1password",
++ "credential/cargo-credential-libsecret",
+ "benches/benchsuite",
+ "benches/capture",
+ ]
+@@ -24,8 +26,6 @@ bytesize = "1.3"
+ cargo = { path = "" }
+ cargo-credential = { version = "0.4.2", path = "credential/cargo-credential" }
+ cargo-credential-libsecret = { version = "0.4.2", path = "credential/cargo-credential-libsecret" }
+-cargo-credential-macos-keychain = { version = "0.4.2", path = "credential/cargo-credential-macos-keychain" }
+-cargo-credential-wincred = { version = "0.4.2", path = "credential/cargo-credential-wincred" }
+ cargo-platform = { path = "crates/cargo-platform", version = "0.1.4" }
+ cargo-test-macro = { path = "crates/cargo-test-macro" }
+ cargo-test-support = { path = "crates/cargo-test-support" }
+@@ -103,7 +103,6 @@ unicode-xid = "0.2.4"
+ url = "2.5.0"
+ varisat = "0.2.2"
+ walkdir = "2.4.0"
+-windows-sys = "0.52"
+
+ [workspace.lints.rust]
+ rust_2018_idioms = "warn" # TODO: could this be removed?
+@@ -144,6 +143,7 @@ base64.workspace = true
+ bytesize.workspace = true
+ cargo-credential.workspace = true
+ cargo-platform.workspace = true
++cargo-credential-libsecret.workspace = true
+ cargo-util.workspace = true
+ clap = { workspace = true, features = ["wrap_help"] }
+ color-print.workspace = true
+@@ -206,27 +206,9 @@ walkdir.workspace = true
+ [target.'cfg(target_os = "linux")'.dependencies]
+ cargo-credential-libsecret.workspace = true
+
+-[target.'cfg(target_os = "macos")'.dependencies]
+-cargo-credential-macos-keychain.workspace = true
+-
+ [target.'cfg(not(windows))'.dependencies]
+ openssl = { workspace = true, optional = true }
+
+-[target.'cfg(windows)'.dependencies]
+-cargo-credential-wincred.workspace = true
+-
+-[target.'cfg(windows)'.dependencies.windows-sys]
+-workspace = true
+-features = [
+- "Win32_Foundation",
+- "Win32_Security",
+- "Win32_Storage_FileSystem",
+- "Win32_System_IO",
+- "Win32_System_Console",
+- "Win32_System_JobObjects",
+- "Win32_System_Threading",
+-]
+-
+ [dev-dependencies]
+ cargo-test-macro.workspace = true
+ cargo-test-support.workspace = true
+diff --git a/src/tools/cargo/crates/cargo-test-support/Cargo.toml b/src/tools/cargo/crates/cargo-test-support/Cargo.toml
+index 1098d59..88d4ae7 100644
+--- a/src/tools/cargo/crates/cargo-test-support/Cargo.toml
++++ b/src/tools/cargo/crates/cargo-test-support/Cargo.toml
+@@ -31,8 +31,5 @@ toml.workspace = true
+ url.workspace = true
+ walkdir.workspace = true
+
+-[target.'cfg(windows)'.dependencies]
+-windows-sys = { workspace = true, features = ["Win32_Storage_FileSystem"] }
+-
+ [lints]
+ workspace = true
+diff --git a/src/tools/cargo/crates/cargo-util/Cargo.toml b/src/tools/cargo/crates/cargo-util/Cargo.toml
+index 3fd6bde..fb681a3 100644
+--- a/src/tools/cargo/crates/cargo-util/Cargo.toml
++++ b/src/tools/cargo/crates/cargo-util/Cargo.toml
+@@ -22,12 +22,5 @@ tempfile.workspace = true
+ tracing.workspace = true
+ walkdir.workspace = true
+
+-[target.'cfg(target_os = "macos")'.dependencies]
+-core-foundation.workspace = true
+-
+-[target.'cfg(windows)'.dependencies]
+-miow.workspace = true
+-windows-sys = { workspace = true, features = ["Win32_Storage_FileSystem", "Win32_Foundation", "Win32_System_Console"] }
+-
+ [lints]
+ workspace = true
+diff --git a/src/tools/cargo/crates/home/Cargo.toml b/src/tools/cargo/crates/home/Cargo.toml
+index 33cd6ba..2d5dfdc 100644
+--- a/src/tools/cargo/crates/home/Cargo.toml
++++ b/src/tools/cargo/crates/home/Cargo.toml
+@@ -16,8 +16,5 @@ license.workspace = true
+ repository = "https://github.com/rust-lang/cargo"
+ description = "Shared definitions of home directories."
+
+-[target.'cfg(windows)'.dependencies]
+-windows-sys = { workspace = true, features = ["Win32_Foundation", "Win32_UI_Shell", "Win32_System_Com"] }
+-
+ [lints]
+ workspace = true
+diff --git a/src/tools/cargo/credential/cargo-credential/Cargo.toml b/src/tools/cargo/credential/cargo-credential/Cargo.toml
+index 7dc37ff..fac049b 100644
+--- a/src/tools/cargo/credential/cargo-credential/Cargo.toml
++++ b/src/tools/cargo/credential/cargo-credential/Cargo.toml
+@@ -15,9 +15,6 @@ serde_json.workspace = true
+ thiserror.workspace = true
+ time.workspace = true
+
+-[target.'cfg(windows)'.dependencies]
+-windows-sys = { workspace = true, features = ["Win32_System_Console", "Win32_Foundation"] }
+-
+ [dev-dependencies]
+ snapbox = { workspace = true, features = ["examples"] }
+
+diff --git a/src/tools/cargo/src/cargo/util/auth/mod.rs b/src/tools/cargo/src/cargo/util/auth/mod.rs
+index c2f8186..c420971 100644
+--- a/src/tools/cargo/src/cargo/util/auth/mod.rs
++++ b/src/tools/cargo/src/cargo/util/auth/mod.rs
+@@ -529,11 +529,6 @@ fn credential_action(
+ }
+ "cargo:paseto" => bail!("cargo:paseto requires -Zasymmetric-token"),
+ "cargo:token-from-stdout" => Box::new(BasicProcessCredential {}),
+- #[cfg(windows)]
+- "cargo:wincred" => Box::new(cargo_credential_wincred::WindowsCredential {}),
+- #[cfg(target_os = "macos")]
+- "cargo:macos-keychain" => Box::new(cargo_credential_macos_keychain::MacKeychain {}),
+- #[cfg(target_os = "linux")]
+ "cargo:libsecret" => Box::new(cargo_credential_libsecret::LibSecretCredential {}),
+ name if BUILT_IN_PROVIDERS.contains(&name) => {
+ Box::new(cargo_credential::UnsupportedCredential {})
+diff --git a/src/tools/compiletest/Cargo.toml b/src/tools/compiletest/Cargo.toml
+index 31c6353..bdc4805 100644
+--- a/src/tools/compiletest/Cargo.toml
++++ b/src/tools/compiletest/Cargo.toml
+@@ -29,13 +29,3 @@ home = "0.5.5"
+
+ [target.'cfg(unix)'.dependencies]
+ libc = "0.2"
+-
+-[target.'cfg(windows)'.dependencies]
+-miow = "0.6"
+-
+-[target.'cfg(windows)'.dependencies.windows]
+-version = "0.48.0"
+-features = [
+- "Win32_Foundation",
+- "Win32_System_Diagnostics_Debug",
+-]
+diff --git a/src/tools/rust-analyzer/crates/profile/Cargo.toml b/src/tools/rust-analyzer/crates/profile/Cargo.toml
+index 4fb2760..8573fbe 100644
+--- a/src/tools/rust-analyzer/crates/profile/Cargo.toml
++++ b/src/tools/rust-analyzer/crates/profile/Cargo.toml
+@@ -21,9 +21,6 @@ countme = { version = "3.0.1", features = ["enable"] }
+ [target.'cfg(target_os = "linux")'.dependencies]
+ perf-event = "=0.4.7"
+
+-[target.'cfg(windows)'.dependencies]
+-winapi = { version = "0.3.9", features = ["processthreadsapi", "psapi"] }
+-
+ [features]
+ cpu_profiler = []
+
+diff --git a/src/tools/rust-analyzer/crates/rust-analyzer/Cargo.toml b/src/tools/rust-analyzer/crates/rust-analyzer/Cargo.toml
+index 39ac338a..d25722a 100644
+--- a/src/tools/rust-analyzer/crates/rust-analyzer/Cargo.toml
++++ b/src/tools/rust-analyzer/crates/rust-analyzer/Cargo.toml
+@@ -65,12 +65,6 @@ toolchain.workspace = true
+ vfs-notify.workspace = true
+ vfs.workspace = true
+
+-[target.'cfg(windows)'.dependencies]
+-winapi = "0.3.9"
+-
+-[target.'cfg(not(target_env = "msvc"))'.dependencies]
+-jemallocator = { version = "0.5.0", package = "tikv-jemallocator", optional = true }
+-
+ [dev-dependencies]
+ expect-test = "1.4.0"
+ xshell.workspace = true
+diff --git a/src/tools/rust-analyzer/crates/stdx/Cargo.toml b/src/tools/rust-analyzer/crates/stdx/Cargo.toml
+index c914ae2..db8b274 100644
+--- a/src/tools/rust-analyzer/crates/stdx/Cargo.toml
++++ b/src/tools/rust-analyzer/crates/stdx/Cargo.toml
+@@ -20,10 +20,6 @@ crossbeam-channel = "0.5.5"
+ itertools.workspace = true
+ # Think twice before adding anything here
+
+-[target.'cfg(windows)'.dependencies]
+-miow = "0.6.0"
+-winapi = { version = "0.3.9", features = ["winerror"] }
+-
+ [features]
+ # Uncomment to enable for the whole crate graph
+ # default = [ "backtrace" ]
diff --git a/debian/patches/prune/d-0021-vendor-remove-windows-dependencies.patch b/debian/patches/prune/d-0021-vendor-remove-windows-dependencies.patch
new file mode 100644
index 000000000..025cfd8bd
--- /dev/null
+++ b/debian/patches/prune/d-0021-vendor-remove-windows-dependencies.patch
@@ -0,0 +1,1007 @@
+From: =?utf-8?q?Fabian_Gr=C3=BCnbichler?= <f.gruenbichler@proxmox.com>
+Date: Wed, 6 Sep 2023 13:23:24 -0600
+Subject: d-0021-vendor-remove-windows-dependencies
+MIME-Version: 1.0
+Content-Type: text/plain; charset="utf-8"
+Content-Transfer-Encoding: 8bit
+
+use something like
+
+ find vendor -iname Cargo.toml -exec grep -H -n -e 'windows-sys' -e 'winapi' -e 'ntapi' -e 'wincon' -e 'winreg' -e 'windows' {} \; > /tmp/files
+
+to find dependencies on windows targets in vendored crates. you will likely
+need to remove some hunks from this patch after pruning dependencies, since
+hopefully a few of the crates patched during early rebasing are eliminated.
+
+windows-bindgen and windows-metadata should not be removed, they are needed for
+the build and don't pull in windows-sys and friends.
+
+Forwarded: not-needed
+
+Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
+---
+ vendor/android-tzdata/Cargo.toml | 1 +
+ vendor/ansi_term/Cargo.toml | 3 ---
+ vendor/anstream-0.5.0/Cargo.toml | 5 -----
+ vendor/anstream/Cargo.toml | 7 ------
+ vendor/anstyle-query/Cargo.toml | 6 -----
+ vendor/backtrace/Cargo.toml | 14 ------------
+ vendor/chrono/Cargo.toml | 12 ----------
+ vendor/colored/Cargo.toml | 7 ------
+ vendor/console/Cargo.toml | 11 ----------
+ vendor/ctrlc/Cargo.toml | 17 ---------------
+ vendor/curl-sys/Cargo.toml | 7 ------
+ vendor/curl/Cargo.toml | 10 ---------
+ vendor/dirs-sys-0.3.7/Cargo.toml | 3 ---
+ vendor/dirs-sys-next/Cargo.toml | 3 ---
+ vendor/errno/Cargo.toml | 6 -----
+ vendor/fd-lock/Cargo.toml | 8 -------
+ vendor/filetime/Cargo.toml | 7 ------
+ vendor/gix-sec/Cargo.toml | 12 ----------
+ vendor/home/Cargo.toml | 7 ------
+ vendor/iana-time-zone/Cargo.toml | 4 ----
+ vendor/ignore/Cargo.toml | 2 --
+ vendor/is-terminal/Cargo.toml | 11 ----------
+ vendor/libloading-0.7.4/Cargo.toml | 6 -----
+ vendor/libloading/Cargo.toml | 8 -------
+ vendor/libssh2-sys/Cargo.toml | 8 -------
+ vendor/mio/Cargo.toml | 11 ----------
+ vendor/native-tls/Cargo.toml | 3 ---
+ vendor/nu-ansi-term-0.46.0/Cargo.toml | 10 ---------
+ vendor/opener-0.5.2/Cargo.toml | 4 ----
+ vendor/opener/Cargo.toml | 9 --------
+ vendor/os_info/Cargo.toml | 15 -------------
+ vendor/parking_lot_core/Cargo.toml | 3 ---
+ vendor/reqwest/Cargo.toml | 3 ---
+ vendor/rustix/Cargo.toml | 17 ---------------
+ vendor/same-file/Cargo.toml | 2 --
+ vendor/snapbox/Cargo.toml | 6 -----
+ vendor/socket2/Cargo.toml | 7 ------
+ vendor/stacker/Cargo.toml | 10 ---------
+ vendor/sysinfo-0.26.7/Cargo.toml | 38 --------------------------------
+ vendor/sysinfo/Cargo.toml | 41 -----------------------------------
+ vendor/tempfile/Cargo.toml | 7 ------
+ vendor/term/Cargo.toml | 6 -----
+ vendor/termcolor/Cargo.toml | 3 ---
+ vendor/terminal_size/Cargo.toml | 7 ------
+ vendor/termize/Cargo.toml | 3 ---
+ vendor/tokio-native-tls/Cargo.toml | 17 ---------------
+ vendor/tokio/Cargo.toml | 21 ------------------
+ vendor/uuid/Cargo.toml | 4 ----
+ vendor/walkdir/Cargo.toml | 3 ---
+ vendor/yansi-term/Cargo.toml | 3 ---
+ 50 files changed, 1 insertion(+), 437 deletions(-)
+
+diff --git a/vendor/android-tzdata/Cargo.toml b/vendor/android-tzdata/Cargo.toml
+index 805128a..0682717 100644
+--- a/vendor/android-tzdata/Cargo.toml
++++ b/vendor/android-tzdata/Cargo.toml
+@@ -32,3 +32,4 @@ repository = "https://github.com/RumovZ/android-tzdata"
+
+ [dev-dependencies.zip]
+ version = "0.6.4"
++repository = "https://github.com/rust-cli/concolor"
+diff --git a/vendor/ansi_term/Cargo.toml b/vendor/ansi_term/Cargo.toml
+index 0e5feba..3256c75 100644
+--- a/vendor/ansi_term/Cargo.toml
++++ b/vendor/ansi_term/Cargo.toml
+@@ -38,6 +38,3 @@ version = "1.0.39"
+
+ [features]
+ derive_serde_style = ["serde"]
+-[target."cfg(target_os=\"windows\")".dependencies.winapi]
+-version = "0.3.4"
+-features = ["consoleapi", "errhandlingapi", "fileapi", "handleapi", "processenv"]
+diff --git a/vendor/anstream-0.5.0/Cargo.toml b/vendor/anstream-0.5.0/Cargo.toml
+index 1b5193c..9574485 100644
+--- a/vendor/anstream-0.5.0/Cargo.toml
++++ b/vendor/anstream-0.5.0/Cargo.toml
+@@ -131,10 +131,5 @@ auto = [
+ ]
+ default = [
+ "auto",
+- "wincon",
+ ]
+-wincon = ["dep:anstyle-wincon"]
+
+-[target."cfg(windows)".dependencies.anstyle-wincon]
+-version = "2.0.0"
+-optional = true
+diff --git a/vendor/anstream/Cargo.toml b/vendor/anstream/Cargo.toml
+index a64ec8d..34dd08f 100644
+--- a/vendor/anstream/Cargo.toml
++++ b/vendor/anstream/Cargo.toml
+@@ -134,11 +134,4 @@ auto = [
+ ]
+ default = [
+ "auto",
+- "wincon",
+ ]
+-test = []
+-wincon = ["dep:anstyle-wincon"]
+-
+-[target."cfg(windows)".dependencies.anstyle-wincon]
+-version = "3.0.1"
+-optional = true
+diff --git a/vendor/anstyle-query/Cargo.toml b/vendor/anstyle-query/Cargo.toml
+index 599e364..e32bc63 100644
+--- a/vendor/anstyle-query/Cargo.toml
++++ b/vendor/anstyle-query/Cargo.toml
+@@ -72,9 +72,3 @@ replace = """
+ [Unreleased]: https://github.com/rust-cli/anstyle/compare/{{tag_name}}...HEAD"""
+ search = "<!-- next-url -->"
+
+-[target."cfg(windows)".dependencies.windows-sys]
+-version = "0.52.0"
+-features = [
+- "Win32_System_Console",
+- "Win32_Foundation",
+-]
+diff --git a/vendor/backtrace/Cargo.toml b/vendor/backtrace/Cargo.toml
+index c13e7ee..7b01a6f 100644
+--- a/vendor/backtrace/Cargo.toml
++++ b/vendor/backtrace/Cargo.toml
+@@ -104,16 +104,6 @@ serialize-serde = ["serde"]
+ std = []
+ unix-backtrace = []
+ verify-winapi = [
+- "winapi/dbghelp",
+- "winapi/handleapi",
+- "winapi/libloaderapi",
+- "winapi/memoryapi",
+- "winapi/minwindef",
+- "winapi/processthreadsapi",
+- "winapi/synchapi",
+- "winapi/tlhelp32",
+- "winapi/winbase",
+- "winapi/winnt",
+ ]
+
+ [target."cfg(not(all(windows, target_env = \"msvc\", not(target_vendor = \"uwp\"))))".dependencies.addr2line]
+@@ -139,7 +129,3 @@ features = [
+ "archive",
+ ]
+ default-features = false
+-
+-[target."cfg(windows)".dependencies.winapi]
+-version = "0.3.9"
+-optional = true
+diff --git a/vendor/chrono/Cargo.toml b/vendor/chrono/Cargo.toml
+index 7f49bad..6229f0a 100644
+--- a/vendor/chrono/Cargo.toml
++++ b/vendor/chrono/Cargo.toml
+@@ -107,7 +107,6 @@ __internal_bench = ["criterion"]
+ alloc = []
+ clock = [
+ "std",
+- "winapi",
+ "iana-time-zone",
+ ]
+ default = [
+@@ -146,14 +145,3 @@ version = "0.1.1"
+ version = "0.1.45"
+ features = ["fallback"]
+ optional = true
+-
+-[target."cfg(windows)".dependencies.winapi]
+-version = "0.3.0"
+-features = [
+- "std",
+- "minwinbase",
+- "minwindef",
+- "timezoneapi",
+- "sysinfoapi",
+-]
+-optional = true
+diff --git a/vendor/colored/Cargo.toml b/vendor/colored/Cargo.toml
+index dda2951..05b76bd 100644
+--- a/vendor/colored/Cargo.toml
++++ b/vendor/colored/Cargo.toml
+@@ -42,10 +42,3 @@ version = "=1.0.0-beta.3"
+
+ [features]
+ no-color = []
+-
+-[target."cfg(windows)".dependencies.windows-sys]
+-version = "0.48"
+-features = [
+- "Win32_Foundation",
+- "Win32_System_Console",
+-]
+diff --git a/vendor/console/Cargo.toml b/vendor/console/Cargo.toml
+index 85849e16..7c7be5a 100644
+--- a/vendor/console/Cargo.toml
++++ b/vendor/console/Cargo.toml
+@@ -59,14 +59,3 @@ default = [
+ ]
+ windows-console-colors = ["ansi-parsing"]
+
+-[target."cfg(windows)".dependencies.encode_unicode]
+-version = "0.3"
+-
+-[target."cfg(windows)".dependencies.windows-sys]
+-version = "0.45.0"
+-features = [
+- "Win32_Foundation",
+- "Win32_System_Console",
+- "Win32_Storage_FileSystem",
+- "Win32_UI_Input_KeyboardAndMouse",
+-]
+diff --git a/vendor/ctrlc/Cargo.toml b/vendor/ctrlc/Cargo.toml
+index bb27f1b..93d7d7e 100644
+--- a/vendor/ctrlc/Cargo.toml
++++ b/vendor/ctrlc/Cargo.toml
+@@ -56,23 +56,6 @@ features = [
+ ]
+ default-features = false
+
+-[target."cfg(windows)".dependencies.windows-sys]
+-version = "0.48"
+-features = [
+- "Win32_Foundation",
+- "Win32_System_Threading",
+- "Win32_Security",
+- "Win32_System_Console",
+-]
+-
+-[target."cfg(windows)".dev-dependencies.windows-sys]
+-version = "0.48"
+-features = [
+- "Win32_Storage_FileSystem",
+- "Win32_Foundation",
+- "Win32_System_IO",
+- "Win32_System_Console",
+-]
+
+ [badges.maintenance]
+ status = "passively-maintained"
+diff --git a/vendor/curl-sys/Cargo.toml b/vendor/curl-sys/Cargo.toml
+index 624fabf..c66bbba 100644
+--- a/vendor/curl-sys/Cargo.toml
++++ b/vendor/curl-sys/Cargo.toml
+@@ -73,13 +73,6 @@ zlib-ng-compat = [
+ version = "0.9.64"
+ optional = true
+
+-[target."cfg(target_env = \"msvc\")".build-dependencies.vcpkg]
+-version = "0.2"
+-
+-[target."cfg(windows)".dependencies.windows-sys]
+-version = "0.48"
+-features = ["Win32_Networking_WinSock"]
+-
+ [badges.appveyor]
+ repository = "alexcrichton/curl-rust"
+
+diff --git a/vendor/curl/Cargo.toml b/vendor/curl/Cargo.toml
+index bfb59f4..d9f6854 100644
+--- a/vendor/curl/Cargo.toml
++++ b/vendor/curl/Cargo.toml
+@@ -107,16 +107,6 @@ optional = true
+ version = "0.9.43"
+ optional = true
+
+-[target."cfg(target_env = \"msvc\")".dependencies.schannel]
+-version = "0.1.13"
+-
+-[target."cfg(target_env = \"msvc\")".dependencies.winapi]
+-version = "0.3"
+-features = [
+- "libloaderapi",
+- "wincrypt",
+-]
+-
+ [badges.appveyor]
+ repository = "alexcrichton/curl-rust"
+
+diff --git a/vendor/dirs-sys-0.3.7/Cargo.toml b/vendor/dirs-sys-0.3.7/Cargo.toml
+index 9951d24..0a86f4d 100644
+--- a/vendor/dirs-sys-0.3.7/Cargo.toml
++++ b/vendor/dirs-sys-0.3.7/Cargo.toml
+@@ -22,6 +22,3 @@ version = "0.4"
+ default-features = false
+ [target."cfg(unix)".dependencies.libc]
+ version = "0.2"
+-[target."cfg(windows)".dependencies.winapi]
+-version = "0.3"
+-features = ["knownfolders", "objbase", "shlobj", "winbase", "winerror"]
+diff --git a/vendor/dirs-sys-next/Cargo.toml b/vendor/dirs-sys-next/Cargo.toml
+index e9d8d0c..acb2eb7 100644
+--- a/vendor/dirs-sys-next/Cargo.toml
++++ b/vendor/dirs-sys-next/Cargo.toml
+@@ -25,8 +25,5 @@ version = "0.4.0"
+ default-features = false
+ [target."cfg(unix)".dependencies.libc]
+ version = "0.2"
+-[target."cfg(windows)".dependencies.winapi]
+-version = "0.3"
+-features = ["knownfolders", "objbase", "shlobj", "winbase", "winerror"]
+ [badges.maintenance]
+ status = "as-is"
+diff --git a/vendor/errno/Cargo.toml b/vendor/errno/Cargo.toml
+index e1d0bf5..60eeb86 100644
+--- a/vendor/errno/Cargo.toml
++++ b/vendor/errno/Cargo.toml
+@@ -41,9 +41,3 @@ default-features = false
+ version = "0.2"
+ default-features = false
+
+-[target."cfg(windows)".dependencies.windows-sys]
+-version = "0.52"
+-features = [
+- "Win32_Foundation",
+- "Win32_System_Diagnostics_Debug",
+-]
+diff --git a/vendor/fd-lock/Cargo.toml b/vendor/fd-lock/Cargo.toml
+index 8d0b8f0..eb1ef13 100644
+--- a/vendor/fd-lock/Cargo.toml
++++ b/vendor/fd-lock/Cargo.toml
+@@ -43,11 +43,3 @@ version = "3.0.8"
+ [target."cfg(unix)".dependencies.rustix]
+ version = "0.38.0"
+ features = ["fs"]
+-
+-[target."cfg(windows)".dependencies.windows-sys]
+-version = "0.48.0"
+-features = [
+- "Win32_Foundation",
+- "Win32_Storage_FileSystem",
+- "Win32_System_IO",
+-]
+diff --git a/vendor/filetime/Cargo.toml b/vendor/filetime/Cargo.toml
+index 0540ffb..2c65fa5 100644
+--- a/vendor/filetime/Cargo.toml
++++ b/vendor/filetime/Cargo.toml
+@@ -38,10 +38,3 @@ version = "0.4.1"
+
+ [target."cfg(unix)".dependencies.libc]
+ version = "0.2.27"
+-
+-[target."cfg(windows)".dependencies.windows-sys]
+-version = "0.52.0"
+-features = [
+- "Win32_Foundation",
+- "Win32_Storage_FileSystem",
+-]
+diff --git a/vendor/gix-sec/Cargo.toml b/vendor/gix-sec/Cargo.toml
+index cf452ec..c405340 100644
+--- a/vendor/gix-sec/Cargo.toml
++++ b/vendor/gix-sec/Cargo.toml
+@@ -58,15 +58,3 @@ serde = [
+ [target."cfg(not(windows))".dependencies.libc]
+ version = "0.2.123"
+
+-[target."cfg(windows)".dependencies.gix-path]
+-version = "^0.10.1"
+-
+-[target."cfg(windows)".dependencies.windows]
+-version = "0.48"
+-features = [
+- "Win32_Foundation",
+- "Win32_Security_Authorization",
+- "Win32_Storage_FileSystem",
+- "Win32_System_Memory",
+- "Win32_System_Threading",
+-]
+diff --git a/vendor/home/Cargo.toml b/vendor/home/Cargo.toml
+index cd608b1..eecfb89 100644
+--- a/vendor/home/Cargo.toml
++++ b/vendor/home/Cargo.toml
+@@ -27,10 +27,3 @@ readme = "README.md"
+ license = "MIT OR Apache-2.0"
+ repository = "https://github.com/rust-lang/cargo"
+ resolver = "2"
+-
+-[target."cfg(windows)".dependencies.windows-sys]
+-version = "0.48.0"
+-features = [
+- "Win32_Foundation",
+- "Win32_UI_Shell",
+-]
+diff --git a/vendor/iana-time-zone/Cargo.toml b/vendor/iana-time-zone/Cargo.toml
+index e06c705..572a8fd 100644
+--- a/vendor/iana-time-zone/Cargo.toml
++++ b/vendor/iana-time-zone/Cargo.toml
+@@ -52,7 +52,3 @@ version = "0.1.5"
+
+ [target."cfg(target_os = \"haiku\")".dependencies.iana-time-zone-haiku]
+ version = "0.1.1"
+-
+-[target."cfg(target_os = \"windows\")".dependencies.windows]
+-version = "0.48.0"
+-features = ["Globalization"]
+diff --git a/vendor/ignore/Cargo.toml b/vendor/ignore/Cargo.toml
+index 60ab32a..bf4109f 100644
+--- a/vendor/ignore/Cargo.toml
++++ b/vendor/ignore/Cargo.toml
+@@ -77,5 +77,3 @@ version = "0.5.8"
+ [features]
+ simd-accel = []
+
+-[target."cfg(windows)".dependencies.winapi-util]
+-version = "0.1.2"
+diff --git a/vendor/is-terminal/Cargo.toml b/vendor/is-terminal/Cargo.toml
+index 08933a7..b4b0482 100644
+--- a/vendor/is-terminal/Cargo.toml
++++ b/vendor/is-terminal/Cargo.toml
+@@ -54,14 +54,3 @@ features = ["stdio"]
+
+ [target."cfg(target_os = \"hermit\")".dependencies.hermit-abi]
+ version = "0.3.0"
+-
+-[target."cfg(windows)".dependencies.windows-sys]
+-version = "0.48.0"
+-features = [
+- "Win32_Foundation",
+- "Win32_Storage_FileSystem",
+- "Win32_System_Console",
+-]
+-
+-[target."cfg(windows)".dev-dependencies.tempfile]
+-version = "3"
+diff --git a/vendor/libloading-0.7.4/Cargo.toml b/vendor/libloading-0.7.4/Cargo.toml
+index 65168d5..03df764 100644
+--- a/vendor/libloading-0.7.4/Cargo.toml
++++ b/vendor/libloading-0.7.4/Cargo.toml
+@@ -43,9 +43,3 @@ version = "1.1"
+ [target."cfg(unix)".dependencies.cfg-if]
+ version = "1"
+
+-[target."cfg(windows)".dependencies.winapi]
+-version = "0.3"
+-features = [
+- "errhandlingapi",
+- "libloaderapi",
+-]
+diff --git a/vendor/libloading/Cargo.toml b/vendor/libloading/Cargo.toml
+index 0165453..0dfc3c0 100644
+--- a/vendor/libloading/Cargo.toml
++++ b/vendor/libloading/Cargo.toml
+@@ -42,11 +42,3 @@ version = "1.1"
+
+ [target."cfg(unix)".dependencies.cfg-if]
+ version = "1"
+-
+-[target."cfg(windows)".dependencies.windows-sys]
+-version = "0.48"
+-features = [
+- "Win32_Foundation",
+- "Win32_System_Diagnostics_Debug",
+- "Win32_System_LibraryLoader",
+-]
+diff --git a/vendor/libssh2-sys/Cargo.toml b/vendor/libssh2-sys/Cargo.toml
+index 45f4a71..516644c 100644
+--- a/vendor/libssh2-sys/Cargo.toml
++++ b/vendor/libssh2-sys/Cargo.toml
+@@ -43,16 +43,8 @@ version = "1.0.25"
+ version = "0.3.11"
+
+ [features]
+-openssl-on-win32 = ["openssl-sys"]
+ vendored-openssl = ["openssl-sys/vendored"]
+ zlib-ng-compat = ["libz-sys/zlib-ng"]
+
+-[target."cfg(target_env = \"msvc\")".build-dependencies.vcpkg]
+-version = "0.2"
+-
+ [target."cfg(unix)".dependencies.openssl-sys]
+ version = "0.9.35"
+-
+-[target."cfg(windows)".dependencies.openssl-sys]
+-version = "0.9.35"
+-optional = true
+diff --git a/vendor/mio/Cargo.toml b/vendor/mio/Cargo.toml
+index 42e28d0..b689d7b 100644
+--- a/vendor/mio/Cargo.toml
++++ b/vendor/mio/Cargo.toml
+@@ -102,8 +102,6 @@ default = ["log"]
+ net = []
+ os-ext = [
+ "os-poll",
+- "windows-sys/Win32_System_Pipes",
+- "windows-sys/Win32_Security",
+ ]
+ os-poll = []
+
+@@ -116,12 +114,3 @@ version = "0.11.0"
+ [target."cfg(unix)".dependencies.libc]
+ version = "0.2.121"
+
+-[target."cfg(windows)".dependencies.windows-sys]
+-version = "0.48"
+-features = [
+- "Win32_Foundation",
+- "Win32_Networking_WinSock",
+- "Win32_Storage_FileSystem",
+- "Win32_System_IO",
+- "Win32_System_WindowsProgramming",
+-]
+diff --git a/vendor/native-tls/Cargo.toml b/vendor/native-tls/Cargo.toml
+index a059236..d36b44b 100644
+--- a/vendor/native-tls/Cargo.toml
++++ b/vendor/native-tls/Cargo.toml
+@@ -61,6 +61,3 @@ version = "0.1"
+
+ [target."cfg(not(any(target_os = \"windows\", target_os = \"macos\", target_os = \"ios\")))".dependencies.openssl-sys]
+ version = "0.9.55"
+-
+-[target."cfg(target_os = \"windows\")".dependencies.schannel]
+-version = "0.1.17"
+diff --git a/vendor/nu-ansi-term-0.46.0/Cargo.toml b/vendor/nu-ansi-term-0.46.0/Cargo.toml
+index 209e055..aa40f02 100644
+--- a/vendor/nu-ansi-term-0.46.0/Cargo.toml
++++ b/vendor/nu-ansi-term-0.46.0/Cargo.toml
+@@ -45,13 +45,3 @@ version = "1.0.39"
+
+ [features]
+ derive_serde_style = ["serde"]
+-
+-[target."cfg(target_os=\"windows\")".dependencies.winapi]
+-version = "0.3.4"
+-features = [
+- "consoleapi",
+- "errhandlingapi",
+- "fileapi",
+- "handleapi",
+- "processenv",
+-]
+diff --git a/vendor/opener-0.5.2/Cargo.toml b/vendor/opener-0.5.2/Cargo.toml
+index 8d91b5e..2d7313b 100644
+--- a/vendor/opener-0.5.2/Cargo.toml
++++ b/vendor/opener-0.5.2/Cargo.toml
+@@ -32,10 +32,6 @@ version = "0.9"
+ [target."cfg(target_os = \"linux\")".dependencies.bstr]
+ version = "1"
+
+-[target."cfg(windows)".dependencies.winapi]
+-version = "0.3"
+-features = ["shellapi"]
+-
+ [badges.appveyor]
+ branch = "master"
+ repository = "Seeker14491/opener"
+diff --git a/vendor/opener/Cargo.toml b/vendor/opener/Cargo.toml
+index 79b4be9..69cc269 100644
+--- a/vendor/opener/Cargo.toml
++++ b/vendor/opener/Cargo.toml
+@@ -40,8 +40,6 @@ version = "0.9"
+ reveal = [
+ "dep:url",
+ "dep:dbus",
+- "winapi/shtypes",
+- "winapi/objbase",
+ ]
+
+ [target."cfg(target_os = \"linux\")".dependencies.bstr]
+@@ -56,13 +54,6 @@ optional = true
+ version = "2"
+ optional = true
+
+-[target."cfg(windows)".dependencies.normpath]
+-version = "1"
+-
+-[target."cfg(windows)".dependencies.winapi]
+-version = "0.3"
+-features = ["shellapi"]
+-
+ [badges.appveyor]
+ branch = "master"
+ repository = "Seeker14491/opener"
+diff --git a/vendor/os_info/Cargo.toml b/vendor/os_info/Cargo.toml
+index 52a062f..e1f347b 100644
+--- a/vendor/os_info/Cargo.toml
++++ b/vendor/os_info/Cargo.toml
+@@ -48,18 +48,3 @@ version = "1"
+
+ [features]
+ default = ["serde"]
+-
+-[target."cfg(windows)".dependencies.winapi]
+-version = "0.3.8"
+-features = [
+- "minwindef",
+- "ntdef",
+- "ntstatus",
+- "sysinfoapi",
+- "winnt",
+- "winuser",
+- "libloaderapi",
+- "processthreadsapi",
+- "winerror",
+- "winreg",
+-]
+diff --git a/vendor/parking_lot_core/Cargo.toml b/vendor/parking_lot_core/Cargo.toml
+index 83d9f23..dbe1534 100644
+--- a/vendor/parking_lot_core/Cargo.toml
++++ b/vendor/parking_lot_core/Cargo.toml
+@@ -61,6 +61,3 @@ version = "0.4"
+
+ [target."cfg(unix)".dependencies.libc]
+ version = "0.2.95"
+-
+-[target."cfg(windows)".dependencies.windows-targets]
+-version = "0.48.0"
+diff --git a/vendor/reqwest/Cargo.toml b/vendor/reqwest/Cargo.toml
+index bca6039..c735e2f 100644
+--- a/vendor/reqwest/Cargo.toml
++++ b/vendor/reqwest/Cargo.toml
+@@ -443,6 +443,3 @@ features = ["serde-serialize"]
+
+ [target."cfg(target_arch = \"wasm32\")".dev-dependencies.wasm-bindgen-test]
+ version = "0.3"
+-
+-[target."cfg(windows)".dependencies.winreg]
+-version = "0.10"
+diff --git a/vendor/rustix/Cargo.toml b/vendor/rustix/Cargo.toml
+index f05faec..970c4a9 100644
+--- a/vendor/rustix/Cargo.toml
++++ b/vendor/rustix/Cargo.toml
+@@ -252,20 +252,3 @@ package = "errno"
+ [target."cfg(any(target_os = \"android\", target_os = \"linux\"))".dependencies.once_cell]
+ version = "1.5.2"
+ optional = true
+-
+-[target."cfg(windows)".dependencies.libc_errno]
+-version = "0.3.8"
+-default-features = false
+-package = "errno"
+-
+-[target."cfg(windows)".dependencies.windows-sys]
+-version = "0.52.0"
+-features = [
+- "Win32_Foundation",
+- "Win32_Networking_WinSock",
+- "Win32_NetworkManagement_IpHelper",
+- "Win32_System_Threading",
+-]
+-
+-[target."cfg(windows)".dev-dependencies.ctor]
+-version = "0.2.0"
+diff --git a/vendor/same-file/Cargo.toml b/vendor/same-file/Cargo.toml
+index 4f66820..11ef472 100644
+--- a/vendor/same-file/Cargo.toml
++++ b/vendor/same-file/Cargo.toml
+@@ -25,5 +25,3 @@ license = "Unlicense/MIT"
+ repository = "https://github.com/BurntSushi/same-file"
+ [dev-dependencies.doc-comment]
+ version = "0.3"
+-[target."cfg(windows)".dependencies.winapi-util]
+-version = "0.1.1"
+diff --git a/vendor/snapbox/Cargo.toml b/vendor/snapbox/Cargo.toml
+index 2cb92d6..52e12d2 100644
+--- a/vendor/snapbox/Cargo.toml
++++ b/vendor/snapbox/Cargo.toml
+@@ -161,7 +161,6 @@ cmd = [
+ "dep:os_pipe",
+ "dep:wait-timeout",
+ "dep:libc",
+- "dep:windows-sys",
+ ]
+ color = [
+ "dep:anstream",
+@@ -199,8 +198,3 @@ structured-data = ["dep:serde_json"]
+ [target."cfg(unix)".dependencies.libc]
+ version = "0.2.137"
+ optional = true
+-
+-[target."cfg(windows)".dependencies.windows-sys]
+-version = "0.48.0"
+-features = ["Win32_Foundation"]
+-optional = true
+diff --git a/vendor/socket2/Cargo.toml b/vendor/socket2/Cargo.toml
+index ec3bc6a..59068eb 100644
+--- a/vendor/socket2/Cargo.toml
++++ b/vendor/socket2/Cargo.toml
+@@ -59,10 +59,3 @@ all = []
+ [target."cfg(unix)".dependencies.libc]
+ version = "0.2.149"
+
+-[target."cfg(windows)".dependencies.winapi]
+-version = "0.3.9"
+-features = [
+- "handleapi",
+- "ws2ipdef",
+- "ws2tcpip",
+-]
+diff --git a/vendor/stacker/Cargo.toml b/vendor/stacker/Cargo.toml
+index 160cbc0..ba02aac 100644
+--- a/vendor/stacker/Cargo.toml
++++ b/vendor/stacker/Cargo.toml
+@@ -43,13 +43,3 @@ version = "0.1.7"
+
+ [build-dependencies.cc]
+ version = "1.0.2"
+-
+-[target."cfg(windows)".dependencies.winapi]
+-version = "0.3.6"
+-features = [
+- "memoryapi",
+- "winbase",
+- "fibersapi",
+- "processthreadsapi",
+- "minwindef",
+-]
+diff --git a/vendor/sysinfo-0.26.7/Cargo.toml b/vendor/sysinfo-0.26.7/Cargo.toml
+index f8719a4..deb2e40 100644
+--- a/vendor/sysinfo-0.26.7/Cargo.toml
++++ b/vendor/sysinfo-0.26.7/Cargo.toml
+@@ -60,41 +60,3 @@ version = "1.0"
+
+ [target."cfg(not(any(target_os = \"unknown\", target_arch = \"wasm32\")))".dependencies.libc]
+ version = "^0.2.112"
+-
+-[target."cfg(windows)".dependencies.ntapi]
+-version = "0.4"
+-
+-[target."cfg(windows)".dependencies.winapi]
+-version = "0.3.9"
+-features = [
+- "errhandlingapi",
+- "fileapi",
+- "handleapi",
+- "heapapi",
+- "ifdef",
+- "ioapiset",
+- "minwindef",
+- "pdh",
+- "psapi",
+- "synchapi",
+- "sysinfoapi",
+- "winbase",
+- "winerror",
+- "winioctl",
+- "winnt",
+- "oleauto",
+- "wbemcli",
+- "rpcdce",
+- "combaseapi",
+- "objidl",
+- "powerbase",
+- "netioapi",
+- "lmcons",
+- "lmaccess",
+- "lmapibuf",
+- "memoryapi",
+- "ntlsa",
+- "securitybaseapi",
+- "shellapi",
+- "std",
+-]
+diff --git a/vendor/sysinfo/Cargo.toml b/vendor/sysinfo/Cargo.toml
+index 2a21a72..d526f46 100644
+--- a/vendor/sysinfo/Cargo.toml
++++ b/vendor/sysinfo/Cargo.toml
+@@ -75,44 +75,3 @@ version = "1.0"
+
+ [target."cfg(not(any(target_os = \"unknown\", target_arch = \"wasm32\")))".dependencies.libc]
+ version = "^0.2.144"
+-
+-[target."cfg(windows)".dependencies.ntapi]
+-version = "0.4"
+-
+-[target."cfg(windows)".dependencies.winapi]
+-version = "0.3.9"
+-features = [
+- "errhandlingapi",
+- "fileapi",
+- "handleapi",
+- "heapapi",
+- "ifdef",
+- "ioapiset",
+- "minwindef",
+- "pdh",
+- "psapi",
+- "synchapi",
+- "sysinfoapi",
+- "winbase",
+- "winerror",
+- "winioctl",
+- "winnt",
+- "oleauto",
+- "wbemcli",
+- "rpcdce",
+- "combaseapi",
+- "objidl",
+- "powerbase",
+- "netioapi",
+- "lmcons",
+- "lmaccess",
+- "lmapibuf",
+- "memoryapi",
+- "ntlsa",
+- "securitybaseapi",
+- "shellapi",
+- "std",
+- "iphlpapi",
+- "winsock2",
+- "sddl",
+-]
+diff --git a/vendor/tempfile/Cargo.toml b/vendor/tempfile/Cargo.toml
+index 84ea801..bd37853 100644
+--- a/vendor/tempfile/Cargo.toml
++++ b/vendor/tempfile/Cargo.toml
+@@ -50,10 +50,3 @@ features = ["fs"]
+
+ [target."cfg(target_os = \"redox\")".dependencies.redox_syscall]
+ version = "0.4"
+-
+-[target."cfg(windows)".dependencies.windows-sys]
+-version = "0.48"
+-features = [
+- "Win32_Storage_FileSystem",
+- "Win32_Foundation",
+-]
+diff --git a/vendor/term/Cargo.toml b/vendor/term/Cargo.toml
+index e89261e..ad5d62b 100644
+--- a/vendor/term/Cargo.toml
++++ b/vendor/term/Cargo.toml
+@@ -28,12 +28,6 @@ version = "2"
+
+ [features]
+ default = []
+-[target."cfg(windows)".dependencies.rustversion]
+-version = "1"
+-
+-[target."cfg(windows)".dependencies.winapi]
+-version = "0.3"
+-features = ["consoleapi", "wincon", "handleapi", "fileapi"]
+ [badges.appveyor]
+ repository = "Stebalien/term"
+
+diff --git a/vendor/termcolor/Cargo.toml b/vendor/termcolor/Cargo.toml
+index dbdb6e8..8edc73e 100644
+--- a/vendor/termcolor/Cargo.toml
++++ b/vendor/termcolor/Cargo.toml
+@@ -35,6 +35,3 @@ name = "termcolor"
+ bench = false
+
+ [dev-dependencies]
+-
+-[target."cfg(windows)".dependencies.winapi-util]
+-version = "0.1.3"
+diff --git a/vendor/terminal_size/Cargo.toml b/vendor/terminal_size/Cargo.toml
+index f810025..0fbe3a1 100644
+--- a/vendor/terminal_size/Cargo.toml
++++ b/vendor/terminal_size/Cargo.toml
+@@ -30,10 +30,3 @@ repository = "https://github.com/eminence/terminal-size"
+ [target."cfg(not(windows))".dependencies.rustix]
+ version = "0.38.0"
+ features = ["termios"]
+-
+-[target."cfg(windows)".dependencies.windows-sys]
+-version = "0.48.0"
+-features = [
+- "Win32_Foundation",
+- "Win32_System_Console",
+-]
+diff --git a/vendor/termize/Cargo.toml b/vendor/termize/Cargo.toml
+index d248f4d..9bd9f37 100644
+--- a/vendor/termize/Cargo.toml
++++ b/vendor/termize/Cargo.toml
+@@ -49,8 +49,5 @@ rpath = false
+ [dependencies]
+ [target."cfg(unix)".dependencies.libc]
+ version = "0.2.66"
+-[target."cfg(windows)".dependencies.winapi]
+-version = "0.3.8"
+-features = ["handleapi", "processenv", "wincon", "winbase"]
+ [badges.cirrus-ci]
+ repository = "JohnTitor/termize"
+diff --git a/vendor/tokio-native-tls/Cargo.toml b/vendor/tokio-native-tls/Cargo.toml
+index 76be3d3..3ada811 100644
+--- a/vendor/tokio-native-tls/Cargo.toml
++++ b/vendor/tokio-native-tls/Cargo.toml
+@@ -76,20 +76,3 @@ version = "0.10"
+
+ [target."cfg(any(target_os = \"macos\", target_os = \"ios\"))".dev-dependencies.security-framework]
+ version = "0.2"
+-
+-[target."cfg(windows)".dev-dependencies.schannel]
+-version = "0.1"
+-
+-[target."cfg(windows)".dev-dependencies.winapi]
+-version = "0.3"
+-features = [
+- "lmcons",
+- "basetsd",
+- "minwinbase",
+- "minwindef",
+- "ntdef",
+- "sysinfoapi",
+- "timezoneapi",
+- "wincrypt",
+- "winerror",
+-]
+diff --git a/vendor/tokio/Cargo.toml b/vendor/tokio/Cargo.toml
+index da1e4d1..55afa86 100644
+--- a/vendor/tokio/Cargo.toml
++++ b/vendor/tokio/Cargo.toml
+@@ -122,11 +122,6 @@ net = [
+ "mio/os-ext",
+ "mio/net",
+ "socket2",
+- "windows-sys/Win32_Foundation",
+- "windows-sys/Win32_Security",
+- "windows-sys/Win32_Storage_FileSystem",
+- "windows-sys/Win32_System_Pipes",
+- "windows-sys/Win32_System_SystemServices",
+ ]
+ process = [
+ "bytes",
+@@ -135,9 +130,6 @@ process = [
+ "mio/os-ext",
+ "mio/net",
+ "signal-hook-registry",
+- "windows-sys/Win32_Foundation",
+- "windows-sys/Win32_System_Threading",
+- "windows-sys/Win32_System_WindowsProgramming",
+ ]
+ rt = []
+ rt-multi-thread = [
+@@ -150,8 +142,6 @@ signal = [
+ "mio/net",
+ "mio/os-ext",
+ "signal-hook-registry",
+- "windows-sys/Win32_Foundation",
+- "windows-sys/Win32_System_Console",
+ ]
+ stats = []
+ sync = []
+@@ -217,14 +207,3 @@ features = [
+ "socket",
+ ]
+ default-features = false
+-
+-[target."cfg(windows)".dependencies.windows-sys]
+-version = "0.48"
+-optional = true
+-
+-[target."cfg(windows)".dev-dependencies.windows-sys]
+-version = "0.48"
+-features = [
+- "Win32_Foundation",
+- "Win32_Security_Authorization",
+-]
+diff --git a/vendor/uuid/Cargo.toml b/vendor/uuid/Cargo.toml
+index b806036..4094678 100644
+--- a/vendor/uuid/Cargo.toml
++++ b/vendor/uuid/Cargo.toml
+@@ -185,10 +185,6 @@ version = "0.3"
+ version = "0.2"
+ package = "wasm-bindgen"
+
+-[target."cfg(windows)".dev-dependencies.windows-sys]
+-version = "0.48.0"
+-features = ["Win32_System_Com"]
+-
+ [badges.is-it-maintained-issue-resolution]
+ repository = "uuid-rs/uuid"
+
+diff --git a/vendor/walkdir/Cargo.toml b/vendor/walkdir/Cargo.toml
+index 4c29a20..725e320 100644
+--- a/vendor/walkdir/Cargo.toml
++++ b/vendor/walkdir/Cargo.toml
+@@ -39,9 +39,6 @@ version = "1.0.1"
+ [dev-dependencies.doc-comment]
+ version = "0.3"
+
+-[target."cfg(windows)".dependencies.winapi-util]
+-version = "0.1.1"
+-
+ [badges.appveyor]
+ repository = "BurntSushi/walkdir"
+
+diff --git a/vendor/yansi-term/Cargo.toml b/vendor/yansi-term/Cargo.toml
+index 0317866..88ce8ef 100644
+--- a/vendor/yansi-term/Cargo.toml
++++ b/vendor/yansi-term/Cargo.toml
+@@ -36,9 +36,6 @@ version = "1.0"
+
+ [features]
+ derive_serde_style = ["serde"]
+-[target."cfg(target_os=\"windows\")".dependencies.winapi]
+-version = "0.3.4"
+-features = ["consoleapi", "errhandlingapi", "fileapi", "handleapi", "processenv"]
+ [badges.maintenance]
+ status = "actively-developed"
+