Package: release.debian.org Severity: normal Tags: bookworm User: release.debian....@packages.debian.org Usertags: pu X-Debbugs-Cc: pkg-rust-maintain...@alioth-lists.debian.net, team+pkg-mozi...@tracker.debian.org
Hi, As usual, we need a newer cbindgen for the upcoming Firefox ESR / Thunderbird releases. For bookworm though, we can't just upgrade cbindgen, because by bundling its dependencies, we can't (easily) ship the librust-cbindgen-dev packages, and that's gained a build-rdep in bookworm. Thus, I've gone the new source route, building only bin:cbindgen-web, which conflicts with cbindgen. I've used this to rebuild firefox-esr_115.11.0esr-1~deb12u1 with success and the resulting package worked fine on some testing. Thus I'm happy to ship this now in the upcoming point release, even if the next ESR won't be pushed to bookworm for a few months. I'm attaching a debdiff from sid's rust-cbindgen applying this command: $ debdiff rust-cbindgen_0.26.0-3.dsc rust-cbindgen-web_0.26.0-3~deb12u1.dsc | filterdiff -x '*/debian/vendor/*' Cheers, Emilio
diff -Nru rust-cbindgen-0.26.0/debian/cbindgen.manpages rust-cbindgen-web-0.26.0/debian/cbindgen.manpages --- rust-cbindgen-0.26.0/debian/cbindgen.manpages 2024-02-11 03:08:44.000000000 +0100 +++ rust-cbindgen-web-0.26.0/debian/cbindgen.manpages 1970-01-01 01:00:00.000000000 +0100 @@ -1,2 +0,0 @@ -debian/cbindgen.1 - diff -Nru rust-cbindgen-0.26.0/debian/cbindgen-web.manpages rust-cbindgen-web-0.26.0/debian/cbindgen-web.manpages --- rust-cbindgen-0.26.0/debian/cbindgen-web.manpages 1970-01-01 01:00:00.000000000 +0100 +++ rust-cbindgen-web-0.26.0/debian/cbindgen-web.manpages 2024-02-11 03:08:44.000000000 +0100 @@ -0,0 +1,2 @@ +debian/cbindgen.1 + diff -Nru rust-cbindgen-0.26.0/debian/changelog rust-cbindgen-web-0.26.0/debian/changelog --- rust-cbindgen-0.26.0/debian/changelog 2024-02-11 03:08:44.000000000 +0100 +++ rust-cbindgen-web-0.26.0/debian/changelog 2024-06-05 11:35:17.000000000 +0200 @@ -1,3 +1,16 @@ +rust-cbindgen-web (0.26.0-3~deb12u1) bookworm; urgency=medium + + * Non-maintainer upload. + * Backport to bookworm as rust-cbindgen-web. Since we're vendoring + the dependencies, we can't easily ship a librust-cbindgen-dev package + as it's dependencies won't be available, and there are build-rdeps + for that binary now so we can't just disable it. + * Vendor dependencies, they are not available in bookworm. + * Only build the cbindgen binary. + * Build with rustc-web. + + -- Emilio Pozuelo Monfort <po...@debian.org> Wed, 05 Jun 2024 11:35:17 +0200 + rust-cbindgen (0.26.0-3) unstable; urgency=medium * Team upload. diff -Nru rust-cbindgen-0.26.0/debian/control rust-cbindgen-web-0.26.0/debian/control --- rust-cbindgen-0.26.0/debian/control 2024-02-11 03:08:44.000000000 +0100 +++ rust-cbindgen-web-0.26.0/debian/control 2024-06-05 11:35:17.000000000 +0200 @@ -1,29 +1,12 @@ -Source: rust-cbindgen +Source: rust-cbindgen-web Section: utils Priority: optional Build-Depends: debhelper (>= 12), dh-cargo (>= 25), cargo:native, - rustc:native (>= 1.64), - libstd-rust-dev, - librust-clap-3+default-dev (>= 3.1-~~), - librust-heck-0.4+default-dev, - librust-indexmap+default-dev (>= 1-~~), - librust-log-0.4+default-dev, - librust-proc-macro2-1+default-dev (>= 1.0.60-~~), - librust-quote-1+default-dev, - librust-serde-1+derive-dev (>= 1.0.103-~~), - librust-serde-json-1+default-dev, - librust-syn-1+clone-impls-dev (>= 1.0.88-~~), - librust-syn-1+extra-traits-dev (>= 1.0.88-~~), - librust-syn-1+fold-dev (>= 1.0.88-~~), - librust-syn-1+full-dev (>= 1.0.88-~~), - librust-syn-1+parsing-dev (>= 1.0.88-~~), - librust-syn-1+printing-dev (>= 1.0.88-~~), - librust-tempfile-3+default-dev, - librust-toml-0.5+default-dev, + rustc-web:native (>= 1.64), + libstd-rust-web-dev, help2man, - librust-serial-test-dev, cython3 Maintainer: Debian Rust Maintainers <pkg-rust-maintain...@alioth-lists.debian.net> Uploaders: @@ -34,57 +17,7 @@ X-Cargo-Crate: cbindgen Rules-Requires-Root: no -Package: librust-cbindgen-dev -Architecture: any -Multi-Arch: same -Depends: - ${misc:Depends}, - librust-heck-0.4+default-dev, - librust-indexmap+default-dev (>= 1-~~), - librust-log-0.4+default-dev, - librust-proc-macro2-1+default-dev (>= 1.0.60-~~), - librust-quote-1+default-dev, - librust-serde-1+derive-dev (>= 1.0.103-~~), - librust-serde-json-1+default-dev, - librust-syn-1+clone-impls-dev (>= 1.0.88-~~), - librust-syn-1+extra-traits-dev (>= 1.0.88-~~), - librust-syn-1+fold-dev (>= 1.0.88-~~), - librust-syn-1+full-dev (>= 1.0.88-~~), - librust-syn-1+parsing-dev (>= 1.0.88-~~), - librust-syn-1+printing-dev (>= 1.0.88-~~), - librust-tempfile-3+default-dev, - librust-toml-0.5+default-dev -Recommends: - librust-cbindgen+clap-dev (= ${binary:Version}) -Provides: - librust-cbindgen-0-dev (= ${binary:Version}), - librust-cbindgen-0.26-dev (= ${binary:Version}), - librust-cbindgen-0.26.0-dev (= ${binary:Version}) -Description: Generating C bindings to Rust code - Rust source code - Source code for Debianized Rust crate "cbindgen" - -Package: librust-cbindgen+clap-dev -Architecture: any -Multi-Arch: same -Depends: - ${misc:Depends}, - librust-cbindgen-dev (= ${binary:Version}), - librust-clap-3+default-dev (>= 3.1-~~) -Provides: - librust-cbindgen+default-dev (= ${binary:Version}), - librust-cbindgen-0+clap-dev (= ${binary:Version}), - librust-cbindgen-0+default-dev (= ${binary:Version}), - librust-cbindgen-0.26+clap-dev (= ${binary:Version}), - librust-cbindgen-0.26+default-dev (= ${binary:Version}), - librust-cbindgen-0.26.0+clap-dev (= ${binary:Version}), - librust-cbindgen-0.26.0+default-dev (= ${binary:Version}) -Description: Generating C bindings to Rust code - feature "clap" and 1 more - This metapackage enables feature "clap" for the Rust cbindgen crate, by pulling - in any additional dependencies needed by that feature. - . - Additionally, this package also provides the "default" feature. - -Package: cbindgen +Package: cbindgen-web Architecture: any Multi-Arch: allowed Section: utils @@ -98,6 +31,8 @@ ${cargo:Suggests} Provides: ${cargo:Provides} +Conflicts: cbindgen +Replaces: cbindgen Built-Using: ${cargo:Built-Using} XB-X-Cargo-Built-Using: ${cargo:X-Cargo-Built-Using} Description: Generates C bindings from Rust code diff -Nru rust-cbindgen-0.26.0/debian/patches/series rust-cbindgen-web-0.26.0/debian/patches/series --- rust-cbindgen-0.26.0/debian/patches/series 2024-02-11 03:08:44.000000000 +0100 +++ rust-cbindgen-web-0.26.0/debian/patches/series 2024-05-07 10:23:47.000000000 +0200 @@ -1,3 +1,4 @@ use-cython3-for-tests.patch relax-dep.diff fix-tests-permission-denied.patch +vendor-deps-config.patch diff -Nru rust-cbindgen-0.26.0/debian/patches/vendor-deps-config.patch rust-cbindgen-web-0.26.0/debian/patches/vendor-deps-config.patch --- rust-cbindgen-0.26.0/debian/patches/vendor-deps-config.patch 1970-01-01 01:00:00.000000000 +0100 +++ rust-cbindgen-web-0.26.0/debian/patches/vendor-deps-config.patch 2024-05-07 10:23:47.000000000 +0200 @@ -0,0 +1,8 @@ +--- /dev/null ++++ b/.cargo/config +@@ -0,0 +1,5 @@ ++[source.crates-io] ++replace-with = "vendored-sources" ++ ++[source.vendored-sources] ++directory = "vendor" diff -Nru rust-cbindgen-0.26.0/debian/rules rust-cbindgen-web-0.26.0/debian/rules --- rust-cbindgen-0.26.0/debian/rules 2024-02-11 03:08:44.000000000 +0100 +++ rust-cbindgen-web-0.26.0/debian/rules 2024-06-04 14:10:00.000000000 +0200 @@ -2,11 +2,19 @@ %: dh $@ --buildsystem cargo +override_dh_auto_configure: + cp -a debian/vendor/ . + dh_auto_configure -O--buildsystem=cargo + +override_dh_clean: + dh_clean -O--buildsystem=cargo + rm -rf vendor/ + override_dh_auto_test: dh_auto_test -- test --all override_dh_installman: - help2man debian/cbindgen/usr/bin/cbindgen > debian/cbindgen.1 + help2man debian/cbindgen-web/usr/bin/cbindgen > debian/cbindgen.1 dh_installman -O--buildsystem=cargo execute_after_dh_testdir: diff -Nru rust-cbindgen-0.26.0/debian/source/include-binaries rust-cbindgen-web-0.26.0/debian/source/include-binaries --- rust-cbindgen-0.26.0/debian/source/include-binaries 1970-01-01 01:00:00.000000000 +0100 +++ rust-cbindgen-web-0.26.0/debian/source/include-binaries 2024-05-07 10:23:47.000000000 +0200 @@ -0,0 +1,2 @@ +debian/vendor/unicode-ident/tests/fst/xid_start.fst +debian/vendor/unicode-ident/tests/fst/xid_continue.fst Binary files /tmp/DGhDTEjYdn/rust-cbindgen-0.26.0/debian/vendor/unicode-ident/tests/fst/xid_continue.fst and /tmp/mhp6sesSsp/rust-cbindgen-web-0.26.0/debian/vendor/unicode-ident/tests/fst/xid_continue.fst differ Binary files /tmp/DGhDTEjYdn/rust-cbindgen-0.26.0/debian/vendor/unicode-ident/tests/fst/xid_start.fst and /tmp/mhp6sesSsp/rust-cbindgen-web-0.26.0/debian/vendor/unicode-ident/tests/fst/xid_start.fst differ