• Bug#1098897: librust-tonic-dev: Uninstallable in unstable: Depends: lib

    From Reinhard Tartler@21:1/5 to All on Tue Feb 25 18:40:01 2025
    Package: librust-tonic-dev
    Version: 0.10.2+dfsg-12
    Severity: serious
    Justification: Breaks compilation of depending packages

    When trying to use librust-tonic-dev as a build dependencies, it fails to install with:

    Install main build dependencies (apt-based resolver) ----------------------------------------------------

    Installing build dependencies
    Reading package lists...
    Building dependency tree...
    Reading state information...
    Some packages could not be installed. This may mean that you have
    requested an impossible situation or if you are using the unstable
    distribution that some required packages have not yet been created
    or been moved out of Incoming.
    The following information may help to resolve the situation:

    The following packages have unmet dependencies:
    librust-tonic-dev : Depends: librust-axum-0.6-dev but it is not installable
    E: Unable to correct problems, you have held broken packages.
    apt-get failed.
    E: Package installation failed


    Please update the rust-tonic package to build against rust-axum version 0.7.

    Best,
    -rt


    -- System Information:
    Debian Release: trixie/sid
    APT prefers testing
    APT policy: (500, 'testing'), (50, 'unstable'), (1, 'experimental') Architecture: amd64 (x86_64)

    Kernel: Linux 6.12.12-amd64 (SMP w/8 CPU threads; PREEMPT)
    Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE not set
    Shell: /bin/sh linked to /usr/bin/dash
    Init: systemd (via /run/systemd/system)
    LSM: AppArmor: enabled

    Versions of packages librust-tonic-dev depends on:
    pn librust-async-stream-0.3+default-dev <none>
    pn librust-async-trait-0.1+default-dev <none>
    pn librust-axum-0.6-dev <none>
    pn librust-base64-0.22+default-dev <none>
    pn librust-bytes-1+default-dev <none>
    pn librust-flate2-1+default-dev <none>
    pn librust-h2-dev <none>
    pn librust-http-0.2+default-dev <none>
    pn librust-http-body-0.4+default-dev <none>
    pn librust-hyper-0.14+default-dev <none>
    pn librust-hyper-0.14+full-dev <none>
    pn librust-hyper-timeout-0.4+default-dev <none>
    pn librust-percent-encoding-2+default-dev <none>
    pn librust-pin-project-1+default-dev <none>
    pn librust-prost-0.12+default-dev <none>
    pn librust-rustls-0.21+default-dev <none>
    pn librust-rustls-native-certs-0.6+default-dev <none>
    pn librust-rustls-pemfile-1+default-dev <none>
    pn librust-tokio-1+default-dev <none>
    pn librust-tokio-1+macros-dev <none>
    pn librust-tokio-1+net-dev <none>
    pn librust-tokio-1+rt-dev <none>
    pn librust-tokio-1+time-dev <none>
    pn librust-tokio-rustls-0.24+default-dev <none>
    pn librust-tokio-stream-0.1+default-dev <none>
    pn librust-tower-0.4+balance-dev <none>
    pn librust-tower-0.4+buffer-dev <none>
    pn librust-tower-0.4+discover-dev <none>
    pn librust-tower-0.4+limit-dev <none>
    pn librust-tower-0.4+load-dev <none>
    pn librust-tower-0.4+make-dev <none>
    pn librust-tower-0.4+timeout-dev <none>
    pn librust-tower-0.4+util-dev <none>
    pn librust-tower-layer-0.3+default-dev <none>
    pn librust-tower-service-0.3+default-dev <none>
    pn librust-tracing-0.1+default-dev <none>

    librust-tonic-dev recommends no packages.

    librust-tonic-dev suggests no packages.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Jonas Smedegaard@21:1/5 to All on Sat Mar 15 19:10:01 2025
    Quoting Reinhard Tartler (2025-03-14 13:28:53)
    Reinhard Tartler <siretart@debian.org> writes:
    Package: librust-tonic-dev
    Version: 0.10.2+dfsg-12
    Severity: serious
    Justification: Breaks compilation of depending packages

    [...]
    The following packages have unmet dependencies:
    librust-tonic-dev : Depends: librust-axum-0.6-dev but it is not installable
    E: Unable to correct problems, you have held broken packages.
    apt-get failed.
    E: Package installation failed


    I've tried the naive approach of "just" bumping the dependencies with
    the attached patch. However, this runs into a compilation issue:


    ' CARGO_PKG_HOMEPAGE='https://github.com/hyperium/tonic' CARGO_PKG_LICENSE=MIT CARGO_PKG_LICENSE_FILE='' CARGO_PKG_NAME=tonic CARGO_PKG_README=../README.md CARGO_PKG_REPOSITORY='https://github.com/hyperium/tonic' CARGO_PKG_RUST_VERSION='' CARGO_PKG_
    VERSION=0.10.2 CARGO_PKG_VERSION_MAJOR=0 CARGO_PKG_VERSION_MINOR=10 CARGO_PKG_VERSION_PATCH=2 CARGO_PKG_VERSION_PRE='' CARGO_PRIMARY_PACKAGE=1 LD_LIBRARY_PATH=/build/reproducible-path/rust-tonic-0.10.2+dfsg/target/release/deps rustc --crate-name tonic --
    edition=2021 tonic/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --crate-type lib --emit=dep-info,metadata,link -C opt-level=3 -C embed-bitcode=no --cfg 'feature="channel"' --cfg 'feature="codegen"' --cfg '
    feature="default"' --cfg 'feature="gzip"' --cfg 'feature="prost"' --cfg 'feature="tls"' --cfg 'feature="transport"' --check-cfg 'cfg(docsrs,test)' --check-cfg 'cfg(feature, values("channel", "codegen", "default", "gzip", "prost", "tls", "tls-root
    s", "tls-roots-common", "transport"))' -C metadata=485a23f653a8e74a -C extra-filename=-decac77e6c54a626 --out-dir /build/reproducible-path/rust-tonic-0.10.2+dfsg/target/x86_64-unknown-linux-gnu/release/deps --target x86_64-unknown-linux-gnu -C strip=
    debuginfo -L dependency=/build/reproducible-path/rust-tonic-0.10.2+dfsg/target/x86_64-unknown-linux-gnu/release/deps -L dependency=/build/reproducible-path/rust-tonic-0.10.2+dfsg/target/release/deps --extern async_stream=/build/reproducible-path/rust-
    tonic-0.10.2+dfsg/target/x86_64-unknown-linux-gnu/release/deps/libasync_stream-fb31bd691a4d0da2.rmeta --extern async_trait=/build/reproducible-path/rust-tonic-0.10.2+dfsg/target/release/deps/libasync_trait-753d4fdfba6a47f0.so --extern axum=/build/
    reproducible-path/rust-tonic-0.10.2+dfsg/target/x86_64-unknown-linux-gnu/release/deps/libaxum-8227ca5c25ea4d84.rmeta --extern base64=/build/reproducible-path/rust-tonic-0.10.2+dfsg/target/x86_64-unknown-linux-gnu/release/deps/libbase64-18f2b7c2b4af2
    989.rmeta --extern bytes=/build/reproducible-path/rust-tonic-0.10.2+dfsg/target/x86_64-unknown-linux-gnu/release/deps/libbytes-049891ee00809e23.rmeta --extern flate2=/build/reproducible-path/rust-tonic-0.10.2+dfsg/target/x86_64-unknown-linux-gnu/
    release/deps/libflate2-d79784b4a9ba394f.rmeta --extern h2=/build/reproducible-path/rust-tonic-0.10.2+dfsg/target/x86_64-unknown-linux-gnu/release/deps/libh2-8499421b229fc163.rmeta --extern http=/build/reproducible-path/rust-tonic-0.10.2+dfsg/target/x86_
    64-unknown-linux-gnu/release/deps/libhttp-51d39075ca9bb9eb.rmeta --extern http_body=/build/reproducible-path/rust-tonic-0.10.2+dfsg/target/x86_64-unknown-linux-gnu/release/deps/libhttp_body-56d10af7fd24699c.rmeta --extern hyper=/build/reproducible-path/
    rust-tonic-0.10.2+dfsg/target/x86_64-unknown-linux-gnu/release/deps/libhyper-e38e798c35535e29.rmeta --extern hyper_timeout=/build/reproducible-path/rust-tonic-0.10.2+dfsg/target/x86_64-unknown-linux-gnu/release/deps/libhyper_timeout-a324e9fd6d7f
    9933.rmeta --extern percent_encoding=/build/reproducible-path/rust-tonic-0.10.2+dfsg/target/x86_64-unknown-linux-gnu/release/deps/libpercent_encoding-14360a2752397cf5.rmeta --extern pin_project=/build/reproducible-path/rust-tonic-0.10.2+dfsg/target/
    x86_64-unknown-linux-gnu/release/deps/libpin_project-66922be3f1cda763.rmeta --extern prost=/build/reproducible-path/rust-tonic-0.10.2+dfsg/target/x86_64-unknown-linux-gnu/release/deps/libprost-bb55bf7e76c86d88.rmeta --extern rustls=/build/reproducible-
    path/rust-tonic-0.10.2+dfsg/target/x86_64-unknown-linux-gnu/release/deps/librustls-0b8f1af495a10f72.rmeta --extern rustls_pemfile=/build/reproducible-path/rust-tonic-0.10.2+dfsg/target/x86_64-unknown-linux-gnu/release/deps/librustls_pemfile-
    0617cb1eb193c177.rmeta --extern tokio=/build/reproducible-path/rust-tonic-0.10.2+dfsg/target/x86_64-unknown-linux-gnu/release/deps/libtokio-012cdf6cfc47a665.rmeta --extern tokio_rustls=/build/reproducible-path/rust-tonic-0.10.2+dfsg/target/x86_64-unknown-
    linux-gnu/release/deps/libtokio_rustls-b7a50ca23e565701.rmeta --extern tokio_stream=/build/reproducible-path/rust-tonic-0.10.2+dfsg/target/x86_64-unknown-linux-gnu/release/deps/libtokio_stream-1f9533b6b8b17828.rmeta --extern tower=/build/reproducible-
    path/rust-tonic-0.10.2+dfsg/target/x86_64-unknown-linux-gnu/release/deps/libtower-e87d80db1912db72.rmeta --extern tower_layer=/build/reproducible-path/rust-tonic-0.10.2+dfsg/target/x86_64-unknown-linux-gnu/release/deps/libtower_layer-755127e7643f220a.
    rmeta --extern tower_service=/build/reproducible-path/rust-tonic-0.10.2+dfsg/target/x86_64-unknown-linux-gnu/release/deps/libtower_service-58b220a2076bd222.rmeta --extern tracing=/build/reproducible-path/rust-tonic-0.10.2+dfsg/target/x86_64-unknown-linux-
    gnu/release/deps/libtracing-6d424f805c115e7d.rmeta --remap-path-prefix tonic-build_0.10.2=/usr/share/cargo/registry/tonic-build-0.10.2 --remap-path-prefix tonic_0.10.2=/usr/share/cargo/registry/tonic-0.10.2 -L native=/build/reproducible-pat
    h/rust-tonic-0.10.2+dfsg/target/x86_64-unknown-linux-gnu/release/build/ring-a6a76e47df4ffd6c/out`
    error[E0432]: unresolved import `axum::body::BoxBody`
    --> tonic/src/transport/mod.rs:109:16
    |
    109 | pub use axum::{body::BoxBody as AxumBoxBody, Router as AxumRouter};
    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no `BoxBody` in `body`
    |
    = help: consider importing one of these items instead:
    crate::body::BoxBody
    http_body::combinators::BoxBody

    error[E0425]: cannot find value `boxed` in module `axum::body`
    --> tonic/src/transport/service/router.rs:79:62
    |
    79 | let svc = svc.map_response(|res| res.map(axum::body::boxed));
    | ^^^^^ not found in `axum::body`
    |


    So it seems that tonic 0.10.2 is not compatible with axum 0.7 at all. That's most unfornate.

    I've also spent more time that I'd like to admit in attempting to
    upgrade the package ot tonic 0.12 (is the first upstream version to use
    axum 0.7), but this runs into a number of other version incompatibilities.

    Jonas, this is threatening removal of large portions of the container
    stack, such as podman. The reason for that is that podman has rewritten
    its networking stack in rust with netavark/aardvark-dns, which require tonic.

    What's the best way to proceed here? Trying to backport https://github.com/hyperium/tonic/commit/9c1f2f9402d97cfa4c9d9065b5af2fb99d2ef521
    to tonic 0.10 or attempting to package 0.12?

    I don't know what is best until I have solved the puzzle.

    What I am trying now is upgrade tonic to v0.12.

    - Jonas

    --
    * Jonas Smedegaard - idealist & Internet-arkitekt
    * Tlf.: +45 40843136 Website: http://dr.jones.dk/
    * Sponsorship: https://ko-fi.com/drjones

    [x] quote me freely [ ] ask before reusing [ ] keep private --==============q35933388450776509=MIME-Version: 1.0
    Content-Transfer-Encoding: 7bit
    Content-Description: signature
    Content-Type: application/pgp-signature; name="signature.asc"; charset="us-ascii"

    -----BEGIN PGP SIGNATURE-----

    wsG7BAABCgBvBYJn1cA+CRAsfDFGwaABIUcUAAAAAAAeACBzYWx0QG5vdGF0aW9u cy5zZXF1b2lhLXBncC5vcmeK4kHG4a4CHnj5WIehl5UeTXuTpHGbtjKxfuDPczy3 fRYhBJ/j6cNmkaaf9TzGhCx8MUbBoAEhAAD6BA//eN4At5px5ZiJhJeOOjLbZzZJ uO1diaHt4fd5qBTSdh014rlxM0GPsH6wLXNxpHlDQvONgidpWP/YEbM1j8h0CEMO NDIv4+M+KC2BM9xsiVpvqfj0yORETgC9cjrAylCiqyuCw8YqiArYS4gwTehOILpt hoOmzn5pX2L6p/sG0nRbMQnTPOqeyUpA2gH0Avbdp5X6bxDUqdK2Pog2ln06Q/n5 0tvcT27RALRF0MTmW0W6LXINbDDSzbO2Scxs6R9++UIpGmNxO+GxSSjw8QLg09hP f1e+CUVW2FUNDWirQA7WLI2bFCnGJv2M2lcOXUHJr6LhEOBqNygs9ktfA4XMuqfk 5kEIeodOirZDP8Wuq3ZUmRtfPOOxv01oV8QhUOL1
  • From Debian Bug Tracking System@21:1/5 to All on Sat Mar 15 20:30:01 2025
    This is a multi-part message in MIME format...

    Your message dated Sat, 15 Mar 2025 19:21:43 +0000
    with message-id <E1ttX4p-007NzC-RY@fasolo.debian.org>
    and subject line Bug#1098897: fixed in rust-tonic 0.12.3+dfsg-1
    has caused the Debian Bug report #1098897,
    regarding librust-tonic-dev: Uninstallable in unstable: Depends: librust-axum-0.6-dev but it is not installable
    to be marked as done.

    This means that you claim that the problem has been dealt with.
    If this is not the case it is now your responsibility to reopen the
    Bug report if necessary, and/or fix the problem forthwith.

    (NB: If you are a system administrator and have no idea what this
    message is talking about, this may indicate a serious mail system misconfiguration somewhere. Please contact owner@bugs.debian.org
    immediately.)


    --
    1098897: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1098897
    Debian Bug Tracking System
    Contact owner@bugs.debian.org with problems

    Received: (at submit) by bugs.debian.org; 25 Feb 2025 17:36:53 +0000 X-Spam-Checker-Version: SpamAssassin 3.4.6-bugs.debian.org_2005_01_02
    (2021-04-09) on buxtehude.debian.org
    X-Spam-Level:
    X-Spam-Status: No, score=-19.2 required=4.0 tests=BAYES_00,
    BODY_INCLUDES_PACKAGE,FOURLA,FROMDEVELOPER,HAS_PACKAGE,
    KHOP_HELO_FCRDNS,RCVD_IN_PBL,RDNS_DYNAMIC,SPF_HELO_NONE,SPF_NONE,
    XMAILER_REPORTBUG,X_DEBBUGS_CC autolearn=ham autolearn_force=no
    version=3.4.6-bugs.debian.org_2005_01_02
    X-Spam-Bayes: score:0.0000 Tokens: new, 29; hammy, 150; neutral, 89; spammy,
    0. spammytokens: hammytokens:0.000-+--trixie, 0.000-+--H*M:reportbug,
    0.000-+--H*MI:reportbug, 0.000-+--dfsg12, 0.000-+--H*x:reportbug Return-path: <siretart@debian.org>
    Received: from pool-173-52-234-89.nycmny.fios.verizon.net ([173.52.234.89]:45196 helo=x1.int.tauware.de)
    by buxtehude.debian.org w
  • From Reinhard Tartler@21:1/5 to Jonas Smedegaard on Sun Mar 16 00:40:01 2025
    On 2025-03-15 14:00, Jonas Smedegaard wrote:

    What's the best way to proceed here? Trying to backport
    https://github.com/hyperium/tonic/commit/9c1f2f9402d97cfa4c9d9065b5af2fb99d2ef521
    to tonic 0.10 or attempting to package 0.12?

    I don't know what is best until I have solved the puzzle.

    What I am trying now is upgrade tonic to v0.12.

    I tried that as well, and pushed what I have so far to https://salsa.debian.org/debian/rust-tonic/-/tree/siretart/0.12?ref_type=heads

    it wasn't easy, I have not even reached the goal. But maybe you find
    those patches helpful? let me know.

    best,
    -rt

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Jonas Smedegaard@21:1/5 to All on Sun Mar 16 08:50:01 2025
    Quoting Reinhard Tartler (2025-03-16 00:29:22)
    On 2025-03-15 14:00, Jonas Smedegaard wrote:

    What's the best way to proceed here? Trying to backport
    https://github.com/hyperium/tonic/commit/9c1f2f9402d97cfa4c9d9065b5af2fb99d2ef521
    to tonic 0.10 or attempting to package 0.12?

    I don't know what is best until I have solved the puzzle.

    What I am trying now is upgrade tonic to v0.12.

    I tried that as well, and pushed what I have so far to https://salsa.debian.org/debian/rust-tonic/-/tree/siretart/0.12?ref_type=heads

    it wasn't easy, I have not even reached the goal. But maybe you find
    those patches helpful? let me know.

    Thanks, that is much appreciated, but unfortunately too late.

    It seems I found a working solution now.

    - Jonas

    --
    * Jonas Smedegaard - idealist & Internet-arkitekt
    * Tlf.: +45 40843136 Website: http://dr.jones.dk/
    * Sponsorship: https://ko-fi.com/drjones

    [x] quote me freely [ ] ask before reusing [ ] keep private

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Jonas Smedegaard@21:1/5 to All on Sun Mar 23 00:40:02 2025
    Quoting Reinhard Tartler (2025-02-25 18:36:52)
    When trying to use librust-tonic-dev as a build dependencies, it fails to install with:

    [...]

    The following packages have unmet dependencies:
    librust-tonic-dev : Depends: librust-axum-0.6-dev but it is not installable

    This should be fixed by now, just needs time to enter testing.

    - Jonas

    --
    * Jonas Smedegaard - idealist & Internet-arkitekt
    * Tlf.: +45 40843136 Website: http://dr.jones.dk/
    * Sponsorship: https://ko-fi.com/drjones

    [x] quote me freely [ ] ask before reusing [ ] keep private --==============91535710302595212=MIME-Version: 1.0
    Content-Transfer-Encoding: 7bit
    Content-Description: signature
    Content-Type: application/pgp-signature; name="signature.asc"; charset="us-ascii"

    -----BEGIN PGP SIGNATURE-----

    wsG7BAABCgBvBYJn30dGCRAsfDFGwaABIUcUAAAAAAAeACBzYWx0QG5vdGF0aW9u cy5zZXF1b2lhLXBncC5vcmcJJBnVSeP4dZAX3k+5m7DMh0u7e99mghgKhjeqExWP YhYhBJ/j6cNmkaaf9TzGhCx8MUbBoAEhAACI/A/+NtTI9nly5JgppPuJopfBRz97 9AKlEFD+a8aZ/4D4ClO0fBeTyN7lU54GaNFViXuwDKyu6ECOueOh2W5d2lOO2xJb esmdpsEW5UeCBUpmCpZ5YehSQhhBmZ2rIED5Bc7E9BfeuNWd7+GyYBqAFeLD0qdO cP7OEgBSJ2OtpPdktst2K15Xo5iik5cR1w6LM/tSQqOSgq5iueyNsO+LNDljt175 b+OBhsTmW5rHOcfq1h72cGEi91ucgXU1ojr6HJo/7AEh83q5v8ELJfOpdUgt8QqV 7pptoDfIch9sPFOQDcZcBHXefQIXEljE4Rws+TuETDjuOiCVfXgA9v8Trn2SMJQ+ P0R2M+qIUi9cDwXCf4BXVPHd+xPfOsp4poh/OFO8