diff options
74 files changed, 4305 insertions, 798 deletions
diff --git a/debian/bin/cargo b/debian/bin/cargo new file mode 100755 index 000000000..50772347d --- /dev/null +++ b/debian/bin/cargo @@ -0,0 +1,257 @@ +#!/usr/bin/python3 +""" +Wrapper around cargo to have it build using Debian settings. + +Usage: + export PATH=/path/to/dir/of/this/script:$PATH + export CARGO_HOME=debian/cargo_home + cargo prepare-debian /path/to/local/registry [--link-from-system] + cargo build + cargo test + cargo install + cargo clean + [rm -rf /path/to/local/registry] + +The "prepare-debian" subcommand writes a config file to $CARGO_HOME that makes +the subsequent invocations use our Debian flags. The "--link-from-system" flag +is optional; if you use it we will create /path/to/local/registry and symlink +the contents of /usr/share/cargo/registry into it. You are then responsible for +cleaning it up afterwards (a simple `rm -rf` should do). + +See cargo:d/rules and dh-cargo:cargo.pm for more examples. + +Make sure you add "Build-Depends: python3:native" if you use this directly. +If using this only indirectly via dh-cargo, then you only need "Build-Depends: +dh-cargo"; this is a general principle when declaring dependencies. + +If CARGO_HOME doesn't end with debian/cargo_home, then this script does nothing +and passes through directly to cargo. + +Otherwise, you *must* set the following environment variables: + +- DEB_CARGO_CRATE + ${crate}_${version} of whatever you're building. + +- CFLAGS CXXFLAGS CPPFLAGS LDFLAGS [*] +- DEB_HOST_GNU_TYPE DEB_HOST_RUST_TYPE [*] + +- (required only for `cargo install`) DESTDIR + DESTDIR to install build artifacts under. If running via dh-cargo, this will + be set automatically by debhelper, see `dh_auto_install` for details. + +- (optional) DEB_BUILD_OPTIONS DEB_BUILD_PROFILES + +- (optional) DEB_CARGO_INSTALL_PREFIX + Prefix to install build artifacts under. Default: /usr. Sometimes you might + want to change this to /usr/lib/cargo if the binary clashes with something + else, and then symlink it into /usr/bin under an alternative name. + +- (optional) DEB_CARGO_CRATE_IN_REGISTRY + Whether the crate is in the local-registry (1) or cwd (0, empty, default). + +For the envvars marked [*], it is easiest to set these in your d/rules via: + + include /usr/share/dpkg/architecture.mk + include /usr/share/dpkg/buildflags.mk + include /usr/share/rustc/architecture.mk + export CFLAGS CXXFLAGS CPPFLAGS LDFLAGS + export DEB_HOST_RUST_TYPE DEB_HOST_GNU_TYPE +""" + +import os +import os.path +import shutil +import subprocess +import sys + +FLAGS = "CFLAGS CXXFLAGS CPPFLAGS LDFLAGS" +ARCHES = "DEB_HOST_GNU_TYPE DEB_HOST_RUST_TYPE" +SYSTEM_REGISTRY = "/usr/share/cargo/registry" + +def log(*args): + print("debian cargo wrapper:", *args, file=sys.stderr, flush=True) + +def logrun(*args, **kwargs): + log("running subprocess", args, kwargs) + return subprocess.run(*args, **kwargs) + +def sourcepath(p=None): + return os.path.join(os.getcwd(), p) if p else os.getcwd() + +def prepare_debian(cargo_home, registry, cratespec, host_gnu_type, ldflags, link_from_system, extra_rustflags): + registry_path = sourcepath(registry) + if link_from_system: + log("linking %s/* into %s/" % (SYSTEM_REGISTRY, registry_path)) + os.makedirs(registry_path, exist_ok=True) + crates = os.listdir(SYSTEM_REGISTRY) if os.path.isdir(SYSTEM_REGISTRY) else [] + for c in crates: + target = os.path.join(registry_path, c) + if not os.path.islink(target): + os.symlink(os.path.join(SYSTEM_REGISTRY, c), target) + elif not os.path.exists(registry_path): + raise ValueError("non-existent registry: %s" % registry) + + rustflags = "-C debuginfo=2 --cap-lints warn".split() + rustflags.extend(["-C", "linker=%s-gcc" % host_gnu_type]) + for f in ldflags: + rustflags.extend(["-C", "link-arg=%s" % f]) + if link_from_system: + rustflags.extend([ + # Note that this order is important! Rust evaluates these options in + # priority of reverse order, so if the second option were in front, + # it would never be used, because any paths in registry_path are + # also in sourcepath(). + "--remap-path-prefix", "%s=%s/%s" % + (sourcepath(), SYSTEM_REGISTRY, cratespec.replace("_", "-")), + "--remap-path-prefix", "%s=%s" % (registry_path, SYSTEM_REGISTRY), + ]) + rustflags.extend(extra_rustflags.split()) + + # TODO: we cannot enable this until dh_shlibdeps works correctly; atm we get: + # dpkg-shlibdeps: warning: can't extract name and version from library name 'libstd-XXXXXXXX.so' + # and the resulting cargo.deb does not depend on the correct version of libstd-rust-1.XX + # We probably need to add override_dh_makeshlibs to d/rules of rustc + #rustflags.extend(["-C", "prefer-dynamic"]) + + os.makedirs(cargo_home, exist_ok=True) + with open("%s/config" % cargo_home, "w") as fp: + fp.write("""[source.crates-io] +replace-with = "dh-cargo-registry" + +[source.dh-cargo-registry] +directory = "{0}" + +[build] +rustflags = {1} +""".format(registry_path, repr(rustflags))) + + return 0 + +def install(destdir, cratespec, host_rust_type, crate_in_registry, install_prefix, *args): + crate, version = cratespec.rsplit("_", 1) + log("installing into destdir '%s' prefix '%s'" % (destdir, install_prefix)) + install_target = destdir + install_prefix + logrun(["env", "RUST_BACKTRACE=1", + # set CARGO_TARGET_DIR so build products are saved in target/ + # normally `cargo install` deletes them when it exits + "CARGO_TARGET_DIR=" + sourcepath("target"), + "/usr/bin/cargo"] + list(args) + + ([crate, "--vers", version] if crate_in_registry else ["--path", sourcepath()]) + + ["--root", install_target], check=True) + logrun(["rm", "-f", "%s/.crates.toml" % install_target]) + logrun(["rm", "-f", "%s/.crates2.json" % install_target]) + + # if there was a custom build output, symlink it to debian/cargo_out_dir + # hopefully cargo will provide a better solution in future https://github.com/rust-lang/cargo/issues/5457 + r = logrun('''ls -td "target/%s/release/build/%s"-*/out 2>/dev/null | head -n1''' + % (host_rust_type, crate), shell=True, stdout=subprocess.PIPE).stdout + r = r.decode("utf-8").rstrip() + if r: + logrun(["ln", "-sfT", "../%s" % r, "debian/cargo_out_dir"], check=True) + return 0 + +def main(*args): + cargo_home = os.getenv("CARGO_HOME", "") + if not cargo_home.endswith("/debian/cargo_home"): + os.execv("/usr/bin/cargo", ["cargo"] + list(args)) + + if any(f not in os.environ for f in FLAGS.split()): + raise ValueError("not all of %s set; did you call dpkg-buildflags?" % FLAGS) + + if any(f not in os.environ for f in ARCHES.split()): + raise ValueError("not all of %s set; did you include architecture.mk?" % ARCHES) + + build_options = os.getenv("DEB_BUILD_OPTIONS", "").split() + build_profiles = os.getenv("DEB_BUILD_PROFILES", "").split() + + parallel = [] + lto = 0 + for o in build_options: + if o.startswith("parallel="): + parallel = ["-j" + o[9:]] + elif o.startswith("optimize="): + opt_arg = o[9:] + for arg in opt_arg.split(","): + if opt_arg == "-lto": + lto = -1 + elif opt_arg == "+lto": + lto = 1 + else: + log(f"WARNING: unhandled optimization flag: {opt_arg}") + + nodoc = "nodoc" in build_options or "nodoc" in build_profiles + nocheck = "nocheck" in build_options or "nocheck" in build_profiles + + # note this is actually the "build target" type, see rustc's README.Debian + # for full details of the messed-up terminology here + host_rust_type = os.getenv("DEB_HOST_RUST_TYPE", "") + host_gnu_type = os.getenv("DEB_HOST_GNU_TYPE", "") + + log("options, profiles, parallel, lto:", build_options, build_profiles, parallel, lto) + log("rust_type, gnu_type:", ", ".join([host_rust_type, host_gnu_type])) + + if "RUSTFLAGS" in os.environ: + # see https://github.com/rust-lang/cargo/issues/6338 for explanation on why we must do this + log("unsetting RUSTFLAGS and assuming it will be (or already was) added to $CARGO_HOME/config") + extra_rustflags = os.environ["RUSTFLAGS"] + del os.environ["RUSTFLAGS"] + else: + extra_rustflags = "" + + if args[0] == "prepare-debian": + registry = args[1] + link_from_system = False + if len(args) > 2 and args[2] == "--link-from-system": + link_from_system = True + return prepare_debian(cargo_home, registry, + os.environ["DEB_CARGO_CRATE"], host_gnu_type, + os.getenv("LDFLAGS", "").split(), link_from_system, extra_rustflags) + + newargs = [] + subcmd = None + for a in args: + if (subcmd is None) and (a in ("build", "rustc", "doc", "test", "bench", "install")): + subcmd = a + newargs.extend(["-Zavoid-dev-deps", a, "--verbose", "--verbose"] + + parallel + ["--target", host_rust_type]) + elif (subcmd is None) and (a == "clean"): + subcmd = a + newargs.extend([a, "--verbose", "--verbose"]) + else: + newargs.append(a) + + if subcmd is not None and "--verbose" in newargs and "--quiet" in newargs: + newargs.remove("--quiet") + + if nodoc and subcmd == "doc": + return 0 + if nocheck and subcmd in ("test", "bench"): + return 0 + + if lto == 1: + newargs.append("--config profile.release.lto = \"thin\"") + elif lto == -1: + newargs.append("--config profile.release.lto = false") + + if subcmd == "clean": + logrun(["env", "RUST_BACKTRACE=1", "/usr/bin/cargo"] + list(newargs), check=True) + if os.path.exists(cargo_home): + shutil.rmtree(cargo_home) + return 0 + + cargo_config = "%s/config" % cargo_home + if not os.path.exists(cargo_config): + raise ValueError("does not exist: %s, did you run `cargo prepare-debian <registry>`?" % cargo_config) + + if subcmd == "install": + return install(os.getenv("DESTDIR", ""), + os.environ["DEB_CARGO_CRATE"], + host_rust_type, + os.getenv("DEB_CARGO_CRATE_IN_REGISTRY", "") == "1", + os.getenv("DEB_CARGO_INSTALL_PREFIX", "/usr"), + *newargs) + else: + return logrun(["env", "RUST_BACKTRACE=1", "/usr/bin/cargo"] + list(newargs)).returncode + +if __name__ == "__main__": + sys.exit(main(*sys.argv[1:])) diff --git a/debian/cargo-doc.docs b/debian/cargo-doc.docs new file mode 100644 index 000000000..1d0004d69 --- /dev/null +++ b/debian/cargo-doc.docs @@ -0,0 +1,2 @@ +usr/share/doc/cargo/reference +usr/share/doc/cargo/book diff --git a/debian/cargo.bash-completion b/debian/cargo.bash-completion new file mode 100644 index 000000000..e3d4b2857 --- /dev/null +++ b/debian/cargo.bash-completion @@ -0,0 +1 @@ +etc/bash_completion.d/cargo cargo diff --git a/debian/cargo.install b/debian/cargo.install new file mode 100644 index 000000000..ba8bde3f5 --- /dev/null +++ b/debian/cargo.install @@ -0,0 +1,5 @@ +usr/bin/cargo +usr/libexec/cargo-credential-1password usr/libexec +debian/scripts/* usr/share/cargo/scripts +debian/bin/cargo usr/share/cargo/bin +usr/share/zsh/site-functions/_cargo usr/share/zsh/vendor-completions diff --git a/debian/cargo.manpages b/debian/cargo.manpages new file mode 100644 index 000000000..585a8af0f --- /dev/null +++ b/debian/cargo.manpages @@ -0,0 +1,2 @@ +usr/share/man/man1/cargo-*.1 +usr/share/man/man1/cargo.1 diff --git a/debian/cargo/.package-cache b/debian/cargo/.package-cache deleted file mode 100644 index e69de29bb..000000000 --- a/debian/cargo/.package-cache +++ /dev/null diff --git a/debian/changelog b/debian/changelog index 64c7159b1..341a21a78 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,42 @@ +rustc (1.70.0+dfsg2-1) unstable; urgency=medium + + * upload to unstable + + -- Fabian Grünbichler <debian@fabian.gruenbichler.email> Sat, 04 May 2024 13:38:10 +0200 + +rustc (1.70.0+dfsg2-1~exp3) experimental; urgency=medium + + * d/rules: fix last package cache removal + + -- Fabian Grünbichler <debian@fabian.gruenbichler.email> Fri, 03 May 2024 17:02:14 +0200 + +rustc (1.70.0+dfsg2-1~exp2) experimental; urgency=medium + + * d/rules: allow removal of package cache to fail + * autopkgtest: disable full build test + + -- Fabian Grünbichler <debian@fabian.gruenbichler.email> Fri, 03 May 2024 15:10:49 +0200 + +rustc (1.70.0+dfsg2-1~exp1) experimental; urgency=medium + + [ liushuyu ] + * d/*: initial merge of cargo into rustc source package (Closes: #1054658) + + [ Fabian Grünbichler ] + * update libgit2 + * cargo: sync test disabling changes + * adapt to current rustc/cargo version + * cargo: actually install, not just build + * add extra component tarball + * scripts/guess-crate-copyright: switch to python3-toml + * d/check-orig-suspicious.sh: remove duplicate comment stripping + * d/check-orig-suspicious.sh: support extra tar ball + * fix autopkgtest control file + * update d/copyright + * extend lintian overrides + + -- Fabian Grünbichler <debian@fabian.gruenbichler.email> Fri, 03 May 2024 09:27:25 +0200 + rustc (1.70.0+dfsg1-9) unstable; urgency=medium * temporarily skip git(-cli) tests diff --git a/debian/check-orig-suspicious.sh b/debian/check-orig-suspicious.sh index b27dbf767..a168b7866 100755 --- a/debian/check-orig-suspicious.sh +++ b/debian/check-orig-suspicious.sh @@ -3,18 +3,20 @@ set -e ver="$1" test -n "$ver" || exit 2 +dfsg="$2" +if test -z "$dfsg"; then + dfsg=1 +fi -SUS_WHITELIST=$(find "${PWD}/debian" -name upstream-tarball-unsuspicious.txt -type f) +SUS_WHITELIST="$(find "${PWD}/debian" -name upstream-tarball-unsuspicious.txt -type f)" -rm -rf rustc-${ver/*~*/beta}-src/ -tar xf ../rustc_$ver+dfsg1.orig.tar.xz && cd rustc-${ver/*~*/beta}-src/ +rm -rf "rustc-${ver/*~*/beta}-src/" +tar xf "../rustc_$ver+dfsg$dfsg.orig.tar.xz" && cd "rustc-${ver/*~*/beta}-src/" +if test -f "../../rustc_$ver+dfsg$dfsg.orig-extra.tar.xz" ; then + tar xf "../../rustc_$ver+dfsg$dfsg.orig-extra.tar.xz" +fi -# TODO: remove this code snippet after it gets into our cargo -# Strip comments & blank lines before testing rust source code - -# some authors like to write really long comments -find . -name '*.rs' -execdir sed -i -e '\,^\s*//,d' -e '/^\s*$/d' '{}' \; - -/usr/share/cargo/scripts/audit-vendor-source \ +../debian/scripts/audit-vendor-source \ "$SUS_WHITELIST" \ "Files-Excluded: in debian/copyright and run a repack." \ -m text/x-script.python \ diff --git a/debian/config.toml.in b/debian/config.toml.in index c61d582c1..b4e7c8d7d 100644 --- a/debian/config.toml.in +++ b/debian/config.toml.in @@ -23,7 +23,7 @@ target = ["DEB_TARGET_RUST_TYPE"] docs = false extended = true -tools = ["clippy", "rustfmt", "rustdoc", "rust-analyzer-proc-macro-srv"] +tools = ["cargo", "clippy", "rustfmt", "rustdoc", "rust-analyzer-proc-macro-srv"] [install] prefix = "/usr" diff --git a/debian/control b/debian/control index ef0204529..a655ffdd2 100644 --- a/debian/control +++ b/debian/control @@ -13,7 +13,7 @@ Build-Depends: debhelper-compat (= 13), dpkg-dev (>= 1.17.14), python3:native, - cargo:native (>= 0.60.0) <!pkg.rustc.dlstage0>, + cargo:native (>= 0.69.0+dfsg) <!pkg.rustc.dlstage0>, rustc:native (>= 1.69.0+dfsg) <!pkg.rustc.dlstage0>, rustc:native (<= 1.70.0++) <!pkg.rustc.dlstage0>, llvm-16-dev:native, @@ -30,6 +30,13 @@ Build-Depends: zlib1g-dev, # used by rust-installer liblzma-dev:native, +# used by cargo + bash-completion, + libcurl4-gnutls-dev | libcurl4-openssl-dev, + libssh2-1-dev, + libgit2-dev (>= 1.7.1), + libgit2-dev (<< 1.8~~), + libhttp-parser-dev, # test dependencies: binutils (>= 2.26) <!nocheck> | binutils-2.26 <!nocheck>, # temporarily disabled cause of #1066794 / t64 transition @@ -324,7 +331,7 @@ Depends: ${misc:Depends}, ${shlibs:Depends}, rust-gdb (>= ${binary:Version}) | rust-lldb (>= ${binary:Version}), cargo, Recommends: - cargo (>= 0.71.0~~), cargo (<< 0.72.0~~) + cargo (= ${binary:Version}) Suggests: rust-doc (>= ${binary:Version}), rust-src (>= ${binary:Version}), @@ -345,3 +352,50 @@ Description: Rust systems programming language - all developer tools . This package is an empty metapackage that depends on all developer tools in the standard rustc distribution that have been packaged for Debian. + +# Cargo binaries +Package: cargo +Architecture: any +Multi-Arch: allowed +Depends: ${shlibs:Depends}, ${misc:Depends}, + rustc (= ${binary:Version}), + binutils, + gcc | clang | c-compiler +Suggests: cargo-doc, python3 +Description: Rust package manager + Cargo is a tool that allows Rust projects to declare their various + dependencies, and ensure that you'll always get a repeatable build. + . + To accomplish this goal, Cargo does four things: + * Introduces two metadata files with various bits of project information. + * Fetches and builds your project's dependencies. + * Invokes rustc or another build tool with the correct parameters to build + your project. + * Introduces conventions, making working with Rust projects easier. + . + Cargo downloads your Rust project’s dependencies and compiles your + project. + +Package: cargo-doc +Section: doc +Architecture: all +Build-Profiles: <!nodoc> +Recommends: rust-doc +Depends: ${misc:Depends} +Description: Rust package manager, documentation + Cargo is a tool that allows Rust projects to declare their various + dependencies, and ensure that you'll always get a repeatable build. + . + To accomplish this goal, Cargo does four things: + * Introduces two metadata files with various bits of project information. + * Fetches and builds your project's dependencies. + * Invokes rustc or another build tool with the correct parameters to build + your project. + * Introduces conventions, making working with Rust projects easier. + . + Cargo downloads your Rust project’s dependencies and compiles your + project. + . + This package contains the documentation. + +# TODO: add a cargo-src package diff --git a/debian/copyright b/debian/copyright index edf1cc050..bb2fd504c 100644 --- a/debian/copyright +++ b/debian/copyright @@ -21,8 +21,7 @@ Files-Excluded: # check that certain popular crates continue to compile. It is not the same as # cargo's own test suite (in its own package) also called cargotest. # NB: don't exclude rust-installer, it's needed for "install" functionality - .gitmodules - src/tools/cargo +#src/tools/cargo src/tools/rls src/tools/remote-test-client src/tools/remote-test-server @@ -34,35 +33,36 @@ Files-Excluded: src/tools/clippy/util/gh-pages # Embedded C libraries vendor/lzma-sys*/xz-* + vendor/libgit2-sys/libgit2 + vendor/libssh2-sys/libssh2 + vendor/curl-sys/curl + vendor/libz-sys/src/zlib* # Embedded binary blobs vendor/jsonpath_lib/docs vendor/mdbook/src/theme/playground_editor vendor/psm/src/arch/wasm32.o vendor/rustix/src/backend/linux_raw/arch/outline/*/*.a - vendor/rustix-0.*/src/backend/linux_raw/arch/outline/*/*.a + vendor/rustix-0.36.5/src/backend/linux_raw/arch/outline/*/*.a vendor/winapi-*/*/*.a # Embedded submodule used for CI library/stdarch/crates/intrinsic-test/acle +# Misc + vendor/*/icon_CLion.svg + vendor/wasm-bindgen/guide + vendor/nix/test/test_kmod/hello_mod/hello.c + vendor/wasm-bindgen/examples/import_js/index.js + vendor/wasm-bindgen/examples/import_js/webpack.config.js # unused dependencies, generated by debian/prune-unused-deps # DO NOT EDIT below, AUTOGENERATED vendor/ahash-0.7.4 vendor/ansi_term + vendor/anstyle-wincon vendor/anyhow-1.0.65 vendor/anyhow-1.0.66 vendor/anymap vendor/arbitrary - vendor/arc-swap - vendor/arrayvec-0.5.2 vendor/arrayvec-0.7.0 vendor/backtrace-0.3.66 - vendor/base16ct - vendor/base64 - vendor/base64ct - vendor/bitmaps - vendor/bstr - vendor/btoi - vendor/bumpalo - vendor/bytesize vendor/camino-1.0.9 vendor/cargo_metadata-0.15.2 vendor/cc-1.0.73 @@ -71,15 +71,9 @@ Files-Excluded: vendor/chalk-ir vendor/chalk-recursive vendor/chalk-solve - vendor/clru vendor/color-eyre vendor/color-spantrace vendor/command-group - vendor/concolor - vendor/concolor-query-0.1.0 - vendor/const-oid - vendor/content_inspector - vendor/core-foundation vendor/core-foundation-sys-0.8.0 vendor/cranelift-bforest vendor/cranelift-codegen @@ -92,34 +86,21 @@ Files-Excluded: vendor/cranelift-module vendor/cranelift-native vendor/cranelift-object - vendor/crypto-bigint vendor/crypto-common-0.1.3 - vendor/ct-codecs vendor/ctor-0.1.22 - vendor/curl - vendor/curl-sys - vendor/der + vendor/ctor vendor/derive_arbitrary vendor/diff-0.1.12 vendor/digest-0.10.3 vendor/directories vendor/dissimilar-1.0.4 vendor/dot - vendor/dunce - vendor/ecdsa - vendor/ed25519-compact vendor/either-1.6.0 vendor/either-1.6.1 - vendor/elliptic-curve vendor/ena-0.14.0 vendor/eyre - vendor/ff - vendor/fiat-crypto vendor/filetime-0.2.16 vendor/filetime-0.2.19 - vendor/flate2-1.0.23 - vendor/foreign-types - vendor/foreign-types-shared vendor/form_urlencoded-1.0.1 vendor/fsevent-sys vendor/fs_extra @@ -127,131 +108,66 @@ Files-Excluded: vendor/fwdansi vendor/fxhash vendor/generic-array-0.14.4 - vendor/git2 - vendor/git2-curl - vendor/gix-actor - vendor/gix-attributes - vendor/gix-bitmap - vendor/gix - vendor/gix-chunk - vendor/gix-command - vendor/gix-config - vendor/gix-config-value - vendor/gix-credentials - vendor/gix-date - vendor/gix-diff - vendor/gix-discover - vendor/gix-features - vendor/gix-glob - vendor/gix-hash - vendor/gix-hashtable - vendor/gix-index - vendor/gix-lock - vendor/gix-mailmap - vendor/gix-object - vendor/gix-odb - vendor/gix-pack - vendor/gix-packetline - vendor/gix-path - vendor/gix-prompt - vendor/gix-protocol - vendor/gix-quote - vendor/gix-ref - vendor/gix-refspec - vendor/gix-revision - vendor/gix-sec - vendor/gix-tempfile - vendor/gix-transport - vendor/gix-traverse - vendor/gix-url - vendor/gix-validate - vendor/gix-worktree vendor/globset-0.4.8 - vendor/group - vendor/handlebars-3.5.5 vendor/heck-0.3.3 vendor/hermit-abi-0.3.0 vendor/hex-0.4.2 vendor/hkalbasi-rustc-ap-rustc_abi vendor/hkalbasi-rustc-ap-rustc_index - vendor/hkdf - vendor/hmac vendor/home-0.5.3 - vendor/http-auth vendor/idna-0.2.0 - vendor/imara-diff - vendor/im-rc vendor/indenter vendor/indexmap-1.9.2 vendor/inotify vendor/inotify-sys - vendor/io-close vendor/io-lifetimes-1.0.3 vendor/is-terminal-0.4.4 vendor/itoa-1.0.2 vendor/itoa-1.0.5 vendor/jemalloc-sys vendor/jod-thread - vendor/js-sys + vendor/junction vendor/kqueue vendor/kqueue-sys vendor/libc-0.2.138 vendor/libc-0.2.139 vendor/libffi vendor/libffi-sys - vendor/libgit2-sys vendor/libloading-0.7.1 vendor/libmimalloc-sys vendor/libnghttp2-sys - vendor/libssh2-sys - vendor/libz-sys vendor/linked-hash-map vendor/lock_api-0.4.7 vendor/log-0.4.14 vendor/lzma-sys-0.1.16 vendor/mach vendor/matches - vendor/maybe-async vendor/memmap2-0.5.8 vendor/mimalloc vendor/mio - vendor/nix - vendor/nom8 - vendor/normalize-line-endings + vendor/miow-0.3.7 + vendor/miow vendor/notify + vendor/ntapi vendor/num_cpus-1.13.1 - vendor/num_threads vendor/object-0.30.1 vendor/once_cell-1.12.0 vendor/once_cell-1.16.0 vendor/once_cell-1.17.0 vendor/oorandom - vendor/openssl - vendor/openssl-macros - vendor/openssl-probe vendor/openssl-src - vendor/openssl-sys - vendor/ordered-float - vendor/orion - vendor/os_info + vendor/output_vt100 vendor/owo-colors - vendor/p384 vendor/parking_lot_core-0.8.5 vendor/parking_lot_core-0.9.4 - vendor/pasetors vendor/paste - vendor/pem-rfc7468 vendor/percent-encoding-2.1.0 vendor/pin-project-lite-0.2.8 - vendor/pkcs8 - vendor/pretty_env_logger vendor/proc-macro2-1.0.46 vendor/proc-macro2-1.0.50 - vendor/prodash vendor/protobuf vendor/protobuf-support vendor/pulldown-cmark-to-cmark - vendor/quick-error vendor/quote-1.0.18 vendor/quote-1.0.23 vendor/rayon-1.5.3 @@ -263,7 +179,6 @@ Files-Excluded: vendor/regex-1.5.6 vendor/regex-syntax-0.6.26 vendor/region - vendor/rfc6979 vendor/rustc-build-sysroot vendor/ryu-1.0.10 vendor/ryu-1.0.5 @@ -272,7 +187,6 @@ Files-Excluded: vendor/schannel vendor/scip vendor/scoped-tls-1.0.0 - vendor/sec1 vendor/security-framework vendor/security-framework-sys vendor/semver-1.0.12 @@ -280,37 +194,18 @@ Files-Excluded: vendor/serde-1.0.152 vendor/serde_derive-1.0.137 vendor/serde_derive-1.0.152 - vendor/serde_ignored vendor/serde_json-1.0.81 vendor/serde_json-1.0.85 - vendor/serde_spanned - vendor/serde-value - vendor/sha1_smol vendor/sha2-0.10.2 vendor/sharded-slab-0.1.1 - vendor/signal-hook - vendor/signal-hook-registry - vendor/signature - vendor/similar - vendor/sized-chunks vendor/slice-group-by - vendor/snapbox - vendor/snapbox-macros - vendor/socket2 - vendor/spki - vendor/strip-ansi-escapes - vendor/subtle vendor/syn-1.0.102 vendor/target-lexicon vendor/termcolor-1.1.3 vendor/tikv-jemallocator vendor/tikv-jemalloc-ctl vendor/tikv-jemalloc-sys - vendor/time-macros vendor/toml-0.5.7 - vendor/toml - vendor/toml_datetime - vendor/toml_edit vendor/tracing-0.1.35 vendor/tracing-attributes-0.1.22 vendor/tracing-core-0.1.28 @@ -322,39 +217,41 @@ Files-Excluded: vendor/typenum-1.15.0 vendor/ui_test vendor/unicode-bidi-0.3.4 - vendor/unicode-bom vendor/unicode-ident-1.0.0 vendor/unicode-ident-1.0.5 vendor/unicode-width-0.1.9 vendor/url-2.2.2 - vendor/vcpkg - vendor/vte - vendor/vte_generate_state_changes - vendor/wasm-bindgen-backend - vendor/wasm-bindgen - vendor/wasm-bindgen-macro - vendor/wasm-bindgen-macro-support - vendor/wasm-bindgen-shared vendor/wasmtime-jit-icache-coherence + vendor/winapi-util vendor/windows-0.43.0 vendor/windows_aarch64_gnullvm-0.42.0 vendor/windows_aarch64_gnullvm-0.42.1 + vendor/windows_aarch64_gnullvm vendor/windows_aarch64_msvc-0.42.0 vendor/windows_aarch64_msvc-0.42.1 + vendor/windows_aarch64_msvc + vendor/windows vendor/windows_i686_gnu-0.42.0 vendor/windows_i686_gnu-0.42.1 + vendor/windows_i686_gnu vendor/windows_i686_msvc-0.42.0 vendor/windows_i686_msvc-0.42.1 + vendor/windows_i686_msvc + vendor/windows-sys-0.42.0 + vendor/windows-sys + vendor/windows-targets vendor/windows_x86_64_gnu-0.42.0 vendor/windows_x86_64_gnu-0.42.1 + vendor/windows_x86_64_gnu vendor/windows_x86_64_gnullvm-0.42.0 vendor/windows_x86_64_gnullvm-0.42.1 + vendor/windows_x86_64_gnullvm vendor/windows_x86_64_msvc-0.42.0 vendor/windows_x86_64_msvc-0.42.1 + vendor/windows_x86_64_msvc vendor/xattr-0.2.2 vendor/yaml-merge-keys vendor/yaml-rust - vendor/zeroize # DO NOT EDIT above, AUTOGENERATED Files: C*.md @@ -383,6 +280,7 @@ Files: C*.md version x.py .cargo/config.toml + .gitmodules Copyright: 2006-2009 Graydon Hoare 2009-2012 Mozilla Foundation 2012-2017 The Rust Project Developers (see AUTHORS.txt) @@ -427,7 +325,6 @@ Files: vendor/anstream/* vendor/anstyle/* vendor/anstyle-parse/* - vendor/anstyle-wincon/* Copyright: 2023 Ed Page <eopage@gmail.com> License: MIT or Apache-2.0 @@ -444,6 +341,8 @@ License: MIT OR Apache-2.0 Comment: see https://github.com/djc/askama Files: + extra/bitflags/* + extra/bitflags-1.3.*/* vendor/bitflags/* vendor/cc/* vendor/cmake/* @@ -473,8 +372,10 @@ Copyright: 2019-2023 Jacob Pratt <open-source@jhpratt.dev> License: MIT OR Apache-2.0 Comment: see https://github.com/time-rs/time -Files: vendor/core-foundation-sys/* -Copyright: 2012-2022 The Servo Project Developers +Files: + vendor/core-foundation/* + vendor/core-foundation-sys/* +Copyright: 2012-2024 The Servo Project Developers License: MIT or Apache-2.0 Comment: see https://github.com/servo/core-foundation-rs @@ -516,6 +417,7 @@ Files: vendor/cfg-if/* vendor/filetime/* vendor/flate2/* + vendor/flate2-1.0.*/* vendor/fnv/* vendor/jobserver/* vendor/lzma-sys/* @@ -587,6 +489,11 @@ Comment: see upstream projects, * https://github.com/BurntSushi/aho-corasick * https://github.com/BurntSushi/rust-memchr +Files: vendor/arc-swap/* +Copyright: 2018-2024 Michal 'vorner' Vaner <vorner@vorner.cz> +License: MIT OR Apache-2.0 +Comment: see https://github.com/vorner/arc-swap + Files: vendor/array_tool/* Copyright: 2015-2018 Daniel P. Clark <6ftdan@gmail.com> License: MIT OR Apache-2.0 @@ -606,30 +513,77 @@ Copyright: 2015-2022 The Rust Project Developers License: MIT or Apache-2.0 Comment: see https://github.com/rust-lang/backtrace-rs +Files: vendor/base64/* +Copyright: 2015-2024 Alice Maz <alice@alicemaz.com> + 2015-2024 Marshall Pierce <marshall@mpierce.org> +License: MIT OR Apache-2.0 +Comment: see https://github.com/marshallpierce/rust-base64 + Files: vendor/basic-toml/* Copyright: 2014-2023 Alex Crichton <alex@alexcrichton.com> 2014-2023 David Tolnay <dtolnay@gmail.com> License: MIT OR Apache-2.0 Comment: see https://github.com/dtolnay/basic-toml +Files: vendor/bitmaps/* +Copyright: 2019-2024 Bodil Stokke <bodil@bodil.org> +License: MPL-2.0+ +Comment: see https://github.com/bodil/bitmaps + Files: + vendor/base16ct/* + vendor/base64ct/* vendor/block-buffer/* + vendor/const-oid/* + vendor/cpufeatures/* + vendor/crypto-bigint/* + vendor/crypto-common/* + vendor/der/* vendor/digest/* + vendor/ecdsa/* + vendor/elliptic-curve/* + vendor/hkdf/* + vendor/hmac/* vendor/md-5/* + vendor/p384/* + vendor/pem-rfc7468/* + vendor/pkcs8/* + vendor/rfc6979/* + vendor/sec1/* vendor/sha1/* vendor/sha2/* -Copyright: 2016-2020 RustCrypto Developers + vendor/signature/* + vendor/spki/* + vendor/zeroize/* +Copyright: 2015-2024 RustCrypto Developers License: MIT or Apache-2.0 Comment: + see https://github.com/RustCrypto/elliptic-curves + see https://github.com/RustCrypto/formats see https://github.com/RustCrypto/hashes + see https://github.com/RustCrypto/signatures see https://github.com/RustCrypto/traits see https://github.com/RustCrypto/utils + see https://github.com/RustCrypto/KDFs + see https://github.com/RustCrypto/MACs -Files: vendor/bstr-0.*/* -Copyright: 2018-2020 Andrew Gallant <jamslam@gmail.com> +Files: + vendor/bstr/* + vendor/bstr-0.*/* +Copyright: 2018-2024 Andrew Gallant <jamslam@gmail.com> License: MIT OR Apache-2.0 Comment: see https://github.com/BurntSushi/bstr +Files: vendor/btoi/* +Copyright: 2017-2023 Niklas Fiekas <niklas.fiekas@backscattering.de> +License: MIT OR Apache-2.0 +Comment: see https://github.com/niklasf/rust-btoi + +Files: vendor/bumpalo/* +Copyright: 2018-2024 Nick Fitzgerald <fitzgen@gmail.com> +License: MIT or Apache-2.0 +Comment: see https://github.com/fitzgen/bumpalo + Files: vendor/bytecount/* Copyright: 2016-2020 Andre Bogus <bogusandre@gmail.de> 2016-2020 Joshua Landau <joshua@landau.ws> @@ -641,13 +595,17 @@ Copyright: 2015-2023 Andrew Gallant <jamslam@gmail.com> License: Unlicense OR MIT Comment: see https://github.com/BurntSushi/byteorder +Files: vendor/bytesize/* +Copyright: 2015-2023 Hyunsik Choi <hyunsik.choi@gmail.com> +License: Apache-2.0 +Comment: see https://github.com/hyunsik/bytesize/ + Files: vendor/globset/* vendor/ignore/* vendor/same-file/* vendor/termcolor/* vendor/walkdir/* - vendor/winapi-util/* Copyright: 2015-2020 Andrew Gallant <jamslam@gmail.com> License: Unlicense or MIT Comment: @@ -713,6 +671,11 @@ Copyright: 2015-2022 Kevin K. <kbknapp@gmail.com> License: MIT Comment: see https://github.com/clap-rs/clap +Files: vendor/clru/* +Copyright: 2020-2023 marmeladema <xademax@gmail.com> +License: MIT +Comment: see https://github.com/marmeladema/clru-rs + Files: vendor/colored/* Copyright: 2016-2020 Thomas Wickham <mackwic@gmail.com> License: MPL-2.0 @@ -721,10 +684,17 @@ Comment: see https://github.com/mackwic/colored Files: vendor/concolor-override/* vendor/concolor-query/* -Copyright: 2021-2022 Ed Page <eopage@gmail.com> + vendor/concolor-query-0.1.*/* + vendor/concolor/* +Copyright: 2021-2023 Ed Page <eopage@gmail.com> License: MIT OR Apache-2.0 Comment: see https://github.com/rust-cli/concolor +Files: vendor/content_inspector/* +Copyright: 2018-2018 David Peter <mail@david-peter.de> +License: MIT or Apache-2.0 +Comment: see https://github.com/sharkdp/content_inspector + Files: vendor/convert_case/* Copyright: 2020-2022 David Purdum <purdum41@gmail.com> License: MIT @@ -761,10 +731,17 @@ Copyright: 2018-2020 Xidorn Quan <me@upsuper.org> License: MIT Comment: see https://github.com/upsuper/cstr -Files: vendor/ctor/* -Copyright: 2018-2020 Matt Mastracci <matthew@mastracci.com> -License: Apache-2.0 OR MIT -Comment: see https://github.com/mmastrac/rust-ctor +Files: vendor/ct-codecs/* +Copyright: 2020-2022 Frank Denis <github@pureftpd.org> +License: MIT +Comment: see https://github.com/jedisct1/rust-ct-codecs + +Files: + vendor/curl/* + vendor/curl-sys/* +Copyright: 2014-2024 Alex Crichton <alex@alexcrichton.com> +License: MIT +Comment: see https://github.com/alexcrichton/curl-rust Files: vendor/dashmap/* Copyright: 2019-2022 Acrimon <joel.wejdenstal@gmail.com> @@ -814,6 +791,7 @@ Comment: Files: vendor/arrayvec/* + vendor/arrayvec-0.5.*/* vendor/either/* vendor/fixedbitset/* vendor/itertools/* @@ -856,6 +834,16 @@ Copyright: 2018-2020 Aleksey Kladov <aleksey.kladov@gmail.com> License: MIT OR Apache-2.0 Comment: see https://github.com/matklad/drop_bomb +Files: vendor/dunce/* +Copyright: 2017-2023 Kornel <kornel@geekhood.net> +License: CC0-1.0 +Comment: see https://gitlab.com/kornelski/dunce + +Files: vendor/ed25519-compact/* +Copyright: 2020-2024 Frank Denis <github@pureftpd.org> +License: MIT +Comment: see https://github.com/jedisct1/rust-ed25519-compact + Files: vendor/elasticlunr-rs/* Copyright: 2017-2018 Matt Ickstadt <mattico8@gmail.com> License: MIT or Apache-2.0 @@ -903,6 +891,17 @@ Copyright: 2019-2022 Yoshua Wuyts <yoshuawuyts@gmail.com> License: MIT OR Apache-2.0 Comment: see https://github.com/yoshuawuyts/fd-lock +Files: vendor/ff/* +Copyright: 2017-2023 Sean Bowe <ewillbefull@gmail.com> + 2017-2023 Jack Grigg <thestr4d@gmail.com> +License: MIT or Apache-2.0 +Comment: see https://github.com/zkcrypto/ff + +Files: vendor/fiat-crypto/* +Copyright: 2015-2024 Fiat Crypto library authors <jgross@mit.edu> +License: MIT OR Apache-2.0 OR BSD-1-Clause-fiat-crypto +Comment: see https://github.com/mit-plv/fiat-crypto + Files: vendor/fluent-bundle/* vendor/fluent-syntax/* @@ -918,6 +917,13 @@ Copyright: 2017-2021 Zibi Braniecki <gandalf@mozilla.com> License: Apache-2.0 Comment: see https://github.com/projectfluent/fluent-langneg-rs +Files: + vendor/foreign-types/* + vendor/foreign-types-shared/* +Copyright: 2017-2023 Steven Fackler <sfackler@gmail.com> +License: MIT or Apache-2.0 +Comment: see https://github.com/sfackler/foreign-types + Files: vendor/fortanix-sgx-abi/* Copyright: 2015-2019 Jethro Beekman <jethro@fortanix.com> License: MPL-2.0 @@ -950,12 +956,75 @@ Copyright: License: Apache-2.0 or MIT Comment: see https://github.com/gimli-rs/gimli + +Files: + extra/git2/* + extra/git2-curl/* + extra/libgit2-sys/* + vendor/git2/* + vendor/git2-curl/* + vendor/libgit2-sys/* +Copyright: 2014-2024 Josh Triplett <josh@joshtriplett.org> + 2014-2024 Alex Crichton <alex@alexcrichton.com> +License: MIT OR Apache-2.0 +Comment: see https://github.com/rust-lang/git2-rs + +Files: + vendor/gix/* + vendor/gix-actor/* + vendor/gix-attributes/* + vendor/gix-bitmap/* + vendor/gix-chunk/* + vendor/gix-command/* + vendor/gix-config/* + vendor/gix-config-value/* + vendor/gix-credentials/* + vendor/gix-date/* + vendor/gix-diff/* + vendor/gix-discover/* + vendor/gix-features/* + vendor/gix-glob/* + vendor/gix-hash/* + vendor/gix-hashtable/* + vendor/gix-index/* + vendor/gix-lock/* + vendor/gix-mailmap/* + vendor/gix-object/* + vendor/gix-odb/* + vendor/gix-pack/* + vendor/gix-packetline/* + vendor/gix-path/* + vendor/gix-prompt/* + vendor/gix-protocol/* + vendor/gix-quote/* + vendor/gix-ref/* + vendor/gix-refspec/* + vendor/gix-revision/* + vendor/gix-sec/* + vendor/gix-tempfile/* + vendor/gix-transport/* + vendor/gix-traverse/* + vendor/gix-url/* + vendor/gix-validate/* + vendor/gix-worktree/* +Copyright: 2018-2024 Sebastian Thiel <sebastian.thiel@icloud.com> +License: MIT or Apache-2.0 +Comment: see https://github.com/Byron/gitoxide + +Files: vendor/group/* +Copyright: 2018-2023 Sean Bowe <ewillbefull@gmail.com> + 2018-2023 Jack Grigg <jack@z.cash> +License: MIT or Apache-2.0 +Comment: see https://github.com/zkcrypto/group + Files: vendor/gsgdt/* Copyright: 2020 Vishnunarayan K I <appukuttancr@gmail.com> License: MIT or Apache-2.0 Comment: see https://github.com/vn-ki/gsgdt-rs -Files: vendor/handlebars/* +Files: + vendor/handlebars/* + vendor/handlebars-3.5.*/* Copyright: 2014-2017 Ning Sun <sunng@about.me> License: MIT Comment: see https://github.com/sunng87/handlebars-rust @@ -989,6 +1058,11 @@ Copyright: 2014-2020 The html5ever Project Developers License: MIT or Apache-2.0 Comment: see https://github.com/servo/html5ever +Files: vendor/http-auth/* +Copyright: 2021-2023 Scott Lamp <slamb@slamb.org> +License: MIT or Apache-2.0 +Comment: see https://github.com/scottlamb/http-auth + Files: vendor/humantime/* vendor/humantime-*/* @@ -1013,6 +1087,16 @@ Copyright: 2013-2021 The rust-url developers License: MIT or Apache-2.0 Comment: see https://github.com/servo/rust-url/ +Files: vendor/imara-diff/* +Copyright: 2022-2023 pascalkuthe <pascalkuthe@semimod.de> +License: Apache-2.0 +Comment: see https://github.com/pascalkuthe/imara-diff + +Files: vendor/im-rc/* +Copyright: 2017-2022 Bodil Stokke <bodil@bodil.org> +License: MPL-2.0+ +Comment: see https://github.com/bodil/im-rs + Files: vendor/indexmap/* Copyright: 2016-2019 bluss 2016-2019 Josh Stone <cuviper@gmail.com> @@ -1036,6 +1120,11 @@ Copyright: 2018-2021 Kekoa Riggin <kekoariggin@gmail.com> License: Apache-2.0 or MIT Comment: see https://github.com/zbraniecki/pluralrules +Files: vendor/io-close/* +Copyright: 2020-2021 wufz +License: MIT OR Apache-2.0 +Comment: see https://gitlab.com/wufz/io-close + Files: vendor/io-lifetimes/* Copyright: 2021-2022 Dan Gohman <dev@sunfishcode.online> License: Apache-2.0 with LLVM exception OR Apache-2.0 OR MIT @@ -1047,16 +1136,25 @@ Copyright: 2022-2023 softprops <d.tangren@gmail.com> License: MIT Comment: see https://github.com/sunfishcode/is-terminal +Files: + vendor/js-sys/* + vendor/wasm-bindgen/* + vendor/wasm-bindgen-backend/* + vendor/wasm-bindgen-macro-support/* + vendor/wasm-bindgen-macro/* + vendor/wasm-bindgen-shared/* +Copyright: + 2018-2023 The wasm-bindgen Developers + 2014-2023 Alex Crichton +License: MIT or Apache-2.0 +Comment: + see https://github.com/rustwasm/wasm-bindgen/tee/master/crates/js-sys + Files: vendor/jsonpath_lib/* Copyright: 2018-2021 Changseok Han <freestrings@gmail.com> License: MIT Comment: see https://github.com/freestrings/jsonpath -Files: vendor/junction/* -Copyright: 2019-2023 Lzu Tao <taolzu@gmail.com> -License: MIT -Comment: see https://github.com/lzutao/junction - Files: vendor/lazycell/* Copyright: 2016-2020 Alex Crichton <alex@alexcrichton.com> 2016-2020 Nikita Pekin <contact@nikitapek.in> @@ -1080,6 +1178,19 @@ Copyright: 2018-2021 Jorge Aparicio <jorge@japaric.io> License: MIT OR Apache-2.0 Comment: see https://github.com/rust-lang-nursery/libm +Files: vendor/libssh2-sys/* +Copyright: 2014-2024 Alex Crichton <alex@alexcrichton.com> + 2014-2024 Wez Furlong <wez@wezfurlong.org> + 2014-2024 Matteo Bigoi <bigo@crisidev.org> +License: MIT or Apache-2.0 +Comment: see https://github.com/alexcrichton/ssh2-rs + +Files: vendor/libz-sys/* +Copyright: 2014-2024 Alex Crichton <alex@alexcrichton.com> + 2014-2024 Josh Triplett <josh@joshtriplett.org> +License: MIT OR Apache-2.0 +Comment: see https://github.com/rust-lang/libz-sys + Files: vendor/linux-raw-sys/* vendor/linux-raw-sys-0.*/* @@ -1104,6 +1215,11 @@ Copyright: 2019-2019 Eliza Weisman <eliza@buoyant.io> License: MIT Comment: see https://github.com/hawkw/matchers +Files: vendor/maybe-async/* +Copyright: 2020-2024 Guoli Lyu <guoli-lv@hotmail.com> +License: MIT +Comment: see https://github.com/fMeow/maybe-async-rs + Files: vendor/mdbook/* Copyright: 2015-2017 Mathieu David <mathieudavid@mathieudavid.org> License: MPL-2.0 @@ -1153,23 +1269,31 @@ Copyright: 2017-2020 Frommi <daniil.liferenko@gmail.com> License: MIT Comment: see https://github.com/Frommi/miniz_oxide -Files: - vendor/miow/* - vendor/miow-0.3.7/* -Copyright: 2014-2021 Alex Crichton <alex@alexcrichton.com> -License: MIT or Apache-2.0 -Comment: see https://github.com/yoshuawuyts/miow - Files: vendor/new_debug_unreachable/* Copyright: 2014-2018 Matt Brubeck <mbrubeck@limpet.net> 2014-2018 Jonathan Reem <jonathan.reem@gmail.com> License: MIT Comment: see https://github.com/mbrubeck/rust-debug-unreachable -Files: vendor/ntapi/* -Copyright: 2018-2022 MSxDOS <melcodos@gmail.com> -License: Apache-2.0 OR MIT -Comment: see https://github.com/MSxDOS/ntapi +Files: vendor/nix/* +Copyright: 2014-2024 The nix-rust Project Developers +License: MIT +Comment: see https://github.com/nix-rust/nix + +Files: vendor/nom8/* +Copyright: 2014-2024 UNKNOWN AUTHORS +License: MIT +Comment: see https://github.com/epage/nom-experimental + +Files: vendor/normalize-line-endings/* +Copyright: 2016-2018 Richard Dodd <richdodj@gmail.com> +License: Apache-2.0 +Comment: see https://github.com/derekdreery/normalize-line-endings + +Files: vendor/num_threads/* +Copyright: 2021-2024 Jacob Pratt <open-source@jhpratt.dev> +License: MIT OR Apache-2.0 +Comment: see https://github.com/jhpratt/num_threads Files: vendor/nu-ansi-term/* Copyright: 2014-2023 ogham@bsago.me @@ -1198,26 +1322,59 @@ Copyright: 2021 Michael Woerister <michaelwoerister@posteo> License: Apache-2.0 or MIT Comment: see https://github.com/rust-lang/odht +Files: vendor/once_cell/* +Copyright: 2018-2019 Aleksey Kladov <aleksey.kladov@gmail.com> +License: MIT OR Apache-2.0 +Comment: see https://github.com/matklad/once_cell + Files: vendor/opener/* Copyright: 2018-2020 Brian Bowman <seeker14491@gmail.com> License: MIT OR Apache-2.0 Comment: see https://github.com/Seeker14491/opener -Files: vendor/once_cell/* -Copyright: 2018-2019 Aleksey Kladov <aleksey.kladov@gmail.com> -License: MIT OR Apache-2.0 -Comment: see https://github.com/matklad/once_cell +Files: vendor/openssl/* +Copyright: 2011-2024 Steven Fackler <sfackler@gmail.com> +License: Apache-2.0 +Comment: see https://github.com/sfackler/rust-openssl + +Files: vendor/openssl-macros/* +Copyright: 2022-2024 Steven Fackler <sfackler@gmail.com> +License: MIT or Apache-2.0 +Comment: see https://github.com/sfackler/rust-openssl + +Files: vendor/openssl-probe/* +Copyright: 2016-2022 Alex Crichton <alex@alexcrichton.com> +License: MIT or Apache-2.0 +Comment: see https://github.com/sfackler/rust-openssl + +Files: vendor/openssl-sys/* +Copyright: 2011-2024 Alex Crichton <alex@alexcrichton.com> + 2011-2024 Steven Fackler <sfackler@gmail.com> +License: MIT +Comment: see https://github.com/sfackler/rust-openssl + +Files: vendor/ordered-float/* +Copyright: 2014-2024 Jonathan Reem <jonathan.reem@gmail.com> + 2014-2024 Matt Brubeck <mbrubeck@limpet.net> +License: MIT +Comment: see https://github.com/reem/rust-ordered-float + +Files: vendor/orion/* +Copyright: 2018-2024 brycx <brycx@protonmail.com> +License: MIT +Comment: see https://github.com/orion-rs/orion + +Files: vendor/os_info/* +Copyright: 2015-2024 Jan Schulte <hello@unexpected-co.de> + 2015-2024 Stanislav Tkach <stanislav.tkach@gmail.com> +License: MIT +Comment: see https://github.com/stanislav-tkach/os_info Files: vendor/os_str_bytes/* Copyright: 2019-2022 dylni License: MIT OR Apache-2.0 Comment: see https://github.com/dylni/os_str_bytes -Files: vendor/output_vt100/* -Copyright: 2019-2019 Phuntsok Drak-pa <phundrak@phundrak.fr> -License: MIT -Comment: see https://github.com/Phundrak/output-vt100-rs - Files: vendor/overload/* Copyright: 2019-2022 Daniel Salvadori <danaugrs@gmail.com> License: MIT @@ -1245,6 +1402,11 @@ Copyright: 2018-2021 Gonzalo Brito Gadeschi <gonzalobg88@gmail.com> License: MIT or Apache-2.0 Comment: see https://github.com/rust-lang-nursery/packed_simd +Files: vendor/pasetors/* +Copyright: 2020-2024 brycx <brycx@protonmail.com> +License: MIT +Comment: see https://github.com/brycx/pasetors + Files: vendor/pathdiff/* Copyright: 2017-2020 Manish Goregaokar <manishsmail@gmail.com> License: MIT or Apache-2.0 @@ -1307,6 +1469,11 @@ Copyright: 2017-2022 Colin Kiegel <kiegel@gmx.de> License: MIT or Apache-2.0 Comment: see https://github.com/colin-kiegel/rust-pretty-assertions +Files: vendor/pretty_env_logger/* +Copyright: 2016-2023 Sean McArthur <sean@seanmonstar> +License: MIT or Apache-2.0 +Comment: see https://github.com/seanmonstar/pretty-env-logger + Files: vendor/proc-macro-error/* vendor/proc-macro-error-attr/* @@ -1319,6 +1486,11 @@ Copyright: 2016-2022 David Tolnay <dtolnay@gmail.com> License: MIT OR Apache-2.0 Comment: see https://github.com/dtolnay/proc-macro-hack +Files: vendor/prodash/* +Copyright: 2020-2023 Sebastian Thiel <sebastian.thiel@icloud.com> +License: MIT +Comment: see https://github.com/Byron/prodash + Files: vendor/psm/* Copyright: 2015-2020 Simonas Kazlauskas <git@kazlauskas.me> License: MIT or Apache-2.0 @@ -1336,9 +1508,10 @@ Comment: see https://github.com/mcarton/rust-punycode.git Files: vendor/quick-error-1.*/* + vendor/quick-error/* Copyright: - 2015-2020 Paul Colomiets <paul@colomiets.name> - 2015-2020 Colin Kiegel <kiegel@gmx.de> + 2015-2023 Paul Colomiets <paul@colomiets.name> + 2015-2023 Colin Kiegel <kiegel@gmx.de> License: MIT or Apache-2.0 Comment: see http://github.com/tailhook/quick-error @@ -1462,11 +1635,33 @@ Copyright: 2014-2017 Erick Tryzelaar <erick.tryzelaar@gmail.com> License: MIT or Apache-2.0 Comment: see https://github.com/serde-rs/serde +Files: vendor/serde_ignored/* +Copyright: 2017-2024 David Tolnay <dtolnay@gmail.com> +License: MIT OR Apache-2.0 +Comment: see https://github.com/dtolnay/serde-ignored + Files: vendor/serde_repr/* Copyright: 2019-2022 David Tolnay <dtolnay@gmail.com> License: MIT OR Apache-2.0 Comment: see https://github.com/dtolnay/serde-repr +Files: vendor/serde_spanned/* +Copyright: + 2014-2023 Alex Crichton <alex@alexcrichton.com> + 2023 Ed Page <eopage@gmail.com> +License: MIT or Apache-2.0 +Comment: see https://github.com/toml-rs/toml + +Files: vendor/serde-value/* +Copyright: 2016-2020 arcnmx +License: MIT +Comment: see https://github.com/arcnmx/serde-value + +Files: vendor/sha1_smol/* +Copyright: 2014-2022 Armin Ronacher <armin.ronacher@active-4.com> +License: BSD-3-Clause +Comment: see https://github.com/mitsuhiko/sha1-smol + Files: vendor/sharded-slab/* Copyright: 2019-2020 Eliza Weisman <eliza@buoyant.io> License: MIT @@ -1482,11 +1677,31 @@ Copyright: 2015-2015 comex <comexk@gmail.com> License: MIT or Apache-2.0 Comment: see https://github.com/comex/rust-shlex +Files: + vendor/signal-hook/* + vendor/signal-hook-registry/* +Copyright: 2018-2024 Michal 'vorner' Vaner <vorner@vorner.cz> + 2018-2024 Thomas Himmelstoss <thimm@posteo.de> +License: Apache-2.0 or MIT +Comment: see https://github.com/vorner/signal-hook + +Files: vendor/similar/* +Copyright: 2021-2024 Armin Ronacher <armin.ronacher@active-4.com> + 2021-2024 Pierre-Étienne Meunier <pe@pijul.org> + 2021-2024 Brandon Williams <bwilliams.eng@gmail.com> +License: Apache-2.0 +Comment: see https://github.com/mitsuhiko/similar + Files: vendor/siphasher/* Copyright: 2016-2018 Frank Denis <github@pureftpd.org> License: MIT or Apache-2.0 Comment: see https://github.com/jedisct1/rust-siphash +Files: vendor/sized-chunks/* +Copyright: 2019-2022 Bodil Stokke <bodil@bodil.org> +License: MPL-2.0+ +Comment: see https://github.com/bodil/sized-chunks + Files: vendor/smallvec/* Copyright: 2015-2020 Simon Sapin <simon.sapin@exyr.org> License: MPL-2.0 @@ -1503,6 +1718,19 @@ License: BSD-3-Clause Comment: see https://github.com/BurntSushi/rust-snappy Files: + vendor/snapbox/* + vendor/snapbox-macros/* +Copyright: Ed Page <eopage@gmail.com> 2022 +License: MIT OR Apache-2.0 +Comment: see https://github.com/assert-rs/trycmd/ + +Files: vendor/socket2/* +Copyright: 2017-2024 Alex Crichton <alex@alexcrichton.com> + 2017-2024 Thomas de Zeeuw <thomasdezeeuw@gmail.com> +License: MIT or Apache-2.0 +Comment: see https://github.com/rust-lang/socket2 + +Files: vendor/spdx-expression/* vendor/spdx-rs/* Copyright: 2021-2022 Mikko Murto <mikko.murto@hhpartners.fi> @@ -1527,6 +1755,11 @@ Copyright: 2017-2020 Nikolai Vazquez License: MIT OR Apache-2.0 Comment: see https://github.com/nvzqz/static-assertions-rs +Files: vendor/strip-ansi-escapes/* +Copyright: 2017-2023 Ted Mielczarek <ted@mielczarek.org> +License: Apache-2.0 or MIT +Comment: see https://github.com/luser/strip-ansi-escapes + Files: vendor/strsim/* Copyright: 2015-2021 Danny Guo <dannyguo91@gmail.com> License: MIT @@ -1539,6 +1772,12 @@ Copyright: 2017-2023 Peter Glotfelty <peter.glotfelty@microsoft.com> License: MIT Comment: see https://github.com/Peternator7/strum +Files: vendor/subtle/* +Copyright: 2017-2023 Isis Lovecruft <isis@patternsinthevoid.net> + 2017-2023 Henry de Valence <hdevalence@hdevalence.ca> +License: BSD-3-Clause +Comment: see https://github.com/dalek-cryptography/subtle + Files: vendor/synstructure/* vendor/synstructure-0.*/* @@ -1625,6 +1864,12 @@ Copyright: 2019-2022 Raph Levien <raph.levien@gmail.com> License: Apache-2.0 or MIT Comment: see https://github.com/zbraniecki/tinystr +Files: vendor/time-macros/* +Copyright: 2019-2024 Jacob Pratt <open-source@jhpratt.dev> + 2019-2024 Time contributors +License: MIT OR Apache-2.0 +Comment: see https://github.com/time-rs/time + Files: vendor/tinyvec/* Copyright: 2020 Lokathor <zefria@gmail.com> License: Zlib @@ -1640,6 +1885,22 @@ Copyright: 2015-2018 gifnksm <makoto.nksm+github@gmail.com> License: MIT OR Apache-2.0 Comment: see https://github.com/gifnksm/topological-sort-rs +Files: vendor/toml/* +Copyright: 2014-2024 Alex Crichton <alex@alexcrichton.com> +License: MIT OR Apache-2.0 +Comment: see https://github.com/toml-rs/toml + +Files: vendor/toml_datetime/* +Copyright: 2014-2024 Alex Crichton <alex@alexcrichton.com> +License: MIT OR Apache-2.0 +Comment: see https://github.com/toml-rs/toml + +Files: vendor/toml_edit/* +Copyright: 2014-2024 Andronik Ordian <write@reusable.software> + 2014-2024 Ed Page <eopage@gmail.com> +License: MIT OR Apache-2.0 +Comment: see https://github.com/ordian/toml_edit + Files: vendor/tracing/* vendor/tracing-attributes/* @@ -1675,11 +1936,32 @@ Copyright: 2015-2019 Paho Lurie-Gregg <paho@paholg.com> License: MIT or Apache-2.0 Comment: see https://github.com/paholg/typenum +Files: vendor/unicode-bom/* +Copyright: 2018-2023 Phil Booth <pmbooth@gmail.com> +License: Apache-2.0 +Comment: see https://gitlab.com/philbooth/unicode-bom + Files: vendor/version_check/* Copyright: 2017-2019 Sergio Benitez <sb@sergio.bz> License: MIT or Apache-2.0 Comment: see https://github.com/SergioBenitez/version_check +Files: vendor/vcpkg/* +Copyright: 2017-2024 Jim McGrath <jimmc2@gmail.com> +License: MIT or Apache-2.0 +Comment: see https://github.com/mcgoo/vcpkg-rs + +Files: vendor/vte/* +Copyright: 2016-2024 Joe Wilm <joe@jwilm.com> + 2016-2024 Christian Duerr <contact@christianduerr.com> +License: Apache-2.0 OR MIT +Comment: see https://github.com/alacritty/vte + +Files: vendor/vte_generate_state_changes/* +Copyright: 2016-2024 Christian Duerr <contact@christianduerr.com> +License: Apache-2.0 OR MIT +Comment: see https://github.com/jwilm/vte + Files: vendor/ucd-parse/* vendor/ucd-trie/* @@ -1803,16 +2085,6 @@ Copyright: 2015-2022 Carl Lerche <me@carllerche.com> License: MIT Comment: see https://github.com/tokio-rs/bytes -Files: vendor/cpufeatures/* -Copyright: 2016-2022 RustCrypto Developers -License: MIT OR Apache-2.0 -Comment: see https://github.com/RustCrypto/utils - -Files: vendor/crypto-common/* -Copyright: 2017-2022 RustCrypto Developers -License: MIT OR Apache-2.0 -Comment: see https://github.com/RustCrypto/traits - Files: vendor/futures/* vendor/futures-channel/* @@ -1863,22 +2135,6 @@ Copyright: License: MIT Comment: see https://github.com/tokio-rs/valuable -Files: - vendor/windows/* - vendor/windows-sys/* - vendor/windows-sys-0.*/* - vendor/windows-targets/* - vendor/windows_aarch64_gnullvm/* - vendor/windows_aarch64_msvc/* - vendor/windows_i686_gnu/* - vendor/windows_i686_msvc/* - vendor/windows_x86_64_gnu/* - vendor/windows_x86_64_gnullvm/* - vendor/windows_x86_64_msvc/* -Copyright: 2019-2023 Microsoft Corporation -License: MIT OR Apache-2.0 -Comment: see https://github.com/microsoft/windows-rs - Files: vendor/write-json/* Copyright: 2020-2020 Aleksey Kladov <aleksey.kladov@gmail.com> License: MIT OR Apache-2.0 @@ -2687,3 +2943,27 @@ License: Unicode-Data-Files-and-Software-License shall not be used in advertising or otherwise to promote the sale, use or other dealings in these Data Files or Software without prior written authorization of the copyright holder. + +License: BSD-1-Clause-fiat-crypto + Copyright (c) 2015-2020 the fiat-crypto authors (see the AUTHORS file) + All rights reserved. + . + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + . + 1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + . + THIS SOFTWARE IS PROVIDED BY the fiat-crypto authors "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL Berkeley Software Design, + Inc. BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + diff --git a/debian/gbp.conf b/debian/gbp.conf index d568e69c4..a1da765a3 100644 --- a/debian/gbp.conf +++ b/debian/gbp.conf @@ -1,6 +1,7 @@ [DEFAULT] pristine-tar = True ignore-branch = True +component = extra [import-orig] upstream-branch = upstream/experimental diff --git a/debian/lintian-to-copyright.sh b/debian/lintian-to-copyright.sh index 9a766da35..866e31bcd 100755 --- a/debian/lintian-to-copyright.sh +++ b/debian/lintian-to-copyright.sh @@ -1,5 +1,5 @@ #!/bin/sh # Pipe the output of lintian into this. sed -ne 's/.* file-without-copyright-information //p' | cut -d/ -f1-2 | sort -u | while read x; do - /usr/share/cargo/scripts/guess-crate-copyright "$x" + debian/scripts/guess-crate-copyright "$x" done diff --git a/debian/missing-sources/prism.js b/debian/missing-sources/prism.js new file mode 100644 index 000000000..b3ff71fcc --- /dev/null +++ b/debian/missing-sources/prism.js @@ -0,0 +1,599 @@ +/* http://prismjs.com/download.html?themes=prism&languages=markup+css+clike+javascript */ +var _self = (typeof window !== 'undefined') + ? window // if in browser + : ( + (typeof WorkerGlobalScope !== 'undefined' && self instanceof WorkerGlobalScope) + ? self // if in worker + : {} // if in node js + ); + +/** + * Prism: Lightweight, robust, elegant syntax highlighting + * MIT license http://www.opensource.org/licenses/mit-license.php/ + * @author Lea Verou http://lea.verou.me + */ + +var Prism = (function(){ + +// Private helper vars +var lang = /\blang(?:uage)?-(?!\*)(\w+)\b/i; + +var _ = _self.Prism = { + util: { + encode: function (tokens) { + if (tokens instanceof Token) { + return new Token(tokens.type, _.util.encode(tokens.content), tokens.alias); + } else if (_.util.type(tokens) === 'Array') { + return tokens.map(_.util.encode); + } else { + return tokens.replace(/&/g, '&').replace(/</g, '<').replace(/\u00a0/g, ' '); + } + }, + + type: function (o) { + return Object.prototype.toString.call(o).match(/\[object (\w+)\]/)[1]; + }, + + // Deep clone a language definition (e.g. to extend it) + clone: function (o) { + var type = _.util.type(o); + + switch (type) { + case 'Object': + var clone = {}; + + for (var key in o) { + if (o.hasOwnProperty(key)) { + clone[key] = _.util.clone(o[key]); + } + } + + return clone; + + case 'Array': + // Check for existence for IE8 + return o.map && o.map(function(v) { return _.util.clone(v); }); + } + + return o; + } + }, + + languages: { + extend: function (id, redef) { + var lang = _.util.clone(_.languages[id]); + + for (var key in redef) { + lang[key] = redef[key]; + } + + return lang; + }, + + /** + * Insert a token before another token in a language literal + * As this needs to recreate the object (we cannot actually insert before keys in object literals), + * we cannot just provide an object, we need anobject and a key. + * @param inside The key (or language id) of the parent + * @param before The key to insert before. If not provided, the function appends instead. + * @param insert Object with the key/value pairs to insert + * @param root The object that contains `inside`. If equal to Prism.languages, it can be omitted. + */ + insertBefore: function (inside, before, insert, root) { + root = root || _.languages; + var grammar = root[inside]; + + if (arguments.length == 2) { + insert = arguments[1]; + + for (var newToken in insert) { + if (insert.hasOwnProperty(newToken)) { + grammar[newToken] = insert[newToken]; + } + } + + return grammar; + } + + var ret = {}; + + for (var token in grammar) { + + if (grammar.hasOwnProperty(token)) { + + if (token == before) { + + for (var newToken in insert) { + + if (insert.hasOwnProperty(newToken)) { + ret[newToken] = insert[newToken]; + } + } + } + + ret[token] = grammar[token]; + } + } + + // Update references in other language definitions + _.languages.DFS(_.languages, function(key, value) { + if (value === root[inside] && key != inside) { + this[key] = ret; + } + }); + + return root[inside] = ret; + }, + + // Traverse a language definition with Depth First Search + DFS: function(o, callback, type) { + for (var i in o) { + if (o.hasOwnProperty(i)) { + callback.call(o, i, o[i], type || i); + + if (_.util.type(o[i]) === 'Object') { + _.languages.DFS(o[i], callback); + } + else if (_.util.type(o[i]) === 'Array') { + _.languages.DFS(o[i], callback, i); + } + } + } + } + }, + + highlightAll: function(async, callback) { + var elements = document.querySelectorAll('code[class*="language-"], [class*="language-"] code, code[class*="lang-"], [class*="lang-"] code'); + + for (var i=0, element; element = elements[i++];) { + _.highlightElement(element, async === true, callback); + } + }, + + highlightElement: function(element, async, callback) { + // Find language + var language, grammar, parent = element; + + while (parent && !lang.test(parent.className)) { + parent = parent.parentNode; + } + + if (parent) { + language = (parent.className.match(lang) || [,''])[1]; + grammar = _.languages[language]; + } + + // Set language on the element, if not present + element.className = element.className.replace(lang, '').replace(/\s+/g, ' ') + ' language-' + language; + + // Set language on the parent, for styling + parent = element.parentNode; + + if (/pre/i.test(parent.nodeName)) { + parent.className = parent.className.replace(lang, '').replace(/\s+/g, ' ') + ' language-' + language; + } + + if (!grammar) { + return; + } + + var code = element.textContent; + + if(!code) { + return; + } + + code = code.replace(/^(?:\r?\n|\r)/,''); + + var env = { + element: element, + language: language, + grammar: grammar, + code: code + }; + + _.hooks.run('before-highlight', env); + + if (async && _self.Worker) { + var worker = new Worker(_.filename); + + worker.onmessage = function(evt) { + env.highlightedCode = Token.stringify(JSON.parse(evt.data), language); + + _.hooks.run('before-insert', env); + + env.element.innerHTML = env.highlightedCode; + + callback && callback.call(env.element); + _.hooks.run('after-highlight', env); + }; + + worker.postMessage(JSON.stringify({ + language: env.language, + code: env.code + })); + } + else { + env.highlightedCode = _.highlight(env.code, env.grammar, env.language); + + _.hooks.run('before-insert', env); + + env.element.innerHTML = env.highlightedCode; + + callback && callback.call(element); + + _.hooks.run('after-highlight', env); + } + }, + + highlight: function (text, grammar, language) { + var tokens = _.tokenize(text, grammar); + return Token.stringify(_.util.encode(tokens), language); + }, + + tokenize: function(text, grammar, language) { + var Token = _.Token; + + var strarr = [text]; + + var rest = grammar.rest; + + if (rest) { + for (var token in rest) { + grammar[token] = rest[token]; + } + + delete grammar.rest; + } + + tokenloop: for (var token in grammar) { + if(!grammar.hasOwnProperty(token) || !grammar[token]) { + continue; + } + + var patterns = grammar[token]; + patterns = (_.util.type(patterns) === "Array") ? patterns : [patterns]; + + for (var j = 0; j < patterns.length; ++j) { + var pattern = patterns[j], + inside = pattern.inside, + lookbehind = !!pattern.lookbehind, + lookbehindLength = 0, + alias = pattern.alias; + + pattern = pattern.pattern || pattern; + + for (var i=0; i<strarr.length; i++) { // Don’t cache length as it changes during the loop + + var str = strarr[i]; + + if (strarr.length > text.length) { + // Something went terribly wrong, ABORT, ABORT! + break tokenloop; + } + + if (str instanceof Token) { + continue; + } + + pattern.lastIndex = 0; + + var match = pattern.exec(str); + + if (match) { + if(lookbehind) { + lookbehindLength = match[1].length; + } + + var from = match.index - 1 + lookbehindLength, + match = match[0].slice(lookbehindLength), + len = match.length, + to = from + len, + before = str.slice(0, from + 1), + after = str.slice(to + 1); + + var args = [i, 1]; + + if (before) { + args.push(before); + } + + var wrapped = new Token(token, inside? _.tokenize(match, inside) : match, alias); + + args.push(wrapped); + + if (after) { + args.push(after); + } + + Array.prototype.splice.apply(strarr, args); + } + } + } + } + + return strarr; + }, + + hooks: { + all: {}, + + add: function (name, callback) { + var hooks = _.hooks.all; + + hooks[name] = hooks[name] || []; + + hooks[name].push(callback); + }, + + run: function (name, env) { + var callbacks = _.hooks.all[name]; + + if (!callbacks || !callbacks.length) { + return; + } + + for (var i=0, callback; callback = callbacks[i++];) { + callback(env); + } + } + } +}; + +var Token = _.Token = function(type, content, alias) { + this.type = type; + this.content = content; + this.alias = alias; +}; + +Token.stringify = function(o, language, parent) { + if (typeof o == 'string') { + return o; + } + + if (_.util.type(o) === 'Array') { + return o.map(function(element) { + return Token.stringify(element, language, o); + }).join(''); + } + + var env = { + type: o.type, + content: Token.stringify(o.content, language, parent), + tag: 'span', + classes: ['token', o.type], + attributes: {}, + language: language, + parent: parent + }; + + if (env.type == 'comment') { + env.attributes['spellcheck'] = 'true'; + } + + if (o.alias) { + var aliases = _.util.type(o.alias) === 'Array' ? o.alias : [o.alias]; + Array.prototype.push.apply(env.classes, aliases); + } + + _.hooks.run('wrap', env); + + var attributes = ''; + + for (var name in env.attributes) { + attributes += name + '="' + (env.attributes[name] || '') + '"'; + } + + return '<' + env.tag + ' class="' + env.classes.join(' ') + '" ' + attributes + '>' + env.content + '</' + env.tag + '>'; + +}; + +if (!_self.document) { + if (!_self.addEventListener) { + // in Node.js + return _self.Prism; + } + // In worker + _self.addEventListener('message', function(evt) { + var message = JSON.parse(evt.data), + lang = message.language, + code = message.code; + + _self.postMessage(JSON.stringify(_.util.encode(_.tokenize(code, _.languages[lang])))); + _self.close(); + }, false); + + return _self.Prism; +} + +// Get current script and highlight +var script = document.getElementsByTagName('script'); + +script = script[script.length - 1]; + +if (script) { + _.filename = script.src; + + if (document.addEventListener && !script.hasAttribute('data-manual')) { + document.addEventListener('DOMContentLoaded', _.highlightAll); + } +} + +return _self.Prism; + +})(); + +if (typeof module !== 'undefined' && module.exports) { + module.exports = Prism; +} +; +Prism.languages.markup = { + 'comment': /<!--[\w\W]*?-->/, + 'prolog': /<\?[\w\W]+?\?>/, + 'doctype': /<!DOCTYPE[\w\W]+?>/, + 'cdata': /<!\[CDATA\[[\w\W]*?]]>/i, + 'tag': { + pattern: /<\/?[^\s>\/]+(?:\s+[^\s>\/=]+(?:=(?:("|')(?:\\\1|\\?(?!\1)[\w\W])*\1|[^\s'">=]+))?)*\s*\/?>/i, + inside: { + 'tag': { + pattern: /^<\/?[^\s>\/]+/i, + inside: { + 'punctuation': /^<\/?/, + 'namespace': /^[^\s>\/:]+:/ + } + }, + 'attr-value': { + pattern: /=(?:('|")[\w\W]*?(\1)|[^\s>]+)/i, + inside: { + 'punctuation': /[=>"']/ + } + }, + 'punctuation': /\/?>/, + 'attr-name': { + pattern: /[^\s>\/]+/, + inside: { + 'namespace': /^[^\s>\/:]+:/ + } + } + + } + }, + 'entity': /&#?[\da-z]{1,8};/i +}; + +// Plugin to make entity title show the real entity, idea by Roman Komarov +Prism.hooks.add('wrap', function(env) { + + if (env.type === 'entity') { + env.attributes['title'] = env.content.replace(/&/, '&'); + } +}); +; +Prism.languages.css = { + 'comment': /\/\*[\w\W]*?\*\//, + 'atrule': { + pattern: /@[\w-]+?.*?(;|(?=\s*\{))/i, + inside: { + 'rule': /@[\w-]+/ + // See rest below + } + }, + 'url': /url\((?:(["'])(\\(?:\r\n|[\w\W])|(?!\1)[^\\\r\n])*\1|.*?)\)/i, + 'selector': /[^\{\}\s][^\{\};]*?(?=\s*\{)/, + 'string': /("|')(\\(?:\r\n|[\w\W])|(?!\1)[^\\\r\n])*\1/, + 'property': /(\b|\B)[\w-]+(?=\s*:)/i, + 'important': /\B!important\b/i, + 'function': /[-a-z0-9]+(?=\()/i, + 'punctuation': /[(){};:]/ +}; + +Prism.languages.css['atrule'].inside.rest = Prism.util.clone(Prism.languages.css); + +if (Prism.languages.markup) { + Prism.languages.insertBefore('markup', 'tag', { + 'style': { + pattern: /<style[\w\W]*?>[\w\W]*?<\/style>/i, + inside: { + 'tag': { + pattern: /<style[\w\W]*?>|<\/style>/i, + inside: Prism.languages.markup.tag.inside + }, + rest: Prism.languages.css + }, + alias: 'language-css' + } + }); + + Prism.languages.insertBefore('inside', 'attr-value', { + 'style-attr': { + pattern: /\s*style=("|').*?\1/i, + inside: { + 'attr-name': { + pattern: /^\s*style/i, + inside: Prism.languages.markup.tag.inside + }, + 'punctuation': /^\s*=\s*['"]|['"]\s*$/, + 'attr-value': { + pattern: /.+/i, + inside: Prism.languages.css + } + }, + alias: 'language-css' + } + }, Prism.languages.markup.tag); +}; +Prism.languages.clike = { + 'comment': [ + { + pattern: /(^|[^\\])\/\*[\w\W]*?\*\//, + lookbehind: true + }, + { + pattern: /(^|[^\\:])\/\/.*/, + lookbehind: true + } + ], + 'string': /("|')(\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/, + 'class-name': { + pattern: /((?:(?:class|interface|extends|implements|trait|instanceof|new)\s+)|(?:catch\s+\())[a-z0-9_\.\\]+/i, + lookbehind: true, + inside: { + punctuation: /(\.|\\)/ + } + }, + 'keyword': /\b(if|else|while|do|for|return|in|instanceof|function|new|try|throw|catch|finally|null|break|continue)\b/, + 'boolean': /\b(true|false)\b/, + 'function': /[a-z0-9_]+(?=\()/i, + 'number': /\b-?(0x[\dA-Fa-f]+|\d*\.?\d+([Ee]-?\d+)?)\b/, + 'operator': /[-+]{1,2}|!|<=?|>=?|={1,3}|&{1,2}|\|?\||\?|\*|\/|~|\^|%/, + 'punctuation': /[{}[\];(),.:]/ +}; +; +Prism.languages.javascript = Prism.languages.extend('clike', { + 'keyword': /\b(as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|false|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|true|try|typeof|var|void|while|with|yield)\b/, + 'number': /\b-?(0x[\dA-Fa-f]+|0b[01]+|0o[0-7]+|\d*\.?\d+([Ee][+-]?\d+)?|NaN|Infinity)\b/, + 'function': /(?!\d)[a-z0-9_$]+(?=\()/i +}); + +Prism.languages.insertBefore('javascript', 'keyword', { + 'regex': { + pattern: /(^|[^/])\/(?!\/)(\[.+?]|\\.|[^/\\\r\n])+\/[gimyu]{0,5}(?=\s*($|[\r\n,.;})]))/, + lookbehind: true + } +}); + +Prism.languages.insertBefore('javascript', 'class-name', { + 'template-string': { + pattern: /`(?:\\`|\\?[^`])*`/, + inside: { + 'interpolation': { + pattern: /\$\{[^}]+\}/, + inside: { + 'interpolation-punctuation': { + pattern: /^\$\{|\}$/, + alias: 'punctuation' + }, + rest: Prism.languages.javascript + } + }, + 'string': /[\s\S]+/ + } + } +}); + +if (Prism.languages.markup) { + Prism.languages.insertBefore('markup', 'tag', { + 'script': { + pattern: /<script[\w\W]*?>[\w\W]*?<\/script>/i, + inside: { + 'tag': { + pattern: /<script[\w\W]*?>|<\/script>/i, + inside: Prism.languages.markup.tag.inside + }, + rest: Prism.languages.javascript + }, + alias: 'language-javascript' + } + }); +} +; diff --git a/debian/not-installed b/debian/not-installed index d36e13ed0..67d85a2dc 100644 --- a/debian/not-installed +++ b/debian/not-installed @@ -10,3 +10,9 @@ usr/lib/rustlib/*/bin/rust-llvm-dwp # docs, we already install into /usr/share/doc/rustc usr/share/doc/rust/* + +# should be claimed by dh_bash-completion +etc/bash_completion.d/cargo + +# backup files from the previous stages +usr/bin/*.old diff --git a/debian/patches/c-0003-tests-add-missing-cross-disabled-checks.patch b/debian/patches/c-0003-tests-add-missing-cross-disabled-checks.patch new file mode 100644 index 000000000..e3a6397d5 --- /dev/null +++ b/debian/patches/c-0003-tests-add-missing-cross-disabled-checks.patch @@ -0,0 +1,46 @@ +From 981279ccd8f7855faaed010bff0891afff588210 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Fabian=20Gr=C3=BCnbichler?= + <debian@fabian.gruenbichler.email> +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 <debian@fabian.gruenbichler.email> +--- + tests/testsuite/build_script.rs | 6 ++++++ + 1 file changed, 6 insertions(+) + +diff --git a/tests/testsuite/build_script.rs b/tests/testsuite/build_script.rs +index 902364dff..e458b3262 100644 +--- a/src/tools/cargo/tests/testsuite/build_script.rs ++++ b/src/tools/cargo/tests/testsuite/build_script.rs +@@ -697,6 +697,9 @@ fn custom_build_linker_bad_host_with_arc + #[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( +@@ -735,6 +738,9 @@ fn custom_build_env_var_rustc_linker_cro + #[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( +-- +2.38.1 + diff --git a/debian/patches/c-2002_disable-net-tests.patch b/debian/patches/c-2002_disable-net-tests.patch new file mode 100644 index 000000000..2e99a9e9a --- /dev/null +++ b/debian/patches/c-2002_disable-net-tests.patch @@ -0,0 +1,615 @@ +Description: Disable network tests +Author: Ximin Luo <infinity0@debian.org> +Forwarded: TODO +--- +This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ +Index: rust/src/tools/cargo/tests/testsuite/git_auth.rs +=================================================================== +--- rust.orig/src/tools/cargo/tests/testsuite/git_auth.rs ++++ rust/src/tools/cargo/tests/testsuite/git_auth.rs +@@ -103,7 +103,7 @@ fn setup_failed_auth_test() -> (SocketAd + } + + // Tests that HTTP auth is offered from `credential.helper`. +-#[cargo_test] ++#[allow(dead_code)] + fn http_auth_offered() { + // TODO(Seb): remove this once possible. + if cargo_uses_gitoxide() { +@@ -172,7 +172,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(); +Index: rust/src/tools/cargo/tests/testsuite/net_config.rs +=================================================================== +--- rust.orig/src/tools/cargo/tests/testsuite/net_config.rs ++++ rust/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( +Index: rust/src/tools/cargo/tests/testsuite/publish.rs +=================================================================== +--- rust.orig/src/tools/cargo/tests/testsuite/publish.rs ++++ rust/src/tools/cargo/tests/testsuite/publish.rs +@@ -85,7 +85,7 @@ fn validate_upload_li() { + ); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn simple() { + let registry = RegistryBuilder::new().http_api().http_index().build(); + +@@ -127,7 +127,7 @@ You may press ctrl-c to skip waiting; th + + // 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() +@@ -167,7 +167,7 @@ You may press ctrl-c to skip waiting; th + .run(); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn simple_publish_with_asymmetric() { + let _reg = registry::RegistryBuilder::new() + .http_api() +@@ -210,7 +210,7 @@ You may press ctrl-c to skip waiting; th + .run(); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn old_token_location() { + // `publish` generally requires a remote registry + let registry = registry::RegistryBuilder::new().http_api().build(); +@@ -267,7 +267,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(); +@@ -312,7 +312,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(); +@@ -350,7 +350,7 @@ the `git` specification will be removed + .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(); +@@ -390,7 +390,7 @@ the `path` specification will be removed + .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(); +@@ -423,7 +423,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(); +@@ -465,7 +465,7 @@ to proceed despite this and include the + .run(); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn publish_clean() { + // `publish` generally requires a remote registry + let registry = registry::RegistryBuilder::new().http_api().build(); +@@ -513,7 +513,7 @@ You may press ctrl-c to skip waiting; th + // 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(); +@@ -562,7 +562,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(); +@@ -611,7 +611,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(); +@@ -659,7 +659,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(); +@@ -692,7 +692,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(); +@@ -735,7 +735,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( +@@ -768,7 +768,7 @@ The registry `alternative` is not listed + .run(); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn publish_empty_list() { + let p = project() + .file( +@@ -797,7 +797,7 @@ fn publish_empty_list() { + .run(); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn publish_allowed_registry() { + let _registry = RegistryBuilder::new() + .http_api() +@@ -857,7 +857,7 @@ You may press ctrl-c [..] + ); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn publish_implicitly_to_only_allowed_registry() { + let _registry = RegistryBuilder::new() + .http_api() +@@ -918,7 +918,7 @@ You may press ctrl-c [..] + ); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn publish_fail_with_no_registry_specified() { + let p = project().build(); + +@@ -952,7 +952,7 @@ The registry `crates-io` is not listed i + .run(); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn block_publish_no_registry() { + let p = project() + .file( +@@ -982,7 +982,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(); +@@ -1035,7 +1035,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(); +@@ -1086,7 +1086,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(); +@@ -1137,7 +1137,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(); +@@ -1173,7 +1173,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(); +@@ -1278,7 +1278,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() +@@ -1327,7 +1327,7 @@ fn publish_checks_for_token_before_verif + .run(); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn publish_with_bad_source() { + let p = project() + .file( +@@ -1376,7 +1376,7 @@ include `--registry crates-io` to use cr + } + + // 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(); + +@@ -1519,7 +1519,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(); + +@@ -1608,7 +1608,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(); +@@ -1664,7 +1664,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(); +@@ -1699,7 +1699,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() +@@ -1728,7 +1728,7 @@ include `--registry dummy-registry` or ` + .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(); +@@ -1773,7 +1773,7 @@ Caused by: + } + + // Registry returns an API error. +-#[cargo_test] ++#[allow(dead_code)] + fn api_error_json() { + let _registry = registry::RegistryBuilder::new() + .alternative() +@@ -1821,7 +1821,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() +@@ -1869,7 +1869,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() +@@ -1923,7 +1923,7 @@ Caused by: + } + + // Registry has a network error. +-#[cargo_test] ++#[allow(dead_code)] + fn api_curl_error() { + let _registry = registry::RegistryBuilder::new() + .alternative() +@@ -1973,7 +1973,7 @@ Caused by: + } + + // Registry returns an invalid response. +-#[cargo_test] ++#[allow(dead_code)] + fn api_other_error() { + let _registry = registry::RegistryBuilder::new() + .alternative() +@@ -2023,7 +2023,7 @@ Caused by: + .run(); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn in_package_workspace() { + let registry = RegistryBuilder::new().http_api().http_index().build(); + +@@ -2074,7 +2074,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(); +@@ -2126,7 +2126,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(); + +@@ -2176,7 +2176,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(); +@@ -2212,7 +2212,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(); +@@ -2269,7 +2269,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(); +@@ -2314,7 +2314,7 @@ error: package ID specification `li` did + .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(); +@@ -2371,7 +2371,7 @@ error: the `-p` argument must be specifi + .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 +@@ -2418,7 +2418,7 @@ error: package ID specification `bar` di + .run(); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn http_api_not_noop() { + let registry = registry::RegistryBuilder::new().http_api().build(); + +@@ -2479,7 +2479,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<Mutex<u32>> = Arc::new(Mutex::new(0)); +@@ -2561,7 +2561,7 @@ You may press ctrl-c to skip waiting; th + /// 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<Mutex<u32>> = Arc::new(Mutex::new(0)); +@@ -2657,7 +2657,7 @@ You may press ctrl-c to skip waiting; th + 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<Mutex<u32>> = Arc::new(Mutex::new(0)); +@@ -2749,7 +2749,7 @@ You may press ctrl-c to skip waiting; th + 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(); +Index: rust/src/tools/cargo/tests/testsuite/credential_process.rs +=================================================================== +--- rust.orig/src/tools/cargo/tests/testsuite/credential_process.rs ++++ rust/src/tools/cargo/tests/testsuite/credential_process.rs +@@ -8,7 +8,7 @@ fn toml_bin(proj: &Project, name: &str) + proj.bin(name).display().to_string().replace('\\', "\\\\") + } + +-#[cargo_test] ++#[allow(dead_code)] + fn gated() { + let _alternative = registry::RegistryBuilder::new() + .alternative() +@@ -65,7 +65,7 @@ or use environment variable CARGO_REGIST + .run(); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn warn_both_token_and_process() { + // Specifying both credential-process and a token in config should issue a warning. + let _server = registry::RegistryBuilder::new() +@@ -212,7 +212,7 @@ fn get_token_test() -> (Project, TestReg + (p, server) + } + +-#[cargo_test] ++#[allow(dead_code)] + fn publish() { + // Checks that credential-process is used for `cargo publish`. + let (p, _t) = get_token_test(); +@@ -237,7 +237,7 @@ You may press ctrl-c [..] + assert_eq!(calls, 1); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn basic_unsupported() { + // Non-action commands don't support login/logout. + let registry = registry::RegistryBuilder::new() +@@ -280,7 +280,7 @@ the credential-process configuration val + .run(); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn login() { + let server = registry::RegistryBuilder::new() + .no_configure_token() +@@ -337,7 +337,7 @@ fn login() { + ); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn logout() { + let server = registry::RegistryBuilder::new() + .no_configure_token() +@@ -395,7 +395,7 @@ token for `crates-io` has been erased! + ); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn yank() { + let (p, _t) = get_token_test(); + +@@ -410,7 +410,7 @@ fn yank() { + .run(); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn owner() { + let (p, _t) = get_token_test(); + +@@ -425,7 +425,7 @@ fn owner() { + .run(); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn libexec_path() { + // cargo: prefixed names use the sysroot + let server = registry::RegistryBuilder::new() +@@ -459,7 +459,7 @@ Caused by: + .run(); + } + +-#[cargo_test] ++#[allow(dead_code)] + fn invalid_token_output() { + // Error when credential process does not output the expected format for a token. + let _server = registry::RegistryBuilder::new() diff --git a/debian/patches/c-2003-workaround-qemu-vfork-command-not-found.patch b/debian/patches/c-2003-workaround-qemu-vfork-command-not-found.patch new file mode 100644 index 000000000..6453c3a30 --- /dev/null +++ b/debian/patches/c-2003-workaround-qemu-vfork-command-not-found.patch @@ -0,0 +1,19 @@ +Index: rust/src/tools/cargo/crates/cargo-test-macro/src/lib.rs +=================================================================== +--- rust.orig/src/tools/cargo/crates/cargo-test-macro/src/lib.rs ++++ rust/src/tools/cargo/crates/cargo-test-macro/src/lib.rs +@@ -223,6 +223,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/c-2200-workaround-x32-test.patch b/debian/patches/c-2200-workaround-x32-test.patch new file mode 100644 index 000000000..9dc42ddbc --- /dev/null +++ b/debian/patches/c-2200-workaround-x32-test.patch @@ -0,0 +1,15 @@ +Bug: https://github.com/rust-lang/cargo/issues/10005 + +Index: rust/src/tools/cargo/tests/testsuite/cfg.rs +=================================================================== +--- rust.orig/src/tools/cargo/tests/testsuite/cfg.rs ++++ rust/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/c-disable-fs-specific-test.patch b/debian/patches/c-disable-fs-specific-test.patch new file mode 100644 index 000000000..eda4f925b --- /dev/null +++ b/debian/patches/c-disable-fs-specific-test.patch @@ -0,0 +1,13 @@ +Index: rust/src/tools/cargo/tests/testsuite/metadata.rs +=================================================================== +--- rust.orig/src/tools/cargo/tests/testsuite/metadata.rs ++++ rust/src/tools/cargo/tests/testsuite/metadata.rs +@@ -3935,7 +3935,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/c-update-libgit2.patch b/debian/patches/c-update-libgit2.patch new file mode 100644 index 000000000..b004ed095 --- /dev/null +++ b/debian/patches/c-update-libgit2.patch @@ -0,0 +1,37 @@ +Index: rust/src/tools/cargo/Cargo.toml +=================================================================== +--- rust.orig/src/tools/cargo/Cargo.toml ++++ rust/src/tools/cargo/Cargo.toml +@@ -28,8 +28,8 @@ curl-sys = "0.4.61" + env_logger = "0.10.0" + filetime = "0.2.9" + flate2 = { version = "1.0.3", default-features = false, features = ["zlib"] } +-git2 = "0.17.0" +-git2-curl = "0.18.0" ++git2 = "0.18.0" ++git2-curl = "0.19.0" + gix = { version = "0.39.0", default-features = false, features = ["blocking-http-transport-curl", "progress-tree"] } + gix-features-for-configuration-only = { version = "0.28.0", package = "gix-features", features = [ "parallel" ] } + glob = "0.3.0" +@@ -47,7 +47,7 @@ jobserver = "0.1.26" + lazy_static = "1.2.0" + lazycell = "1.2.0" + libc = "0.2" +-libgit2-sys = "0.15.0" ++libgit2-sys = "0.16.1" + log = "0.4.6" + memchr = "2.1.3" + opener = "0.5" +Index: rust/src/tools/cargo/crates/cargo-test-support/Cargo.toml +=================================================================== +--- rust.orig/src/tools/cargo/crates/cargo-test-support/Cargo.toml ++++ rust/src/tools/cargo/crates/cargo-test-support/Cargo.toml +@@ -14,7 +14,7 @@ cargo-util = { path = "../cargo-util" } + crates-io = { path = "../crates-io" } + filetime = "0.2" + flate2 = { version = "1.0", default-features = false, features = ["zlib"] } +-git2 = "0.17.0" ++git2 = "0.18.0" + glob = "0.3" + itertools = "0.10.0" + lazy_static = "1.0" diff --git a/debian/patches/d-0000-ignore-removed-submodules.patch b/debian/patches/d-0000-ignore-removed-submodules.patch index 588e53b3b..3b11a1b63 100644 --- a/debian/patches/d-0000-ignore-removed-submodules.patch +++ b/debian/patches/d-0000-ignore-removed-submodules.patch @@ -18,7 +18,7 @@ Index: rust/Cargo.toml =================================================================== --- rust.orig/Cargo.toml +++ rust/Cargo.toml -@@ -18,28 +18,15 @@ members = [ +@@ -18,28 +18,18 @@ members = [ "src/tools/tidy", "src/tools/tier-check", "src/tools/build-manifest", @@ -26,11 +26,11 @@ Index: rust/Cargo.toml - "src/tools/remote-test-server", "src/tools/rust-installer", "src/tools/rust-demangler", -- "src/tools/cargo", -- "src/tools/cargo/crates/credential/cargo-credential-1password", + "src/tools/cargo", + "src/tools/cargo/crates/credential/cargo-credential-1password", - "src/tools/cargo/crates/credential/cargo-credential-macos-keychain", - "src/tools/cargo/crates/credential/cargo-credential-wincred", -- "src/tools/cargo/crates/mdman", + "src/tools/cargo/crates/mdman", - # "src/tools/cargo/crates/resolver-tests", "src/tools/rustdoc", - "src/tools/rls", @@ -47,16 +47,6 @@ Index: rust/Cargo.toml "src/tools/replace-version-placeholder", "src/tools/lld-wrapper", "src/tools/collect-license-metadata", -@@ -106,9 +93,6 @@ miniz_oxide.debug = 0 - object.debug = 0 - - [patch.crates-io] --# See comments in `src/tools/rustc-workspace-hack/README.md` for what's going on --# here --rustc-workspace-hack = { path = 'src/tools/rustc-workspace-hack' } - - # See comments in `library/rustc-std-workspace-core/README.md` for what's going on - # here Index: rust/src/bootstrap/bootstrap.py =================================================================== --- rust.orig/src/bootstrap/bootstrap.py @@ -109,14 +99,14 @@ Index: rust/src/bootstrap/builder.rs submodules_paths }; -@@ -658,24 +658,13 @@ impl<'a> Builder<'a> { +@@ -658,24 +658,14 @@ impl<'a> Builder<'a> { tool::Linkchecker, tool::CargoTest, tool::Compiletest, - tool::RemoteTestServer, - tool::RemoteTestClient, tool::RustInstaller, -- tool::Cargo, + tool::Cargo, - tool::Rls, - tool::RustAnalyzer, tool::RustAnalyzerProcMacroSrv, @@ -134,7 +124,7 @@ Index: rust/src/bootstrap/builder.rs ), Kind::Check | Kind::Clippy | Kind::Fix => describe!( check::Std, -@@ -683,11 +672,6 @@ impl<'a> Builder<'a> { +@@ -683,11 +673,6 @@ impl<'a> Builder<'a> { check::Rustdoc, check::CodegenBackend, check::Clippy, @@ -146,16 +136,15 @@ Index: rust/src/bootstrap/builder.rs check::Rustfmt, check::Bootstrap ), -@@ -717,8 +701,6 @@ impl<'a> Builder<'a> { - test::TierCheck, +@@ -717,7 +702,6 @@ impl<'a> Builder<'a> { test::ReplacePlaceholderTest, test::Cargotest, -- test::Cargo, + test::Cargo, - test::RustAnalyzer, test::ErrorIndex, test::Distcheck, test::RunMakeFullDeps, -@@ -734,7 +716,6 @@ impl<'a> Builder<'a> { +@@ -734,7 +717,6 @@ impl<'a> Builder<'a> { test::EmbeddedBook, test::EditionGuide, test::Rustfmt, @@ -163,23 +152,18 @@ Index: rust/src/bootstrap/builder.rs test::Clippy, test::RustDemangler, test::CompiletestTest, -@@ -767,11 +748,8 @@ impl<'a> Builder<'a> { - doc::RustdocBook, - doc::RustByExample, - doc::RustcBook, -- doc::Cargo, -- doc::CargoBook, +@@ -771,7 +753,6 @@ impl<'a> Builder<'a> { + doc::CargoBook, doc::Clippy, doc::ClippyBook, - doc::Miri, doc::EmbeddedBook, doc::EditionGuide, doc::StyleGuide, -@@ -787,13 +765,9 @@ impl<'a> Builder<'a> { - dist::RustcDev, +@@ -787,12 +768,9 @@ impl<'a> Builder<'a> { dist::Analysis, dist::Src, -- dist::Cargo, + dist::Cargo, - dist::Rls, - dist::RustAnalyzer, dist::Rustfmt, @@ -189,11 +173,10 @@ Index: rust/src/bootstrap/builder.rs dist::LlvmTools, dist::RustDev, dist::Bootstrap, -@@ -809,12 +783,9 @@ impl<'a> Builder<'a> { - Kind::Install => describe!( +@@ -809,11 +786,9 @@ impl<'a> Builder<'a> { install::Docs, install::Std, -- install::Cargo, + install::Cargo, - install::RustAnalyzer, install::Rustfmt, install::RustDemangler, @@ -202,7 +185,7 @@ Index: rust/src/bootstrap/builder.rs install::LlvmTools, install::Src, install::Rustc -@@ -824,7 +795,6 @@ impl<'a> Builder<'a> { +@@ -824,7 +798,6 @@ impl<'a> Builder<'a> { run::BuildManifest, run::BumpStage0, run::ReplaceVersionPlaceholder, @@ -210,7 +193,7 @@ Index: rust/src/bootstrap/builder.rs run::CollectLicenseMetadata, run::GenerateCopyright, ), -@@ -1949,10 +1919,7 @@ impl<'a> Builder<'a> { +@@ -1949,10 +1922,7 @@ impl<'a> Builder<'a> { } } @@ -222,18 +205,6 @@ Index: rust/src/bootstrap/builder.rs cargo.arg("--frozen"); } -Index: rust/src/bootstrap/doc.rs -=================================================================== ---- rust.orig/src/bootstrap/doc.rs -+++ rust/src/bootstrap/doc.rs -@@ -76,7 +76,6 @@ macro_rules! book { - // FIXME: Make checking for a submodule automatic somehow (maybe by having a list of all submodules - // and checking against it?). - book!( -- CargoBook, "src/tools/cargo/src/doc", "cargo", submodule = "src/tools/cargo"; - ClippyBook, "src/tools/clippy/book", "clippy"; - EditionGuide, "src/doc/edition-guide", "edition-guide", submodule; - EmbeddedBook, "src/doc/embedded-book", "embedded-book", submodule; Index: rust/src/bootstrap/test.rs =================================================================== --- rust.orig/src/bootstrap/test.rs @@ -257,22 +228,6 @@ Index: rust/src/bootstrap/test.rs } } -Index: rust/src/tools/clippy/Cargo.toml -=================================================================== ---- rust.orig/src/tools/clippy/Cargo.toml -+++ rust/src/tools/clippy/Cargo.toml -@@ -36,11 +36,6 @@ walkdir = "2.3" - # This is used by the `collect-metadata` alias. - filetime = "0.2" - --# A noop dependency that changes in the Rust repository, it's a bit of a hack. --# See the `src/tools/rustc-workspace-hack/README.md` file in `rust-lang/rust` --# for more information. --rustc-workspace-hack = "1.0" -- - # UI test dependencies - clap = { version = "4.1.4", features = ["derive"] } - clippy_utils = { path = "clippy_utils" } Index: rust/src/tools/rust-analyzer/Cargo.toml =================================================================== --- rust.orig/src/tools/rust-analyzer/Cargo.toml @@ -293,41 +248,16 @@ Index: rust/src/tools/rust-analyzer/Cargo.toml exclude = ["crates/proc-macro-test/imp"] [workspace.package] -Index: rust/src/tools/rustfmt/Cargo.toml -=================================================================== ---- rust.orig/src/tools/rustfmt/Cargo.toml -+++ rust/src/tools/rustfmt/Cargo.toml -@@ -59,11 +59,6 @@ unicode_categories = "0.1" - - rustfmt-config_proc_macro = { version = "0.3", path = "config_proc_macro" } - --# A noop dependency that changes in the Rust repository, it's a bit of a hack. --# See the `src/tools/rustc-workspace-hack/README.md` file in `rust-lang/rust` --# for more information. --rustc-workspace-hack = "1.0.0" -- - # Rustc dependencies are loaded from the sysroot, Cargo doesn't know about them. - - [package.metadata.rust-analyzer] -Index: rust/src/tools/tidy/src/deps.rs +Index: rust/src/tools/rustc-workspace-hack/Cargo.toml =================================================================== ---- rust.orig/src/tools/tidy/src/deps.rs -+++ rust/src/tools/tidy/src/deps.rs -@@ -337,7 +337,7 @@ const FORBIDDEN_TO_HAVE_DUPLICATES: &[&s - // This crate takes quite a long time to build, so don't allow two versions of them - // to accidentally sneak into our dependency graph, in order to ensure we keep our CI times - // under control. -- "cargo", -+ //"cargo", - ]; - - /// Dependency checks. -@@ -613,6 +613,8 @@ fn direct_deps_of<'a>(metadata: &'a Meta - } - - fn check_rustfix(metadata: &Metadata, bad: &mut bool) { -+ // Debian: we don't build cargo here, so this function doens't function. -+ return; - let cargo = pkg_from_name(metadata, "cargo"); - let compiletest = pkg_from_name(metadata, "compiletest"); - let cargo_deps = direct_deps_of(metadata, &cargo.id); +--- rust.orig/src/tools/rustc-workspace-hack/Cargo.toml ++++ rust/src/tools/rustc-workspace-hack/Cargo.toml +@@ -74,7 +74,7 @@ features = [ + [dependencies] + bstr = { version = "0.2.17", features = ["default"] } + clap = { version = "3.1.1", features = ["derive", "clap_derive"]} +-curl-sys = { version = "0.4.13", features = ["http2", "libnghttp2-sys"], optional = true } ++curl-sys = { version = "0.4.13", features = ["http2"], optional = true } + # Ensure `extra_traits` of libc, which is used transitively by Cargo. + libc = { version = "0.2", features = ["extra_traits"] } + # Ensure `js` of getrandom, which is (unfortunately) used transitively by Cargo. diff --git a/debian/patches/d-0001-pkg-config-no-special-snowflake.patch b/debian/patches/d-0001-pkg-config-no-special-snowflake.patch index db66e2c34..20cb4fd73 100644 --- a/debian/patches/d-0001-pkg-config-no-special-snowflake.patch +++ b/debian/patches/d-0001-pkg-config-no-special-snowflake.patch @@ -7,10 +7,10 @@ Subject: d-0001-pkg-config-no-special-snowflake 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 a28304e..11f9460 100644 ---- a/vendor/pkg-config/src/lib.rs -+++ b/vendor/pkg-config/src/lib.rs +Index: rust/vendor/pkg-config/src/lib.rs +=================================================================== +--- rust.orig/vendor/pkg-config/src/lib.rs ++++ rust/vendor/pkg-config/src/lib.rs @@ -111,11 +111,8 @@ pub enum Error { /// Contains the name of the responsible environment variable. EnvNoPkgConfig(String), @@ -71,11 +71,11 @@ index a28304e..11f9460 100644 let mut cmd = Command::new(exe); if self.is_static(name) { cmd.arg("--static"); -diff --git a/vendor/pkg-config/tests/test.rs b/vendor/pkg-config/tests/test.rs -index 4e04ac0..f884e46 100644 ---- a/vendor/pkg-config/tests/test.rs -+++ b/vendor/pkg-config/tests/test.rs -@@ -34,7 +34,6 @@ fn find(name: &str) -> Result<pkg_config::Library, Error> { +Index: rust/vendor/pkg-config/tests/test.rs +=================================================================== +--- rust.orig/vendor/pkg-config/tests/test.rs ++++ rust/vendor/pkg-config/tests/test.rs +@@ -34,7 +34,6 @@ fn find(name: &str) -> Result<pkg_config pkg_config::probe_library(name) } diff --git a/debian/patches/d-0002-mdbook-strip-embedded-libs.patch b/debian/patches/d-0002-mdbook-strip-embedded-libs.patch index 81a0e2792..662b139ae 100644 --- a/debian/patches/d-0002-mdbook-strip-embedded-libs.patch +++ b/debian/patches/d-0002-mdbook-strip-embedded-libs.patch @@ -13,10 +13,10 @@ Comment: Use https://github.com/infinity0/mdBook/tree/debian to help you rebase vendor/mdbook/src/theme/searcher/mod.rs | 2 - 7 files changed, 47 insertions(+), 240 deletions(-) -diff --git a/src/tools/linkchecker/main.rs b/src/tools/linkchecker/main.rs -index 4170c32..d7dcda7 100644 ---- a/src/tools/linkchecker/main.rs -+++ b/src/tools/linkchecker/main.rs +Index: rust/src/tools/linkchecker/main.rs +=================================================================== +--- rust.orig/src/tools/linkchecker/main.rs ++++ rust/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(); @@ -66,10 +66,10 @@ index 4170c32..d7dcda7 100644 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 ebcdd93..41dab42 100644 ---- a/vendor/mdbook/src/book/init.rs -+++ b/vendor/mdbook/src/book/init.rs +Index: rust/vendor/mdbook/src/book/init.rs +=================================================================== +--- rust.orig/vendor/mdbook/src/book/init.rs ++++ rust/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)?; @@ -96,11 +96,11 @@ index ebcdd93..41dab42 100644 Ok(()) } -diff --git a/vendor/mdbook/src/renderer/html_handlebars/hbs_renderer.rs b/vendor/mdbook/src/renderer/html_handlebars/hbs_renderer.rs -index e170e2f..caa2eff 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, Config, HtmlConfig, Playground, RustEdition}; +Index: rust/vendor/mdbook/src/renderer/html_handlebars/hbs_renderer.rs +=================================================================== +--- rust.orig/vendor/mdbook/src/renderer/html_handlebars/hbs_renderer.rs ++++ rust/vendor/mdbook/src/renderer/html_handlebars/hbs_renderer.rs +@@ -3,13 +3,14 @@ use crate::config::{BookConfig, Config, use crate::errors::*; use crate::renderer::html_handlebars::helpers; use crate::renderer::{RenderContext, Renderer}; @@ -129,7 +129,10 @@ index e170e2f..caa2eff 100644 - destination, - "FontAwesome/css/font-awesome.css", - theme::FONT_AWESOME, -- )?; ++ 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.eot", @@ -140,41 +143,38 @@ index e170e2f..caa2eff 100644 - "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"), ++ "/usr/share/fonts-font-awesome/fonts", ++ destination.join("fonts"), )?; - write_file( - destination, - "FontAwesome/fonts/fontawesome-webfont.ttf", - theme::FONT_AWESOME_TTF, + symlink( -+ "/usr/share/fonts-font-awesome/fonts", -+ destination.join("fonts"), ++ "/usr/share/javascript/highlight.js/styles/atelier-dune-light.css", ++ destination.join("highlight.css"), )?; - 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"), ++ "/usr/share/javascript/highlight.js/highlight.js", ++ destination.join("highlight.js"), )?; - write_file( - destination, - "FontAwesome/fonts/fontawesome-webfont.woff2", - theme::FONT_AWESOME_WOFF2, + symlink( -+ "/usr/share/javascript/highlight.js/highlight.js", -+ destination.join("highlight.js"), ++ "/usr/share/javascript/mathjax/MathJax.js", ++ destination.join("MathJax.js"), )?; - write_file( - destination, - "FontAwesome/fonts/FontAwesome.ttf", - theme::FONT_AWESOME_TTF, -+ symlink( -+ "/usr/share/javascript/mathjax/MathJax.js", -+ destination.join("MathJax.js"), - )?; +- )?; - if html_config.copy_fonts { - write_file(destination, "fonts/fonts.css", theme::fonts::CSS)?; - for (file_name, contents) in theme::fonts::LICENSES.iter() { @@ -237,11 +237,11 @@ index e170e2f..caa2eff 100644 Ok(()) } -diff --git a/vendor/mdbook/src/renderer/html_handlebars/search.rs b/vendor/mdbook/src/renderer/html_handlebars/search.rs -index a9e2f5c..3e3f69c 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) -> +Index: rust/vendor/mdbook/src/renderer/html_handlebars/search.rs +=================================================================== +--- rust.orig/vendor/mdbook/src/renderer/html_handlebars/search.rs ++++ rust/vendor/mdbook/src/renderer/html_handlebars/search.rs +@@ -53,8 +53,6 @@ pub fn create_files(search_config: &Sear format!("Object.assign(window.search, {});", index).as_bytes(), )?; utils::fs::write_file(destination, "searcher.js", searcher::JS)?; @@ -250,10 +250,10 @@ index a9e2f5c..3e3f69c 100644 debug!("Copying search files ✓"); } -diff --git a/vendor/mdbook/src/theme/index.hbs b/vendor/mdbook/src/theme/index.hbs -index 6f3948c..7e5c54c 100644 ---- a/vendor/mdbook/src/theme/index.hbs -+++ b/vendor/mdbook/src/theme/index.hbs +Index: rust/vendor/mdbook/src/theme/index.hbs +=================================================================== +--- rust.orig/vendor/mdbook/src/theme/index.hbs ++++ rust/vendor/mdbook/src/theme/index.hbs @@ -33,10 +33,7 @@ {{/if}} @@ -381,10 +381,10 @@ index 6f3948c..7e5c54c 100644 <!-- 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 +Index: rust/vendor/mdbook/src/theme/mod.rs +=================================================================== +--- rust.orig/vendor/mdbook/src/theme/mod.rs ++++ rust/vendor/mdbook/src/theme/mod.rs @@ -1,9 +1,5 @@ #![allow(missing_docs)] @@ -395,7 +395,7 @@ index 6e6b509..ef8886b 100644 #[cfg(feature = "search")] pub mod searcher; -@@ -24,19 +20,8 @@ pub static VARIABLES_CSS: &[u8] = include_bytes!("css/variables.css"); +@@ -24,19 +20,8 @@ pub static VARIABLES_CSS: &[u8] = includ 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"); @@ -461,10 +461,10 @@ index 6e6b509..ef8886b 100644 }; 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 +Index: rust/vendor/mdbook/src/theme/searcher/mod.rs +=================================================================== +--- rust.orig/vendor/mdbook/src/theme/searcher/mod.rs ++++ rust/vendor/mdbook/src/theme/searcher/mod.rs @@ -2,5 +2,3 @@ //! the "search" cargo feature is disabled. diff --git a/debian/patches/d-0003-cc-psm-rebuild-wasm32.patch b/debian/patches/d-0003-cc-psm-rebuild-wasm32.patch index 703df2a78..057b7ee8d 100644 --- a/debian/patches/d-0003-cc-psm-rebuild-wasm32.patch +++ b/debian/patches/d-0003-cc-psm-rebuild-wasm32.patch @@ -7,10 +7,10 @@ Subject: d-0003-cc-psm-rebuild-wasm32 vendor/psm/build.rs | 7 ++----- 2 files changed, 3 insertions(+), 6 deletions(-) -diff --git a/vendor/cc/src/lib.rs b/vendor/cc/src/lib.rs -index 1ebd2cc..0d6ebc8 100644 ---- a/vendor/cc/src/lib.rs -+++ b/vendor/cc/src/lib.rs +Index: rust/vendor/cc/src/lib.rs +=================================================================== +--- rust.orig/vendor/cc/src/lib.rs ++++ rust/vendor/cc/src/lib.rs @@ -2389,7 +2389,7 @@ impl Build { || target == "wasm32-unknown-wasi" || target == "wasm32-unknown-unknown" @@ -20,10 +20,10 @@ index 1ebd2cc..0d6ebc8 100644 } else if target.contains("vxworks") { if self.cpp { "wr-c++".to_string() -diff --git a/vendor/psm/build.rs b/vendor/psm/build.rs -index 9d40212..e39549d 100644 ---- a/vendor/psm/build.rs -+++ b/vendor/psm/build.rs +Index: rust/vendor/psm/build.rs +=================================================================== +--- rust.orig/vendor/psm/build.rs ++++ rust/vendor/psm/build.rs @@ -50,7 +50,7 @@ fn find_assembly( ("sparc", _, _, _) => Some(("src/arch/sparc_sysv.s", true)), ("riscv32", _, _, _) => Some(("src/arch/riscv.s", true)), diff --git a/debian/patches/d-0004-clippy-feature-sync.patch b/debian/patches/d-0004-clippy-feature-sync.patch deleted file mode 100644 index f4a863a8e..000000000 --- a/debian/patches/d-0004-clippy-feature-sync.patch +++ /dev/null @@ -1,42 +0,0 @@ -From: Debian Rust Maintainers <pkg-rust-maintainers@alioth-lists.debian.net> -Date: Sat, 2 Oct 2021 01:08:00 +0100 -Subject: d-0004-clippy-feature-sync - -enable features needed by rustfmt to make build system happy and speedup build. -this is what rustc_workspace_hack does in the upstream build. ---- - src/tools/clippy/Cargo.toml | 2 +- - src/tools/rustfmt/Cargo.toml | 4 +++- - 2 files changed, 4 insertions(+), 2 deletions(-) - -diff --git a/src/tools/clippy/Cargo.toml b/src/tools/clippy/Cargo.toml -index a24d2f4..3681c85 100644 ---- a/src/tools/clippy/Cargo.toml -+++ b/src/tools/clippy/Cargo.toml -@@ -44,7 +44,7 @@ if_chain = "1.0" - itertools = "0.10.1" - quote = "1.0" - serde = { version = "1.0.125", features = ["derive"] } --syn = { version = "1.0", features = ["full"] } -+syn = { version = "1.0", features = ["full", "visit"] } - futures = "0.3" - parking_lot = "0.12" - tokio = { version = "1", features = ["io-util"] } -diff --git a/src/tools/rustfmt/Cargo.toml b/src/tools/rustfmt/Cargo.toml -index 12ed654..f85b738 100644 ---- a/src/tools/rustfmt/Cargo.toml -+++ b/src/tools/rustfmt/Cargo.toml -@@ -46,10 +46,12 @@ getopts = "0.2" - ignore = "0.4" - itertools = "0.10" - lazy_static = "1.4" -+# added for sync with clippy -+libc = { version = "0.2", features = ["extra_traits"] } - log = "0.4" - regex = "1.5" - serde = { version = "1.0", features = ["derive"] } --serde_json = "1.0" -+serde_json = { version = "1.0", features = ["unbounded_depth"] } - term = "0.7" - thiserror = "1.0" - toml = "0.5" diff --git a/debian/patches/d-0005-no-jemalloc.patch b/debian/patches/d-0005-no-jemalloc.patch index 17254fb53..1223fce8b 100644 --- a/debian/patches/d-0005-no-jemalloc.patch +++ b/debian/patches/d-0005-no-jemalloc.patch @@ -7,11 +7,11 @@ Subject: d-0005-no-jemalloc 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 41003ad..0578f7b 100644 ---- a/compiler/rustc/Cargo.toml -+++ b/compiler/rustc/Cargo.toml -@@ -14,13 +14,7 @@ rustc_codegen_ssa = { path = "../rustc_codegen_ssa" } +Index: rust/compiler/rustc/Cargo.toml +=================================================================== +--- rust.orig/compiler/rustc/Cargo.toml ++++ rust/compiler/rustc/Cargo.toml +@@ -14,13 +14,7 @@ rustc_codegen_ssa = { path = "../rustc_c # crate is intended to be used by stable MIR consumers, which are not in-tree rustc_smir = { path = "../rustc_smir" } @@ -25,10 +25,10 @@ index 41003ad..0578f7b 100644 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 6273ea5..642fb05 100644 ---- a/src/tools/rust-analyzer/crates/profile/Cargo.toml -+++ b/src/tools/rust-analyzer/crates/profile/Cargo.toml +Index: rust/src/tools/rust-analyzer/crates/profile/Cargo.toml +=================================================================== +--- rust.orig/src/tools/rust-analyzer/crates/profile/Cargo.toml ++++ rust/src/tools/rust-analyzer/crates/profile/Cargo.toml @@ -17,7 +17,6 @@ cfg-if = "1.0.0" libc = "0.2.135" la-arena = { version = "0.3.0", path = "../../lib/la-arena" } @@ -37,7 +37,7 @@ index 6273ea5..642fb05 100644 [target.'cfg(target_os = "linux")'.dependencies] perf-event = "0.4.7" -@@ -27,7 +26,6 @@ winapi = { version = "0.3.9", features = ["processthreadsapi", "psapi"] } +@@ -27,7 +26,6 @@ winapi = { version = "0.3.9", features = [features] cpu_profiler = [] diff --git a/debian/patches/d-0010-cargo-remove-vendored-c-crates.patch b/debian/patches/d-0010-cargo-remove-vendored-c-crates.patch new file mode 100644 index 000000000..b386a3a5f --- /dev/null +++ b/debian/patches/d-0010-cargo-remove-vendored-c-crates.patch @@ -0,0 +1,18 @@ +Description: Remove embeded C libraries in bundled crates +Author: Zixing Liu <zixing.liu@canonical.com> +Forwarded: not-needed +Last-Update: 2023-05-17 +--- +This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ +Index: rust/src/tools/cargo/Cargo.toml +=================================================================== +--- rust.orig/src/tools/cargo/Cargo.toml ++++ rust/src/tools/cargo/Cargo.toml +@@ -114,6 +114,5 @@ test = false + doc = false + + [features] +-vendored-openssl = ["openssl/vendored"] +-vendored-libgit2 = ["libgit2-sys/vendored"] ++# Debian: removed vendoring flags + pretty-env-logger = ["pretty_env_logger"] diff --git a/debian/patches/d-0011-cargo-remove-nghttp2.patch b/debian/patches/d-0011-cargo-remove-nghttp2.patch new file mode 100644 index 000000000..b7ea72c53 --- /dev/null +++ b/debian/patches/d-0011-cargo-remove-nghttp2.patch @@ -0,0 +1,19 @@ +Description: Remove nghttp2 from curl-sys crate +Author: Zixing Liu <zixing.liu@canonical.com> +Forwarded: not-needed +Last-Update: 2023-05-17 <YYYY-MM-DD, last update of the meta-information, optional> +--- +This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ +Index: rust/vendor/curl-sys/Cargo.toml +=================================================================== +--- rust.orig/vendor/curl-sys/Cargo.toml ++++ rust/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/d-0012-cargo-always-return-dev-channel.patch b/debian/patches/d-0012-cargo-always-return-dev-channel.patch new file mode 100644 index 000000000..73554bb89 --- /dev/null +++ b/debian/patches/d-0012-cargo-always-return-dev-channel.patch @@ -0,0 +1,23 @@ +Description: Enable nightly features for Cargo + Debhelper scripts use some nightly features. +Author: Zixing Liu <zixing.liu@canonical.com> +Forwarded: not-needed +Last-Update: 2023-05-30 +--- +This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ +Index: rust/src/tools/cargo/src/cargo/core/features.rs +=================================================================== +--- rust.orig/src/tools/cargo/src/cargo/core/features.rs ++++ rust/src/tools/cargo/src/cargo/core/features.rs +@@ -1182,9 +1182,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]. diff --git a/debian/patches/d-0020-remove-windows-dependencies.patch b/debian/patches/d-0020-remove-windows-dependencies.patch new file mode 100644 index 000000000..0e5230716 --- /dev/null +++ b/debian/patches/d-0020-remove-windows-dependencies.patch @@ -0,0 +1,213 @@ +Index: rust/compiler/rustc_data_structures/Cargo.toml +=================================================================== +--- rust.orig/compiler/rustc_data_structures/Cargo.toml ++++ rust/compiler/rustc_data_structures/Cargo.toml +@@ -38,16 +38,6 @@ itertools = "0.10.1" + [dependencies.parking_lot] + version = "0.11" + +-[target.'cfg(windows)'.dependencies.windows] +-version = "0.46.0" +-features = [ +- "Win32_Foundation", +- "Win32_Storage_FileSystem", +- "Win32_System_IO", +- "Win32_System_ProcessStatus", +- "Win32_System_Threading", +-] +- + [target.'cfg(not(target_arch = "wasm32"))'.dependencies] + memmap2 = "0.2.1" + +Index: rust/compiler/rustc_driver_impl/Cargo.toml +=================================================================== +--- rust.orig/compiler/rustc_driver_impl/Cargo.toml ++++ rust/compiler/rustc_driver_impl/Cargo.toml +@@ -54,12 +54,6 @@ rustc_hir_analysis = { path = "../rustc_ + [target.'cfg(unix)'.dependencies] + libc = "0.2" + +-[target.'cfg(windows)'.dependencies.windows] +-version = "0.46.0" +-features = [ +- "Win32_System_Diagnostics_Debug", +-] +- + [features] + llvm = ['rustc_interface/llvm'] + max_level_info = ['rustc_log/max_level_info'] +Index: rust/compiler/rustc_errors/Cargo.toml +=================================================================== +--- rust.orig/compiler/rustc_errors/Cargo.toml ++++ rust/compiler/rustc_errors/Cargo.toml +@@ -25,14 +25,5 @@ termize = "0.1.1" + serde = { version = "1.0.125", features = [ "derive" ] } + serde_json = "1.0.59" + +-[target.'cfg(windows)'.dependencies.windows] +-version = "0.46.0" +-features = [ +- "Win32_Foundation", +- "Win32_Security", +- "Win32_System_Threading", +- "Win32_System_WindowsProgramming", +-] +- + [features] + rustc_use_parallel_compiler = ['rustc_error_messages/rustc_use_parallel_compiler'] +Index: rust/compiler/rustc_session/Cargo.toml +=================================================================== +--- rust.orig/compiler/rustc_session/Cargo.toml ++++ rust/compiler/rustc_session/Cargo.toml +@@ -23,10 +23,3 @@ termize = "0.1.1" + + [target.'cfg(unix)'.dependencies] + libc = "0.2" +- +-[target.'cfg(windows)'.dependencies.windows] +-version = "0.46.0" +-features = [ +- "Win32_Foundation", +- "Win32_System_LibraryLoader", +-] +Index: rust/src/bootstrap/Cargo.toml +=================================================================== +--- rust.orig/src/bootstrap/Cargo.toml ++++ rust/src/bootstrap/Cargo.toml +@@ -61,25 +61,6 @@ sysinfo = { version = "0.26.0", optional + [target.'cfg(not(target_os = "solaris"))'.dependencies] + fd-lock = "3.0.8" + +-[target.'cfg(windows)'.dependencies.junction] +-version = "1.0.0" +- +-[target.'cfg(windows)'.dependencies.windows] +-version = "0.46.0" +-features = [ +- "Win32_Foundation", +- "Win32_Security", +- "Win32_Storage_FileSystem", +- "Win32_System_Diagnostics_Debug", +- "Win32_System_IO", +- "Win32_System_Ioctl", +- "Win32_System_JobObjects", +- "Win32_System_ProcessStatus", +- "Win32_System_SystemServices", +- "Win32_System_Threading", +- "Win32_System_Time", +-] +- + [dev-dependencies] + pretty_assertions = "1.2" + +Index: rust/src/tools/compiletest/Cargo.toml +=================================================================== +--- rust.orig/src/tools/compiletest/Cargo.toml ++++ rust/src/tools/compiletest/Cargo.toml +@@ -23,13 +23,3 @@ lazycell = "1.3.0" + + [target.'cfg(unix)'.dependencies] + libc = "0.2" +- +-[target.'cfg(windows)'.dependencies] +-miow = "0.5" +- +-[target.'cfg(windows)'.dependencies.windows] +-version = "0.46.0" +-features = [ +- "Win32_Foundation", +- "Win32_System_Diagnostics_Debug", +-] +Index: rust/src/tools/rust-analyzer/crates/stdx/Cargo.toml +=================================================================== +--- rust.orig/src/tools/rust-analyzer/crates/stdx/Cargo.toml ++++ rust/src/tools/rust-analyzer/crates/stdx/Cargo.toml +@@ -17,10 +17,6 @@ backtrace = { version = "0.3.65", option + always-assert = { version = "0.1.2", features = ["log"] } + # Think twice before adding anything here + +-[target.'cfg(windows)'.dependencies] +-miow = "0.5.0" +-winapi = { version = "0.3.9", features = ["winerror"] } +- + [features] + # Uncomment to enable for the whole crate graph + # default = [ "backtrace" ] +Index: rust/src/tools/rust-analyzer/crates/rust-analyzer/Cargo.toml +=================================================================== +--- rust.orig/src/tools/rust-analyzer/crates/rust-analyzer/Cargo.toml ++++ rust/src/tools/rust-analyzer/crates/rust-analyzer/Cargo.toml +@@ -67,12 +67,6 @@ tt.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" + jod-thread = "0.1.2" +Index: rust/src/tools/cargo/Cargo.toml +=================================================================== +--- rust.orig/src/tools/cargo/Cargo.toml ++++ rust/src/tools/cargo/Cargo.toml +@@ -82,22 +82,6 @@ walkdir = "2.2" + # for more information. + rustc-workspace-hack = "1.0.0" + +-[target.'cfg(windows)'.dependencies] +-fwdansi = "1.1.0" +- +-[target.'cfg(windows)'.dependencies.windows-sys] +-version = "0.45" +-features = [ +- "Win32_Foundation", +- "Win32_Storage_FileSystem", +- "Win32_System_Console", +- "Win32_System_IO", +- "Win32_System_Threading", +- "Win32_System_JobObjects", +- "Win32_Security", +- "Win32_System_SystemServices" +-] +- + [dev-dependencies] + cargo-test-macro = { path = "crates/cargo-test-macro" } + cargo-test-support = { path = "crates/cargo-test-support" } +Index: rust/src/tools/cargo/crates/cargo-util/Cargo.toml +=================================================================== +--- rust.orig/src/tools/cargo/crates/cargo-util/Cargo.toml ++++ rust/src/tools/cargo/crates/cargo-util/Cargo.toml +@@ -22,7 +22,3 @@ walkdir = "2.3.1" + + [target.'cfg(target_os = "macos")'.dependencies] + core-foundation = { version = "0.9.0", features = ["mac_os_10_7_support"] } +- +-[target.'cfg(windows)'.dependencies] +-miow = "0.5.0" +-windows-sys = { version = "0.45.0", features = ["Win32_Storage_FileSystem", "Win32_Foundation", "Win32_System_Console"] } +Index: rust/src/tools/cargo/crates/cargo-test-support/Cargo.toml +=================================================================== +--- rust.orig/src/tools/cargo/crates/cargo-test-support/Cargo.toml ++++ rust/src/tools/cargo/crates/cargo-test-support/Cargo.toml +@@ -27,6 +27,3 @@ termcolor = "1.1.2" + time = { version = "0.3", features = ["parsing", "formatting"]} + toml = "0.7.0" + url = "2.2.2" +- +-[target.'cfg(windows)'.dependencies] +-windows-sys = { version = "0.45.0", features = ["Win32_Storage_FileSystem"] } +Index: rust/src/tools/cargo/crates/home/Cargo.toml +=================================================================== +--- rust.orig/src/tools/cargo/crates/home/Cargo.toml ++++ rust/src/tools/cargo/crates/home/Cargo.toml +@@ -15,6 +15,3 @@ license = "MIT OR Apache-2.0" + readme = "README.md" + repository = "https://github.com/rust-lang/cargo" + description = "Shared definitions of home directories." +- +-[target.'cfg(windows)'.dependencies] +-windows-sys = { version = "0.45.0", features = ["Win32_Foundation", "Win32_UI_Shell"] } diff --git a/debian/patches/d-0021-vendor-remove-windows-dependencies.patch b/debian/patches/d-0021-vendor-remove-windows-dependencies.patch new file mode 100644 index 000000000..9a2994a34 --- /dev/null +++ b/debian/patches/d-0021-vendor-remove-windows-dependencies.patch @@ -0,0 +1,844 @@ +From 1a6f5062adaad5d7f1a4f1cf792f4ee8c3c17e9f Mon Sep 17 00:00:00 2001 +From: liushuyu <zixing.liu@canonical.com> +Date: Wed, 6 Sep 2023 13:23:24 -0600 +Subject: [PATCH] Remove Windows dependencies + +--- + vendor/anstyle-wincon/Cargo.toml | 7 ------- + vendor/compiletest_rs/Cargo.toml | 3 --- + vendor/concolor-query/Cargo.toml | 7 ------- + vendor/errno/Cargo.toml | 7 ------- + vendor/fd-lock/Cargo.toml | 8 -------- + vendor/filetime/Cargo.toml | 7 ------- + vendor/gix-sec/Cargo.toml | 10 ---------- + vendor/home/Cargo.toml | 7 ------- + vendor/io-lifetimes/Cargo.toml | 13 ------------- + vendor/is-terminal/Cargo.toml | 8 -------- + vendor/parking_lot_core/Cargo.toml | 9 --------- + vendor/rustix/Cargo.toml | 9 --------- + vendor/snapbox/Cargo.toml | 6 ------ + vendor/tempfile/Cargo.toml | 7 ------- + vendor/terminal_size/Cargo.toml | 7 ------- + 15 files changed, 115 deletions(-) + +Index: rust/vendor/compiletest_rs/Cargo.toml +=================================================================== +--- rust.orig/vendor/compiletest_rs/Cargo.toml ++++ rust/vendor/compiletest_rs/Cargo.toml +@@ -74,10 +74,3 @@ tmp = ["tempfile"] + + [target."cfg(unix)".dependencies.libc] + version = "0.2" +- +-[target."cfg(windows)".dependencies.miow] +-version = "0.3" +- +-[target."cfg(windows)".dependencies.winapi] +-version = "0.3" +-features = ["winerror"] +Index: rust/vendor/concolor-query/Cargo.toml +=================================================================== +--- rust.orig/vendor/concolor-query/Cargo.toml ++++ rust/vendor/concolor-query/Cargo.toml +@@ -33,10 +33,3 @@ keywords = [ + categories = ["command-line-interface"] + license = "MIT OR Apache-2.0" + repository = "https://github.com/rust-cli/concolor" +- +-[target."cfg(windows)".dependencies.windows-sys] +-version = "0.45.0" +-features = [ +- "Win32_System_Console", +- "Win32_Foundation", +-] +Index: rust/vendor/errno/Cargo.toml +=================================================================== +--- rust.orig/vendor/errno/Cargo.toml ++++ rust/vendor/errno/Cargo.toml +@@ -40,10 +40,3 @@ version = "0.2" + + [target."cfg(unix)".dependencies.libc] + version = "0.2" +- +-[target."cfg(windows)".dependencies.windows-sys] +-version = "0.45" +-features = [ +- "Win32_Foundation", +- "Win32_System_Diagnostics_Debug", +-] +Index: rust/vendor/fd-lock/Cargo.toml +=================================================================== +--- rust.orig/vendor/fd-lock/Cargo.toml ++++ rust/vendor/fd-lock/Cargo.toml +@@ -43,11 +43,3 @@ version = "3.0.8" + [target."cfg(unix)".dependencies.rustix] + version = "0.37.0" + features = ["fs"] +- +-[target."cfg(windows)".dependencies.windows-sys] +-version = "0.45.0" +-features = [ +- "Win32_Foundation", +- "Win32_Storage_FileSystem", +- "Win32_System_IO", +-] +Index: rust/vendor/filetime/Cargo.toml +=================================================================== +--- rust.orig/vendor/filetime/Cargo.toml ++++ rust/vendor/filetime/Cargo.toml +@@ -38,10 +38,3 @@ version = "0.2.9" + + [target."cfg(unix)".dependencies.libc] + version = "0.2.27" +- +-[target."cfg(windows)".dependencies.windows-sys] +-version = "0.45.0" +-features = [ +- "Win32_Foundation", +- "Win32_Storage_FileSystem", +-] +Index: rust/vendor/gix-sec/Cargo.toml +=================================================================== +--- rust.orig/vendor/gix-sec/Cargo.toml ++++ rust/vendor/gix-sec/Cargo.toml +@@ -64,13 +64,3 @@ version = "4" + + [target."cfg(windows)".dependencies.gix-path] + version = "^0.7.1" +- +-[target."cfg(windows)".dependencies.windows] +-version = "0.43.0" +-features = [ +- "Win32_Foundation", +- "Win32_Security_Authorization", +- "Win32_Storage_FileSystem", +- "Win32_System_Memory", +- "Win32_System_Threading", +-] +Index: rust/vendor/home/Cargo.toml +=================================================================== +--- rust.orig/vendor/home/Cargo.toml ++++ rust/vendor/home/Cargo.toml +@@ -27,10 +27,3 @@ readme = "README.md" + license = "MIT OR Apache-2.0" + repository = "https://github.com/brson/home" + +-[target."cfg(windows)".dependencies.winapi] +-version = "0.3" +-features = [ +- "shlobj", +- "std", +- "winerror", +-] +Index: rust/vendor/io-lifetimes/Cargo.toml +=================================================================== +--- rust.orig/vendor/io-lifetimes/Cargo.toml ++++ rust/vendor/io-lifetimes/Cargo.toml +@@ -43,7 +43,6 @@ optional = true + close = [ + "libc", + "hermit-abi", +- "windows-sys", + ] + default = ["close"] + +@@ -85,15 +84,3 @@ optional = true + [target."cfg(target_os = \"hermit\")".dependencies.hermit-abi] + version = "0.3" + optional = true +- +-[target."cfg(windows)".dependencies.windows-sys] +-version = "0.45.0" +-features = [ +- "Win32_Foundation", +- "Win32_Storage_FileSystem", +- "Win32_Networking_WinSock", +- "Win32_Security", +- "Win32_System_IO", +- "Win32_System_Threading", +-] +-optional = true +Index: rust/vendor/is-terminal/Cargo.toml +=================================================================== +--- rust.orig/vendor/is-terminal/Cargo.toml ++++ rust/vendor/is-terminal/Cargo.toml +@@ -53,14 +53,3 @@ features = ["termios"] + + [target."cfg(target_os = \"hermit\")".dependencies.hermit-abi] + version = "0.3.0" +- +-[target."cfg(windows)".dependencies.windows-sys] +-version = "0.45.0" +-features = [ +- "Win32_Foundation", +- "Win32_Storage_FileSystem", +- "Win32_System_Console", +-] +- +-[target."cfg(windows)".dev-dependencies.tempfile] +-version = "3" +Index: rust/vendor/parking_lot_core/Cargo.toml +=================================================================== +--- rust.orig/vendor/parking_lot_core/Cargo.toml ++++ rust/vendor/parking_lot_core/Cargo.toml +@@ -58,11 +58,3 @@ version = "0.2.8" + [target."cfg(unix)".dependencies.libc] + version = "0.2.95" + +-[target."cfg(windows)".dependencies.windows-sys] +-version = "0.42.0" +-features = [ +- "Win32_Foundation", +- "Win32_System_LibraryLoader", +- "Win32_System_SystemServices", +- "Win32_System_WindowsProgramming", +-] +Index: rust/vendor/rustix/Cargo.toml +=================================================================== +--- rust.orig/vendor/rustix/Cargo.toml ++++ rust/vendor/rustix/Cargo.toml +@@ -233,14 +233,3 @@ package = "errno" + version = "1.5.2" + optional = true + +-[target."cfg(windows)".dependencies.windows-sys] +-version = "0.45.0" +-features = [ +- "Win32_Foundation", +- "Win32_Networking_WinSock", +- "Win32_NetworkManagement_IpHelper", +- "Win32_System_Threading", +-] +- +-[target."cfg(windows)".dev-dependencies.ctor] +-version = "0.1.21" +Index: rust/vendor/tempfile/Cargo.toml +=================================================================== +--- rust.orig/vendor/tempfile/Cargo.toml ++++ rust/vendor/tempfile/Cargo.toml +@@ -38,6 +38,3 @@ nightly = [] + version = "0.2.27" + [target."cfg(target_os = \"redox\")".dependencies.redox_syscall] + version = "0.2.9" +-[target."cfg(windows)".dependencies.winapi] +-version = "0.3" +-features = ["fileapi", "handleapi", "winbase"] +Index: rust/vendor/terminal_size/Cargo.toml +=================================================================== +--- rust.orig/vendor/terminal_size/Cargo.toml ++++ rust/vendor/terminal_size/Cargo.toml +@@ -30,10 +30,3 @@ repository = "https://github.com/eminenc + [target."cfg(not(windows))".dependencies.rustix] + version = "0.36.3" + features = ["termios"] +- +-[target."cfg(windows)".dependencies.windows-sys] +-version = "0.42.0" +-features = [ +- "Win32_Foundation", +- "Win32_System_Console", +-] +Index: rust/vendor/curl/Cargo.toml +=================================================================== +--- rust.orig/vendor/curl/Cargo.toml ++++ rust/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" + +Index: rust/vendor/uuid/Cargo.toml +=================================================================== +--- rust.orig/vendor/uuid/Cargo.toml ++++ rust/vendor/uuid/Cargo.toml +@@ -64,7 +64,7 @@ version = "1.0.56" + + [features] + default = ["std"] +-guid = ["winapi"] ++guid = [] + std = [] + stdweb = ["getrandom", "getrandom/js"] + v1 = [] +@@ -72,9 +72,6 @@ v3 = ["md5"] + v4 = ["getrandom"] + v5 = ["sha1"] + wasm-bindgen = ["getrandom", "getrandom/js"] +-[target."cfg(windows)".dependencies.winapi] +-version = "0.3" +-optional = true + [badges.appveyor] + repository = "uuid-rs/uuid" + +Index: rust/vendor/anstream/Cargo.toml +=================================================================== +--- rust.orig/vendor/anstream/Cargo.toml ++++ rust/vendor/anstream/Cargo.toml +@@ -137,8 +137,5 @@ default = [ + "auto", + "wincon", + ] +-wincon = ["dep:anstyle-wincon"] ++wincon = [] + +-[target."cfg(windows)".dependencies.anstyle-wincon] +-version = "0.2.0" +-optional = true +Index: rust/vendor/atty/Cargo.toml +=================================================================== +--- rust.orig/vendor/atty/Cargo.toml ++++ rust/vendor/atty/Cargo.toml +@@ -27,8 +27,5 @@ version = "0.1.6" + [target."cfg(unix)".dependencies.libc] + version = "0.2" + default-features = false +-[target."cfg(windows)".dependencies.winapi] +-version = "0.3" +-features = ["consoleapi", "processenv", "minwinbase", "minwindef", "winbase"] + [badges.travis-ci] + repository = "softprops/atty" +Index: rust/vendor/backtrace/Cargo.toml +=================================================================== +--- rust.orig/vendor/backtrace/Cargo.toml ++++ rust/vendor/backtrace/Cargo.toml +@@ -127,18 +127,4 @@ 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(windows)".dependencies.winapi] +-version = "0.3.9" +-optional = true +Index: rust/vendor/chrono/Cargo.toml +=================================================================== +--- rust.orig/vendor/chrono/Cargo.toml ++++ rust/vendor/chrono/Cargo.toml +@@ -93,7 +93,7 @@ version = "1" + __doctest = [] + __internal_bench = [] + alloc = [] +-clock = ["libc", "std", "winapi"] ++clock = ["libc", "std"] + default = ["clock", "std", "oldtime"] + oldtime = ["time"] + std = [] +@@ -108,10 +108,6 @@ version = "0.2" + optional = true + [target."cfg(all(target_arch = \"wasm32\", not(any(target_os = \"emscripten\", target_os = \"wasi\"))))".dev-dependencies.wasm-bindgen-test] + version = "0.3" +-[target."cfg(windows)".dependencies.winapi] +-version = "0.3.0" +-features = ["std", "minwinbase", "minwindef", "timezoneapi"] +-optional = true + [badges.appveyor] + repository = "chronotope/chrono" + +Index: rust/vendor/colored/Cargo.toml +=================================================================== +--- rust.orig/vendor/colored/Cargo.toml ++++ rust/vendor/colored/Cargo.toml +@@ -33,7 +33,3 @@ version = "=1.0.0-beta.3" + + [features] + no-color = [] +-[target."cfg(windows)".dependencies.winapi] +-version = "0.3" +-features = ["consoleapi", "processenv", "winbase"] +-default-features = false +Index: rust/vendor/concolor/Cargo.toml +=================================================================== +--- rust.orig/vendor/concolor/Cargo.toml ++++ rust/vendor/concolor/Cargo.toml +@@ -59,7 +59,6 @@ auto = [ + "clicolor", + "no_color", + "term", +- "windows", + ] + clicolor = [ + "core", +@@ -82,7 +81,3 @@ term = [ + "core", + "concolor-query", + ] +-windows = [ +- "core", +- "concolor-query/windows", +-] +Index: rust/vendor/curl-sys/Cargo.toml +=================================================================== +--- rust.orig/vendor/curl-sys/Cargo.toml ++++ rust/vendor/curl-sys/Cargo.toml +@@ -63,7 +63,6 @@ ssl = ["openssl-sys"] + static-curl = [] + static-ssl = ["openssl-sys/vendored"] + upkeep_7_62_0 = [] +-windows-static-ssl = [] + zlib-ng-compat = [ + "libz-sys/zlib-ng", + "static-curl", +@@ -73,16 +72,6 @@ zlib-ng-compat = [ + version = "0.9" + optional = true + +-[target."cfg(target_env = \"msvc\")".build-dependencies.vcpkg] +-version = "0.2" +- +-[target."cfg(windows)".dependencies.winapi] +-version = "0.3" +-features = [ +- "winsock2", +- "ws2def", +-] +- + [badges.appveyor] + repository = "alexcrichton/curl-rust" + +Index: rust/vendor/dirs-sys-next/Cargo.toml +=================================================================== +--- rust.orig/vendor/dirs-sys-next/Cargo.toml ++++ rust/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" +Index: rust/vendor/dirs-sys/Cargo.toml +=================================================================== +--- rust.orig/vendor/dirs-sys/Cargo.toml ++++ rust/vendor/dirs-sys/Cargo.toml +@@ -23,6 +23,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"] +Index: rust/vendor/errno-0.2.8/Cargo.toml +=================================================================== +--- rust.orig/vendor/errno-0.2.8/Cargo.toml ++++ rust/vendor/errno-0.2.8/Cargo.toml +@@ -30,6 +30,3 @@ version = "0.2" + version = "0.2" + [target."cfg(unix)".dependencies.libc] + version = "0.2" +-[target."cfg(windows)".dependencies.winapi] +-version = "0.3" +-features = ["errhandlingapi", "minwindef", "ntdef", "winbase"] +Index: rust/vendor/gix-discover/Cargo.toml +=================================================================== +--- rust.orig/vendor/gix-discover/Cargo.toml ++++ rust/vendor/gix-discover/Cargo.toml +@@ -60,6 +60,3 @@ version = "3.2.0" + + [target."cfg(target_os = \"macos\")".dev-dependencies.defer] + version = "0.1.0" +- +-[target."cfg(windows)".dependencies.dunce] +-version = "1.0.3" +Index: rust/vendor/ignore/Cargo.toml +=================================================================== +--- rust.orig/vendor/ignore/Cargo.toml ++++ rust/vendor/ignore/Cargo.toml +@@ -57,5 +57,3 @@ version = "0.5.0" + + [features] + simd-accel = ["globset/simd-accel"] +-[target."cfg(windows)".dependencies.winapi-util] +-version = "0.1.2" +Index: rust/vendor/libloading/Cargo.toml +=================================================================== +--- rust.orig/vendor/libloading/Cargo.toml ++++ rust/vendor/libloading/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", +-] +Index: rust/vendor/libssh2-sys/Cargo.toml +=================================================================== +--- rust.orig/vendor/libssh2-sys/Cargo.toml ++++ rust/vendor/libssh2-sys/Cargo.toml +@@ -47,9 +47,6 @@ 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" + +Index: rust/vendor/nu-ansi-term/Cargo.toml +=================================================================== +--- rust.orig/vendor/nu-ansi-term/Cargo.toml ++++ rust/vendor/nu-ansi-term/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", +-] +Index: rust/vendor/opener/Cargo.toml +=================================================================== +--- rust.orig/vendor/opener/Cargo.toml ++++ rust/vendor/opener/Cargo.toml +@@ -25,9 +25,6 @@ repository = "https://github.com/Seeker1 + version = "0.9" + [target."cfg(target_os = \"linux\")".dependencies.bstr] + version = "0.2" +-[target."cfg(windows)".dependencies.winapi] +-version = "0.3" +-features = ["shellapi"] + [badges.appveyor] + branch = "master" + repository = "Seeker14491/opener" +Index: rust/vendor/os_info/Cargo.toml +=================================================================== +--- rust.orig/vendor/os_info/Cargo.toml ++++ rust/vendor/os_info/Cargo.toml +@@ -48,17 +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", +-] +Index: rust/vendor/parking_lot_core-0.8.6/Cargo.toml +=================================================================== +--- rust.orig/vendor/parking_lot_core-0.8.6/Cargo.toml ++++ rust/vendor/parking_lot_core-0.8.6/Cargo.toml +@@ -60,15 +60,3 @@ version = "0.2.8" + + [target."cfg(unix)".dependencies.libc] + version = "0.2.95" +- +-[target."cfg(windows)".dependencies.winapi] +-version = "0.3.9" +-features = [ +- "winnt", +- "ntstatus", +- "minwindef", +- "winerror", +- "winbase", +- "errhandlingapi", +- "handleapi", +-] +Index: rust/vendor/pretty_assertions/Cargo.toml +=================================================================== +--- rust.orig/vendor/pretty_assertions/Cargo.toml ++++ rust/vendor/pretty_assertions/Cargo.toml +@@ -43,8 +43,3 @@ default = ["std"] + std = [] + unstable = [] + +-[target."cfg(windows)".dependencies.ctor] +-version = "0.1.9" +- +-[target."cfg(windows)".dependencies.output_vt100] +-version = "0.1.2" +Index: rust/vendor/remove_dir_all/Cargo.toml +=================================================================== +--- rust.orig/vendor/remove_dir_all/Cargo.toml ++++ rust/vendor/remove_dir_all/Cargo.toml +@@ -23,6 +23,3 @@ license = "MIT/Apache-2.0" + repository = "https://github.com/XAMPPRocky/remove_dir_all.git" + [dev-dependencies.doc-comment] + version = "0.3" +-[target."cfg(windows)".dependencies.winapi] +-version = "0.3" +-features = ["std", "errhandlingapi", "winerror", "fileapi", "winbase"] +Index: rust/vendor/rustix-0.36.5/Cargo.toml +=================================================================== +--- rust.orig/vendor/rustix-0.36.5/Cargo.toml ++++ rust/vendor/rustix-0.36.5/Cargo.toml +@@ -222,15 +222,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.windows-sys] +-version = "0.42.0" +-features = [ +- "Win32_Foundation", +- "Win32_Networking_WinSock", +- "Win32_NetworkManagement_IpHelper", +- "Win32_System_Threading", +-] +- +-[target."cfg(windows)".dev-dependencies.ctor] +-version = "0.1.21" +Index: rust/vendor/same-file/Cargo.toml +=================================================================== +--- rust.orig/vendor/same-file/Cargo.toml ++++ rust/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" +Index: rust/vendor/socket2/Cargo.toml +=================================================================== +--- rust.orig/vendor/socket2/Cargo.toml ++++ rust/vendor/socket2/Cargo.toml +@@ -34,6 +34,3 @@ features = ["all"] + all = [] + [target."cfg(unix)".dependencies.libc] + version = "0.2.96" +-[target."cfg(windows)".dependencies.winapi] +-version = "0.3.9" +-features = ["handleapi", "ws2ipdef", "ws2tcpip"] +Index: rust/vendor/stacker/Cargo.toml +=================================================================== +--- rust.orig/vendor/stacker/Cargo.toml ++++ rust/vendor/stacker/Cargo.toml +@@ -44,12 +44,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", +-] +Index: rust/vendor/sysinfo/Cargo.toml +=================================================================== +--- rust.orig/vendor/sysinfo/Cargo.toml ++++ rust/vendor/sysinfo/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", +-] +Index: rust/vendor/term/Cargo.toml +=================================================================== +--- rust.orig/vendor/term/Cargo.toml ++++ rust/vendor/term/Cargo.toml +@@ -31,9 +31,6 @@ 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" + +Index: rust/vendor/termcolor/Cargo.toml +=================================================================== +--- rust.orig/vendor/termcolor/Cargo.toml ++++ rust/vendor/termcolor/Cargo.toml +@@ -36,5 +36,3 @@ bench = false + + [dev-dependencies] + +-[target."cfg(windows)".dependencies.winapi-util] +-version = "0.1.3" +Index: rust/vendor/termize/Cargo.toml +=================================================================== +--- rust.orig/vendor/termize/Cargo.toml ++++ rust/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" +Index: rust/vendor/time-0.1.43/Cargo.toml +=================================================================== +--- rust.orig/vendor/time-0.1.43/Cargo.toml ++++ rust/vendor/time-0.1.43/Cargo.toml +@@ -29,10 +29,3 @@ version = "0.3" + optional = true + [dev-dependencies.log] + version = "0.4" +- +-[dev-dependencies.winapi] +-version = "0.3.0" +-features = ["std", "processthreadsapi", "winbase"] +-[target."cfg(windows)".dependencies.winapi] +-version = "0.3.0" +-features = ["std", "minwinbase", "minwindef", "ntdef", "profileapi", "sysinfoapi", "timezoneapi"] +Index: rust/vendor/tokio/Cargo.toml +=================================================================== +--- rust.orig/vendor/tokio/Cargo.toml ++++ rust/vendor/tokio/Cargo.toml +@@ -95,11 +95,11 @@ full = ["fs", "io-util", "io-std", "macr + io-std = [] + io-util = ["memchr", "bytes"] + macros = ["tokio-macros"] +-net = ["libc", "mio/os-poll", "mio/os-util", "mio/tcp", "mio/udp", "mio/uds", "winapi/namedpipeapi"] +-process = ["bytes", "once_cell", "libc", "mio/os-poll", "mio/os-util", "mio/uds", "signal-hook-registry", "winapi/threadpoollegacyapiset"] ++net = ["libc", "mio/os-poll", "mio/os-util", "mio/tcp", "mio/udp", "mio/uds"] ++process = ["bytes", "once_cell", "libc", "mio/os-poll", "mio/os-util", "mio/uds", "signal-hook-registry"] + rt = [] + rt-multi-thread = ["num_cpus", "rt"] +-signal = ["once_cell", "libc", "mio/os-poll", "mio/uds", "mio/os-util", "signal-hook-registry", "winapi/consoleapi"] ++signal = ["once_cell", "libc", "mio/os-poll", "mio/uds", "mio/os-util", "signal-hook-registry"] + sync = [] + test-util = [] + time = [] +@@ -123,9 +123,3 @@ version = "0.2.42" + + [target."cfg(unix)".dev-dependencies.nix] + version = "0.22.0" +-[target."cfg(windows)".dependencies.winapi] +-version = "0.3.8" +-optional = true +-default-features = false +-[target."cfg(windows)".dev-dependencies.ntapi] +-version = "0.3.6" +Index: rust/vendor/walkdir/Cargo.toml +=================================================================== +--- rust.orig/vendor/walkdir/Cargo.toml ++++ rust/vendor/walkdir/Cargo.toml +@@ -28,12 +28,7 @@ repository = "https://github.com/BurntSu + version = "1.0.1" + [dev-dependencies.doc-comment] + version = "0.3" +-[target."cfg(windows)".dependencies.winapi] +-version = "0.3" +-features = ["std", "winnt"] + +-[target."cfg(windows)".dependencies.winapi-util] +-version = "0.1.1" + [badges.appveyor] + repository = "BurntSushi/walkdir" + +Index: rust/vendor/yansi-term/Cargo.toml +=================================================================== +--- rust.orig/vendor/yansi-term/Cargo.toml ++++ rust/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" + +Index: rust/vendor/snapbox/Cargo.toml +=================================================================== +--- rust.orig/vendor/snapbox/Cargo.toml ++++ rust/vendor/snapbox/Cargo.toml +@@ -154,14 +154,6 @@ optional = true + version = "2.3.2" + optional = true + +-[dependencies.winapi] +-version = "0.3.9" +-features = [ +- "consoleapi", +- "minwindef", +-] +-optional = true +- + [dependencies.yansi] + version = "0.5.0" + optional = true +@@ -171,7 +163,6 @@ cmd = [ + "dep:os_pipe", + "dep:wait-timeout", + "dep:libc", +- "dep:winapi", + ] + color = [ + "dep:yansi", diff --git a/debian/patches/d-armel-fix-lldb.patch b/debian/patches/d-armel-fix-lldb.patch index 21072dbb1..4f7ac94b2 100644 --- a/debian/patches/d-armel-fix-lldb.patch +++ b/debian/patches/d-armel-fix-lldb.patch @@ -1,10 +1,10 @@ run panics if lldb is not installed and no output is produced.. -diff --git a/src/bootstrap/test.rs b/src/bootstrap/test.rs -index c0fa8c9acb..2b5559efc7 100644 ---- a/src/bootstrap/test.rs -+++ b/src/bootstrap/test.rs -@@ -1524,7 +1524,11 @@ +Index: rust/src/bootstrap/test.rs +=================================================================== +--- rust.orig/src/bootstrap/test.rs ++++ rust/src/bootstrap/test.rs +@@ -1619,7 +1619,11 @@ note: if you're sure you want to do this .ok(); if let Some(ref vers) = lldb_version { cmd.arg("--lldb-version").arg(vers); diff --git a/debian/patches/d-bootstrap-cargo-check-cfg.patch b/debian/patches/d-bootstrap-cargo-check-cfg.patch index cf633ae2b..65fbd07bc 100644 --- a/debian/patches/d-bootstrap-cargo-check-cfg.patch +++ b/debian/patches/d-bootstrap-cargo-check-cfg.patch @@ -1,11 +1,11 @@ our cargo doesn't know about the 'output' part yet, this patch can be dropped with cargo >= 0.64 -diff --git a/src/bootstrap/builder.rs b/src/bootstrap/builder.rs -index 0ab4824ac0a..76c476f449b 100644 ---- a/src/bootstrap/builder.rs -+++ b/src/bootstrap/builder.rs -@@ -1241,9 +1241,9 @@ +Index: rust/src/bootstrap/builder.rs +=================================================================== +--- rust.orig/src/bootstrap/builder.rs ++++ rust/src/bootstrap/builder.rs +@@ -1350,9 +1350,9 @@ impl<'a> Builder<'a> { // complete list of features, so for that reason we don't enable checking of // features for std crates. cargo.arg(if mode != Mode::Std { diff --git a/debian/patches/d-bootstrap-cargo-doc-paths.patch b/debian/patches/d-bootstrap-cargo-doc-paths.patch index 8b6b5a82a..577bb704e 100644 --- a/debian/patches/d-bootstrap-cargo-doc-paths.patch +++ b/debian/patches/d-bootstrap-cargo-doc-paths.patch @@ -19,11 +19,11 @@ to not fail these links. src/tools/linkchecker/main.rs | 6 ++++++ 12 files changed, 38 insertions(+), 32 deletions(-) -diff --git a/src/doc/edition-guide/src/editions/advanced-migrations.md b/src/doc/edition-guide/src/editions/advanced-migrations.md -index b804ae6..b8136d7 100644 ---- a/src/doc/edition-guide/src/editions/advanced-migrations.md -+++ b/src/doc/edition-guide/src/editions/advanced-migrations.md -@@ -186,18 +186,18 @@ Afterwards, the line with `extern crate rand;` in `src/lib.rs` will be removed. +Index: rust/src/doc/edition-guide/src/editions/advanced-migrations.md +=================================================================== +--- rust.orig/src/doc/edition-guide/src/editions/advanced-migrations.md ++++ rust/src/doc/edition-guide/src/editions/advanced-migrations.md +@@ -186,18 +186,18 @@ Afterwards, the line with `extern crate We're now more idiomatic, and we didn't have to fix our code manually! @@ -49,11 +49,11 @@ index b804ae6..b8136d7 100644 [conditional compilation]: ../../reference/conditional-compilation.html [documentation tests]: ../../rustdoc/documentation-tests.html [JSON messages]: ../../rustc/json.html -diff --git a/src/doc/edition-guide/src/editions/transitioning-an-existing-project-to-a-new-edition.md b/src/doc/edition-guide/src/editions/transitioning-an-existing-project-to-a-new-edition.md -index 4343529..7f7f0b6 100644 ---- a/src/doc/edition-guide/src/editions/transitioning-an-existing-project-to-a-new-edition.md -+++ b/src/doc/edition-guide/src/editions/transitioning-an-existing-project-to-a-new-edition.md -@@ -83,7 +83,7 @@ If new warnings are issued, you may want to consider running `cargo fix` again ( +Index: rust/src/doc/edition-guide/src/editions/transitioning-an-existing-project-to-a-new-edition.md +=================================================================== +--- rust.orig/src/doc/edition-guide/src/editions/transitioning-an-existing-project-to-a-new-edition.md ++++ rust/src/doc/edition-guide/src/editions/transitioning-an-existing-project-to-a-new-edition.md +@@ -83,7 +83,7 @@ If new warnings are issued, you may want Congrats! Your code is now valid in both Rust 2015 and Rust 2018! @@ -63,11 +63,11 @@ index 4343529..7f7f0b6 100644 +[`cargo test`]: ../../../cargo-doc/doc/commands/cargo-test.html [Advanced migration strategies]: advanced-migrations.md [nightly channel]: ../../book/appendix-07-nightly-rust.html -diff --git a/src/doc/edition-guide/src/rust-2021/default-cargo-resolver.md b/src/doc/edition-guide/src/rust-2021/default-cargo-resolver.md -index 9abc5a6..dff04a4 100644 ---- a/src/doc/edition-guide/src/rust-2021/default-cargo-resolver.md -+++ b/src/doc/edition-guide/src/rust-2021/default-cargo-resolver.md -@@ -21,11 +21,11 @@ The new feature resolver no longer merges all requested features for +Index: rust/src/doc/edition-guide/src/rust-2021/default-cargo-resolver.md +=================================================================== +--- rust.orig/src/doc/edition-guide/src/rust-2021/default-cargo-resolver.md ++++ rust/src/doc/edition-guide/src/rust-2021/default-cargo-resolver.md +@@ -21,11 +21,11 @@ The new feature resolver no longer merge crates that are depended on in multiple ways. See [the announcement of Rust 1.51][5] for details. @@ -83,17 +83,17 @@ index 9abc5a6..dff04a4 100644 ## Migration -@@ -176,4 +176,4 @@ This snippet of output shows that the project `foo` depends on `bar` with the "d +@@ -176,4 +176,4 @@ This snippet of output shows that the pr Then, `bar` depends on `bstr` as a build-dependency with the "default" feature. We can further see that `bstr`'s "default" feature enables "unicode" (among other features). -[`cargo tree`]: ../../cargo/commands/cargo-tree.html +[`cargo tree`]: ../../../cargo-doc/doc/commands/cargo-tree.html -diff --git a/src/doc/index.md b/src/doc/index.md -index 2c92d5e..9be58d5 100644 ---- a/src/doc/index.md -+++ b/src/doc/index.md -@@ -130,7 +130,7 @@ +Index: rust/src/doc/index.md +=================================================================== +--- rust.orig/src/doc/index.md ++++ rust/src/doc/index.md +@@ -130,7 +130,7 @@ their differences. ### The Cargo Book @@ -102,11 +102,11 @@ index 2c92d5e..9be58d5 100644 dependency manager. ### The Rustdoc Book -diff --git a/src/doc/reference/src/conditional-compilation.md b/src/doc/reference/src/conditional-compilation.md -index 6966cec..0ca3589 100644 ---- a/src/doc/reference/src/conditional-compilation.md -+++ b/src/doc/reference/src/conditional-compilation.md -@@ -370,6 +370,6 @@ +Index: rust/src/doc/reference/src/conditional-compilation.md +=================================================================== +--- rust.orig/src/doc/reference/src/conditional-compilation.md ++++ rust/src/doc/reference/src/conditional-compilation.md +@@ -370,6 +370,6 @@ println!("I'm running on a {} machine!", [`target_feature` attribute]: attributes/codegen.md#the-target_feature-attribute [attribute]: attributes.md [attributes]: attributes.md @@ -114,11 +114,11 @@ index 6966cec..0ca3589 100644 +[cargo-feature]: ../../cargo-doc/doc/reference/features.html [crate type]: linkage.md [static C runtime]: linkage.md#static-and-dynamic-c-runtimes -diff --git a/src/doc/reference/src/introduction.md b/src/doc/reference/src/introduction.md -index 9038efd..dbfbd39 100644 ---- a/src/doc/reference/src/introduction.md -+++ b/src/doc/reference/src/introduction.md -@@ -135,8 +135,8 @@ We also want the reference to be as normative as possible, so if you see anythin +Index: rust/src/doc/reference/src/introduction.md +=================================================================== +--- rust.orig/src/doc/reference/src/introduction.md ++++ rust/src/doc/reference/src/introduction.md +@@ -135,8 +135,8 @@ We also want the reference to be as norm [the Rust Reference repository]: https://github.com/rust-lang/reference/ [Unstable Book]: https://doc.rust-lang.org/nightly/unstable-book/ [_Expression_]: expressions.md @@ -129,10 +129,10 @@ index 9038efd..dbfbd39 100644 [expressions chapter]: expressions.html [file an issue]: https://github.com/rust-lang/reference/issues [lifetime of temporaries]: expressions.html#temporaries -diff --git a/src/doc/reference/src/linkage.md b/src/doc/reference/src/linkage.md -index b152005..14277bf 100644 ---- a/src/doc/reference/src/linkage.md -+++ b/src/doc/reference/src/linkage.md +Index: rust/src/doc/reference/src/linkage.md +=================================================================== +--- rust.orig/src/doc/reference/src/linkage.md ++++ rust/src/doc/reference/src/linkage.md @@ -201,7 +201,7 @@ fn main() { } ``` @@ -142,10 +142,10 @@ index b152005..14277bf 100644 To use this feature locally, you typically will use the `RUSTFLAGS` environment variable to specify flags to the compiler through Cargo. For example to compile -diff --git a/src/doc/reference/src/procedural-macros.md b/src/doc/reference/src/procedural-macros.md -index d983394..6f363f6 100644 ---- a/src/doc/reference/src/procedural-macros.md -+++ b/src/doc/reference/src/procedural-macros.md +Index: rust/src/doc/reference/src/procedural-macros.md +=================================================================== +--- rust.orig/src/doc/reference/src/procedural-macros.md ++++ rust/src/doc/reference/src/procedural-macros.md @@ -331,7 +331,7 @@ Note that neither declarative nor proced their equivalent `#[doc = r"str"]` attributes when passed to macros. @@ -155,11 +155,11 @@ index d983394..6f363f6 100644 [Derive macros]: #derive-macros [Function-like macros]: #function-like-procedural-macros [`Delimiter::None`]: ../proc_macro/enum.Delimiter.html#variant.None -diff --git a/src/doc/rustc/src/tests/index.md b/src/doc/rustc/src/tests/index.md -index 32baed9..53c97f8 100644 ---- a/src/doc/rustc/src/tests/index.md -+++ b/src/doc/rustc/src/tests/index.md -@@ -301,7 +301,7 @@ Experimental support for using custom test harnesses is available on the +Index: rust/src/doc/rustc/src/tests/index.md +=================================================================== +--- rust.orig/src/doc/rustc/src/tests/index.md ++++ rust/src/doc/rustc/src/tests/index.md +@@ -301,7 +301,7 @@ Experimental support for using custom te [`--test` option]: ../command-line-arguments.md#option-test [`-Z panic-abort-tests`]: https://github.com/rust-lang/rust/issues/67650 [`available_parallelism`]: ../../std/thread/fn.available_parallelism.html @@ -168,7 +168,7 @@ index 32baed9..53c97f8 100644 [`libtest`]: ../../test/index.html [`main` function]: ../../reference/crates-and-source-files.html#main-functions [`Result`]: ../../std/result/index.html -@@ -311,7 +311,7 @@ Experimental support for using custom test harnesses is available on the +@@ -311,7 +311,7 @@ Experimental support for using custom te [attribute-should_panic]: ../../reference/attributes/testing.html#the-should_panic-attribute [attribute-test]: ../../reference/attributes/testing.html#the-test-attribute [bench-docs]: ../../unstable-book/library-features/test.html @@ -177,11 +177,11 @@ index 32baed9..53c97f8 100644 [crate type]: ../../reference/linkage.html [custom_test_frameworks documentation]: ../../unstable-book/language-features/custom-test-frameworks.html [nightly channel]: ../../book/appendix-07-nightly-rust.html -diff --git a/src/doc/rustc/src/what-is-rustc.md b/src/doc/rustc/src/what-is-rustc.md -index 39a05cf..d106986 100644 ---- a/src/doc/rustc/src/what-is-rustc.md -+++ b/src/doc/rustc/src/what-is-rustc.md -@@ -5,7 +5,7 @@ language, provided by the project itself. Compilers take your source code and +Index: rust/src/doc/rustc/src/what-is-rustc.md +=================================================================== +--- rust.orig/src/doc/rustc/src/what-is-rustc.md ++++ rust/src/doc/rustc/src/what-is-rustc.md +@@ -5,7 +5,7 @@ language, provided by the project itself produce binary code, either as a library or executable. Most Rust programmers don't invoke `rustc` directly, but instead do it through @@ -190,11 +190,11 @@ index 39a05cf..d106986 100644 want to see how Cargo calls `rustc`, you can ```bash -diff --git a/src/doc/edition-guide/book.toml b/src/doc/edition-guide/book.toml -index 8d8b263..8d31dfe 100644 ---- a/src/doc/edition-guide/book.toml -+++ b/src/doc/edition-guide/book.toml -@@ -53,15 +53,15 @@ git-repository-url = "https://github.com/rust-lang/edition-guide" +Index: rust/src/doc/edition-guide/book.toml +=================================================================== +--- rust.orig/src/doc/edition-guide/book.toml ++++ rust/src/doc/edition-guide/book.toml +@@ -53,15 +53,15 @@ git-repository-url = "https://github.com "/rust-2018/the-compiler/incremental-compilation-for-faster-compiles.html" = "https://blog.rust-lang.org/2018/02/15/Rust-1.24.html#incremental-compilation" "/rust-2018/the-compiler/an-attribute-for-deprecation.html" = "../../../reference/attributes/diagnostics.html#the-deprecated-attribute" "/rust-2018/rustup-for-managing-rust-versions.html" = "https://rust-lang.github.io/rustup/" @@ -218,17 +218,17 @@ index 8d8b263..8d31dfe 100644 "/rust-2018/cargo-and-crates-io/crates-io-disallows-wildcard-dependencies.html" = "https://blog.rust-lang.org/2016/01/21/Rust-1.6.html#cratesio-disallows-wildcards" "/rust-2018/documentation/index.html" = "../../../index.html" "/rust-2018/documentation/new-editions-of-the-book.html" = "../../../book/index.html" -@@ -93,4 +93,4 @@ git-repository-url = "https://github.com/rust-lang/edition-guide" +@@ -93,4 +93,4 @@ git-repository-url = "https://github.com "/rust-next/future.html" = "../../std/future/trait.Future.html" "/rust-next/alloc.html" = "https://blog.rust-lang.org/2019/07/04/Rust-1.36.0.html#the-alloc-crate-is-stable" "/rust-next/maybe-uninit.html" = "https://blog.rust-lang.org/2019/07/04/Rust-1.36.0.html#maybeuninitt-instead-of-memuninitialized" -"/rust-next/cargo-vendor.html" = "../../cargo/commands/cargo-vendor.html" +"/rust-next/cargo-vendor.html" = "../../../cargo-doc/doc/commands/cargo-vendor.html" -diff --git a/src/tools/linkchecker/main.rs b/src/tools/linkchecker/main.rs -index a22dc5f..c8d521a 100644 ---- a/src/tools/linkchecker/main.rs -+++ b/src/tools/linkchecker/main.rs -@@ -262,6 +262,12 @@ +Index: rust/src/tools/linkchecker/main.rs +=================================================================== +--- rust.orig/src/tools/linkchecker/main.rs ++++ rust/src/tools/linkchecker/main.rs +@@ -262,6 +262,12 @@ impl Checker { return; } } @@ -304,7 +304,7 @@ Index: rust/src/doc/unstable-book/src/compiler-flags/sanitizer.md =================================================================== --- rust.orig/src/doc/unstable-book/src/compiler-flags/sanitizer.md +++ rust/src/doc/unstable-book/src/compiler-flags/sanitizer.md -@@ -691,7 +691,7 @@ It is strongly recommended to combine sa +@@ -709,7 +709,7 @@ It is strongly recommended to combine sa instrumented standard library, for example using [cargo `-Zbuild-std` functionality][build-std]. @@ -353,9 +353,9 @@ Index: rust/src/doc/rustc/src/linker-plugin-lto.md environment variables: Index: rust/src/doc/rustc/src/platform-support/fuchsia.md =================================================================== ---- a/src/doc/rustc/src/platform-support/fuchsia.md -+++ b/src/doc/rustc/src/platform-support/fuchsia.md -@@ -932,7 +932,7 @@ +--- rust.orig/src/doc/rustc/src/platform-support/fuchsia.md ++++ rust/src/doc/rustc/src/platform-support/fuchsia.md +@@ -932,7 +932,7 @@ attach and load any relevant debug symbo [Fuchsia]: https://fuchsia.dev/ [source tree]: https://fuchsia.dev/fuchsia-src/get-started/learn/build [rustup]: https://rustup.rs/ diff --git a/debian/patches/d-bootstrap-custom-debuginfo-path.patch b/debian/patches/d-bootstrap-custom-debuginfo-path.patch index 21aaf1f6b..156ac4e13 100644 --- a/debian/patches/d-bootstrap-custom-debuginfo-path.patch +++ b/debian/patches/d-bootstrap-custom-debuginfo-path.patch @@ -8,9 +8,11 @@ Subject: d-bootstrap-custom-debuginfo-path src/test/codegen/remap_path_prefix/issue-73167-remap-std.rs | 2 +- 2 files changed, 3 insertions(+), 4 deletions(-) ---- a/src/bootstrap/lib.rs -+++ b/src/bootstrap/lib.rs -@@ -1053,10 +1053,9 @@ +Index: rust/src/bootstrap/lib.rs +=================================================================== +--- rust.orig/src/bootstrap/lib.rs ++++ rust/src/bootstrap/lib.rs +@@ -1011,10 +1011,9 @@ impl Build { match which { GitRepo::Rustc => { @@ -23,10 +25,10 @@ Subject: d-bootstrap-custom-debuginfo-path } } -diff --git a/tests/codegen/remap_path_prefix/issue-73167-remap-std.rs b/tests/codegen/remap_path_prefix/issue-73167-remap-std.rs -index b66abc6..f6efe1e 100644 ---- a/tests/codegen/remap_path_prefix/issue-73167-remap-std.rs -+++ b/tests/codegen/remap_path_prefix/issue-73167-remap-std.rs +Index: rust/tests/codegen/remap_path_prefix/issue-73167-remap-std.rs +=================================================================== +--- rust.orig/tests/codegen/remap_path_prefix/issue-73167-remap-std.rs ++++ rust/tests/codegen/remap_path_prefix/issue-73167-remap-std.rs @@ -7,7 +7,7 @@ // true automatically. If paths to std library hasn't been remapped, we use the // above simulate-remapped-rust-src-base option to do it temporarily diff --git a/debian/patches/d-bootstrap-disable-git.patch b/debian/patches/d-bootstrap-disable-git.patch index 6f7f3f2e4..d7618adfe 100644 --- a/debian/patches/d-bootstrap-disable-git.patch +++ b/debian/patches/d-bootstrap-disable-git.patch @@ -10,9 +10,11 @@ Forwarded: not-needed src/bootstrap/dist.rs | 5 ++++- 2 files changed, 9 insertions(+), 2 deletions(-) ---- a/src/bootstrap/channel.rs -+++ b/src/bootstrap/channel.rs -@@ -36,6 +36,12 @@ +Index: rust/src/bootstrap/channel.rs +=================================================================== +--- rust.orig/src/bootstrap/channel.rs ++++ rust/src/bootstrap/channel.rs +@@ -36,6 +36,12 @@ pub struct Info { impl GitInfo { pub fn new(omit_git_hash: bool, dir: &Path) -> GitInfo { @@ -25,9 +27,11 @@ Forwarded: not-needed // See if this even begins to look like a git dir if !dir.join(".git").exists() { match read_commit_info_file(dir) { ---- a/src/bootstrap/dist.rs -+++ b/src/bootstrap/dist.rs -@@ -995,7 +995,10 @@ +Index: rust/src/bootstrap/dist.rs +=================================================================== +--- rust.orig/src/bootstrap/dist.rs ++++ rust/src/bootstrap/dist.rs +@@ -995,7 +995,10 @@ impl Step for PlainSourceTarball { } // If we're building from git sources, we need to vendor a complete distribution. diff --git a/debian/patches/d-bootstrap-install-symlinks.patch b/debian/patches/d-bootstrap-install-symlinks.patch index dbd902d9e..00f84e0c7 100644 --- a/debian/patches/d-bootstrap-install-symlinks.patch +++ b/debian/patches/d-bootstrap-install-symlinks.patch @@ -9,11 +9,11 @@ doesn't affect anything else that's already generated. src/tools/rust-installer/install-template.sh | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) -diff --git a/src/tools/rust-installer/install-template.sh b/src/tools/rust-installer/install-template.sh -index e68be89..a19997b 100644 ---- a/src/tools/rust-installer/install-template.sh -+++ b/src/tools/rust-installer/install-template.sh -@@ -625,7 +625,10 @@ install_components() { +Index: rust/src/tools/rust-installer/install-template.sh +=================================================================== +--- rust.orig/src/tools/rust-installer/install-template.sh ++++ rust/src/tools/rust-installer/install-template.sh +@@ -616,7 +616,10 @@ install_components() { maybe_backup_path "$_file_install_path" @@ -25,7 +25,7 @@ index e68be89..a19997b 100644 then run cp "$_src_dir/$_component/$_file" "$_file_install_path" run chmod 755 "$_file_install_path" -@@ -647,7 +650,7 @@ install_components() { +@@ -638,7 +641,7 @@ install_components() { maybe_backup_path "$_file_install_path" diff --git a/debian/patches/d-bootstrap-no-assume-tools.patch b/debian/patches/d-bootstrap-no-assume-tools.patch index c72ec4d7f..9747f9ede 100644 --- a/debian/patches/d-bootstrap-no-assume-tools.patch +++ b/debian/patches/d-bootstrap-no-assume-tools.patch @@ -7,10 +7,10 @@ Subject: d-bootstrap-no-assume-tools src/bootstrap/builder/tests.rs | 4 ++++ 1 file changed, 4 insertions(+) -diff --git a/src/bootstrap/builder/tests.rs b/src/bootstrap/builder/tests.rs -index 4ab502e..5ce7fc8 100644 ---- a/src/bootstrap/builder/tests.rs -+++ b/src/bootstrap/builder/tests.rs +Index: rust/src/bootstrap/builder/tests.rs +=================================================================== +--- rust.orig/src/bootstrap/builder/tests.rs ++++ rust/src/bootstrap/builder/tests.rs @@ -364,9 +364,13 @@ mod dist { #[test] fn dist_only_cross_host() { diff --git a/debian/patches/d-bootstrap-old-cargo-compat.patch b/debian/patches/d-bootstrap-old-cargo-compat.patch index a077e0c8f..0dacb4521 100644 --- a/debian/patches/d-bootstrap-old-cargo-compat.patch +++ b/debian/patches/d-bootstrap-old-cargo-compat.patch @@ -15,9 +15,11 @@ Subject: Backwards-compat for cargo 0.47 src/bootstrap/doc.rs | 3 --- 1 file changed, 3 deletions(-) ---- a/src/bootstrap/doc.rs -+++ b/src/bootstrap/doc.rs -@@ -612,7 +612,6 @@ +Index: rust/src/bootstrap/doc.rs +=================================================================== +--- rust.orig/src/bootstrap/doc.rs ++++ rust/src/bootstrap/doc.rs +@@ -613,7 +613,6 @@ fn doc_std( .arg(&*target_dir.to_string_lossy()) .arg("-p") .arg(package) @@ -25,7 +27,7 @@ Subject: Backwards-compat for cargo 0.47 .arg("--") .arg("-Z") .arg("unstable-options") -@@ -712,7 +711,6 @@ +@@ -713,7 +712,6 @@ impl Step for Rustc { cargo.rustdocflag("--generate-link-to-definition"); compile::rustc_cargo(builder, &mut cargo, target, compiler.stage); cargo.arg("-Zunstable-options"); @@ -33,7 +35,7 @@ Subject: Backwards-compat for cargo 0.47 // Only include compiler crates, no dependencies of those, such as `libc`. // Do link to dependencies on `docs.rs` however using `rustdoc-map`. -@@ -845,7 +843,6 @@ +@@ -846,7 +844,6 @@ macro_rules! tool_doc { &[], ); diff --git a/debian/patches/d-bootstrap-permit-symlink-in-docs.patch b/debian/patches/d-bootstrap-permit-symlink-in-docs.patch index 4ccec3cd8..9f088a228 100644 --- a/debian/patches/d-bootstrap-permit-symlink-in-docs.patch +++ b/debian/patches/d-bootstrap-permit-symlink-in-docs.patch @@ -1,8 +1,10 @@ partial revert of b9eedea4b0368fd1f00f204db75109ff444fab5b upstream ---- a/src/bootstrap/dist.rs -+++ b/src/bootstrap/dist.rs -@@ -77,6 +77,7 @@ +Index: rust/src/bootstrap/dist.rs +=================================================================== +--- rust.orig/src/bootstrap/dist.rs ++++ rust/src/bootstrap/dist.rs +@@ -81,6 +81,7 @@ impl Step for Docs { tarball.set_product_name("Rust Documentation"); tarball.add_bulk_dir(&builder.doc_out(host), dest); tarball.add_file(&builder.src.join("src/doc/robots.txt"), dest, 0o644); diff --git a/debian/patches/d-bootstrap-read-beta-version-from-file.patch b/debian/patches/d-bootstrap-read-beta-version-from-file.patch index 15ebb93c8..871110cca 100644 --- a/debian/patches/d-bootstrap-read-beta-version-from-file.patch +++ b/debian/patches/d-bootstrap-read-beta-version-from-file.patch @@ -7,9 +7,11 @@ Subject: d-bootstrap-read-beta-version-from-file src/bootstrap/lib.rs | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) ---- a/src/bootstrap/lib.rs -+++ b/src/bootstrap/lib.rs -@@ -1296,14 +1296,15 @@ +Index: rust/src/bootstrap/lib.rs +=================================================================== +--- rust.orig/src/bootstrap/lib.rs ++++ rust/src/bootstrap/lib.rs +@@ -1264,14 +1264,15 @@ impl Build { return s; } diff --git a/debian/patches/d-bootstrap-rustflags.patch b/debian/patches/d-bootstrap-rustflags.patch index f73c6ba2b..017325e06 100644 --- a/debian/patches/d-bootstrap-rustflags.patch +++ b/debian/patches/d-bootstrap-rustflags.patch @@ -7,9 +7,11 @@ Subject: d-bootstrap-rustflags src/bootstrap/builder.rs | 12 ++++++++++++ 1 file changed, 12 insertions(+) ---- a/src/bootstrap/builder.rs -+++ b/src/bootstrap/builder.rs -@@ -1268,6 +1268,18 @@ +Index: rust/src/bootstrap/builder.rs +=================================================================== +--- rust.orig/src/bootstrap/builder.rs ++++ rust/src/bootstrap/builder.rs +@@ -1377,6 +1377,18 @@ impl<'a> Builder<'a> { } } diff --git a/debian/patches/d-bootstrap-use-local-css.patch b/debian/patches/d-bootstrap-use-local-css.patch index 72595d9d3..1ea9ac86a 100644 --- a/debian/patches/d-bootstrap-use-local-css.patch +++ b/debian/patches/d-bootstrap-use-local-css.patch @@ -7,9 +7,11 @@ Subject: d-bootstrap-use-local-css src/bootstrap/doc.rs | 15 ++++----------- 1 file changed, 4 insertions(+), 11 deletions(-) ---- a/src/bootstrap/doc.rs -+++ b/src/bootstrap/doc.rs -@@ -350,7 +350,27 @@ +Index: rust/src/bootstrap/doc.rs +=================================================================== +--- rust.orig/src/bootstrap/doc.rs ++++ rust/src/bootstrap/doc.rs +@@ -360,7 +360,27 @@ impl Step for Standalone { .arg("--index-page") .arg(&builder.src.join("src/doc/index.md")) .arg("--markdown-playground-url") @@ -38,7 +40,7 @@ Subject: d-bootstrap-use-local-css .arg("-o") .arg(&out) .arg(&path); -@@ -359,11 +379,6 @@ +@@ -369,11 +389,6 @@ impl Step for Standalone { cmd.arg("--disable-minification"); } diff --git a/debian/patches/d-fix-rustix-outline.patch b/debian/patches/d-fix-rustix-outline.patch index f141bad58..52e152da1 100644 --- a/debian/patches/d-fix-rustix-outline.patch +++ b/debian/patches/d-fix-rustix-outline.patch @@ -3,38 +3,16 @@ Always enable cc even if the feature is not enabled. Some Debian architectures need outline asm, and Debian does not ship pre-built outline asm. ---- a/vendor/rustix/Cargo.toml -+++ b/vendor/rustix/Cargo.toml -@@ -125,9 +125,9 @@ - [dev-dependencies.tempfile] - version = "3.4.0" - --[build-dependencies.cc] -+[build-dependencies.cc_dep] - version = "1.0.68" --optional = true -+package = "cc" - - [features] - all-apis = [ -@@ -242,6 +242,7 @@ - "Win32_NetworkManagement_IpHelper", - "Win32_System_Threading", - ] -+cc = [] - - [target."cfg(windows)".dev-dependencies.ctor] - version = "0.1.21" ---- a/vendor/rustix/build.rs -+++ b/vendor/rustix/build.rs -@@ -1,5 +1,4 @@ +Index: rust/vendor/rustix/build.rs +=================================================================== +--- rust.orig/vendor/rustix/build.rs ++++ rust/vendor/rustix/build.rs +@@ -1,4 +1,3 @@ -#[cfg(feature = "cc")] --use cc::Build; -+use cc_dep::Build; + use cc::Build; use std::env::var; use std::io::Write; - -@@ -158,16 +157,16 @@ +@@ -158,16 +157,16 @@ fn link_in_librustix_outline(arch: &str, println!("cargo:rerun-if-changed={}", to); // If "cc" is not enabled, use a pre-built library. @@ -54,54 +32,15 @@ outline asm. { let out_dir = var("OUT_DIR").unwrap(); // Add `-gdwarf-3` so that we always get the same output, regardless of ---- a/vendor/rustix-0.36.5/Cargo.toml -+++ b/vendor/rustix-0.36.5/Cargo.toml -@@ -116,9 +116,9 @@ - [dev-dependencies.tempfile] - version = "3.2.0" +Index: rust/vendor/rustix/Cargo.toml +=================================================================== +--- rust.orig/vendor/rustix/Cargo.toml ++++ rust/vendor/rustix/Cargo.toml +@@ -127,7 +127,6 @@ version = "3.4.0" --[build-dependencies.cc] -+[build-dependencies.cc_dep] + [build-dependencies.cc] version = "1.0.68" -optional = true -+package = "cc" [features] all-apis = [ -@@ -231,6 +231,7 @@ - "Win32_NetworkManagement_IpHelper", - "Win32_System_Threading", - ] -+cc = [] - - [target."cfg(windows)".dev-dependencies.ctor] - version = "0.1.21" ---- a/vendor/rustix-0.36.5/build.rs -+++ b/vendor/rustix-0.36.5/build.rs -@@ -1,5 +1,4 @@ --#[cfg(feature = "cc")] --use cc::Build; -+use cc_dep::Build; - use std::env::var; - use std::io::Write; - -@@ -118,16 +117,16 @@ - println!("cargo:rerun-if-changed={}", to); - - // If "cc" is not enabled, use a pre-built library. -- #[cfg(not(feature = "cc"))] -+ /*#[cfg(not(feature = "cc"))] - { - let _ = asm_name; - println!("cargo:rustc-link-search={}/{}", OUTLINE_PATH, profile); - println!("cargo:rustc-link-lib=static={}", name); -- } -+ }*/ - - // If "cc" is enabled, build the library from source, update the pre-built - // version, and assert that the pre-built version is checked in. -- #[cfg(feature = "cc")] -+ //#[cfg(feature = "cc")] - { - let out_dir = var("OUT_DIR").unwrap(); - Build::new().file(&asm_name).compile(&name); diff --git a/debian/patches/d-remove-arm-privacy-breaches.patch b/debian/patches/d-remove-arm-privacy-breaches.patch index b1cf63a09..7bd488a0e 100644 --- a/debian/patches/d-remove-arm-privacy-breaches.patch +++ b/debian/patches/d-remove-arm-privacy-breaches.patch @@ -7,10 +7,10 @@ Subject: d-remove-arm-privacy-breaches .../crates/stdarch-verify/arm-intrinsics.html | 134 --------------------- 1 file changed, 134 deletions(-) -diff --git a/library/stdarch/crates/stdarch-verify/arm-intrinsics.html b/library/stdarch/crates/stdarch-verify/arm-intrinsics.html -index ac246c6..f945431 100644 ---- a/library/stdarch/crates/stdarch-verify/arm-intrinsics.html -+++ b/library/stdarch/crates/stdarch-verify/arm-intrinsics.html +Index: rust/library/stdarch/crates/stdarch-verify/arm-intrinsics.html +=================================================================== +--- rust.orig/library/stdarch/crates/stdarch-verify/arm-intrinsics.html ++++ rust/library/stdarch/crates/stdarch-verify/arm-intrinsics.html @@ -20,17 +20,12 @@ <meta name="keywords" content="">
<meta content="Copyright © 1995-2018 Arm Limited (or its affiliates). All rights reserved." name="copyright">
@@ -94,7 +94,7 @@ index ac246c6..f945431 100644 <div class="c-feedback-message-container u-no-print"><style> /* Docs top margin fix */ -@@ -245,7 +190,6 @@ j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= +@@ -245,7 +190,6 @@ j=d.createElement(s),dl=l!='dataLayer'?' <span class="navigation-dropdown-label">
<a href="/">
<span>
@@ -102,7 +102,7 @@ index ac246c6..f945431 100644 </span>
<i class="fa fa-caret-down"></i>
</a>
-@@ -437,7 +381,6 @@ j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= +@@ -437,7 +381,6 @@ j=d.createElement(s),dl=l!='dataLayer'?' </div>
@@ -110,7 +110,7 @@ index ac246c6..f945431 100644 </li>
</ul>
-@@ -93318,82 +93261,5 @@ names are the property of their respective holders. <a href="http://www.arm.com/ +@@ -93318,82 +93261,5 @@ names are the property of their respecti </div>
diff --git a/debian/patches/d-rust-gdb-paths b/debian/patches/d-rust-gdb-paths index 119365af3..ad02db260 100644 --- a/debian/patches/d-rust-gdb-paths +++ b/debian/patches/d-rust-gdb-paths @@ -11,10 +11,10 @@ just hardcode path in wrapper script. src/etc/rust-gdbgui | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) -diff --git a/src/etc/rust-gdb b/src/etc/rust-gdb -index b950cea..5ec8752 100755 ---- a/src/etc/rust-gdbgui -+++ b/src/etc/rust-gdbgui +Index: rust/src/etc/rust-gdbgui +=================================================================== +--- rust.orig/src/etc/rust-gdbgui ++++ rust/src/etc/rust-gdbgui @@ -40,7 +40,7 @@ else fi diff --git a/debian/patches/d-rust-lldb-paths b/debian/patches/d-rust-lldb-paths index 41f3b87b4..dddbec175 100644 --- a/debian/patches/d-rust-lldb-paths +++ b/debian/patches/d-rust-lldb-paths @@ -10,10 +10,10 @@ just hardcode path in wrapper script. src/etc/rust-lldb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) -diff --git a/src/etc/rust-lldb b/src/etc/rust-lldb -index bce72f1..793f593 100755 ---- a/src/etc/rust-lldb -+++ b/src/etc/rust-lldb +Index: rust/src/etc/rust-lldb +=================================================================== +--- rust.orig/src/etc/rust-lldb ++++ rust/src/etc/rust-lldb @@ -7,10 +7,10 @@ set -e host=$(rustc -vV | sed -n -e 's/^host: //p') diff --git a/debian/patches/d-rustc-add-soname.patch b/debian/patches/d-rustc-add-soname.patch index cae59b5bc..1026b26b2 100644 --- a/debian/patches/d-rustc-add-soname.patch +++ b/debian/patches/d-rustc-add-soname.patch @@ -24,9 +24,11 @@ using a GNU linker). compiler/rustc_codegen_ssa/src/back/link.rs | 7 +++++++ 1 file changed, 7 insertions(+) ---- a/compiler/rustc_codegen_ssa/src/back/link.rs -+++ b/compiler/rustc_codegen_ssa/src/back/link.rs -@@ -2241,6 +2241,13 @@ +Index: rust/compiler/rustc_codegen_ssa/src/back/link.rs +=================================================================== +--- rust.orig/compiler/rustc_codegen_ssa/src/back/link.rs ++++ rust/compiler/rustc_codegen_ssa/src/back/link.rs +@@ -2216,6 +2216,13 @@ fn add_order_independent_options( } add_rpath_args(cmd, sess, codegen_results, out_filename); diff --git a/debian/patches/d-rustc-fix-mips64el-bootstrap.patch b/debian/patches/d-rustc-fix-mips64el-bootstrap.patch index 8c1625e6c..3d2d8ff59 100644 --- a/debian/patches/d-rustc-fix-mips64el-bootstrap.patch +++ b/debian/patches/d-rustc-fix-mips64el-bootstrap.patch @@ -12,10 +12,10 @@ Bug: https://github.com/rust-lang/rust/issues/52108 src/test/assembly/asm/mips-types.rs | 1 + 4 files changed, 5 insertions(+), 2 deletions(-) -diff --git a/compiler/rustc_target/src/spec/mips64_unknown_linux_gnuabi64.rs b/compiler/rustc_target/src/spec/mips64_unknown_linux_gnuabi64.rs -index fc5dbd1..b9df004 100644 ---- a/compiler/rustc_target/src/spec/mips64_unknown_linux_gnuabi64.rs -+++ b/compiler/rustc_target/src/spec/mips64_unknown_linux_gnuabi64.rs +Index: rust/compiler/rustc_target/src/spec/mips64_unknown_linux_gnuabi64.rs +=================================================================== +--- rust.orig/compiler/rustc_target/src/spec/mips64_unknown_linux_gnuabi64.rs ++++ rust/compiler/rustc_target/src/spec/mips64_unknown_linux_gnuabi64.rs @@ -12,7 +12,7 @@ pub fn target() -> Target { endian: Endian::Big, // NOTE(mips64r2) matches C toolchain @@ -25,10 +25,10 @@ index fc5dbd1..b9df004 100644 max_atomic_width: Some(64), mcount: "_mcount".into(), -diff --git a/compiler/rustc_target/src/spec/mips64el_unknown_linux_gnuabi64.rs b/compiler/rustc_target/src/spec/mips64el_unknown_linux_gnuabi64.rs -index e0d5f6f..57ad8c4 100644 ---- a/compiler/rustc_target/src/spec/mips64el_unknown_linux_gnuabi64.rs -+++ b/compiler/rustc_target/src/spec/mips64el_unknown_linux_gnuabi64.rs +Index: rust/compiler/rustc_target/src/spec/mips64el_unknown_linux_gnuabi64.rs +=================================================================== +--- rust.orig/compiler/rustc_target/src/spec/mips64el_unknown_linux_gnuabi64.rs ++++ rust/compiler/rustc_target/src/spec/mips64el_unknown_linux_gnuabi64.rs @@ -10,7 +10,7 @@ pub fn target() -> Target { abi: "abi64".into(), // NOTE(mips64r2) matches C toolchain @@ -38,9 +38,11 @@ index e0d5f6f..57ad8c4 100644 max_atomic_width: Some(64), mcount: "_mcount".into(), ---- a/src/bootstrap/bootstrap.py -+++ b/src/bootstrap/bootstrap.py -@@ -746,6 +746,8 @@ +Index: rust/src/bootstrap/bootstrap.py +=================================================================== +--- rust.orig/src/bootstrap/bootstrap.py ++++ rust/src/bootstrap/bootstrap.py +@@ -759,6 +759,8 @@ class RustBuild(object): # preserve existing RUSTFLAGS env.setdefault("RUSTFLAGS", "") @@ -49,8 +51,10 @@ index e0d5f6f..57ad8c4 100644 target_features = [] if self.get_toml("crt-static", build_section) == "true": target_features += ["+crt-static"] ---- a/tests/assembly/asm/mips-types.rs -+++ b/tests/assembly/asm/mips-types.rs +Index: rust/tests/assembly/asm/mips-types.rs +=================================================================== +--- rust.orig/tests/assembly/asm/mips-types.rs ++++ rust/tests/assembly/asm/mips-types.rs @@ -1,3 +1,4 @@ +// ignore-test // revisions: mips32 mips64 diff --git a/debian/patches/d-rustc-windows-ssp.patch b/debian/patches/d-rustc-windows-ssp.patch index 158195d05..46b20fb97 100644 --- a/debian/patches/d-rustc-windows-ssp.patch +++ b/debian/patches/d-rustc-windows-ssp.patch @@ -7,9 +7,11 @@ Bug: https://github.com/rust-lang/rust/issues/68973 compiler/rustc_target/src/spec/windows_gnu_base.rs | 2 ++ 1 file changed, 2 insertions(+) ---- a/compiler/rustc_target/src/spec/windows_gnu_base.rs -+++ b/compiler/rustc_target/src/spec/windows_gnu_base.rs -@@ -41,6 +41,8 @@ +Index: rust/compiler/rustc_target/src/spec/windows_gnu_base.rs +=================================================================== +--- rust.orig/compiler/rustc_target/src/spec/windows_gnu_base.rs ++++ rust/compiler/rustc_target/src/spec/windows_gnu_base.rs +@@ -41,6 +41,8 @@ pub fn opts() -> TargetOptions { "-lmsvcrt", "-luser32", "-lkernel32", diff --git a/debian/patches/d-rustdoc-disable-embedded-fonts.patch b/debian/patches/d-rustdoc-disable-embedded-fonts.patch index 3213db6a5..99fa7d251 100644 --- a/debian/patches/d-rustdoc-disable-embedded-fonts.patch +++ b/debian/patches/d-rustdoc-disable-embedded-fonts.patch @@ -9,9 +9,11 @@ Subject: d-rustdoc-disable-embedded-fonts src/librustdoc/html/static_files.rs | 23 ----------------------- 3 files changed, 33 deletions(-) ---- a/src/librustdoc/html/static/css/rustdoc.css -+++ b/src/librustdoc/html/static/css/rustdoc.css -@@ -67,14 +67,6 @@ +Index: rust/src/librustdoc/html/static/css/rustdoc.css +=================================================================== +--- rust.orig/src/librustdoc/html/static/css/rustdoc.css ++++ rust/src/librustdoc/html/static/css/rustdoc.css +@@ -79,14 +79,6 @@ font-display: swap; } @@ -26,9 +28,11 @@ Subject: d-rustdoc-disable-embedded-fonts * { box-sizing: border-box; } ---- a/src/librustdoc/html/static_files.rs -+++ b/src/librustdoc/html/static_files.rs -@@ -126,8 +126,6 @@ +Index: rust/src/librustdoc/html/static_files.rs +=================================================================== +--- rust.orig/src/librustdoc/html/static_files.rs ++++ rust/src/librustdoc/html/static_files.rs +@@ -123,8 +123,6 @@ static_files! { source_code_pro_semibold => "static/fonts/SourceCodePro-Semibold.ttf.woff2", source_code_pro_italic => "static/fonts/SourceCodePro-It.ttf.woff2", source_code_pro_license => "static/fonts/SourceCodePro-LICENSE.txt", diff --git a/debian/patches/d-test-ignore-avx-44056.patch b/debian/patches/d-test-ignore-avx-44056.patch index 5448b7ad5..5d6c971af 100644 --- a/debian/patches/d-test-ignore-avx-44056.patch +++ b/debian/patches/d-test-ignore-avx-44056.patch @@ -9,10 +9,10 @@ Bug: https://github.com/rust-lang/rust/pull/55667 src/test/ui/issues/issue-44056.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -diff --git a/tests/ui/issues/issue-44056.rs b/tests/ui/issues/issue-44056.rs -index a4903ed..ebe8402 100644 ---- a/tests/ui/issues/issue-44056.rs -+++ b/tests/ui/issues/issue-44056.rs +Index: rust/tests/ui/issues/issue-44056.rs +=================================================================== +--- rust.orig/tests/ui/issues/issue-44056.rs ++++ rust/tests/ui/issues/issue-44056.rs @@ -1,5 +1,5 @@ // build-pass (FIXME(55996): should be run on targets supporting avx) -// only-x86_64 diff --git a/debian/patches/series b/debian/patches/series index 855cac4b6..2f6094730 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1,3 +1,11 @@ +# Cargo patches +c-2002_disable-net-tests.patch +c-2003-workaround-qemu-vfork-command-not-found.patch + +c-2200-workaround-x32-test.patch +c-disable-fs-specific-test.patch +c-0003-tests-add-missing-cross-disabled-checks.patch + # Patches for upstream # pending, or forwarded @@ -23,8 +31,12 @@ d-0000-ignore-removed-submodules.patch d-0001-pkg-config-no-special-snowflake.patch d-0002-mdbook-strip-embedded-libs.patch d-0003-cc-psm-rebuild-wasm32.patch -d-0004-clippy-feature-sync.patch +#d-0004-clippy-feature-sync.patch d-0005-no-jemalloc.patch +# cargo +d-0010-cargo-remove-vendored-c-crates.patch +d-0011-cargo-remove-nghttp2.patch +d-0012-cargo-always-return-dev-channel.patch ## Patches to the build process, including doc path tweaks ## Should not change resulting rustc behaviour @@ -62,3 +74,6 @@ d-rustdoc-disable-embedded-fonts.patch # cherry-picked from ubuntu ubuntu-disable-ppc64el-asm-tests.patch ubuntu-ignore-arm-doctest.patch +d-0020-remove-windows-dependencies.patch +d-0021-vendor-remove-windows-dependencies.patch +c-update-libgit2.patch diff --git a/debian/patches/u-disable-fp-precision-test-on-i386.patch b/debian/patches/u-disable-fp-precision-test-on-i386.patch index cb6144650..dad261349 100644 --- a/debian/patches/u-disable-fp-precision-test-on-i386.patch +++ b/debian/patches/u-disable-fp-precision-test-on-i386.patch @@ -11,11 +11,11 @@ Forwarded: https://github.com/rust-lang/rust/pull/114042 library/core/src/num/f32.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -diff --git a/library/core/src/num/f32.rs b/library/core/src/num/f32.rs -index d050d21c8c57..f5c2d1c6bf68 100644 ---- a/library/core/src/num/f32.rs -+++ b/library/core/src/num/f32.rs -@@ -800,7 +800,7 @@ impl f32 { +Index: rust/library/core/src/num/f32.rs +=================================================================== +--- rust.orig/library/core/src/num/f32.rs ++++ rust/library/core/src/num/f32.rs +@@ -799,7 +799,7 @@ impl f32 { /// let angle = std::f32::consts::PI; /// /// let abs_difference = (angle.to_degrees() - 180.0).abs(); diff --git a/debian/patches/u-fix-get-toml-when-test.patch b/debian/patches/u-fix-get-toml-when-test.patch index 2b170977c..34789ecae 100644 --- a/debian/patches/u-fix-get-toml-when-test.patch +++ b/debian/patches/u-fix-get-toml-when-test.patch @@ -6,9 +6,11 @@ Bug: https://github.com/rust-lang/rust/issues/105766 Last-Update: 2023-03-29 --- This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ ---- a/src/bootstrap/config.rs -+++ b/src/bootstrap/config.rs -@@ -823,9 +823,9 @@ +Index: rust/src/bootstrap/config.rs +=================================================================== +--- rust.orig/src/bootstrap/config.rs ++++ rust/src/bootstrap/config.rs +@@ -848,9 +848,9 @@ impl Config { } pub fn parse(args: &[String]) -> Config { @@ -20,7 +22,7 @@ This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ let get_toml = |file: &Path| { let contents = t!(fs::read_to_string(file), format!("config file {} not found", file.display())); -@@ -834,7 +834,23 @@ +@@ -859,7 +859,23 @@ impl Config { match toml::from_str(&contents) .and_then(|table: toml::Value| TomlConfig::deserialize(table)) { diff --git a/debian/patches/u-ignore-endian-big-diff.patch b/debian/patches/u-ignore-endian-big-diff.patch index 73bb776c3..faa270173 100644 --- a/debian/patches/u-ignore-endian-big-diff.patch +++ b/debian/patches/u-ignore-endian-big-diff.patch @@ -14,43 +14,55 @@ Bug: https://github.com/rust-lang/rust/issues/89577 src/test/ui/consts/const-eval/ub-wide-ptr.rs | 1 + 6 files changed, 6 insertions(+) ---- a/tests/ui/consts/const-eval/ub-enum.rs -+++ b/tests/ui/consts/const-eval/ub-enum.rs +Index: rust/tests/ui/consts/const-eval/ub-enum.rs +=================================================================== +--- rust.orig/tests/ui/consts/const-eval/ub-enum.rs ++++ rust/tests/ui/consts/const-eval/ub-enum.rs @@ -1,3 +1,4 @@ +// ignore-test // stderr-per-bitwidth // Strip out raw byte dumps to make comparison platform-independent: // normalize-stderr-test "(the raw bytes of the constant) \(size: [0-9]*, align: [0-9]*\)" -> "$1 (size: $$SIZE, align: $$ALIGN)" ---- a/tests/ui/consts/const-eval/ub-int-array.rs -+++ b/tests/ui/consts/const-eval/ub-int-array.rs +Index: rust/tests/ui/consts/const-eval/ub-int-array.rs +=================================================================== +--- rust.orig/tests/ui/consts/const-eval/ub-int-array.rs ++++ rust/tests/ui/consts/const-eval/ub-int-array.rs @@ -1,3 +1,4 @@ +// ignore-test // stderr-per-bitwidth //! Test the "array of int" fast path in validity checking, and in particular whether it //! points at the right array element. ---- a/tests/ui/consts/const-eval/ub-nonnull.rs -+++ b/tests/ui/consts/const-eval/ub-nonnull.rs +Index: rust/tests/ui/consts/const-eval/ub-nonnull.rs +=================================================================== +--- rust.orig/tests/ui/consts/const-eval/ub-nonnull.rs ++++ rust/tests/ui/consts/const-eval/ub-nonnull.rs @@ -1,3 +1,4 @@ +// ignore-test // Strip out raw byte dumps to make comparison platform-independent: // normalize-stderr-test "(the raw bytes of the constant) \(size: [0-9]*, align: [0-9]*\)" -> "$1 (size: $$SIZE, align: $$ALIGN)" // normalize-stderr-test "([0-9a-f][0-9a-f] |╾─*a(lloc)?[0-9]+(\+[a-z0-9]+)?─*╼ )+ *│.*" -> "HEX_DUMP" ---- a/tests/ui/consts/const-eval/ub-ref-ptr.rs -+++ b/tests/ui/consts/const-eval/ub-ref-ptr.rs +Index: rust/tests/ui/consts/const-eval/ub-ref-ptr.rs +=================================================================== +--- rust.orig/tests/ui/consts/const-eval/ub-ref-ptr.rs ++++ rust/tests/ui/consts/const-eval/ub-ref-ptr.rs @@ -1,3 +1,4 @@ +// ignore-test // ignore-tidy-linelength // Strip out raw byte dumps to make comparison platform-independent: // normalize-stderr-test "(the raw bytes of the constant) \(size: [0-9]*, align: [0-9]*\)" -> "$1 (size: $$SIZE, align: $$ALIGN)" ---- a/tests/ui/consts/const-eval/ub-uninhabit.rs -+++ b/tests/ui/consts/const-eval/ub-uninhabit.rs +Index: rust/tests/ui/consts/const-eval/ub-uninhabit.rs +=================================================================== +--- rust.orig/tests/ui/consts/const-eval/ub-uninhabit.rs ++++ rust/tests/ui/consts/const-eval/ub-uninhabit.rs @@ -1,3 +1,4 @@ +// ignore-test // Strip out raw byte dumps to make comparison platform-independent: // normalize-stderr-test "(the raw bytes of the constant) \(size: [0-9]*, align: [0-9]*\)" -> "$1 (size: $$SIZE, align: $$ALIGN)" // normalize-stderr-test "([0-9a-f][0-9a-f] |╾─*a(lloc)?[0-9]+(\+[a-z0-9]+)?─*╼ )+ *│.*" -> "HEX_DUMP" ---- a/tests/ui/consts/const-eval/ub-wide-ptr.rs -+++ b/tests/ui/consts/const-eval/ub-wide-ptr.rs +Index: rust/tests/ui/consts/const-eval/ub-wide-ptr.rs +=================================================================== +--- rust.orig/tests/ui/consts/const-eval/ub-wide-ptr.rs ++++ rust/tests/ui/consts/const-eval/ub-wide-ptr.rs @@ -1,3 +1,4 @@ +// ignore-test // ignore-tidy-linelength diff --git a/debian/patches/u-ignore-ppc-hangs.patch b/debian/patches/u-ignore-ppc-hangs.patch index 4e35cebb0..705476199 100644 --- a/debian/patches/u-ignore-ppc-hangs.patch +++ b/debian/patches/u-ignore-ppc-hangs.patch @@ -8,10 +8,10 @@ Bug: https://github.com/rust-lang/rust/issues/89607 library/alloc/tests/rc.rs | 1 + 2 files changed, 2 insertions(+) -diff --git a/library/alloc/tests/arc.rs b/library/alloc/tests/arc.rs -index ce40b5c..e99ebf5 100644 ---- a/library/alloc/tests/arc.rs -+++ b/library/alloc/tests/arc.rs +Index: rust/library/alloc/tests/arc.rs +=================================================================== +--- rust.orig/library/alloc/tests/arc.rs ++++ rust/library/alloc/tests/arc.rs @@ -96,6 +96,7 @@ const SHARED_ITER_MAX: u16 = 100; fn assert_trusted_len<I: TrustedLen>(_: &I) {} @@ -20,10 +20,10 @@ index ce40b5c..e99ebf5 100644 #[test] fn shared_from_iter_normal() { // Exercise the base implementation for non-`TrustedLen` iterators. -diff --git a/library/alloc/tests/rc.rs b/library/alloc/tests/rc.rs -index efb39a6..b2f0e04 100644 ---- a/library/alloc/tests/rc.rs -+++ b/library/alloc/tests/rc.rs +Index: rust/library/alloc/tests/rc.rs +=================================================================== +--- rust.orig/library/alloc/tests/rc.rs ++++ rust/library/alloc/tests/rc.rs @@ -92,6 +92,7 @@ const SHARED_ITER_MAX: u16 = 100; fn assert_trusted_len<I: TrustedLen>(_: &I) {} diff --git a/debian/patches/u-reproducible-build.patch b/debian/patches/u-reproducible-build.patch index 1167d1f08..f0823703e 100644 --- a/debian/patches/u-reproducible-build.patch +++ b/debian/patches/u-reproducible-build.patch @@ -7,11 +7,11 @@ Bug: https://github.com/rust-lang/rust/issues/34902 compiler/rustc_llvm/build.rs | 5 +++++ 1 file changed, 5 insertions(+) -diff --git a/compiler/rustc_llvm/build.rs b/compiler/rustc_llvm/build.rs -index 7729ec6..b8f67ee 100644 ---- a/compiler/rustc_llvm/build.rs -+++ b/compiler/rustc_llvm/build.rs -@@ -179,6 +179,11 @@ fn main() { +Index: rust/compiler/rustc_llvm/build.rs +=================================================================== +--- rust.orig/compiler/rustc_llvm/build.rs ++++ rust/compiler/rustc_llvm/build.rs +@@ -180,6 +180,11 @@ fn main() { let mut cfg = cc::Build::new(); cfg.warnings(false); for flag in cxxflags.split_whitespace() { diff --git a/debian/patches/u-reproducible-dl-stage0.patch b/debian/patches/u-reproducible-dl-stage0.patch index 0ac05cb8b..1d0527d2c 100644 --- a/debian/patches/u-reproducible-dl-stage0.patch +++ b/debian/patches/u-reproducible-dl-stage0.patch @@ -7,11 +7,11 @@ Subject: u-reproducible-dl-stage0 src/bootstrap/bootstrap.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -diff --git a/src/bootstrap/bootstrap.py b/src/bootstrap/bootstrap.py -index ab4338e..0227735 100644 ---- a/src/bootstrap/bootstrap.py -+++ b/src/bootstrap/bootstrap.py -@@ -92,7 +92,7 @@ +Index: rust/src/bootstrap/bootstrap.py +=================================================================== +--- rust.orig/src/bootstrap/bootstrap.py ++++ rust/src/bootstrap/bootstrap.py +@@ -92,7 +92,7 @@ def _download(path, url, probably_big, v "-L", # Follow redirect. "-y", "30", "-Y", "10", # timeout if speed is < 10 bytes/sec for > 30 seconds "--connect-timeout", "30", # timeout if cannot connect within 30 seconds diff --git a/debian/patches/u-riscv-disable-unpacked-split-debuginfo.patch b/debian/patches/u-riscv-disable-unpacked-split-debuginfo.patch index 429501b39..c7dd9de9d 100644 --- a/debian/patches/u-riscv-disable-unpacked-split-debuginfo.patch +++ b/debian/patches/u-riscv-disable-unpacked-split-debuginfo.patch @@ -3,10 +3,10 @@ Description: explicitly disable split unpacked debuginfo for now on riscv64, https://github.com/llvm/llvm-project/issues/56642 https://github.com/rust-lang/rust/issues/110224Z -diff --git a/compiler/rustc_target/src/spec/riscv64gc_unknown_freebsd.rs b/compiler/rustc_target/src/spec/riscv64gc_unknown_freebsd.rs -index 8281bac10f..ad1fc624ad 100644 ---- a/compiler/rustc_target/src/spec/riscv64gc_unknown_freebsd.rs -+++ b/compiler/rustc_target/src/spec/riscv64gc_unknown_freebsd.rs +Index: rust/compiler/rustc_target/src/spec/riscv64gc_unknown_freebsd.rs +=================================================================== +--- rust.orig/compiler/rustc_target/src/spec/riscv64gc_unknown_freebsd.rs ++++ rust/compiler/rustc_target/src/spec/riscv64gc_unknown_freebsd.rs @@ -1,4 +1,5 @@ -use crate::spec::{CodeModel, Target, TargetOptions}; +use crate::spec::{CodeModel, SplitDebuginfo, Target, TargetOptions}; @@ -22,10 +22,10 @@ index 8281bac10f..ad1fc624ad 100644 ..super::freebsd_base::opts() }, } -diff --git a/compiler/rustc_target/src/spec/riscv64gc_unknown_fuchsia.rs b/compiler/rustc_target/src/spec/riscv64gc_unknown_fuchsia.rs -index 0585ed76fe..69d11081ac 100644 ---- a/compiler/rustc_target/src/spec/riscv64gc_unknown_fuchsia.rs -+++ b/compiler/rustc_target/src/spec/riscv64gc_unknown_fuchsia.rs +Index: rust/compiler/rustc_target/src/spec/riscv64gc_unknown_fuchsia.rs +=================================================================== +--- rust.orig/compiler/rustc_target/src/spec/riscv64gc_unknown_fuchsia.rs ++++ rust/compiler/rustc_target/src/spec/riscv64gc_unknown_fuchsia.rs @@ -1,4 +1,5 @@ -use crate::spec::{CodeModel, SanitizerSet, Target, TargetOptions}; +use crate::spec::{CodeModel, SanitizerSet, SplitDebuginfo, Target, TargetOptions}; @@ -41,10 +41,10 @@ index 0585ed76fe..69d11081ac 100644 ..super::fuchsia_base::opts() }, } -diff --git a/compiler/rustc_target/src/spec/riscv64gc_unknown_linux_gnu.rs b/compiler/rustc_target/src/spec/riscv64gc_unknown_linux_gnu.rs -index 90dccb2806..8114e024d1 100644 ---- a/compiler/rustc_target/src/spec/riscv64gc_unknown_linux_gnu.rs -+++ b/compiler/rustc_target/src/spec/riscv64gc_unknown_linux_gnu.rs +Index: rust/compiler/rustc_target/src/spec/riscv64gc_unknown_linux_gnu.rs +=================================================================== +--- rust.orig/compiler/rustc_target/src/spec/riscv64gc_unknown_linux_gnu.rs ++++ rust/compiler/rustc_target/src/spec/riscv64gc_unknown_linux_gnu.rs @@ -1,4 +1,5 @@ -use crate::spec::{CodeModel, Target, TargetOptions}; +use crate::spec::{CodeModel, SplitDebuginfo, Target, TargetOptions}; @@ -60,10 +60,10 @@ index 90dccb2806..8114e024d1 100644 ..super::linux_gnu_base::opts() }, } -diff --git a/compiler/rustc_target/src/spec/riscv64gc_unknown_linux_musl.rs b/compiler/rustc_target/src/spec/riscv64gc_unknown_linux_musl.rs -index 1a56c78e68..67dbd2f740 100644 ---- a/compiler/rustc_target/src/spec/riscv64gc_unknown_linux_musl.rs -+++ b/compiler/rustc_target/src/spec/riscv64gc_unknown_linux_musl.rs +Index: rust/compiler/rustc_target/src/spec/riscv64gc_unknown_linux_musl.rs +=================================================================== +--- rust.orig/compiler/rustc_target/src/spec/riscv64gc_unknown_linux_musl.rs ++++ rust/compiler/rustc_target/src/spec/riscv64gc_unknown_linux_musl.rs @@ -1,4 +1,5 @@ -use crate::spec::{CodeModel, Target, TargetOptions}; +use crate::spec::{CodeModel, SplitDebuginfo, Target, TargetOptions}; @@ -79,10 +79,10 @@ index 1a56c78e68..67dbd2f740 100644 ..super::linux_musl_base::opts() }, } -diff --git a/compiler/rustc_target/src/spec/riscv64gc_unknown_none_elf.rs b/compiler/rustc_target/src/spec/riscv64gc_unknown_none_elf.rs -index ab3c14e3fe..a47b63dc94 100644 ---- a/compiler/rustc_target/src/spec/riscv64gc_unknown_none_elf.rs -+++ b/compiler/rustc_target/src/spec/riscv64gc_unknown_none_elf.rs +Index: rust/compiler/rustc_target/src/spec/riscv64gc_unknown_none_elf.rs +=================================================================== +--- rust.orig/compiler/rustc_target/src/spec/riscv64gc_unknown_none_elf.rs ++++ rust/compiler/rustc_target/src/spec/riscv64gc_unknown_none_elf.rs @@ -1,5 +1,6 @@ use crate::spec::{Cc, CodeModel, LinkerFlavor, Lld, PanicStrategy}; -use crate::spec::{RelocModel, Target, TargetOptions}; @@ -99,10 +99,10 @@ index ab3c14e3fe..a47b63dc94 100644 ..Default::default() }, } -diff --git a/compiler/rustc_target/src/spec/riscv64gc_unknown_openbsd.rs b/compiler/rustc_target/src/spec/riscv64gc_unknown_openbsd.rs -index ade9d77624..b04cea8850 100644 ---- a/compiler/rustc_target/src/spec/riscv64gc_unknown_openbsd.rs -+++ b/compiler/rustc_target/src/spec/riscv64gc_unknown_openbsd.rs +Index: rust/compiler/rustc_target/src/spec/riscv64gc_unknown_openbsd.rs +=================================================================== +--- rust.orig/compiler/rustc_target/src/spec/riscv64gc_unknown_openbsd.rs ++++ rust/compiler/rustc_target/src/spec/riscv64gc_unknown_openbsd.rs @@ -1,4 +1,5 @@ -use crate::spec::{CodeModel, Target, TargetOptions}; +use crate::spec::{CodeModel, SplitDebuginfo, Target, TargetOptions}; @@ -118,10 +118,10 @@ index ade9d77624..b04cea8850 100644 ..super::openbsd_base::opts() }, } -diff --git a/compiler/rustc_target/src/spec/riscv64imac_unknown_none_elf.rs b/compiler/rustc_target/src/spec/riscv64imac_unknown_none_elf.rs -index 0f1821c998..1bec356dcd 100644 ---- a/compiler/rustc_target/src/spec/riscv64imac_unknown_none_elf.rs -+++ b/compiler/rustc_target/src/spec/riscv64imac_unknown_none_elf.rs +Index: rust/compiler/rustc_target/src/spec/riscv64imac_unknown_none_elf.rs +=================================================================== +--- rust.orig/compiler/rustc_target/src/spec/riscv64imac_unknown_none_elf.rs ++++ rust/compiler/rustc_target/src/spec/riscv64imac_unknown_none_elf.rs @@ -1,5 +1,6 @@ use crate::spec::{Cc, CodeModel, LinkerFlavor, Lld, PanicStrategy}; -use crate::spec::{RelocModel, SanitizerSet, Target, TargetOptions}; diff --git a/debian/patches/u-rustc-llvm-cross-flags.patch b/debian/patches/u-rustc-llvm-cross-flags.patch index 226485b08..19b6d82c8 100644 --- a/debian/patches/u-rustc-llvm-cross-flags.patch +++ b/debian/patches/u-rustc-llvm-cross-flags.patch @@ -7,9 +7,11 @@ Subject: u-rustc-llvm-cross-flags compiler/rustc_llvm/build.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) ---- a/compiler/rustc_llvm/build.rs -+++ b/compiler/rustc_llvm/build.rs -@@ -304,7 +304,7 @@ +Index: rust/compiler/rustc_llvm/build.rs +=================================================================== +--- rust.orig/compiler/rustc_llvm/build.rs ++++ rust/compiler/rustc_llvm/build.rs +@@ -305,7 +305,7 @@ fn main() { if let Some(stripped) = lib.strip_prefix("-LIBPATH:") { println!("cargo:rustc-link-search=native={}", stripped.replace(&host, &target)); } else if let Some(stripped) = lib.strip_prefix("-L") { diff --git a/debian/patches/ubuntu-disable-ppc64el-asm-tests.patch b/debian/patches/ubuntu-disable-ppc64el-asm-tests.patch index 7cb501e76..d947a6950 100644 --- a/debian/patches/ubuntu-disable-ppc64el-asm-tests.patch +++ b/debian/patches/ubuntu-disable-ppc64el-asm-tests.patch @@ -1,6 +1,8 @@ ---- a/compiler/rustc_lint_defs/src/builtin.rs -+++ b/compiler/rustc_lint_defs/src/builtin.rs -@@ -2883,11 +2883,13 @@ +Index: rust/compiler/rustc_lint_defs/src/builtin.rs +=================================================================== +--- rust.orig/compiler/rustc_lint_defs/src/builtin.rs ++++ rust/compiler/rustc_lint_defs/src/builtin.rs +@@ -2880,11 +2880,13 @@ declare_lint! { /// /// use std::arch::asm; /// @@ -14,9 +16,11 @@ /// #[naked] /// pub extern "Rust" fn rust_abi() -> u32 { /// unsafe { asm!("", options(noreturn)); } ---- a/compiler/rustc_lint/src/builtin.rs -+++ b/compiler/rustc_lint/src/builtin.rs -@@ -3238,7 +3238,10 @@ +Index: rust/compiler/rustc_lint/src/builtin.rs +=================================================================== +--- rust.orig/compiler/rustc_lint/src/builtin.rs ++++ rust/compiler/rustc_lint/src/builtin.rs +@@ -3110,7 +3110,10 @@ declare_lint! { /// ### Example /// /// ```rust,compile_fail diff --git a/debian/patches/ubuntu-ignore-arm-doctest.patch b/debian/patches/ubuntu-ignore-arm-doctest.patch index b67b7d2ef..a70e4741f 100644 --- a/debian/patches/ubuntu-ignore-arm-doctest.patch +++ b/debian/patches/ubuntu-ignore-arm-doctest.patch @@ -5,9 +5,11 @@ Bug: https://github.com/rust-lang/rust/issues/83453 Last-Update: 2022-02-23 --- This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ ---- a/compiler/rustc_error_codes/src/error_codes/E0778.md -+++ b/compiler/rustc_error_codes/src/error_codes/E0778.md -@@ -16,7 +16,7 @@ +Index: rust/compiler/rustc_error_codes/src/error_codes/E0778.md +=================================================================== +--- rust.orig/compiler/rustc_error_codes/src/error_codes/E0778.md ++++ rust/compiler/rustc_error_codes/src/error_codes/E0778.md +@@ -16,7 +16,7 @@ specified: ``` #![feature(isa_attribute)] @@ -16,7 +18,7 @@ This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ fn something() {} ``` -@@ -25,7 +25,7 @@ +@@ -25,7 +25,7 @@ or: ``` #![feature(isa_attribute)] @@ -25,9 +27,11 @@ This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ fn something() {} ``` ---- a/compiler/rustc_error_codes/src/error_codes/E0779.md -+++ b/compiler/rustc_error_codes/src/error_codes/E0779.md -@@ -21,7 +21,7 @@ +Index: rust/compiler/rustc_error_codes/src/error_codes/E0779.md +=================================================================== +--- rust.orig/compiler/rustc_error_codes/src/error_codes/E0779.md ++++ rust/compiler/rustc_error_codes/src/error_codes/E0779.md +@@ -21,7 +21,7 @@ error. Example: ``` #![feature(isa_attribute)] diff --git a/debian/prune-unused-deps b/debian/prune-unused-deps index 32063b14e..5807b4a4c 100755 --- a/debian/prune-unused-deps +++ b/debian/prune-unused-deps @@ -17,7 +17,7 @@ done test -f Cargo.lock.orig || cp Cargo.lock Cargo.lock.orig test -f src/bootstrap/Cargo.lock.orig || cp src/bootstrap/Cargo.lock src/bootstrap/Cargo.lock.orig test -f src/tools/rust-analyzer/Cargo.lock.orig || cp src/tools/rust-analyzer/Cargo.lock src/tools/rust-analyzer/Cargo.lock.orig -rm -f Cargo.lock src/bootstrap/Cargo.lock src/tools/rust-analyzer/Cargo.lock +rm -f Cargo.lock src/bootstrap/Cargo.lock src/tools/rust-analyzer/Cargo.lock src/tools/cargo/Cargo.lock find vendor -name .cargo-checksum.json -execdir "$scriptdir/debian/prune-checksums" "{}" + diff --git a/debian/rules b/debian/rules index b728731aa..0d8f0825b 100755 --- a/debian/rules +++ b/debian/rules @@ -36,6 +36,8 @@ DEB_DESTDIR := $(CURDIR)/debian/tmp # Use system LLVM (comment out to use vendored LLVM) LLVM_VERSION = 16 OLD_LLVM_VERSION = 15 +# Cargo-specific flags +export LIBSSH2_SYS_USE_PKG_CONFIG=1 # Make it easier to test against a custom LLVM ifneq (,$(LLVM_DESTDIR)) LLVM_LIBRARY_PATH := $(LLVM_DESTDIR)/usr/lib/$(DEB_HOST_MULTIARCH):$(LLVM_DESTDIR)/usr/lib @@ -198,7 +200,7 @@ ifneq (,$(filter $(DEB_BUILD_ARCH), mips mipsel)) endif %: - $(SYSTEM_WORKAROUNDS) dh $@ --parallel + $(SYSTEM_WORKAROUNDS) dh $@ --parallel --with bash-completion .PHONY: .dbg-windows .dbg-windows: @@ -206,7 +208,7 @@ endif .PHONY: build build: - $(SYSTEM_WORKAROUNDS) dh $@ --parallel + $(SYSTEM_WORKAROUNDS) dh $@ --parallel --with bash-completion override_dh_clean: # Upstream contains a lot of these @@ -243,9 +245,23 @@ check-no-old-llvm: ! grep --color=always -i '\(clang\|ll\(..\|d\)\)-\?$(subst .,\.,$(OLD_LLVM_VERSION))' --exclude=changelog --exclude=copyright --exclude='*.patch' --exclude-dir='.debhelper' -R debian .PHONY: check-no-old-llvm -debian/dh_auto_configure.stamp: debian/config.toml check-no-old-llvm +extra-vendor: + if [ -d extra ]; then \ + cd extra; \ + for c in *; do \ + if [ -e ../vendor/"$$c" ]; then \ + mv -v ../vendor/"$$c" ../vendor/"$$c".backup ; \ + fi ; \ + echo "adding extra vendored dependency '$$c'"; \ + cp -r ./"$$c" ../vendor/; \ + done; \ + fi + +.PHONY: extra-vendor + +debian/dh_auto_configure.stamp: debian/config.toml check-no-old-llvm extra-vendor # fail the build if we accidentally vendored openssl, indicates we pulled in unnecessary dependencies - test ! -e vendor/openssl + test ! -e vendor/openssl-src # fail the build if our version contains ~exp and we are not releasing to experimental v="$(DEB_VERSION)"; test "$$v" = "$${v%~exp*}" -o "$(DEB_DISTRIBUTION)" = "experimental" -o "$(DEB_DISTRIBUTION)" = "UNRELEASED" $(PRECONFIGURE_CHECK) @@ -254,7 +270,7 @@ debian/dh_auto_configure.stamp: debian/config.toml check-no-old-llvm if test $$(grep "127.0.0.1\s*localhost" /etc/hosts | wc -l) -gt 1; then \ debian/ensure-patch -N debian/patches/d-test-host-duplicates.patch; fi # don't care about lock changes - rm -f Cargo.lock src/bootstrap/Cargo.lock src/tools/rust-analyzer/Cargo.lock + rm -f Cargo.lock src/bootstrap/Cargo.lock src/tools/rust-analyzer/Cargo.lock src/tools/cargo/Cargo.lock # We patched some crates so have to rm the checksums find vendor -name .cargo-checksum.json -execdir "$(CURDIR)/debian/prune-checksums" "{}" + # Link against system liblzma, see https://github.com/alexcrichton/xz2-rs/issues/16 @@ -295,6 +311,7 @@ ifeq (true,$(BUILD_WASM)) endif ifeq (true,$(BUILD_DOCS)) $(RUSTBUILD) doc $(RUSTBUILD_FLAGS) + $(RUSTBUILD) doc $(RUSTBUILD_FLAGS) cargo # document cargo APIs endif TEST_LOG = debian/rustc-tests.log @@ -402,6 +419,9 @@ debian/dh_auto_install.stamp: fi; \ done + # Remove Cargo made package cache + rm -vf $(CURDIR)/debian/cargo/.package-cache + touch "$@" override_dh_auto_install-arch: debian/dh_auto_install.stamp @@ -411,6 +431,9 @@ ifeq (true,$(BUILD_WINDOWS)) --target $(WINDOWS_ARCH)-pc-windows-gnu \ library/std endif + # Remove Cargo made package cache + rm -vf $(CURDIR)/debian/cargo/.package-cache + override_dh_auto_install-indep: debian/dh_auto_install.stamp ifeq (true,$(BUILD_WASM)) @@ -420,6 +443,9 @@ ifeq (true,$(BUILD_WASM)) library/std endif ifeq (true,$(BUILD_DOCS)) + # Install Cargo docs + install -d $(DEB_DESTDIR)/usr/share/doc/cargo + cp -r $(CURDIR)/build/$(DEB_BUILD_RUST_TYPE)/compiler-doc $(DEB_DESTDIR)/usr/share/doc/cargo/reference # Brute force to remove privacy-breach-logo lintian warning. # We could have updated the upstream sources but it would complexify # the rebase @@ -433,7 +459,13 @@ ifeq (true,$(BUILD_DOCS)) -e 's,<img src="https://img.shields.io/[^"]*" alt="\([^"]*\)" />,<span class="deb-privacy-replace--shields-io">\1</span>,g' "$$file"; \ done find $(DEB_DESTDIR) \( -iname '*.html' -empty -o -name .lock -o -name '*.inc' \) -delete; + + # mv cargo book to cargo-docs + mv $(DEB_DESTDIR)/usr/share/doc/rust/html/cargo $(DEB_DESTDIR)/usr/share/doc/cargo/book endif + # Remove Cargo made package cache + rm -vf $(CURDIR)/debian/cargo/.package-cache + override_dh_install-indep: dh_install diff --git a/debian/scripts/audit-vendor-source b/debian/scripts/audit-vendor-source new file mode 100755 index 000000000..08a46d804 --- /dev/null +++ b/debian/scripts/audit-vendor-source @@ -0,0 +1,40 @@ +#!/bin/sh +# Audit Rust crate source for suspicious files in the current directory, that +# shouldn't or can't be part of a Debian source package. +# +# NOTE: this overwrites & deletes files in the current directory!!! Make a +# backup before running this script. +# +# Usage: $0 <whitelist> <filter_description> [<extra args to suspicious-source>] + +set -e + +whitelist="$1" +filter_description="$2" +shift 2 # everything else is args to suspicious-source + +# Remove tiny files 4 bytes or less +find . -size -4c -type f -delete +# Remove non-suspicious files, warning on patterns that match nothing +echo "Excluding (i.e. removing) whitelisted files..." +grep -v '^#' "$whitelist" | xargs -I% sh -c 'rm -r ./% || true' +echo "Checking for suspicious files..." +# Remove cargo metadata files +find . '(' -name '.cargo-checksum.json' -or -name '.cargo_vcs_info.json' ')' -delete +# Strip comments & blank lines before testing rust source code - +# some authors like to write really long comments +find . -name '*.rs' -execdir sed -i -e '\,^\s*//,d' -e '/^\s*$/d' '{}' \; + +# TODO: merge the -m stuff into suspicious-source(1). +suspicious-source -v "$@" +# The following shell snippet is a bit more strict than suspicious-source(1) +find . -type f -exec file '{}' \; | \ + sed -e 's/\btext\b\(.*\), with very long lines/verylongtext\1/g' | \ + grep -v '\b\(text\|empty\)\b' || true + +# Most C and JS code should be in their own package +find . -name '*.c' -o -name '*.js' + +echo "The above files (if any) seem suspicious, please audit them." +echo "If good, add them to $whitelist." +echo "If bad, add them to $filter_description." diff --git a/debian/scripts/debian-cargo-vendor b/debian/scripts/debian-cargo-vendor new file mode 100755 index 000000000..6566b316d --- /dev/null +++ b/debian/scripts/debian-cargo-vendor @@ -0,0 +1,165 @@ +#!/bin/bash +# To run this, you need to first install cargo-lock. +# +# TODO: this script has a known bug in: if the Debian patches being applied, +# changes the set of dependencies, then "cargo vendor" is not re-run in order +# to pick up this new set of dependencies. This is manifested by an error +# message like: "perhaps a crate was updated and forgotten to be re-vendored?" +# +set -e + +SCRIPTDIR="$(dirname "$(readlink -f "$0")")" + +not_needed() { + diff -ur packages-before packages-after | grep "^-- " | cut -d' ' -f2-3 +} + +ghetto_parse_cargo() { + cat "$1" \ + | tr '\n' '\t' \ + | sed -e 's/\t\[/\n[/g' \ + | perl -ne 'print if s/^\[(?:package|project)\].*\tname\s*=\s*"(.*?)".*\tversion\s*=\s*"(.*?)".*/\1 \2/g' +} + +pruned_paths() { + for i in vendor/*/Cargo.toml; do + pkgnamever= + pkgnamever=$(ghetto_parse_cargo "$i") + if [ -z "$pkgnamever" ]; then + echo >&2 "failed to parse: $i" + exit 1 + fi + echo "$pkgnamever $i" + done | grep -F -f <(not_needed) | cut '-d ' -f3 | while read x; do + echo " $(dirname $x)" + done +} + +crate_to_debcargo_conf() { + echo "$1" | sed -e 's/_/-/g' +} + +rm -rf vendor/ +if [ -e "$CARGO_PRE_VENDOR" ]; then + "$CARGO_PRE_VENDOR" +fi +cargo vendor --verbose vendor/ +mkdir -p .cargo +cat >.cargo/config <<eof +[source.crates-io] +replace-with = "vendored-sources" + +[source.vendored-sources] +directory = "$PWD/vendor" +eof +cargo lock list > packages-before +cp Cargo.lock Cargo.lock.orig + +if [ -d debcargo-conf ]; then ( cd debcargo-conf && git pull ); +else git clone "${DEBCARGO_CONF:-https://salsa.debian.org/rust-team/debcargo-conf}"; fi + +# keep applying patches, and drop to a subshell for manual fixing, until it succeeds +while ! ( cd vendor +x=true +for i in *; do + debname=$(crate_to_debcargo_conf "$i") + cd $i + # if there is a d/rules then don't mess with it, it's too custom for this + # script to deal with - just use the upstream version. example: backtrace-sys + # TODO: deal with those better, especially backtrace-sys + if [ -e ../../debcargo-conf/src/$debname/debian/rules ]; then + echo >&2 "$0: the debcargo-conf for crate $i has a custom rules file, but applying patches anyway" + echo >&2 "$0: you may want to examine this situation more closely" + fi + if [ -d ../../debcargo-conf/src/$debname/debian/patches ]; then + echo >&2 "$0: patching $i" + mkdir -p debian + if [ ! -d debian/patches ]; then + cp -a -n "../../debcargo-conf/src/$debname/debian/patches" debian/ + fi + # first unapply any patches applied in the previous iteration + QUILT_PATCHES=debian/patches quilt pop -af + QUILT_PATCHES=debian/patches quilt push -a + case $? in + 0|2) true;; + *) echo >&2 "$0: patching $i failed <<<<<<<<<<<<<<<<<<<<<<<<" + QUILT_PATCHES=debian/patches quilt pop -af + x=false;; + esac + fi + if [ -f ../../debcargo-conf/src/$debname/debian/build.rs ]; then + echo >&2 "$0: overwriting build.rs with our custom one" + if [ ! -f build.rs.orig ]; then + cp -f build.rs build.rs.orig + fi + cp -f ../../debcargo-conf/src/$i/debian/build.rs build.rs + fi + cd .. +done; $x ); do + echo >&2 "================================================================================" + echo >&2 "$0: You are now in a sub-shell!" + echo >&2 "$0: Fix the failed patches in debcargo-conf/, then exit the sub-shell by pressing ctrl-D ONCE." + echo >&2 "$0: If you need to abort this process, press ctrl-D then quickly ctrl-C." + if [ -f "${SRCDIR:-$PWD}/debian/debcargo-conf.patch" ]; then + echo >&2 "$0: Previous patch changes exist, to apply them run:" + echo >&2 " $ patch -d vendor -p2 < '${SRCDIR:-$PWD}/debian/debcargo-conf.patch'" + fi + echo >&2 "================================================================================" + bash || true + echo >&2 "$0: trying patches again..." +done +rm -rf vendor/*/.pc +find vendor/*/debian/patches -name '*~' -delete || true +cargo update +cargo lock list > packages-after +pruned_paths | while read x; do echo >&2 "$0: removing, because debcargo-conf patches makes it obsolete: $x"; rm -rf "$x"; done + +# remove excluded files +( cd vendor +for i in *; do ( + debname=$(crate_to_debcargo_conf "$i") + shopt -s globstar # needed for double-glob to work in excludes + cd $i + if [ -e ../../debcargo-conf/src/$debname/debian/rules ]; then + echo >&2 "$0: the debcargo-conf for crate $i has a custom rules file, but applying excludes anyway" + echo >&2 "$0: you may want to examine this situation more closely" + fi + if grep -q excludes ../../debcargo-conf/src/$debname/debian/debcargo.toml 2>/dev/null; then + sed -nre 's/.*excludes\s*=\s*(\[[^]]*\]).*/\1/p' \ + ../../debcargo-conf/src/$i/debian/debcargo.toml \ + | python3 -c "import ast, sys; x=ast.literal_eval(sys.stdin.read()); print('\n'.join((i[:-3] if i.endswith('/**') else i) for i in x));" \ + | while read x; do echo >&2 "$0: removing, since it's excluded by debcargo-conf: vendor/$i/$x"; rm -rf $x; done + fi +); done; ) + +# TODO: rm special logic from debcargo and put into debcargo-conf instead +echo >&2 "$0: removing winapi archives" +rm -rf vendor/winapi-*-pc-windows-gnu/lib/*.a + +echo >&2 "$0: pruning all checksums.." +for i in vendor/*; do ${SCRIPTDIR}/prune-checksums "$i"; done + +( cd vendor +for i in *; do ( + cd $i + debname=$(crate_to_debcargo_conf "$i") + if [ -d debian/patches ]; then + rm -rf "../../debcargo-conf/src/$debname/debian/patches" + cp -a debian/patches "../../debcargo-conf/src/$debname/debian/" + fi +); done; ) +( cd debcargo-conf +git add . +if ! git diff --cached --quiet; then + git commit -m "Manual changes from debian-cargo-vendor" + git diff @~ > ../../debcargo-conf.patch || true + (cd ../.. ; echo >&2 "$0: backed up patch changes to $PWD/debcargo-conf.patch") + echo >&2 "$0: you should backport/merge them back into debcargo-conf.git" +fi +) + +echo >&2 "$0: cleaning up..." +rm -rf .cargo Cargo.lock debcargo-conf packages-before packages-after + +echo >&2 "$0: restoring original Cargo.lock" +mv Cargo.lock.orig Cargo.lock diff --git a/debian/scripts/guess-crate-copyright b/debian/scripts/guess-crate-copyright new file mode 100755 index 000000000..15f35f634 --- /dev/null +++ b/debian/scripts/guess-crate-copyright @@ -0,0 +1,45 @@ +#!/usr/bin/python3 +# Copyright: 2015-2017 The Debian Project +# License: MIT or Apache-2.0 +# +# Guess the copyright of a cargo crate by looking at its git history. + +import datetime +import toml +import os +import subprocess +import sys + +this_year = datetime.datetime.now().year +crates = sys.argv[1:] +get_initial_commit = len(crates) == 1 + +for crate in crates: + with open(os.path.join(crate, "Cargo.toml")) as fp: + data = toml.load(fp) + repo = data["package"].get("repository", None) + if get_initial_commit and repo: + output = subprocess.check_output( + """git clone -q --bare "%s" tmp.crate-copyright >&2 && +cd tmp.crate-copyright && +git log --format=%%cI --reverse | head -n1 | cut -b1-4 && +git log --format=%%cI | head -n1 | cut -b1-4 && +cd .. && +rm -rf tmp.crate-copyright""" % repo, shell=True).decode("utf-8") + first_year, last_year = output.strip().split(maxsplit=2) + else: + first_year = "20XX" + last_year = this_year + + authors = data["package"].get("authors", ["UNKNOWN AUTHORS"]) + + print("""Files: {0} +Copyright: {1} +License: {2} +Comment: see {3} +""".format( + os.path.join(crate, "*"), + "\n ".join("%s-%s %s" % (first_year, last_year, a.replace(" <>", "")) for a in authors), + data["package"].get("license", "???").replace("/", " or "), + repo or "???" + )) diff --git a/debian/scripts/prune-checksums b/debian/scripts/prune-checksums new file mode 100755 index 000000000..0c895cff4 --- /dev/null +++ b/debian/scripts/prune-checksums @@ -0,0 +1,47 @@ +#!/usr/bin/python3 +# Copyright: 2015-2017 The Debian Project +# License: MIT or Apache-2.0 +# +# Helper to remove removed-files from .cargo-checksum +# TODO: rewrite to perl and add to dh-cargo, maybe? + +from collections import OrderedDict +import argparse +import json +import os +import sys + +def prune_keep(cfile): + with open(cfile) as fp: + sums = json.load(fp, object_pairs_hook=OrderedDict) + + oldfiles = sums["files"] + newfiles = OrderedDict([entry for entry in oldfiles.items() if os.path.exists(entry[0])]) + sums["files"] = newfiles + + if len(oldfiles) == len(newfiles): + return + + with open(cfile, "w") as fp: + json.dump(sums, fp, separators=(',', ':')) + +def prune(cfile): + with open(cfile, "r+") as fp: + sums = json.load(fp, object_pairs_hook=OrderedDict) + sums["files"] = {} + fp.seek(0) + json.dump(sums, fp, separators=(',', ':')) + fp.truncate() + +if __name__ == "__main__": + parser = argparse.ArgumentParser() + parser.add_argument("-k", "--keep", action="store_true", help="keep " + "checksums of files that still exist, and assume they haven't changed.") + parser.add_argument('crates', nargs=argparse.REMAINDER, + help="crates whose checksums to prune. (default: ./)") + args = parser.parse_args(sys.argv[1:]) + crates = args.crates or ["."] + f = prune_keep if args.keep else prune + for c in crates: + cfile = os.path.join(c, ".cargo-checksum.json") if os.path.isdir(c) else c + f(cfile) diff --git a/debian/source/lintian-overrides b/debian/source/lintian-overrides index b2dad2655..0719f25df 100644 --- a/debian/source/lintian-overrides +++ b/debian/source/lintian-overrides @@ -8,3 +8,12 @@ rustc source: source-is-missing [vendor/html5ever/data/bench/*.html] rustc source: source-is-missing [vendor/minifier/tests/files/minified_main.js] rustc source: source-contains-prebuilt-windows-binary [vendor/libloading/tests/nagisa32.dll] rustc source: source-contains-prebuilt-windows-binary [vendor/libloading/tests/nagisa64.dll] + +# debian policy bug #649530, old and new formats +rustc source: mismatched-override missing-license-paragraph-in-dep5-copyright mpl-2.0+ (*) +rustc source: mismatched-override missing-license-paragraph-in-dep5-copyright debian/copyright mpl-2.0+ (*) [debian/source/lintian-overrides:*] +rustc source: missing-license-paragraph-in-dep5-copyright mpl-2.0+ [debian/copyright:*] +rustc source: missing-license-paragraph-in-dep5-copyright debian/copyright mpl-2.0+ (*) + +# lintian is superfluous +rustc source: superfluous-file-pattern debian/copyright * (*) diff --git a/debian/tests/control b/debian/tests/control new file mode 100644 index 000000000..2cffafdb8 --- /dev/null +++ b/debian/tests/control @@ -0,0 +1,7 @@ +#Test-Command: ./debian/rules build +#Depends: @builddeps@ +#Restrictions: rw-build-tree, allow-stderr +# +Tests: create-and-build-crate +Restrictions: rw-build-tree, allow-stderr, needs-internet +Depends: cargo, ca-certificates diff --git a/debian/tests/create-and-build-crate b/debian/tests/create-and-build-crate new file mode 100755 index 000000000..46cc2a034 --- /dev/null +++ b/debian/tests/create-and-build-crate @@ -0,0 +1,39 @@ +#!/bin/bash +set -euo pipefail + +tmpdir=$(mktemp -d) +cd "$tmpdir" + +cargo new hello +cd hello + +cat <<EOF > src/main.rs +use anyhow::Result; + +fn main() -> Result<()> { + println!("Hello, World!"); + Ok(()) +} + +#[test] +fn test() { + assert_eq!(1 + 1, 2); +} +EOF + +cargo add 'anyhow@^1' +cargo vendor + +mkdir -p .cargo +cat <<EOF > .cargo/config.toml +[source.crates-io] +replace-with = "vendored-sources" + +[source.vendored-sources] +directory = "vendor" +EOF + +cargo check +cargo build +cargo test +cargo run diff --git a/debian/upstream-tarball-unsuspicious.txt b/debian/upstream-tarball-unsuspicious.txt index 8b316de8b..59114a985 100644 --- a/debian/upstream-tarball-unsuspicious.txt +++ b/debian/upstream-tarball-unsuspicious.txt @@ -10,10 +10,16 @@ src/doc/reference/src/crates-and-source-files.md src/doc/reference/src/items/extern-crates.md src/doc/reference/src/items/modules.md src/doc/reference/src/types-redirect.html +src/tools/cargo/src/doc/src/reference/registries.md src/tools/clippy/book/src/lint_configuration.md vendor/chalk-solve-0.87.0/src/infer/test.rs +vendor/fiat-crypto/src/p448_solinas_32.rs vendor/itertools*/examples/iris.data vendor/minifier/src/js/tools.rs +vendor/pasetors/src/footer.rs +vendor/pasetors/src/version2.rs +vendor/pasetors/src/version3.rs +vendor/pasetors/src/version4.rs vendor/regex/tests/suffix_reverse.rs vendor/regex/tests/unicode.rs vendor/term/src/terminfo/parser/names.rs @@ -24,17 +30,17 @@ README.md RELEASES.md compiler/rustc_codegen_cranelift/docs/dwarf.md compiler/rustc_codegen_gcc/Readme.md -compiler/rustc_codegen_ssa/locales/en-US.ftl compiler/rustc_codegen_ssa/messages.ftl +extra/git2/src/cred.rs library/core/src/ffi/c_*.md library/portable-simd/*.md +library/std/src/sys/sgx/abi/entry.S library/stdarch/CONTRIBUTING.md library/stdarch/crates/core_arch/src/aarch64/neon/generated.rs library/stdarch/crates/std_detect/README.md -library/std/src/sys/sgx/abi/entry.S src/bootstrap/CHANGELOG.md -src/doc/book/first-edition/src/the-stack-and-the-heap.md src/doc/*/CODE_OF_CONDUCT.md +src/doc/book/first-edition/src/the-stack-and-the-heap.md src/doc/edition-guide/src/rust-2018/index.md src/doc/edition-guide/src/rust-2021/disjoint-capture-in-closures.md src/doc/edition-guide/src/rust-2021/prelude.md @@ -52,14 +58,17 @@ src/doc/rustc/src/instrument-coverage.md src/doc/rustc/src/lints/groups.md src/doc/rustc/src/platform-support/armeb-unknown-linux-gnueabi.md src/doc/rustc/src/platform-support/armv7-sony-vita-eabihf.md -src/doc/rustc/src/platform-support/armv7-unknown-linux-uclibceabihf.md src/doc/rustc/src/platform-support/armv7-unknown-linux-uclibceabi.md +src/doc/rustc/src/platform-support/armv7-unknown-linux-uclibceabihf.md src/doc/rustc/src/targets/known-issues.md src/doc/rustdoc/src/*.md src/doc/unstable-book/src/*/*.md src/etc/third-party/README.txt src/librustdoc/html/highlight/fixtures/sample.html src/librustdoc/html/static/scrape-examples-help.md +src/tools/cargo/src/cargo/sources/git/known_hosts.rs +src/tools/cargo/src/doc/src/guide/continuous-integration.md +src/tools/cargo/src/doc/src/reference/features.md src/tools/rust-analyzer/crates/ide-completion/src/completions/env_vars.rs src/tools/rust-analyzer/crates/rust-analyzer/src/diagnostics/to_proto.rs src/tools/rust-analyzer/docs/user/manual.adoc @@ -72,49 +81,49 @@ tests/rustdoc/notable-trait/doc-notable_trait*.html tests/rustdoc/notable-trait/spotlight-from-dependency.odd.html tests/ui/lint/redundant-semicolon/redundant-semi-proc-macro.stderr tests/ui/parser/raw/too-many-hash.stderr +vendor/*/*/*/LICENSE +vendor/*/*/LICENSE +vendor/*/CHANGELOG.md +vendor/*/CODE_OF_CONDUCT.md +vendor/*/Cargo.toml +vendor/*/LICENSE +vendor/*/LICENSE-MIT +vendor/*/README.md vendor/ahash-0.7.6/FAQ.md vendor/ahash/FAQ.md vendor/ammonia/src/lib.rs vendor/anstyle-parse/src/state/table.rs -vendor/*/Cargo.toml -vendor/*/CHANGELOG.md +vendor/base64ct/tests/proptests.proptest-regressions vendor/clap-*/examples/demo.md vendor/clap-*/examples/tutorial_*/*.md -vendor/*/CODE_OF_CONDUCT.md +vendor/elliptic-curve/src/hash2curve/hash2field/expand_msg/xmd.rs +vendor/elliptic-curve/src/hash2curve/hash2field/expand_msg/xof.rs +vendor/elliptic-curve/src/jwk.rs vendor/generic-array/DESIGN.md +vendor/git2/src/cred.rs vendor/handlebars/src/lib.rs vendor/handlebars/src/render.rs vendor/handlebars/src/template.rs vendor/lazy_static/src/lib.rs -vendor/*/*/*/LICENSE -vendor/*/*/LICENSE -vendor/*/LICENSE -vendor/*/LICENSE-MIT vendor/maplit/README.rst vendor/mdbook/CONTRIBUTING.md vendor/miniz_oxide*/Readme.md +vendor/pasetors/src/token.rs vendor/pulldown-cmark/tests/suite/footnotes.rs -vendor/*/README.md vendor/rustc-demangle/src/legacy.rs vendor/spdx-expression/LICENSES/MIT.txt -vendor/spdx-rs/LICENSES/MIT.txt vendor/spdx-rs/LICENSE.txt +vendor/spdx-rs/LICENSES/MIT.txt vendor/spdx-rs/src/models/file_information.rs vendor/spdx-rs/src/models/other_licensing_information_detected.rs vendor/spdx-rs/src/models/package_information.rs +vendor/spki/tests/spki.rs vendor/stable_deref_trait/src/lib.rs vendor/tinyvec/LICENSE-*.md vendor/tracing-subscriber/src/fmt/format/json.rs vendor/unicase/src/lib.rs vendor/unicode-normalization/src/stream_safe.rs vendor/winapi/src/lib.rs -vendor/windows*/readme.md -vendor/windows*/src/Windows/*.rs -vendor/windows*/src/Windows/*/*.rs -vendor/windows*/src/Windows/*/*/*.rs -vendor/windows*/src/Windows/*/*/*/*.rs -vendor/windows*/src/Windows/*/*/*/*/*.rs -vendor/windows*/src/Windows/*/*/*/*/*/*.rs vendor/zerovec/src/map2d/map.rs # False-positive, audit-vendor-source automatically flags JS/C files @@ -128,19 +137,22 @@ src/doc/rustc-dev-guide/mermaid-init.js src/etc/wasm32-shim.js src/librustdoc/html/static/.eslintrc.js src/librustdoc/html/static/js/*.js +src/tools/cargo/src/cargo/core/compiler/timings.js src/tools/error_index_generator/*.js -src/tools/rustdoc-gui/tester.js src/tools/rustdoc-gui/.eslintrc.js -src/tools/rustdoc-js/tester.js +src/tools/rustdoc-gui/tester.js src/tools/rustdoc-js/.eslintrc.js +src/tools/rustdoc-js/tester.js +vendor/libz-sys/src/smoke.c +vendor/openssl-sys/build/expando.c +vendor/signal-hook/src/low_level/extract.c +vendor/wasm-bindgen/_package.json +vendor/wasm-bindgen/examples/import_js/package.json # Embedded libraries, justified in README.source vendor/dlmalloc/src/dlmalloc.c vendor/mdbook/src/theme/book.js vendor/mdbook/src/theme/searcher/searcher.js -vendor/windows_*_gnu/lib/libwindows.a -vendor/windows_*_gnullvm/lib/libwindows.a -vendor/windows_*_msvc/lib/windows.lib # Trivial glue code for C <-> Rust library/backtrace/src/android-api.c @@ -158,27 +170,36 @@ src/tools/clippy/.remarkrc vendor/elasticlunr-rs/src/lang/*.rs # False-positive, hand-editable small image -src/doc/book/2018-edition/src/img/ferris/*.svg src/doc/book/2018-edition/src/img/*.png src/doc/book/2018-edition/src/img/*.svg +src/doc/book/2018-edition/src/img/ferris/*.svg src/doc/book/second-edition/src/img/*.png src/doc/book/second-edition/src/img/*.svg -src/doc/book/src/img/ferris/*.svg src/doc/book/src/img/*.png src/doc/book/src/img/*.svg +src/doc/book/src/img/ferris/*.svg src/doc/book/tools/docx-to-md.xsl -src/doc/embedded-book/src/assets/f3.jpg src/doc/embedded-book/src/assets/*.png src/doc/embedded-book/src/assets/*.svg +src/doc/embedded-book/src/assets/f3.jpg src/doc/embedded-book/src/assets/verify.jpeg src/doc/nomicon/src/img/safeandunsafe.svg src/doc/rustc-dev-guide/src/img/*.png src/doc/rustc-dev-guide/src/queries/example-0.png src/doc/rustc/src/images/*.png src/etc/installer/gfx/ -src/librustdoc/html/static/images/favicon-*.png src/librustdoc/html/static/images/*.svg +src/librustdoc/html/static/images/favicon-*.png +src/tools/cargo/src/doc/src/images/Cargo-Logo-Small.png +src/tools/cargo/src/doc/src/images/auth-level-acl.png +src/tools/cargo/src/doc/src/images/build-info.png +src/tools/cargo/src/doc/src/images/build-unit-time.png +src/tools/cargo/src/doc/src/images/cargo-concurrency-over-time.png +src/tools/cargo/src/doc/src/images/org-level-acl.png +src/tools/cargo/src/doc/src/images/winapi-features.svg +src/tools/cargo/src/doc/theme/favicon.png src/tools/rust-analyzer/assets/logo-*.svg +vendor/imara-diff/plots/*.svg vendor/mdbook/src/theme/favicon.png vendor/mdbook/src/theme/favicon.svg vendor/overload/logo.png @@ -193,13 +214,19 @@ library/core/benches/str.rs library/core/tests/num/dec2flt/parse.rs library/portable-simd/crates/core_simd/tests/mask_ops_impl/*.rs library/portable-simd/crates/core_simd/webdriver.json +library/std/src/sys/windows/path/tests.rs library/stdarch/ci/gba.json +library/stdarch/crates/std_detect/src/detect/test_data/*.auxv library/stdarch/crates/stdarch-verify/arm-intrinsics.html library/stdarch/crates/stdarch-verify/x86-intel.xml -library/stdarch/crates/std_detect/src/detect/test_data/*.auxv -library/std/src/sys/windows/path/tests.rs -src/tools/clippy/tests/ui-toml/large_include_file/too_big.txt +src/tools/*/tests/*/*.stderr +src/tools/cargo/benches/workspaces/*.tgz +src/tools/cargo/crates/mdman/tests/compare/expected/formatting.txt +src/tools/cargo/tests/testsuite/build_script.rs +src/tools/cargo/tests/testsuite/ssh.rs +src/tools/clippy/tests/ui-internal/auxiliary/paths.rs src/tools/clippy/tests/ui-toml/*/*.stderr +src/tools/clippy/tests/ui-toml/large_include_file/too_big.txt src/tools/clippy/tests/ui/wildcard_enum_match_arm.fixed src/tools/rust-analyzer/bench_data/numerous_macro_rules src/tools/rust-analyzer/crates/ide/src/syntax_highlighting/test_data/highlight_*.html @@ -212,45 +239,53 @@ src/tools/rustfmt/tests/source/*/*.rs src/tools/rustfmt/tests/target/issue-5088/very_long_comment_wrap_comments_false.rs src/tools/rustfmt/tests/writemode/target/*.json src/tools/rustfmt/tests/writemode/target/*.xml -src/tools/*/tests/*/*.stderr -tests/auxiliary/rust_test_helpers.c -tests/debuginfo/type-names.cdb.js tests/*/*.html +tests/*/*.rs +tests/*/*.stderr tests/*/*/*.js tests/*/*/*.json -tests/*/*.rs tests/*/*/*.rs +tests/*/*/*.stderr +tests/*/*/*.stdout tests/*/*/*/*.rs +tests/auxiliary/rust_test_helpers.c +tests/debuginfo/type-names.cdb.js tests/run-make/*/*.c tests/run-make/x86_64-fortanix-unknown-sgx-lvi/enclave/foo.c tests/run-make/x86_64-fortanix-unknown-sgx-lvi/enclave/libcmake_foo/src/foo.c tests/rustdoc-gui/src/huge_logo/src/lib.rs tests/rustdoc-gui/src/scrape_examples/examples/check-many-*.rs -tests/rustdoc-js/*.js tests/rustdoc-js-std/*.js -tests/*/*.stderr -tests/*/*/*.stderr -tests/*/*/*.stdout +tests/rustdoc-js/*.js tests/ui/macros/not-utf8.bin tests/ui/nll/*/*.stderr tests/ui/parser/issues/*.stderr tests/ui/proc-macro/debug/*.stderr vendor/annotate-snippets/tests/fixtures/no-color/strip_line_non_ws.toml +vendor/basic-toml/tests/invalid-encoder/array-mixed-types-ints-and-floats.json vendor/basic-toml/tests/valid/*.json vendor/basic-toml/tests/valid/table-whitespace.toml -vendor/basic-toml/tests/invalid-encoder/array-mixed-types-ints-and-floats.json vendor/bstr-0.2.17/src/unicode/fsm/*.dfa +vendor/bstr/src/unicode/fsm/*.dfa vendor/cargo_metadata*/tests/test_samples.rs +vendor/content_inspector/testdata/* +vendor/der/tests/examples/spki.der vendor/diff/tests/data/gitignores.chars.diff vendor/dissimilar/benches/*.txt vendor/elasticlunr-rs/tests/data/*.in.txt vendor/elasticlunr-rs/tests/searchindex_fixture_*.json -vendor/flate2/tests/corrupt-gz-file.bin +vendor/elliptic-curve/tests/examples/*.der +vendor/elliptic-curve/tests/examples/*.pem +vendor/flate2-1.0.23/tests/* vendor/flate2/tests/*.gz +vendor/flate2/tests/corrupt-gz-file.bin vendor/fluent-syntax/benches/parser.rs vendor/gimli*/fixtures/self/* +vendor/gix-glob/tests/fixtures/generated-archives/make_baseline.tar.xz vendor/gsgdt/tests/*.json vendor/handlebars/tests/helper_with_space.rs +vendor/hkdf/tests/data/*.blb +vendor/hmac/tests/data/*.blb vendor/html5ever/data/bench/*.html vendor/icu_locid/benches/fixtures/*.json vendor/icu_locid/tests/fixtures/*.json @@ -258,6 +293,11 @@ vendor/icu_provider_adapters/tests/data/langtest/*/*.json vendor/icu_provider_adapters/tests/data/langtest/*/*/*/*.json vendor/idna/tests/IdnaTest*.txt vendor/idna/tests/punycode_tests.json +vendor/im-rc/proptest-regressions/*.txt +vendor/im-rc/proptest-regressions/*/*.txt +vendor/js-sys/tests/headless.js +vendor/js-sys/tests/wasm/*.js +vendor/js-sys/tests/wasm/global_fns.rs vendor/libloading/tests/*.dll vendor/litemap/benches/testdata/large_litemap.postcard vendor/lsp-types/tests/tsc-unix.lsif @@ -271,7 +311,16 @@ vendor/minifier/tests/files/minified_main.js vendor/minifier/tests/files/test.json vendor/minimal-lexical/tests/parse_tests.rs vendor/minimal-lexical/tests/slow_tests.rs +vendor/openssl/test/* +vendor/p384/src/test_vectors/data/wycheproof.blb +vendor/pasetors/test_vectors/*.json +vendor/pasetors/test_vectors/*/*.json +vendor/pem-rfc7468/tests/examples/*.der +vendor/pem-rfc7468/tests/examples/*.pem vendor/petgraph/tests/res/*.txt +vendor/pkcs8/tests/examples/*.der +vendor/pkcs8/tests/examples/*.pem +vendor/pkcs8/tests/private_key.rs vendor/regex-automata-0.1.10/data/fowler-tests/basic.dat vendor/regex-automata-0.1.10/data/tests/fowler/basic.dat vendor/regex-automata/tests/data/fowler/dat/basic.dat @@ -280,14 +329,21 @@ vendor/regex/tests/crates_regex.rs vendor/regex/tests/fowler.rs vendor/rustc-demangle/src/lib.rs vendor/rustc-demangle/src/v0-large-test-symbols/early-recursion-limit +vendor/sec1/tests/examples/p256-priv.der +vendor/sec1/tests/examples/p256-priv.pem vendor/serde_json/tests/lexical/parse.rs vendor/sha1/tests/data/sha1.blb vendor/sha2/tests/data/*.blb +vendor/spki/tests/examples/*.der vendor/term/tests/data/* +vendor/toml_edit/tests/fixtures/invalid/*/*.stderr vendor/unicode-ident/tests/fst/*.fst vendor/unicode-segmentation/src/testdata.rs vendor/url/tests/*.json +vendor/vte/tests/demo.vte vendor/walkdir/compare/nftw.c +vendor/wasm-bindgen/tests/headless/* +vendor/wasm-bindgen/tests/wasm/* vendor/zerovec/benches/testdata/*.postcard vendor/zip/tests/data/*.zip @@ -310,15 +366,20 @@ vendor/wasi/src/lib_generated.rs # Compromise, ideally we'd package these in their own package src/librustdoc/html/static/fonts/*.woff2 -# file brokenness (detected as Algol source code) +# file brokenness compiler/rustc_apfloat/src/lib.rs compiler/rustc_driver/src/lib.rs compiler/rustc_expand/src/mbe/quoted.rs compiler/rustc_macros/src/symbols/tests.rs +extra/bitflags/src/traits.rs library/alloc/src/slice/tests.rs -library/stdarch/crates/stdarch-verify/src/lib.rs library/std/src/sys/unix/process/process_unix.rs +library/stdarch/crates/stdarch-verify/src/lib.rs src/librustdoc/html/markdown/tests.rs +src/tools/cargo/crates/mdman/src/format/man.rs +src/tools/cargo/crates/mdman/src/format/md.rs +src/tools/cargo/crates/mdman/src/format/text.rs +src/tools/cargo/crates/mdman/src/lib.rs src/tools/clippy/clippy_lints/src/needless_pass_by_value.rs src/tools/clippy/clippy_lints/src/pass_by_ref_or_value.rs src/tools/rust-analyzer/crates/ide-assists/src/handlers/number_representation.rs @@ -333,6 +394,14 @@ vendor/ahash/src/fallback_hash.rs vendor/ahash/src/hash_quality_test.rs vendor/ahash/src/lib.rs vendor/aho-corasick/src/nfa.rs +vendor/base16ct/benches/mod.rs +vendor/base16ct/src/lower.rs +vendor/base16ct/src/mixed.rs +vendor/base16ct/src/upper.rs +vendor/base64/src/decode.rs +vendor/base64/src/encode.rs +vendor/base64ct/src/*.rs +vendor/base64ct/tests/*.rs vendor/block-buffer/tests/mod.rs vendor/clap*/src/derive.rs vendor/clap_derive/src/derives/args.rs @@ -346,8 +415,12 @@ vendor/digest/src/core_api/rt_variable.rs vendor/digest/src/core_api/wrapper.rs vendor/digest/src/dev.rs vendor/displaydoc/src/expand.rs +vendor/ecdsa/src/der.rs +vendor/ed25519-compact/src/sha512.rs vendor/env_logger-0.*/src/fmt/writer/mod.rs vendor/env_logger/src/fmt/writer/mod.rs +vendor/flate2-1.0.23/src/mem.rs +vendor/flate2-1.0.23/src/zio.rs vendor/flate2/src/mem.rs vendor/flate2/src/zio.rs vendor/futures-macro/src/lib.rs @@ -358,6 +431,18 @@ vendor/gimli*/src/read/loclists.rs vendor/gimli*/src/read/lookup.rs vendor/gimli*/src/read/rnglists.rs vendor/gimli*/src/read/unit.rs +vendor/gix-config/src/file/init/mod.rs +vendor/gix-config/src/parse/events.rs +vendor/gix-date/src/parse.rs +vendor/gix-features/src/parallel/mod.rs +vendor/gix-features/src/parallel/reduce.rs +vendor/gix-features/src/zlib/mod.rs +vendor/gix-features/src/zlib/stream/inflate.rs +vendor/gix-odb/src/store_impls/loose/find.rs +vendor/gix-protocol/src/fetch/delegate.rs +vendor/gix-ref/src/store/packed/decode.rs +vendor/gix-ref/src/store/packed/decode/tests.rs +vendor/gix-revision/src/spec/parse/function.rs vendor/icu_locid/tests/langid.rs vendor/icu_locid/tests/locale.rs vendor/indoc/src/lib.rs @@ -387,11 +472,39 @@ vendor/nom/tests/issues.rs vendor/nom/tests/json.rs vendor/nom/tests/mp4.rs vendor/nom/tests/multiline.rs -vendor/pest_generator/src/generator.rs +vendor/nom8/src/bits/complete.rs +vendor/nom8/src/bits/mod.rs +vendor/nom8/src/bits/streaming.rs +vendor/nom8/src/bits/tests.rs +vendor/nom8/src/branch/mod.rs +vendor/nom8/src/branch/tests.rs +vendor/nom8/src/bytes/complete.rs +vendor/nom8/src/bytes/mod.rs +vendor/nom8/src/bytes/streaming.rs +vendor/nom8/src/character/complete.rs +vendor/nom8/src/character/streaming.rs +vendor/nom8/src/combinator/mod.rs +vendor/nom8/src/combinator/tests.rs +vendor/nom8/src/error.rs +vendor/nom8/src/multi/mod.rs +vendor/nom8/src/multi/tests.rs +vendor/nom8/src/number/complete.rs +vendor/nom8/src/parser.rs +vendor/nom8/src/sequence/mod.rs +vendor/nom8/tests/css.rs +vendor/nom8/tests/issues.rs +vendor/nom8/tests/json.rs +vendor/nom8/tests/mp4.rs +vendor/nom8/tests/multiline.rs +vendor/openssl/src/envelope.rs +vendor/orion/src/test_framework/aead_interface.rs +vendor/orion/src/test_framework/streamcipher_interface.rs +vendor/os_info/src/matcher.rs vendor/pest/src/parser_state.rs vendor/pest/src/position.rs vendor/pest/src/span.rs vendor/pest/tests/calculator.rs +vendor/pest_generator/src/generator.rs vendor/proc-macro2/src/parse.rs vendor/pulldown-cmark/benches/html_rendering.rs vendor/pulldown-cmark/src/linklabel.rs @@ -407,23 +520,29 @@ vendor/sha2/src/sha512.rs vendor/shlex/src/lib.rs vendor/snap/src/compress.rs vendor/snap/src/decompress.rs +vendor/snapbox/src/substitutions.rs vendor/syn*/src/attr.rs vendor/syn*/src/custom_punctuation.rs vendor/syn*/src/data.rs vendor/syn*/src/derive.rs vendor/syn*/src/group.rs vendor/syn*/src/meta.rs -vendor/syn*/src/path.rs vendor/syn*/src/pat.rs +vendor/syn*/src/path.rs vendor/syn*/src/punctuated.rs vendor/syn*/src/stmt.rs vendor/syn*/src/token.rs vendor/syn*/src/ty.rs vendor/syn*/tests/test_meta.rs vendor/thiserror-impl/src/attr.rs +vendor/time/src/parsing/*.rs vendor/time/src/parsing/combinator/mod.rs vendor/time/src/parsing/combinator/rfc/*.rs -vendor/time/src/parsing/*.rs +vendor/toml_edit/src/parser/key.rs +vendor/toml_edit/src/parser/mod.rs +vendor/toml_edit/src/parser/numbers.rs +vendor/toml_edit/src/parser/strings.rs +vendor/toml_edit/src/raw_string.rs vendor/url/src/parser.rs vendor/utf-8/benches/from_utf8_lossy.rs vendor/utf-8/tests/unit.rs @@ -431,7 +550,7 @@ vendor/xz2/src/bufread.rs vendor/xz2/src/stream.rs vendor/yansi/src/tests.rs -# file brokenness (detected as Dyalog APL transfer) +# file brokenness vendor/clap/examples/demo.md vendor/clap/examples/tutorial_builder/*.md vendor/clap/examples/tutorial_derive/*.md |