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 <dilin...@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

Reply via email to