Raspbian automatic forward porter [Mon, 5 May 2025 20:21:07 +0000 (21:21 +0100)]
Merge version 1.85.0+dfsg2-3+rpi1 and 1.85.0+dfsg3-1 to produce 1.85.0+dfsg3-1+rpi1
Fabian Grünbichler [Thu, 24 Apr 2025 15:47:57 +0000 (17:47 +0200)]
Merge rustc (1.85.0+dfsg3-1) import into refs/heads/workingbranch
Petros Angelatos [Tue, 8 Apr 2025 19:37:25 +0000 (22:37 +0300)]
RUSTSEC-2025-0024: sync::mpsc: prevent double free on `Drop`
This PR is fixing a regression introduced by #121646 that can lead to a
double free when dropping the channel.
The details of the bug can be found in the corresponding crossbeam PR
https://github.com/crossbeam-rs/crossbeam/pull/1187
Signed-off-by: Petros Angelatos <petrosagg@gmail.com>
FG: cherry-pick from upstream
b9e2ac5c7b1d6bb3b6f5fdfe0819eaf7e95bf7ff
FG: drop test context
Signed-off-by: Fabian Grünbichler <git@fabian.gruenbichler.email>
Gbp-Pq: Topic upstream
Gbp-Pq: Name RUSTSEC-2025-0024-sync-mpsc-prevent-double-free-on-Drop.patch
Emily [Tue, 1 Apr 2025 20:55:16 +0000 (21:55 +0100)]
gitoxide: backport fix for CVE-2025-31130
fix feat!: detect SHA‐1 collision attacks
Fix [GHSA-2frx-2596-x5r6].
[GHSA-2frx-2596-x5r6]: https://github.com/GitoxideLabs/gitoxide/security/advisories/GHSA-2frx-2596-x5r6
This uses the `sha1-checked` crate from the RustCrypto project. It’s
a pure Rust implementation, with no SIMD or assembly code.
The hashing implementation moves to `gix-hash`, as it no longer
depends on any feature configuration. I wasn’t sure the ideal
crate to put this in, but after checking reverse dependencies on
crates.io, it seems like there’s essentially no user of `gix-hash`
that wouldn’t be pulling in a hashing implementation anyway, so I
think this is a fine and logical place for it to be.
A fallible API seems better than killing the process as Git does,
since we’re in a library context and it would be bad if you could
perform denial‐of‐service attacks on a server by sending it hash
collisions. (Although there are probably cheaper ways to mount a
denial‐of‐service attack.)
The new API also returns an `ObjectId` rather than `[u8; 20]`; the
vast majority of `Hasher::digest()` users immediately convert the
result to `ObjectId`, so this will help eliminate a lot of cruft
across the tree. `ObjectId` also has nicer `Debug` and `Display`
instances than `[u8; 20]`, and should theoretically make supporting
the hash function transition easier, although I suspect further API
changes will be required for that anyway. I wasn’t sure whether
this would be a good change, as not every digest identifies an
entry in the Git object database, but even many of the existing
uses for non‐object digests across the tree used the `ObjectId`
API anyway. Perhaps it would be best to have a separate non‐alias
`Digest` type that `ObjectId` wraps, but this seems like the pragmatic
choice for now that sticks with current practice.
The old API remains in this commit, as well as a temporary
non‐fallible but `ObjectId`‐returning `Hasher::finalize()`,
pending the migration of all in‐tree callers.
I named the module `gix_hash::hasher` since `gix_hash::hash` seemed
like it would be confusing. This does mean that there is a function
and module with the same name, which is permitted but perhaps a
little strange.
Everything is re‐exported directly other than
`gix_features::hash::Write`, which moves along with the I/O
convenience functions into a new public submodule and becomes
`gix_hash::hasher::io::Write`, as that seems like a clearer name
to me, being akin to the `gix_hash::hasher` function but as an
`std::io::Write` wrapper.
Raw hashing is somewhere around 0.25× to 0.65× the speed of the
previous implementation, depending on the feature configuration
and whether the CPU supports hardware‐accelerated hashing. (The
more portable assembly in `sha1-asm` that doesn’t require the SHA
instruction set doesn’t seem to speed things up that much; in fact,
`sha1_smol` somehow regularly beats the assembly code used by `sha1`
on my i9‐9880H MacBook Pro! Presumably this is why that path was
removed in newer versions of the `sha1` crate.)
Performance on an end‐to‐end `gix no-repo pack verify` benchmark
using pack files from the Linux kernel Git server measures around
0.41× to 0.44× compared to the base commit on an M2 Max and a
Ryzen 7 5800X, both of which have hardware instructions for SHA‐1
acceleration that the previous implementation uses but this one does
not. On the i9‐9880H, it’s around 0.58× to 0.60× the speed;
the slowdown is reduced by the older hardware’s lack of SHA‐1
instructions.
The `sha1collisiondetection` crate from the Sequoia PGP project,
based on a modified C2Rust translation of the library used by Git,
was also considered; although its raw hashing performance seems
to measure around 1.12–1.15× the speed of `sha1-checked` on
x86, it’s indistinguishable from noise on the end‐to‐end
benchmark, and on an M2 Max `sha1-checked` is consistently
around 1.03× the speed of `sha1collisiondetection` on that
benchmark. The `sha1collisiondetection` crate has also had a
soundness issue in the past due to the automatic C translation,
whereas `sha1-checked` has only one trivial `unsafe` block. On the
other hand, `sha1collisiondetection` is used by both Sequoia itself
and the `gitoid` crate, whereas rPGP is the only major user of
`sha1-checked`. I don’t think there’s a clear winner here.
The performance regression is very unfortunate, but the [SHAttered]
attack demonstrated a collision back in 2017, and the 2020 [SHA‐1 is
a Shambles] attack demonstrated a practical chosen‐prefix collision
that broke the use of SHA‐1 in OpenPGP, costing $75k to perform,
with an estimate of $45k to replicate at the time of publication and
$11k for a classical collision.
[SHAttered]: https://shattered.io/
[SHA‐1 is a Shambles]: https://sha-mbles.github.io/
Given the increase in GPU performance and production since then,
that puts the Git object format squarely at risk. Git mitigated this
attack in 2017; the algorithm is fairly general and detects all the
existing public collisions. My understanding is that an entirely new
cryptanalytic approach would be required to develop a collision attack
for SHA‐1 that would not be detected with very high probability.
I believe that the speed penalty could be mitigated, although not
fully eliminated, by implementing a version of the hardened SHA‐1
function that makes use of SIMD. For instance, the assembly code used
by `openssl speed sha1` on my i9‐9880H measures around 830 MiB/s,
compared to the winning 580 MiB/s of `sha1_smol`; adding collision
detection support to that would surely incur a performance penalty,
but it is likely that it could be much more competitive with
the performance before this commit than the 310 MiB/s I get with
`sha1-checked`. I haven’t been able to find any existing work on
this; it seems that more or less everyone just uses the original
C library that Git does, presumably because nothing except Git and
OpenPGP is still relying on SHA‐1 anyway…
The performance will never compete with the >2 GiB/s that can
be achieved with the x86 SHA instruction set extension, as the
`SHA1RNDS4` instruction sadly runs four rounds at a time while the
collision detection algorithm requires checks after every round,
but I believe SIMD would still offer a significant improvement,
and the AArch64 extension seems like it may be more flexible.
I know that these days the Git codebase has an additional faster
unsafe API without these checks that it tries to carefully use only
for operations that do not depend on hashing results for correctness
or safety. I personally believe that’s not a terribly good idea,
as it seems easy to misuse in a case where correctness actually does
matter, but maybe that’s just my Rust safety bias talking. I think
it would be better to focus on improving the performance of the safer
algorithm, as I think that many of the operations where the performance
penalty is the most painful are dealing with untrusted input anyway.
The `Hasher` struct gets a lot bigger; I don’t know if this is
an issue or not, but if it is, it could potentially be boxed.
Closes: #585
Backported from upstream, paths and context adapted and non-applicabable parts
removed.
Signed-off-by: Fabian Grünbichler <git@fabian.gruenbichler.email>
Gbp-Pq: Topic vendor
Gbp-Pq: Name gitoxide-backport-fix-for-CVE-2025-31130.patch
Fabian Grünbichler [Mon, 17 Mar 2025 05:53:14 +0000 (06:53 +0100)]
cargo: update git2 bindings
to support libgit2 1.9
Signed-off-by: Fabian Grünbichler <git@fabian.gruenbichler.email>
Gbp-Pq: Topic vendor
Gbp-Pq: Name cargo-update-git2-bindings.patch
Fabian Grünbichler [Tue, 21 Jan 2025 09:43:33 +0000 (10:43 +0100)]
bootstrap: revert cross-build breaking change
this reverts
68034f837a39387e49fc7d7c5b088f5372a1127e modulo file split that
happened afterwards.
Forwarded: https://github.com/rust-lang/rust/issues/133629
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Gbp-Pq: Topic bootstrap
Gbp-Pq: Name bootstrap-revert-cross-build-breaking-change.patch
Fabian Grünbichler [Thu, 16 Jan 2025 15:34:12 +0000 (16:34 +0100)]
proc-macro-srv: make usage of RTLD_DEEPBIND portable
the constant is wrong on some platforms (e.g., on mips64el it's 0x10, and 0x8
is RTLD_NOLOAD which makes all this functionality broken), the libc crate takes
care of those differences for us.
fallback to old hard-coded value for non-glibc environments (which might or
might not of DEEPBIND support).
Forwarded: https://github.com/rust-lang/rust/pull/135591
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Gbp-Pq: Topic behaviour
Gbp-Pq: Name proc-macro-srv-make-usage-of-RTLD_DEEPBIND-portable.patch
Fabian Grünbichler [Sat, 11 Jan 2025 15:37:16 +0000 (16:37 +0100)]
bootstrap: don't attempt to download rustc in tests
the tests use a default config, so we need to manually override this
option..
Signed-off-by: Fabian Grünbichler <debian@fabian.gruenbichler.email>
Gbp-Pq: Topic build
Gbp-Pq: Name bootstrap-don-t-attempt-to-download-rustc-in-tests.patch
Fabian Grünbichler [Wed, 4 Dec 2024 16:50:43 +0000 (17:50 +0100)]
ci_rustc: disable test that requires upstream git repo
Forwarded: not-needed
Signed-off-by: Fabian Grünbichler <git@fabian.gruenbichler.email>
Gbp-Pq: Topic build
Gbp-Pq: Name ci_rustc-disable-test-that-requires-upstream-git-repo.patch
Fabian Grünbichler [Sat, 30 Nov 2024 11:24:03 +0000 (12:24 +0100)]
blake3: skip embedded C code, use pure implementation
Forwarded: not-needed
Signed-off-by: Fabian Grünbichler <git@fabian.gruenbichler.email>
Gbp-Pq: Topic vendor
Gbp-Pq: Name blake3-skip-embedded-C-code-use-pure-implementation.patch
Fabian Grünbichler [Wed, 23 Oct 2024 20:37:25 +0000 (22:37 +0200)]
ignore broken debuginfo tests
Forwarded: yes
Signed-off-by: Fabian Grünbichler <git@fabian.gruenbichler.email>
Gbp-Pq: Topic build
Gbp-Pq: Name ignore-broken-debuginfo-tests.patch
Fabian Grünbichler [Tue, 22 Oct 2024 07:03:38 +0000 (09:03 +0200)]
bootstrap tests: disable compiler-rt optimizing
it cannot work since there are no bundled LLVM (and thus no bundled
compiler-rt) sources available. during the regular build this is handled by our
config, but bootstrap tests don't use that..
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Gbp-Pq: Topic build
Gbp-Pq: Name bootstrap-tests-disable-compiler-rt-optimizing.patch
Fabian Grünbichler [Tue, 8 Oct 2024 10:58:44 +0000 (12:58 +0200)]
libz-sys: allow cross-building
Signed-off-by: Fabian Grünbichler <debian@fabian.gruenbichler.email>
Gbp-Pq: Topic vendor
Gbp-Pq: Name libz-sys-allow-cross-building.patch
Fabian Grünbichler [Wed, 31 Jul 2024 08:29:04 +0000 (10:29 +0200)]
onig_sys: use system lib
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Gbp-Pq: Topic vendor
Gbp-Pq: Name onig_sys-use-system-lib.patch
Simon Chopin [Thu, 13 Jun 2024 09:16:41 +0000 (11:16 +0200)]
Disable the doctests for the instruction_set errors
Bug: https://github.com/rust-lang/rust/issues/83453
Last-Update: 2022-02-23
The fix is as described in the upstream issue.
Gbp-Pq: Topic ubuntu
Gbp-Pq: Name ubuntu-ignore-arm-doctest.patch
Debian Rust Maintainers [Thu, 13 Jun 2024 09:16:41 +0000 (11:16 +0200)]
ubuntu-disable-ppc64el-asm-tests
Forwarded: not-needed
Gbp-Pq: Topic ubuntu
Gbp-Pq: Name ubuntu-disable-ppc64el-asm-tests.patch
Debian Rust Maintainers [Thu, 14 Jul 2022 11:17:39 +0000 (13:17 +0200)]
removed some embedded fonts
Forwarded: not-needed
===================================================================
Gbp-Pq: Topic behaviour
Gbp-Pq: Name d-rustdoc-disable-embedded-fonts.patch
Debian Rust Maintainers [Thu, 14 Jul 2022 11:17:39 +0000 (13:17 +0200)]
d-rustc-windows-ssp
Bug: https://github.com/rust-lang/rust/issues/68973
Gbp-Pq: Topic behaviour
Gbp-Pq: Name d-rustc-windows-ssp.patch
Angus Lees [Thu, 14 Jul 2022 11:17:39 +0000 (13:17 +0200)]
Set DT_SONAME when building dylibs
In Rust, library filenames include a version-specific hash to help
the run-time linker find the correct version. Unlike in C/C++, the
compiler looks for all libraries matching a glob that ignores the
hash and reads embedded metadata to work out versions, etc.
The upshot is that there is no need for the usual "libfoo.so ->
libfoo-1.2.3.so" symlink common with C/C++ when building with Rust,
and no need to communicate an alternate filename to use at run-time
vs compile time. If linking to a Rust dylib from C/C++ however, a
"libfoo.so -> libfoo-$hash.so" symlink may well be useful and in
this case DT_SONAME=libfoo-$hash.so would be required. More
mundanely, various tools (eg: dpkg-shlibdeps) complain if they don't
find DT_SONAME on shared libraries in public directories.
This patch passes -Wl,-soname=$outfile when building dylibs (and
using a GNU linker).
Forwarded: no
Gbp-Pq: Topic behaviour
Gbp-Pq: Name d-rustc-add-soname.patch
Angus Lees [Thu, 14 Jul 2022 11:17:39 +0000 (13:17 +0200)]
Hardcode LLDB python module directory
Debian package installs python modules into a fixed directory, so
just hardcode path in wrapper script.
Forwarded: not-needed
Gbp-Pq: Topic behaviour
Gbp-Pq: Name d-rust-lldb-paths.patch
Angus Lees [Thu, 14 Jul 2022 11:17:39 +0000 (13:17 +0200)]
Hardcode GDB python module directory
Debian package installs python modules into a fixed directory, so
just hardcode path in wrapper script.
Forwarded: not-needed
Gbp-Pq: Topic behaviour
Gbp-Pq: Name d-rust-gdb-paths.patch
Debian Rust Maintainers [Thu, 14 Jul 2022 11:17:39 +0000 (13:17 +0200)]
d-test-ignore-avx-44056
Bug: https://github.com/rust-lang/rust/pull/55667
Forwarded: not-needed
===================================================================
Gbp-Pq: Topic build
Gbp-Pq: Name d-test-ignore-avx-44056.patch
Debian Rust Maintainers [Thu, 13 Jun 2024 09:16:40 +0000 (11:16 +0200)]
partial revert of
b9eedea4b0368fd1f00f204db75109ff444fab5b upstream
Forwarded: not-needed
Gbp-Pq: Topic build
Gbp-Pq: Name d-bootstrap-permit-symlink-in-docs.patch
Debian Rust Maintainers [Thu, 14 Jul 2022 11:17:39 +0000 (13:17 +0200)]
d-bootstrap-custom-debuginfo-path
Forwarded: not-needed
===================================================================
Gbp-Pq: Topic build
Gbp-Pq: Name d-bootstrap-custom-debuginfo-path.patch
Debian Rust Maintainers [Thu, 14 Jul 2022 11:17:39 +0000 (13:17 +0200)]
d-bootstrap-use-local-css
Forwarded: not-needed
===================================================================
Gbp-Pq: Topic build
Gbp-Pq: Name d-bootstrap-use-local-css.patch
Debian Rust Maintainers [Thu, 14 Jul 2022 11:17:39 +0000 (13:17 +0200)]
Fix links to cargo-doc
We package cargo docs in a slightly different location; also tweak linkchecker
to not fail these links.
Forwarded: not-needed
Gbp-Pq: Topic build
Gbp-Pq: Name d-bootstrap-cargo-doc-paths.patch
Debian Rust Maintainers [Thu, 14 Jul 2022 11:17:39 +0000 (13:17 +0200)]
set tools to those built in Debian
Forwarded: not-needed
===================================================================
Gbp-Pq: Topic build
Gbp-Pq: Name d-bootstrap-no-assume-tools.patch
Matthijs van Otterdijk [Thu, 14 Jul 2022 11:17:38 +0000 (13:17 +0200)]
bootstrap: always use commit info file instead of checking .git
Forwarded: not-needed
Gbp-Pq: Topic build
Gbp-Pq: Name d-bootstrap-disable-git.patch
Debian Rust Maintainers [Thu, 14 Jul 2022 11:17:38 +0000 (13:17 +0200)]
Install symlinks as-is, don't dereference them
Our patch to mdbook installs symlinks to systems versions of font-awesome,
highlight, etc. Upstream mdbook otherwise doesn't use symlinks, so this
doesn't affect anything else that's already generated.
Forwarded: not-needed
Gbp-Pq: Topic build
Gbp-Pq: Name d-bootstrap-install-symlinks.patch
Debian Rust Maintainers [Thu, 14 Jul 2022 11:17:38 +0000 (13:17 +0200)]
d-bootstrap-rustflags
Forwarded: not-needed
===================================================================
Gbp-Pq: Topic build
Gbp-Pq: Name d-bootstrap-rustflags.patch
Debian Rust Maintainers [Sat, 2 Oct 2021 00:08:00 +0000 (01:08 +0100)]
d-0003-cc-psm-rebuild-wasm32
Forwarded: not-needed
Gbp-Pq: Topic vendor
Gbp-Pq: Name d-0003-cc-psm-rebuild-wasm32.patch
Fabian Grünbichler [Wed, 6 Sep 2023 19:23:24 +0000 (13:23 -0600)]
d-0021-vendor-remove-windows-dependencies
use something like
find vendor -iname Cargo.toml -exec grep -H -n -e 'schannel' -e 'windows-sys' -e 'winapi' -e 'ntapi' -e 'wincon' -e 'winreg' -e 'windows' -e 'winsplit' {} \;
to find dependencies on windows targets in vendored crates. you will likely
need to remove some hunks from this patch after pruning dependencies, since
hopefully a few of the crates patched during early rebasing are eliminated.
windows-bindgen and windows-metadata should not be removed, they are needed for
the build and don't pull in windows-sys and friends.
Forwarded: not-needed
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Gbp-Pq: Topic prune
Gbp-Pq: Name d-0021-vendor-remove-windows-dependencies.patch
Debian Rust Maintainers [Mon, 6 May 2024 08:25:32 +0000 (10:25 +0200)]
d-0020-remove-windows-dependencies
use something like
find src compiler library -iname Cargo.toml -exec grep -H -n -e 'windows-sys' -e 'winapi' -e 'ntapi' -e 'wincon' -e 'winreg' -e 'windows' {} \;
to find and eliminate dependencies on windows-only crates when rebasing.
windows-bindgen and windows-metadata should not be removed, they are needed for
the build and don't pull in windows-sys and friends.
Forwarded: not-needed
===================================================================
Gbp-Pq: Topic prune
Gbp-Pq: Name d-0020-remove-windows-dependencies.patch
Debian Rust Maintainers [Mon, 6 May 2024 08:25:32 +0000 (10:25 +0200)]
d-0011-cargo-remove-nghttp2
Description: remove dependency on libnghttp2-sys so it can be pruned.
Last-Update: 2023-05-17
Forwarded: not-needed
Gbp-Pq: Topic prune
Gbp-Pq: Name d-0011-cargo-remove-nghttp2.patch
Debian Rust Maintainers [Mon, 6 May 2024 08:25:32 +0000 (10:25 +0200)]
d-0010-cargo-remove-vendored-c-crates
Description: remove all vendoring features of crates normally shipping bundled
C libs. that C code is stripped when repacking, so the features can't work
anyway.
Forwarded: not-needed
Gbp-Pq: Topic prune
Gbp-Pq: Name d-0010-cargo-remove-vendored-c-crates.patch
Debian Rust Maintainers [Sat, 11 Jan 2025 10:37:00 +0000 (11:37 +0100)]
d-0007-no-tzdb
Description: remove jiff-tzdb(-platform)
on Debian, we can just use the tzdata information..
Forwarded: not-needed
Gbp-Pq: Topic prune
Gbp-Pq: Name d-0007-no-tzdb.patch
Debian Rust Maintainers [Sat, 11 Jan 2025 10:37:00 +0000 (11:37 +0100)]
d-0006-no-mimalloc
Description: remove mimalloc(-sys)
Forwarded: not-needed
Gbp-Pq: Topic prune
Gbp-Pq: Name d-0006-no-mimalloc.patch
Debian Rust Maintainers [Sat, 2 Oct 2021 00:08:00 +0000 (01:08 +0100)]
d-0005-no-jemalloc
Description: remove jemalloc-sys
Forwarded: not-needed
Gbp-Pq: Topic prune
Gbp-Pq: Name d-0005-no-jemalloc.patch
Debian Rust Maintainers [Sat, 2 Oct 2021 00:08:00 +0000 (01:08 +0100)]
d-0002-mdbook-strip-embedded-libs
Description: Use https://github.com/infinity0/mdBook/tree/debian to help you rebase
the patch on top of a newer version. . Make sure the paths here match the ones
in debian/rust-doc.links
Forwarded: not-needed
Gbp-Pq: Topic prune
Gbp-Pq: Name d-0002-mdbook-strip-embedded-libs.patch
Debian Rust Maintainers [Sat, 2 Oct 2021 00:08:00 +0000 (01:08 +0100)]
d-0001-pkg-config-no-special-snowflake
Description: always enable cross compilation via pkgconf, and set the right binary name.
Forwarded: not-needed
Gbp-Pq: Topic prune
Gbp-Pq: Name d-0001-pkg-config-no-special-snowflake.patch
Debian Rust Maintainers [Sat, 2 Oct 2021 00:07:59 +0000 (01:07 +0100)]
d-0000-ignore-removed-submodules
Description: remove upstream parts that are not needed for the Debian build, in
order to both reduce the orig tarball and the vendored crates within.
Forwarded: not-needed
Gbp-Pq: Topic prune
Gbp-Pq: Name d-0000-ignore-removed-submodules.patch
Debian Rust Maintainers [Thu, 13 Jun 2024 09:16:39 +0000 (11:16 +0200)]
d-disable-download-tests
Forwarded: no
Gbp-Pq: Topic upstream
Gbp-Pq: Name d-disable-download-tests.patch
Debian Rust Maintainers [Thu, 13 Jun 2024 09:16:39 +0000 (11:16 +0200)]
d-ignore-test_arc_condvar_poison-ppc
Forwarded: no
Gbp-Pq: Topic upstream
Gbp-Pq: Name d-ignore-test_arc_condvar_poison-ppc.patch
Debian Rust Maintainers [Thu, 13 Jun 2024 09:16:39 +0000 (11:16 +0200)]
compiletest: add ignore-hurd support and annotate some tests
These tests hang or make the box OOM
Forwarded: no
Signed-off-by: Fabian Grünbichler <git@fabian.gruenbichler.email>
Gbp-Pq: Topic upstream
Gbp-Pq: Name u-hurd-tests.patch
Debian Rust Maintainers [Thu, 14 Jul 2022 11:17:37 +0000 (13:17 +0200)]
u-rustc-llvm-cross-flags
===================================================================
Gbp-Pq: Topic upstream
Gbp-Pq: Name u-rustc-llvm-cross-flags.patch
Debian Rust Maintainers [Thu, 14 Jul 2022 11:17:37 +0000 (13:17 +0200)]
u-ignore-ppc-hangs
Bug: https://github.com/rust-lang/rust/issues/89607
Gbp-Pq: Topic upstream
Gbp-Pq: Name u-ignore-ppc-hangs.patch
Debian Rust Maintainers [Mon, 6 May 2024 08:25:32 +0000 (10:25 +0200)]
d-0012-cargo-always-return-dev-channel
Last-Update: 2023-05-30
Forwarded: not-needed
Gbp-Pq: Topic cargo
Gbp-Pq: Name d-0012-cargo-always-return-dev-channel.patch
Fabian Grünbichler [Sat, 19 Nov 2022 09:24:08 +0000 (10:24 +0100)]
[PATCH] tests: add missing cross disabled checks
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>
Gbp-Pq: Topic cargo
Gbp-Pq: Name c-0003-tests-add-missing-cross-disabled-checks.patch
Debian Rust Maintainers [Thu, 13 Jun 2024 09:16:38 +0000 (11:16 +0200)]
c-disable-fs-specific-test
===================================================================
Gbp-Pq: Topic cargo
Gbp-Pq: Name c-disable-fs-specific-test.patch
Debian Rust Maintainers [Thu, 13 Jun 2024 09:16:38 +0000 (11:16 +0200)]
c-2200-workaround-x32-test
Bug: https://github.com/rust-lang/cargo/issues/10005
Gbp-Pq: Topic cargo
Gbp-Pq: Name c-2200-workaround-x32-test.patch
Debian Rust Maintainers [Thu, 13 Jun 2024 09:16:38 +0000 (11:16 +0200)]
c-2003-workaround-qemu-vfork-command-not-found
===================================================================
Gbp-Pq: Topic cargo
Gbp-Pq: Name c-2003-workaround-qemu-vfork-command-not-found.patch
Ximin Luo [Thu, 13 Jun 2024 09:16:38 +0000 (11:16 +0200)]
Disable network tests
Forwarded: TODO
Gbp-Pq: Topic cargo
Gbp-Pq: Name c-2002_disable-net-tests.patch
Fabian Grünbichler [Thu, 24 Apr 2025 15:47:57 +0000 (17:47 +0200)]
rustc (1.85.0+dfsg3-1) unstable; urgency=medium
* backport fix for gix-features CVE-2025-31130
* rust-lldb: fix lldb version (Closes: #
1100950)
* cherry-pick fix for crossbeam-channel RUSTSEC-2025-0024
[dgit import unpatched rustc 1.85.0+dfsg3-1]
Fabian Grünbichler [Thu, 24 Apr 2025 15:47:57 +0000 (17:47 +0200)]
Import rustc_1.85.0+dfsg3.orig.tar.xz
[dgit import orig rustc_1.85.0+dfsg3.orig.tar.xz]
Fabian Grünbichler [Thu, 24 Apr 2025 15:47:57 +0000 (17:47 +0200)]
Import rustc_1.85.0+dfsg3.orig-extra.tar.xz
[dgit import orig rustc_1.85.0+dfsg3.orig-extra.tar.xz]
Fabian Grünbichler [Thu, 24 Apr 2025 15:47:57 +0000 (17:47 +0200)]
Import rustc_1.85.0+dfsg3-1.debian.tar.xz
[dgit import tarball rustc 1.85.0+dfsg3-1 rustc_1.85.0+dfsg3-1.debian.tar.xz]
Raspbian automatic forward porter [Thu, 17 Apr 2025 03:41:17 +0000 (04:41 +0100)]
Merge version 1.85.0+dfsg2-2+rpi1 and 1.85.0+dfsg2-3 to produce 1.85.0+dfsg2-3+rpi1
Fabian Grünbichler [Fri, 11 Apr 2025 11:40:09 +0000 (13:40 +0200)]
Merge rustc (1.85.0+dfsg2-3) import into refs/heads/workingbranch
Fabian Grünbichler [Mon, 17 Mar 2025 05:53:14 +0000 (06:53 +0100)]
cargo: update git2 bindings
to support libgit2 1.9
Signed-off-by: Fabian Grünbichler <git@fabian.gruenbichler.email>
Gbp-Pq: Topic vendor
Gbp-Pq: Name cargo-update-git2-bindings.patch
Fabian Grünbichler [Tue, 21 Jan 2025 09:43:33 +0000 (10:43 +0100)]
bootstrap: revert cross-build breaking change
this reverts
68034f837a39387e49fc7d7c5b088f5372a1127e modulo file split that
happened afterwards.
Forwarded: https://github.com/rust-lang/rust/issues/133629
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Gbp-Pq: Topic bootstrap
Gbp-Pq: Name bootstrap-revert-cross-build-breaking-change.patch
Fabian Grünbichler [Thu, 16 Jan 2025 15:34:12 +0000 (16:34 +0100)]
proc-macro-srv: make usage of RTLD_DEEPBIND portable
the constant is wrong on some platforms (e.g., on mips64el it's 0x10, and 0x8
is RTLD_NOLOAD which makes all this functionality broken), the libc crate takes
care of those differences for us.
fallback to old hard-coded value for non-glibc environments (which might or
might not of DEEPBIND support).
Forwarded: https://github.com/rust-lang/rust/pull/135591
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Gbp-Pq: Topic behaviour
Gbp-Pq: Name proc-macro-srv-make-usage-of-RTLD_DEEPBIND-portable.patch
Fabian Grünbichler [Sat, 11 Jan 2025 15:37:16 +0000 (16:37 +0100)]
bootstrap: don't attempt to download rustc in tests
the tests use a default config, so we need to manually override this
option..
Signed-off-by: Fabian Grünbichler <debian@fabian.gruenbichler.email>
Gbp-Pq: Topic build
Gbp-Pq: Name bootstrap-don-t-attempt-to-download-rustc-in-tests.patch
Fabian Grünbichler [Wed, 4 Dec 2024 16:50:43 +0000 (17:50 +0100)]
ci_rustc: disable test that requires upstream git repo
Forwarded: not-needed
Signed-off-by: Fabian Grünbichler <git@fabian.gruenbichler.email>
Gbp-Pq: Topic build
Gbp-Pq: Name ci_rustc-disable-test-that-requires-upstream-git-repo.patch
Fabian Grünbichler [Sat, 30 Nov 2024 11:24:03 +0000 (12:24 +0100)]
blake3: skip embedded C code, use pure implementation
Forwarded: not-needed
Signed-off-by: Fabian Grünbichler <git@fabian.gruenbichler.email>
Gbp-Pq: Topic vendor
Gbp-Pq: Name blake3-skip-embedded-C-code-use-pure-implementation.patch
Fabian Grünbichler [Wed, 23 Oct 2024 20:37:25 +0000 (22:37 +0200)]
ignore broken debuginfo tests
Forwarded: yes
Signed-off-by: Fabian Grünbichler <git@fabian.gruenbichler.email>
Gbp-Pq: Topic build
Gbp-Pq: Name ignore-broken-debuginfo-tests.patch
Fabian Grünbichler [Tue, 22 Oct 2024 07:03:38 +0000 (09:03 +0200)]
bootstrap tests: disable compiler-rt optimizing
it cannot work since there are no bundled LLVM (and thus no bundled
compiler-rt) sources available. during the regular build this is handled by our
config, but bootstrap tests don't use that..
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Gbp-Pq: Topic build
Gbp-Pq: Name bootstrap-tests-disable-compiler-rt-optimizing.patch
Fabian Grünbichler [Tue, 8 Oct 2024 10:58:44 +0000 (12:58 +0200)]
libz-sys: allow cross-building
Signed-off-by: Fabian Grünbichler <debian@fabian.gruenbichler.email>
Gbp-Pq: Topic vendor
Gbp-Pq: Name libz-sys-allow-cross-building.patch
Fabian Grünbichler [Wed, 31 Jul 2024 08:29:04 +0000 (10:29 +0200)]
onig_sys: use system lib
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Gbp-Pq: Topic vendor
Gbp-Pq: Name onig_sys-use-system-lib.patch
Simon Chopin [Thu, 13 Jun 2024 09:16:41 +0000 (11:16 +0200)]
Disable the doctests for the instruction_set errors
Bug: https://github.com/rust-lang/rust/issues/83453
Last-Update: 2022-02-23
The fix is as described in the upstream issue.
Gbp-Pq: Topic ubuntu
Gbp-Pq: Name ubuntu-ignore-arm-doctest.patch
Debian Rust Maintainers [Thu, 13 Jun 2024 09:16:41 +0000 (11:16 +0200)]
ubuntu-disable-ppc64el-asm-tests
Forwarded: not-needed
Gbp-Pq: Topic ubuntu
Gbp-Pq: Name ubuntu-disable-ppc64el-asm-tests.patch
Debian Rust Maintainers [Thu, 14 Jul 2022 11:17:39 +0000 (13:17 +0200)]
removed some embedded fonts
Forwarded: not-needed
===================================================================
Gbp-Pq: Topic behaviour
Gbp-Pq: Name d-rustdoc-disable-embedded-fonts.patch
Debian Rust Maintainers [Thu, 14 Jul 2022 11:17:39 +0000 (13:17 +0200)]
d-rustc-windows-ssp
Bug: https://github.com/rust-lang/rust/issues/68973
Gbp-Pq: Topic behaviour
Gbp-Pq: Name d-rustc-windows-ssp.patch
Angus Lees [Thu, 14 Jul 2022 11:17:39 +0000 (13:17 +0200)]
Set DT_SONAME when building dylibs
In Rust, library filenames include a version-specific hash to help
the run-time linker find the correct version. Unlike in C/C++, the
compiler looks for all libraries matching a glob that ignores the
hash and reads embedded metadata to work out versions, etc.
The upshot is that there is no need for the usual "libfoo.so ->
libfoo-1.2.3.so" symlink common with C/C++ when building with Rust,
and no need to communicate an alternate filename to use at run-time
vs compile time. If linking to a Rust dylib from C/C++ however, a
"libfoo.so -> libfoo-$hash.so" symlink may well be useful and in
this case DT_SONAME=libfoo-$hash.so would be required. More
mundanely, various tools (eg: dpkg-shlibdeps) complain if they don't
find DT_SONAME on shared libraries in public directories.
This patch passes -Wl,-soname=$outfile when building dylibs (and
using a GNU linker).
Forwarded: no
Gbp-Pq: Topic behaviour
Gbp-Pq: Name d-rustc-add-soname.patch
Angus Lees [Thu, 14 Jul 2022 11:17:39 +0000 (13:17 +0200)]
Hardcode LLDB python module directory
Debian package installs python modules into a fixed directory, so
just hardcode path in wrapper script.
Forwarded: not-needed
Gbp-Pq: Topic behaviour
Gbp-Pq: Name d-rust-lldb-paths.patch
Angus Lees [Thu, 14 Jul 2022 11:17:39 +0000 (13:17 +0200)]
Hardcode GDB python module directory
Debian package installs python modules into a fixed directory, so
just hardcode path in wrapper script.
Forwarded: not-needed
Gbp-Pq: Topic behaviour
Gbp-Pq: Name d-rust-gdb-paths.patch
Debian Rust Maintainers [Thu, 14 Jul 2022 11:17:39 +0000 (13:17 +0200)]
d-test-ignore-avx-44056
Bug: https://github.com/rust-lang/rust/pull/55667
Forwarded: not-needed
===================================================================
Gbp-Pq: Topic build
Gbp-Pq: Name d-test-ignore-avx-44056.patch
Debian Rust Maintainers [Thu, 13 Jun 2024 09:16:40 +0000 (11:16 +0200)]
partial revert of
b9eedea4b0368fd1f00f204db75109ff444fab5b upstream
Forwarded: not-needed
Gbp-Pq: Topic build
Gbp-Pq: Name d-bootstrap-permit-symlink-in-docs.patch
Debian Rust Maintainers [Thu, 14 Jul 2022 11:17:39 +0000 (13:17 +0200)]
d-bootstrap-custom-debuginfo-path
Forwarded: not-needed
===================================================================
Gbp-Pq: Topic build
Gbp-Pq: Name d-bootstrap-custom-debuginfo-path.patch
Debian Rust Maintainers [Thu, 14 Jul 2022 11:17:39 +0000 (13:17 +0200)]
d-bootstrap-use-local-css
Forwarded: not-needed
===================================================================
Gbp-Pq: Topic build
Gbp-Pq: Name d-bootstrap-use-local-css.patch
Debian Rust Maintainers [Thu, 14 Jul 2022 11:17:39 +0000 (13:17 +0200)]
Fix links to cargo-doc
We package cargo docs in a slightly different location; also tweak linkchecker
to not fail these links.
Forwarded: not-needed
Gbp-Pq: Topic build
Gbp-Pq: Name d-bootstrap-cargo-doc-paths.patch
Debian Rust Maintainers [Thu, 14 Jul 2022 11:17:39 +0000 (13:17 +0200)]
set tools to those built in Debian
Forwarded: not-needed
===================================================================
Gbp-Pq: Topic build
Gbp-Pq: Name d-bootstrap-no-assume-tools.patch
Matthijs van Otterdijk [Thu, 14 Jul 2022 11:17:38 +0000 (13:17 +0200)]
bootstrap: always use commit info file instead of checking .git
Forwarded: not-needed
Gbp-Pq: Topic build
Gbp-Pq: Name d-bootstrap-disable-git.patch
Debian Rust Maintainers [Thu, 14 Jul 2022 11:17:38 +0000 (13:17 +0200)]
Install symlinks as-is, don't dereference them
Our patch to mdbook installs symlinks to systems versions of font-awesome,
highlight, etc. Upstream mdbook otherwise doesn't use symlinks, so this
doesn't affect anything else that's already generated.
Forwarded: not-needed
Gbp-Pq: Topic build
Gbp-Pq: Name d-bootstrap-install-symlinks.patch
Debian Rust Maintainers [Thu, 14 Jul 2022 11:17:38 +0000 (13:17 +0200)]
d-bootstrap-rustflags
Forwarded: not-needed
===================================================================
Gbp-Pq: Topic build
Gbp-Pq: Name d-bootstrap-rustflags.patch
Debian Rust Maintainers [Sat, 2 Oct 2021 00:08:00 +0000 (01:08 +0100)]
d-0003-cc-psm-rebuild-wasm32
Forwarded: not-needed
Gbp-Pq: Topic vendor
Gbp-Pq: Name d-0003-cc-psm-rebuild-wasm32.patch
Fabian Grünbichler [Wed, 6 Sep 2023 19:23:24 +0000 (13:23 -0600)]
d-0021-vendor-remove-windows-dependencies
use something like
find vendor -iname Cargo.toml -exec grep -H -n -e 'schannel' -e 'windows-sys' -e 'winapi' -e 'ntapi' -e 'wincon' -e 'winreg' -e 'windows' -e 'winsplit' {} \;
to find dependencies on windows targets in vendored crates. you will likely
need to remove some hunks from this patch after pruning dependencies, since
hopefully a few of the crates patched during early rebasing are eliminated.
windows-bindgen and windows-metadata should not be removed, they are needed for
the build and don't pull in windows-sys and friends.
Forwarded: not-needed
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Gbp-Pq: Topic prune
Gbp-Pq: Name d-0021-vendor-remove-windows-dependencies.patch
Debian Rust Maintainers [Mon, 6 May 2024 08:25:32 +0000 (10:25 +0200)]
d-0020-remove-windows-dependencies
use something like
find src compiler library -iname Cargo.toml -exec grep -H -n -e 'windows-sys' -e 'winapi' -e 'ntapi' -e 'wincon' -e 'winreg' -e 'windows' {} \;
to find and eliminate dependencies on windows-only crates when rebasing.
windows-bindgen and windows-metadata should not be removed, they are needed for
the build and don't pull in windows-sys and friends.
Forwarded: not-needed
===================================================================
Gbp-Pq: Topic prune
Gbp-Pq: Name d-0020-remove-windows-dependencies.patch
Debian Rust Maintainers [Mon, 6 May 2024 08:25:32 +0000 (10:25 +0200)]
d-0011-cargo-remove-nghttp2
Description: remove dependency on libnghttp2-sys so it can be pruned.
Last-Update: 2023-05-17
Forwarded: not-needed
Gbp-Pq: Topic prune
Gbp-Pq: Name d-0011-cargo-remove-nghttp2.patch
Debian Rust Maintainers [Mon, 6 May 2024 08:25:32 +0000 (10:25 +0200)]
d-0010-cargo-remove-vendored-c-crates
Description: remove all vendoring features of crates normally shipping bundled
C libs. that C code is stripped when repacking, so the features can't work
anyway.
Forwarded: not-needed
Gbp-Pq: Topic prune
Gbp-Pq: Name d-0010-cargo-remove-vendored-c-crates.patch
Debian Rust Maintainers [Sat, 11 Jan 2025 10:37:00 +0000 (11:37 +0100)]
d-0007-no-tzdb
Description: remove jiff-tzdb(-platform)
on Debian, we can just use the tzdata information..
Forwarded: not-needed
Gbp-Pq: Topic prune
Gbp-Pq: Name d-0007-no-tzdb.patch
Debian Rust Maintainers [Sat, 11 Jan 2025 10:37:00 +0000 (11:37 +0100)]
d-0006-no-mimalloc
Description: remove mimalloc(-sys)
Forwarded: not-needed
Gbp-Pq: Topic prune
Gbp-Pq: Name d-0006-no-mimalloc.patch
Debian Rust Maintainers [Sat, 2 Oct 2021 00:08:00 +0000 (01:08 +0100)]
d-0005-no-jemalloc
Description: remove jemalloc-sys
Forwarded: not-needed
Gbp-Pq: Topic prune
Gbp-Pq: Name d-0005-no-jemalloc.patch
Debian Rust Maintainers [Sat, 2 Oct 2021 00:08:00 +0000 (01:08 +0100)]
d-0002-mdbook-strip-embedded-libs
Description: Use https://github.com/infinity0/mdBook/tree/debian to help you rebase
the patch on top of a newer version. . Make sure the paths here match the ones
in debian/rust-doc.links
Forwarded: not-needed
Gbp-Pq: Topic prune
Gbp-Pq: Name d-0002-mdbook-strip-embedded-libs.patch
Debian Rust Maintainers [Sat, 2 Oct 2021 00:08:00 +0000 (01:08 +0100)]
d-0001-pkg-config-no-special-snowflake
Description: always enable cross compilation via pkgconf, and set the right binary name.
Forwarded: not-needed
Gbp-Pq: Topic prune
Gbp-Pq: Name d-0001-pkg-config-no-special-snowflake.patch
Debian Rust Maintainers [Sat, 2 Oct 2021 00:07:59 +0000 (01:07 +0100)]
d-0000-ignore-removed-submodules
Description: remove upstream parts that are not needed for the Debian build, in
order to both reduce the orig tarball and the vendored crates within.
Forwarded: not-needed
Gbp-Pq: Topic prune
Gbp-Pq: Name d-0000-ignore-removed-submodules.patch
Debian Rust Maintainers [Thu, 13 Jun 2024 09:16:39 +0000 (11:16 +0200)]
d-disable-download-tests
Forwarded: no
Gbp-Pq: Topic upstream
Gbp-Pq: Name d-disable-download-tests.patch
Debian Rust Maintainers [Thu, 13 Jun 2024 09:16:39 +0000 (11:16 +0200)]
d-ignore-test_arc_condvar_poison-ppc
Forwarded: no
Gbp-Pq: Topic upstream
Gbp-Pq: Name d-ignore-test_arc_condvar_poison-ppc.patch
Debian Rust Maintainers [Thu, 13 Jun 2024 09:16:39 +0000 (11:16 +0200)]
compiletest: add ignore-hurd support and annotate some tests
These tests hang or make the box OOM
Forwarded: no
Signed-off-by: Fabian Grünbichler <git@fabian.gruenbichler.email>
Gbp-Pq: Topic upstream
Gbp-Pq: Name u-hurd-tests.patch
Debian Rust Maintainers [Thu, 14 Jul 2022 11:17:37 +0000 (13:17 +0200)]
u-rustc-llvm-cross-flags
===================================================================
Gbp-Pq: Topic upstream
Gbp-Pq: Name u-rustc-llvm-cross-flags.patch
Debian Rust Maintainers [Thu, 14 Jul 2022 11:17:37 +0000 (13:17 +0200)]
u-ignore-ppc-hangs
Bug: https://github.com/rust-lang/rust/issues/89607
Gbp-Pq: Topic upstream
Gbp-Pq: Name u-ignore-ppc-hangs.patch