On 3/2/24 02:00, Andres Salomon wrote:
Actually, scratch that; I had missed #1064563.I'll redo the deb11u2 package with conflicts/replaces for that, as well, and then resend it shortly.On 3/2/24 01:49, Andres Salomon wrote:Okay, here's an updated package with fixes: rustc-web (1.70.0+dfsg1-7~deb12u2) bookworm; urgency=medium * Non-maintainer upload. * Increase allowed test failures on armhf and ppc64el to fix FTBFS. * Provide Conflicts/Replaces for rust*-mozilla*, which could still be installed from oldstable (closes: #1064562).
rustc-web (1.70.0+dfsg1-7~deb12u2) bookworm; urgency=medium
* Non-maintainer upload.
* Increase allowed test failures on armhf and ppc64el to fix FTBFS.
* Provide Conflicts/Replaces for rust*-mozilla*, which could still be
installed from oldstable (closes: #1064562).
* Add Provides/Conflicts/Replaces for libstd-rust-1.70 (closes:
#1064563).
This should fix builds for armhf & ppc64el, and also specifies manual conflicts/replaces with a bunch of packages from rustc-mozilla. In addition, it adds a p/c/r in libstd-rust-web-1.70 for libstd-rust-1.70.
For the rust*mozilla* conflicts, I tested it by doing an 'apt install rustc-mozilla rust-mozilla-src rust-mozilla-gdb libstd-rust-mozilla-dev' from oldstable onto a bookworm environmente, and then installed the locally built 'libstd-rust-web-1.70 libstd-rust-web-dev rust-web-gdb rust-web-src rustc-web' packages over that. The older rustc-mozilla packages are properly removed by apt, with the exception of libstd-rust-mozilla-1.63 (which should be fine).
For the libstd-rust-1.70 conflict, I tested it by manually installing the 'rustc-web libstd-rust-web-1.70 libstd-rust-web-dev' packages in a trixie environment, and then 'apt install rustc libstd-rust-web-dev' over that. As expected, it removed the three *-web* packages and successfully installed the standard rustc packages.
diff -u rustc-web-1.70.0+dfsg1/debian/changelog rustc-web-1.70.0+dfsg1/debian/changelog
--- rustc-web-1.70.0+dfsg1/debian/changelog 2024-02-14 02:02:37.000000000 +0000
+++ rustc-web-1.70.0+dfsg1/debian/changelog 2024-03-02 07:23:17.763665420 +0000
@@ -1,3 +1,13 @@
+rustc-web (1.70.0+dfsg1-7~deb12u2) bookworm; urgency=medium
+
+ * Non-maintainer upload.
+ * Increase allowed test failures on armhf and ppc64el to fix FTBFS.
+ * Provide Conflicts/Replaces for rust*-mozilla*, which could still be
+ installed from oldstable (closes: #1064562).
+ * Add Provides/Conflicts/Replaces for libstd-rust-1.70 (closes: #1064563).
+
+ -- Andres Salomon <dilinger@debian.org> Sat, 02 Mar 2024 07:23:15 +0000
+
rustc-web (1.70.0+dfsg1-7~deb12u1) bookworm; urgency=medium
* Non-maintainer upload.
diff -u rustc-web-1.70.0+dfsg1/debian/control rustc-web-1.70.0+dfsg1/debian/control
--- rustc-web-1.70.0+dfsg1/debian/control 2024-02-14 02:02:37.000000000 +0000
+++ rustc-web-1.70.0+dfsg1/debian/control 2024-03-02 07:05:53.739717477 +0000
@@ -58,9 +58,9 @@
Suggests:
# lld and clang are needed for wasm compilation
lld-16, clang-16,
-Conflicts: rustc
+Conflicts: rustc, rustc-mozilla
Provides: rustc (= ${binary:Version})
-Replaces: libstd-rust-dev (<< 1.25.0+dfsg1-2~~), rustc
+Replaces: libstd-rust-dev (<< 1.25.0+dfsg1-2~~), rustc, rustc-mozilla
Breaks: libstd-rust-dev (<< 1.25.0+dfsg1-2~~)
Description: Rust systems programming language
Rust is a curly-brace, block-structured expression language. It
@@ -81,6 +81,9 @@
Multi-Arch: same
Pre-Depends: ${misc:Pre-Depends}
Depends: ${shlibs:Depends}, ${misc:Depends}
+Conflicts: libstd-rust-1.70
+Replaces: libstd-rust-1.70
+Provides: libstd-rust-1.70
Description: Rust standard libraries
Rust is a curly-brace, block-structured expression language. It
visually resembles the C language family, but differs significantly
@@ -103,9 +106,9 @@
Multi-Arch: same
Depends: ${shlibs:Depends}, ${misc:Depends},
libstd-rust-web-1.70 (= ${binary:Version}),
-Conflicts: libstd-rust-dev
+Conflicts: libstd-rust-dev, libstd-rust-mozilla-dev
Provides: libstd-rust-dev (= ${binary:Version})
-Replaces: libstd-rust-dev
+Replaces: libstd-rust-dev, libstd-rust-mozilla-dev
Description: Rust standard libraries - development files
Rust is a curly-brace, block-structured expression language. It
visually resembles the C language family, but differs significantly
@@ -131,7 +134,8 @@
Recommends:
gcc-mingw-w64-x86-64-posix [amd64],
gcc-mingw-w64-i686-posix [i386],
-Conflicts: libstd-rust-dev-windows
+Conflicts: libstd-rust-dev-windows, libstd-rust-mozilla-dev-windows
+Replaces: libstd-rust-mozilla-dev-windows
Build-Profiles: <!nowindows>
Description: Rust standard libraries - development files
Rust is a curly-brace, block-structured expression language. It
@@ -154,8 +158,8 @@
Architecture: all
Depends: gdb, ${misc:Depends}
Suggests: gdb-doc
-Conflicts: rust-gdb
-Replaces: rustc (<< 1.1.0+dfsg1-1)
+Conflicts: rust-gdb, rust-mozilla-gdb
+Replaces: rustc (<< 1.1.0+dfsg1-1), rust-mozilla-gdb
Description: Rust debugger (gdb)
Rust is a curly-brace, block-structured expression language. It
visually resembles the C language family, but differs significantly
@@ -176,8 +180,8 @@
Architecture: all
# When updating, also update rust-lldb.links
Depends: lldb-16, ${misc:Depends}, python3-lldb-16
-Replaces: rustc (<< 1.1.0+dfsg1-1)
-Conflicts: rust-lldb
+Replaces: rustc (<< 1.1.0+dfsg1-1), rust-mozilla-lldb
+Conflicts: rust-lldb, rust-mozilla-lldb
Description: Rust debugger (lldb)
Rust is a curly-brace, block-structured expression language. It
visually resembles the C language family, but differs significantly
@@ -222,7 +226,8 @@
Package: rust-web-src
Architecture: all
Depends: ${misc:Depends}
-Conflicts: rust-src
+Conflicts: rust-src, rust-mozilla-src
+Replaces: rust-mozilla-src
Description: Rust systems programming language - source code
Rust is a curly-brace, block-structured expression language. It
visually resembles the C language family, but differs significantly
diff -u rustc-web-1.70.0+dfsg1/debian/rules rustc-web-1.70.0+dfsg1/debian/rules
--- rustc-web-1.70.0+dfsg1/debian/rules 2024-02-14 02:02:37.000000000 +0000
+++ rustc-web-1.70.0+dfsg1/debian/rules 2024-03-02 07:23:40.942894354 +0000
@@ -302,7 +302,10 @@
# method is imprecise and in practise we count some failures twice.
FAILURES_ALLOWED = 8
ifneq (,$(filter $(DEB_BUILD_ARCH), armhf))
- FAILURES_ALLOWED = 12
+ FAILURES_ALLOWED = 16
+endif
+ifneq (,$(filter $(DEB_BUILD_ARCH), ppc64el))
+ FAILURES_ALLOWED = 11
endif
ifneq (,$(filter $(DEB_BUILD_ARCH), armel mips mips64el))
FAILURES_ALLOWED = 24
Attachment:
OpenPGP_0x645D0247C36E7637.asc
Description: OpenPGP public key
Attachment:
OpenPGP_signature.asc
Description: OpenPGP digital signature