#998369 aspcud: fails to resolve rust-mdbook build dependencies in debcargo integration test

Package:
aspcud
Source:
aspcud
Description:
CUDF solver based on Answer Set Programming
Submitter:
Ximin Luo
Date:
2021-11-03 01:27:03 UTC
Severity:
normal
#998369#5
Date:
2021-11-03 01:13:08 UTC
From:
To:
Dear Maintainer,

I am performing some tests on some auto-generated Rust Debian packages.

I have a situation where aspcud is unable to resolve the build-dependencies of
rust-mdbook automatically, see Listing 1. Likewise aptitude is also unable to
resolve them automatically, see Listing 2.

However, both aptitude and aspcud can resolve it after I manually install some
sub-build-dependencies first, see Listing 3, 3A and 3B.

Now aptitude is not expected to solve everything automatically, so this is not
an aptitude bug. However it indicates that there exists a solution that aspcud
is missing, which is a bug as aspcud claims to be a solver that will find a
solution if it exists.

Investigating this further, I have found that although dose-distcheck reports
the same resolve failure, the resolve succeeds if I call it manually without
passing `--deb-native-arch amd64` as sbuild does - see Listing 4.

See attached packages.tar.xz which contains the Packages files which you can
use yourself to reproduce Listing 4. The main_Packages file is a stripped-down
version of what's currently in Debian unstable, restricted to the packages
needed by the resolve attempt. I hope that this is sufficient for you to debug
this situation, but if not I can upload all the packages needed to reproduce
Listing 1, 2, 3, 3A, 3B somewhere as well; they are 605MB though so for now I
have not done this yet.

Note that due to the nature of my test, I have lots of duplicated packages with
the same (name, version, architecture) which apt-cudf complains about, since
some of the packages being tested have different but identically-named analogue
packages already in Debian unstable. Listing 3, 3A and 3B succeed despite this
however, so I trust this is not the cause of the bug here. (If so, it would
still be nice if these duplicate packages could be properly supported.)

Listing 1
=========

(debcargo-unstable-amd64-sbuild)root@pdeb1:/build/rust-mdbook-w6e1sF# apt-get install --solver aspcud sbuild-build-depends-main-dummy
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Execute external solver... Done
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:
 sbuild-build-depends-main-dummy : Depends: librust-ammonia-3+default-dev
                                   Depends: librust-anyhow-1+default-dev (>= 1.0.28-~~)
                                   Depends: librust-chrono-0.4+default-dev
                                   Depends: librust-clap-2+default-dev (>= 2.24-~~)
                                   Depends: librust-elasticlunr-rs-2-dev (>= 2.3-~~)
                                   Depends: librust-env-logger-0.7+default-dev (>= 0.7.1-~~) but it is not going to be installed
                                   Depends: librust-futures-util-0.3+default-dev (>= 0.3.4-~~)
                                   Depends: librust-gitignore-1+default-dev
                                   Depends: librust-handlebars-4+default-dev
                                   Depends: librust-lazy-static-1+default-dev
                                   Depends: librust-log-0.4+default-dev
                                   Depends: librust-memchr-2+default-dev
                                   Depends: librust-notify-4+default-dev
                                   Depends: librust-opener-0.5+default-dev
                                   Depends: librust-pulldown-cmark-0.7+default-dev
                                   Depends: librust-regex-1+default-dev
                                   Depends: librust-serde-1+default-dev
                                   Depends: librust-serde-derive-1+default-dev
                                   Depends: librust-serde-json-1+default-dev
                                   Depends: librust-shlex-1+default-dev
                                   Depends: librust-tempfile-3+default-dev
                                   Depends: librust-tokio-1+default-dev
                                   Depends: librust-tokio-1+macros-dev
                                   Depends: librust-tokio-1+rt-multi-thread-dev
                                   Depends: librust-toml-0.5+default-dev (>= 0.5.1-~~)
                                   Depends: librust-topological-sort-0.1+default-dev
                                   Depends: librust-warp-0.3+websocket-dev (>= 0.3.1-~~)
W: Encountered an unexpected section with 1 fields: Message: (UNSAT) No Solutions according to the given preferences
E: Broken packages

Listing 2
=========

(debcargo-unstable-amd64-sbuild)root@pdeb1:/build/rust-mdbook-w6e1sF# aptitude install sbuild-build-depends-main-dummy
The following NEW packages will be installed:
  librust-aho-corasick+std-dev{a} librust-aho-corasick-dev{a} librust-ansi-term-0.11-dev{a} librust-anyhow-dev{a} librust-atty-dev{a} librust-autocfg-dev{a} librust-base64-dev{a} librust-bitflags-dev{a}
  librust-block-buffer-0.7-dev{a} librust-block-buffer-0.9-dev{a} librust-block-padding-0.1-dev{a} librust-bstr+default-dev{a} librust-bstr+lazy-static-dev{a} librust-bstr+regex-automata-dev{a} librust-bstr+std-dev{a}
  librust-bstr+unicode-dev{a} librust-bstr-dev{a} librust-byte-tools-dev{a} librust-byteorder-dev{a} librust-bytes-dev{a} librust-cfg-if-0.1-dev{a} librust-cfg-if-dev{a} librust-clap-2+ansi-term-dev{a} librust-clap-2+atty-dev{a}
  librust-clap-2+color-dev{a} librust-clap-2+default-dev{a} librust-clap-2+strsim-dev{a} librust-clap-2+vec-map-dev{a} librust-clap-2-dev{a} librust-cpufeatures-dev{a} librust-digest-0.8-dev{a} librust-digest-0.9-dev{a}
  librust-elasticlunr-rs-dev{a} librust-env-logger-0.7+atty-dev{a} librust-env-logger-0.7+default-dev{a} librust-env-logger-0.7+humantime-dev{a} librust-env-logger-0.7+regex-dev{a} librust-env-logger-0.7+termcolor-dev{a}
  librust-env-logger-0.7-dev{a} librust-fake-simd-dev{a} librust-filetime-dev{a} librust-fnv-dev{a} librust-form-urlencoded-dev{a} librust-fsevent-dev{a} librust-fsevent-sys-dev{a} librust-fuchsia-zircon-dev{a}
  librust-fuchsia-zircon-sys-dev{a} librust-futures+alloc-dev{a} librust-futures-channel+alloc-dev{a} librust-futures-channel+futures-sink-dev{a} librust-futures-channel+std-dev{a} librust-futures-channel-dev{a}
  librust-futures-core-dev{a} librust-futures-dev{a} librust-futures-io-dev{a} librust-futures-macro-dev{a} librust-futures-sink-dev{a} librust-futures-task-dev{a} librust-futures-util+alloc-dev{a}
  librust-futures-util+async-await-macro-dev{a} librust-futures-util+default-dev{a} librust-futures-util+futures-macro-dev{a} librust-futures-util+futures-sink-dev{a} librust-futures-util+proc-macro-hack-dev{a}
  librust-futures-util+proc-macro-nested-dev{a} librust-futures-util+slab-dev{a} librust-futures-util+std-dev{a} librust-futures-util-dev{a} librust-generic-array-0.12-dev{a} librust-generic-array-dev{a} librust-getopts-dev{a}
  librust-getrandom-dev{a} librust-gitignore-dev{a} librust-glob-dev{a} librust-h2-dev{a} librust-handlebars-dev{a} librust-hashbrown-dev{a} librust-headers-core-dev{a} librust-headers-dev{a} librust-heck-dev{a}
  librust-hermit-abi-dev{a} librust-http-body-dev{a} librust-http-dev{a} librust-httparse-dev{a} librust-httpdate-dev{a} librust-humantime-1-dev{a} librust-hyper+h2-dev{a} librust-hyper+socket2-dev{a} librust-hyper+tcp-dev{a}
  librust-hyper-dev{a} librust-idna-dev{a} librust-indexmap-dev{a} librust-inotify-0.7-dev{a} librust-inotify-sys-dev{a} librust-input-buffer-0.4-dev{a} librust-iovec-dev{a} librust-itoa-dev{a} librust-kernel32-sys-dev{a}
  librust-lazy-static-dev{a} librust-lazycell-dev{a} librust-libc-dev{a} librust-log-dev{a} librust-maplit-dev{a} librust-matches-dev{a} librust-memchr-dev{a} librust-mime-dev{a} librust-mime-guess-dev{a} librust-mio-0.6-dev{a}
  librust-mio-dev{a} librust-mio-extras-dev{a} librust-miow-0.2-dev{a} librust-miow-dev{a} librust-net2-dev{a} librust-notify-4-dev{a} librust-ntapi-dev{a} librust-num-cpus-dev{a} librust-opaque-debug-0.2-dev{a}
  librust-opaque-debug-dev{a} librust-opener-dev{a} librust-percent-encoding-dev{a} librust-pest-derive-dev{a} librust-pest-dev{a} librust-pest-generator-dev{a} librust-pest-meta-dev{a} librust-pin-project-dev{a}
  librust-pin-project-internal-dev{a} librust-pin-project-lite-dev{a} librust-pin-utils-dev{a} librust-ppv-lite86-dev{a} librust-proc-macro-hack-dev{a} librust-proc-macro-nested-dev{a} librust-proc-macro2-dev{a}
  librust-pulldown-cmark-0.7+getopts-dev{a} librust-pulldown-cmark-0.7-dev{a} librust-quick-error-1-dev{a} librust-quick-error-dev{a} librust-quote+proc-macro-dev{a} librust-quote-dev{a} librust-rand+alloc-dev{a}
  librust-rand+default-dev{a} librust-rand+getrandom-dev{a} librust-rand+libc-dev{a} librust-rand+rand-chacha-dev{a} librust-rand+rand-hc-dev{a} librust-rand+std-dev{a} librust-rand+std-rng-dev{a} librust-rand-chacha+std-dev{a}
  librust-rand-chacha-dev{a} librust-rand-core+getrandom-dev{a} librust-rand-core+std-dev{a} librust-rand-core-dev{a} librust-rand-dev{a} librust-rand-hc-dev{a} librust-redox-syscall-dev{a} librust-regex+aho-corasick-dev{a}
  librust-regex+default-dev{a} librust-regex+memchr-dev{a} librust-regex+perf-dev{a} librust-regex+perf-literal-dev{a} librust-regex+unicode-age-dev{a} librust-regex+unicode-bool-dev{a} librust-regex+unicode-case-dev{a}
  librust-regex+unicode-dev{a} librust-regex+unicode-gencat-dev{a} librust-regex+unicode-perl-dev{a} librust-regex+unicode-script-dev{a} librust-regex+unicode-segment-dev{a} librust-regex-automata-dev{a} librust-regex-dev{a}
  librust-regex-syntax+unicode-dev{a} librust-regex-syntax-dev{a} librust-remove-dir-all-0.5-dev{a} librust-ryu-dev{a} librust-same-file-dev{a} librust-scoped-tls-dev{a} librust-serde-derive-dev{a} librust-serde-dev{a}
  librust-serde-json+std-dev{a} librust-serde-json-dev{a} librust-serde-urlencoded-dev{a} librust-sha-1+std-dev{a} librust-sha-1-0.8-dev{a} librust-sha-1-dev{a} librust-shlex-dev{a} librust-slab-dev{a} librust-socket2-dev{a}
  librust-strsim-0.8-dev{a} librust-strum-0.21-dev{a} librust-strum-macros-0.21-dev{a} librust-syn+default-dev{a} librust-syn+proc-macro-dev{a} librust-syn+quote-dev{a} librust-syn-dev{a} librust-tempfile-dev{a}
  librust-termcolor-dev{a} librust-textwrap-0.11-dev{a} librust-tinyvec+tinyvec-macros-dev{a} librust-tinyvec-dev{a} librust-tinyvec-macros-dev{a} librust-tokio+bytes-dev{a} librust-tokio+io-util-dev{a} librust-tokio+libc-dev{a}
  librust-tokio+memchr-dev{a} librust-tokio+net-dev{a} librust-tokio+num-cpus-dev{a} librust-tokio+rt-multi-thread-dev{a} librust-tokio+tokio-macros-dev{a} librust-tokio-dev{a} librust-tokio-macros-dev{a}
  librust-tokio-stream+time-dev{a} librust-tokio-stream-dev{a} librust-tokio-tungstenite-0.13-dev{a} librust-tokio-util-dev{a} librust-toml-dev{a} librust-topological-sort-dev{a} librust-tower-service-dev{a}
  librust-tracing+log-dev{a} librust-tracing+std-dev{a} librust-tracing-core+lazy-static-dev{a} librust-tracing-core-dev{a} librust-tracing-dev{a} librust-try-lock-dev{a} librust-tungstenite-0.12-dev{a} librust-typenum-dev{a}
  librust-ucd-trie-dev{a} librust-unicase-dev{a} librust-unicode-bidi-dev{a} librust-unicode-normalization-dev{a} librust-unicode-segmentation-dev{a} librust-unicode-width-dev{a} librust-unicode-xid-dev{a} librust-url-dev{a}
  librust-utf-8-dev{a} librust-vec-map-dev{a} librust-version-check-dev{a} librust-walkdir-dev{a} librust-want-dev{a} librust-warp+tokio-tungstenite-dev{a} librust-warp-dev{a} librust-wasi-dev{a} librust-winapi-0.2-dev{a}
  librust-winapi-build-dev{a} librust-winapi-dev{a} librust-winapi-i686-pc-windows-gnu-dev{a} librust-winapi-util-dev{a} librust-winapi-x86-64-pc-windows-gnu-dev{a} librust-ws2-32-sys-dev{a} sbuild-build-depends-main-dummy{b}
The following packages are RECOMMENDED but will NOT be installed:
  librust-elasticlunr-rs+languages-dev librust-futures+default-dev librust-hashbrown+default-dev librust-inotify-0.7+stream-dev librust-regex-automata+regex-syntax-dev librust-sha-1-0.8+std-dev
  librust-tokio-tungstenite-0.13+connect-dev librust-tracing+default-dev librust-tungstenite-0.12+native-tls-dev librust-warp+default-dev
0 packages upgraded, 248 newly installed, 0 to remove and 0 not upgraded.
Need to get 0 B/11.2 MB of archives. After unpacking 161 MB will be used.
The following packages have unmet dependencies:
 sbuild-build-depends-main-dummy : Depends: librust-ammonia-3+default-dev which is a virtual package, provided by:
                                            - librust-ammonia-dev (3.1.2-1), but it is not installable
                                            - librust-ammonia-dev (3.1.2-1), but it is not installable

                                   Depends: librust-chrono-0.4+default-dev which is a virtual package, provided by:
                                            - librust-chrono+default-dev (0.4.19-1), but it is not installable
                                            - librust-chrono-dev (0.4.19-2), but it is not going to be installed

The following actions will resolve these dependencies:

     Keep the following packages at their current version:
1)     sbuild-build-depends-main-dummy [Not Installed]



Accept this solution? [Y/n/q/?] n
open: 4379; closed: 6002; defer: 1; conflict: 1
No solution found within the allotted time.  Try harder? [Y/n] ^C

Listing 3
=========

(debcargo-unstable-amd64-sbuild)root@pdeb1:/build/rust-mdbook-w6e1sF# aptitude install librust-ammonia-dev librust-chrono-dev
The following NEW packages will be installed:
  librust-ammonia-dev{b} librust-autocfg-dev{a} librust-bitflags-dev{a} librust-cfg-if-dev{a} librust-chrono-dev librust-form-urlencoded-dev{a} librust-futf-dev{a} librust-getrandom-0.1-dev{a} librust-html5ever-dev{a}
  librust-idna-dev{a} librust-instant-dev{a} librust-lazy-static-dev{a} librust-libc-dev{a} librust-lock-api-dev{a} librust-log-dev{a} librust-mac-dev{a} librust-maplit-dev{a} librust-markup5ever-dev{a} librust-matches-dev{a}
  librust-new-debug-unreachable-dev{a} librust-num-integer-dev{a} librust-num-traits-dev{a} librust-parking-lot-core-dev{a} librust-parking-lot-dev{a} librust-percent-encoding-dev{a} librust-phf-0.8+std-dev{a}
  librust-phf-0.8-dev{a} librust-phf-codegen-0.8-dev{a} librust-phf-generator-0.8-dev{a} librust-phf-shared-0.8-dev{a} librust-ppv-lite86-dev{a} librust-precomputed-hash-dev{a} librust-proc-macro2-dev{a}
  librust-quote+proc-macro-dev{a} librust-quote-dev{a} librust-rand-0.7+alloc-dev{a} librust-rand-0.7+getrandom-dev{a} librust-rand-0.7+getrandom-package-dev{a} librust-rand-0.7+libc-dev{a} librust-rand-0.7+rand-pcg-dev{a}
  librust-rand-0.7+std-dev{a} librust-rand-0.7-dev{a} librust-rand-chacha-0.2+std-dev{a} librust-rand-chacha-0.2-dev{a} librust-rand-core-0.5+getrandom-dev{a} librust-rand-core-0.5+std-dev{a} librust-rand-core-0.5-dev{a}
  librust-rand-hc-0.2-dev{a} librust-rand-pcg-0.2-dev{a} librust-redox-syscall-dev{a} librust-scopeguard-dev{a} librust-serde-dev{a} librust-siphasher-dev{a} librust-smallvec-dev{a} librust-string-cache+serde-dev{a}
  librust-string-cache-codegen-dev{a} librust-string-cache-dev{a} librust-syn+default-dev{a} librust-syn+proc-macro-dev{a} librust-syn+quote-dev{a} librust-syn-dev{a} librust-tendril-dev{a} librust-tinyvec+tinyvec-macros-dev{a}
  librust-tinyvec-dev{a} librust-tinyvec-macros-dev{a} librust-unicode-bidi-dev{a} librust-unicode-normalization-dev{a} librust-unicode-xid-dev{a} librust-url-dev{a} librust-utf-8-dev{a} librust-wasi-0.9-dev{a}
  librust-winapi-dev{a} librust-winapi-i686-pc-windows-gnu-dev{a} librust-winapi-x86-64-pc-windows-gnu-dev{a}
The following packages are RECOMMENDED but will NOT be installed:
  librust-chrono+default-dev librust-num-integer+std-dev librust-rand-chacha+default-dev librust-rand-chacha-0.2+default-dev
0 packages upgraded, 74 newly installed, 0 to remove and 0 not upgraded.
Need to get 0 B/6436 kB of archives. After unpacking 128 MB will be used.
The following packages have unmet dependencies:
 librust-ammonia-dev : Depends: librust-markup5ever-rcdom-0.1+default-dev which is a virtual package, provided by:
                                - librust-markup5ever-rcdom-dev (0.1.0-1), but it is not installable
                                - librust-markup5ever-rcdom-dev (0.1.0-1+b1), but it is not installable

The following actions will resolve these dependencies:

     Keep the following packages at their current version:
1)     librust-ammonia-dev [Not Installed]



Accept this solution? [Y/n/q/?] n
The following actions will resolve these dependencies:

     Install the following packages:
1)     librust-markup5ever-rcdom-dev [0.1.0-1 (invalid)]
2)     librust-time-0.1-dev [0.1.44-1 (invalid)]
3)     librust-wasi-dev [0.10.0-1 (invalid)]
4)     librust-xml5ever-dev [0.16.2-1 (invalid)]



Accept this solution? [Y/n/q/?] y
The following NEW packages will be installed:
  librust-ammonia-dev librust-autocfg-dev{a} librust-bitflags-dev{a} librust-cfg-if-dev{a} librust-chrono-dev librust-form-urlencoded-dev{a} librust-futf-dev{a} librust-getrandom-0.1-dev{a} librust-html5ever-dev{a}
  librust-idna-dev{a} librust-instant-dev{a} librust-lazy-static-dev{a} librust-libc-dev{a} librust-lock-api-dev{a} librust-log-dev{a} librust-mac-dev{a} librust-maplit-dev{a} librust-markup5ever-dev{a}
  librust-markup5ever-rcdom-dev{a} librust-matches-dev{a} librust-new-debug-unreachable-dev{a} librust-num-integer-dev{a} librust-num-traits-dev{a} librust-parking-lot-core-dev{a} librust-parking-lot-dev{a}
  librust-percent-encoding-dev{a} librust-phf-0.8+std-dev{a} librust-phf-0.8-dev{a} librust-phf-codegen-0.8-dev{a} librust-phf-generator-0.8-dev{a} librust-phf-shared-0.8-dev{a} librust-ppv-lite86-dev{a}
  librust-precomputed-hash-dev{a} librust-proc-macro2-dev{a} librust-quote+proc-macro-dev{a} librust-quote-dev{a} librust-rand-0.7+alloc-dev{a} librust-rand-0.7+getrandom-dev{a} librust-rand-0.7+getrandom-package-dev{a}
  librust-rand-0.7+libc-dev{a} librust-rand-0.7+rand-pcg-dev{a} librust-rand-0.7+std-dev{a} librust-rand-0.7-dev{a} librust-rand-chacha-0.2+std-dev{a} librust-rand-chacha-0.2-dev{a} librust-rand-core-0.5+getrandom-dev{a}
  librust-rand-core-0.5+std-dev{a} librust-rand-core-0.5-dev{a} librust-rand-hc-0.2-dev{a} librust-rand-pcg-0.2-dev{a} librust-redox-syscall-dev{a} librust-scopeguard-dev{a} librust-serde-dev{a} librust-siphasher-dev{a}
  librust-smallvec-dev{a} librust-string-cache+serde-dev{a} librust-string-cache-codegen-dev{a} librust-string-cache-dev{a} librust-syn+default-dev{a} librust-syn+proc-macro-dev{a} librust-syn+quote-dev{a} librust-syn-dev{a}
  librust-tendril-dev{a} librust-time-0.1-dev{a} librust-tinyvec+tinyvec-macros-dev{a} librust-tinyvec-dev{a} librust-tinyvec-macros-dev{a} librust-unicode-bidi-dev{a} librust-unicode-normalization-dev{a}
  librust-unicode-xid-dev{a} librust-url-dev{a} librust-utf-8-dev{a} librust-wasi-0.9-dev{a} librust-wasi-dev{a} librust-winapi-dev{a} librust-winapi-i686-pc-windows-gnu-dev{a} librust-winapi-x86-64-pc-windows-gnu-dev{a}
  librust-xml5ever-dev{a}
The following packages are RECOMMENDED but will NOT be installed:
  librust-chrono+default-dev librust-num-integer+std-dev librust-rand-chacha+default-dev librust-rand-chacha-0.2+default-dev
0 packages upgraded, 78 newly installed, 0 to remove and 0 not upgraded.
Need to get 0 B/6542 kB of archives. After unpacking 129 MB will be used.
Do you want to continue? [Y/n/?]
Get: 1 file:/build/rust-mdbook-w6e1sF/resolver-XLFo36/apt_archive ./ librust-cfg-if-dev 1.0.0-1 [9812 B]
[..]
Setting up librust-ammonia-dev:amd64 (3.1.2-1) ...

Current status: 1 (+1) upgradable.

Listing 3A
==========

aptitude can now complete the resolution automatically:

(debcargo-unstable-amd64-sbuild)root@pdeb1:/build/rust-mdbook-w6e1sF# aptitude install sbuild-build-depends-main-dummy
The following NEW packages will be installed:
  librust-aho-corasick+std-dev{a} librust-aho-corasick-dev{a} librust-ansi-term-0.11-dev{a} librust-anyhow-dev{a} librust-atty-dev{a} librust-base64-dev{a} librust-block-buffer-0.7-dev{a} librust-block-buffer-0.9-dev{a}
  librust-block-padding-0.1-dev{a} librust-bstr+default-dev{a} librust-bstr+lazy-static-dev{a} librust-bstr+regex-automata-dev{a} librust-bstr+std-dev{a} librust-bstr+unicode-dev{a} librust-bstr-dev{a} librust-byte-tools-dev{a}
  librust-byteorder-dev{a} librust-bytes-dev{a} librust-cfg-if-0.1-dev{a} librust-chrono+clock-dev{a} librust-chrono+default-dev{a} librust-chrono+libc-dev{a} librust-chrono+time-dev{a} librust-chrono+winapi-dev{a}
  librust-clap-2+ansi-term-dev{a} librust-clap-2+atty-dev{a} librust-clap-2+color-dev{a} librust-clap-2+default-dev{a} librust-clap-2+strsim-dev{a} librust-clap-2+vec-map-dev{a} librust-clap-2-dev{a} librust-cpufeatures-dev{a}
  librust-digest-0.8-dev{a} librust-digest-0.9-dev{a} librust-elasticlunr-rs-dev{a} librust-env-logger-0.7+atty-dev{a} librust-env-logger-0.7+default-dev{a} librust-env-logger-0.7+humantime-dev{a}
  librust-env-logger-0.7+regex-dev{a} librust-env-logger-0.7+termcolor-dev{a} librust-env-logger-0.7-dev{a} librust-fake-simd-dev{a} librust-filetime-dev{a} librust-fnv-dev{a} librust-fsevent-dev{a} librust-fsevent-sys-dev{a}
  librust-fuchsia-zircon-dev{a} librust-fuchsia-zircon-sys-dev{a} librust-futures+alloc-dev{a} librust-futures-channel+alloc-dev{a} librust-futures-channel+futures-sink-dev{a} librust-futures-channel+std-dev{a}
  librust-futures-channel-dev{a} librust-futures-core-dev{a} librust-futures-dev{a} librust-futures-io-dev{a} librust-futures-macro-dev{a} librust-futures-sink-dev{a} librust-futures-task-dev{a} librust-futures-util+alloc-dev{a}
  librust-futures-util+async-await-macro-dev{a} librust-futures-util+default-dev{a} librust-futures-util+futures-macro-dev{a} librust-futures-util+futures-sink-dev{a} librust-futures-util+proc-macro-hack-dev{a}
  librust-futures-util+proc-macro-nested-dev{a} librust-futures-util+slab-dev{a} librust-futures-util+std-dev{a} librust-futures-util-dev{a} librust-generic-array-0.12-dev{a} librust-generic-array-dev{a} librust-getopts-dev{a}
  librust-getrandom-dev{a} librust-gitignore-dev{a} librust-glob-dev{a} librust-h2-dev{a} librust-handlebars-dev{a} librust-hashbrown-dev{a} librust-headers-core-dev{a} librust-headers-dev{a} librust-heck-dev{a}
  librust-hermit-abi-dev{a} librust-http-body-dev{a} librust-http-dev{a} librust-httparse-dev{a} librust-httpdate-dev{a} librust-humantime-1-dev{a} librust-hyper+h2-dev{a} librust-hyper+socket2-dev{a} librust-hyper+tcp-dev{a}
  librust-hyper-dev{a} librust-indexmap-dev{a} librust-inotify-0.7-dev{a} librust-inotify-sys-dev{a} librust-input-buffer-0.4-dev{a} librust-iovec-dev{a} librust-itoa-dev{a} librust-kernel32-sys-dev{a} librust-lazycell-dev{a}
  librust-memchr-dev{a} librust-mime-dev{a} librust-mime-guess-dev{a} librust-mio-0.6-dev{a} librust-mio-dev{a} librust-mio-extras-dev{a} librust-miow-0.2-dev{a} librust-miow-dev{a} librust-net2-dev{a} librust-notify-4-dev{a}
  librust-ntapi-dev{a} librust-num-cpus-dev{a} librust-opaque-debug-0.2-dev{a} librust-opaque-debug-dev{a} librust-opener-dev{a} librust-pest-derive-dev{a} librust-pest-dev{a} librust-pest-generator-dev{a}
  librust-pest-meta-dev{a} librust-pin-project-dev{a} librust-pin-project-internal-dev{a} librust-pin-project-lite-dev{a} librust-pin-utils-dev{a} librust-proc-macro-hack-dev{a} librust-proc-macro-nested-dev{a}
  librust-pulldown-cmark-0.7+getopts-dev{a} librust-pulldown-cmark-0.7-dev{a} librust-quick-error-1-dev{a} librust-quick-error-dev{a} librust-rand+alloc-dev{a} librust-rand+default-dev{a} librust-rand+getrandom-dev{a}
  librust-rand+libc-dev{a} librust-rand+rand-chacha-dev{a} librust-rand+rand-hc-dev{a} librust-rand+std-dev{a} librust-rand+std-rng-dev{a} librust-rand-chacha+std-dev{a} librust-rand-chacha-dev{a}
  librust-rand-core+getrandom-dev{a} librust-rand-core+std-dev{a} librust-rand-core-dev{a} librust-rand-dev{a} librust-rand-hc-dev{a} librust-regex+aho-corasick-dev{a} librust-regex+default-dev{a} librust-regex+memchr-dev{a}
  librust-regex+perf-dev{a} librust-regex+perf-literal-dev{a} librust-regex+unicode-age-dev{a} librust-regex+unicode-bool-dev{a} librust-regex+unicode-case-dev{a} librust-regex+unicode-dev{a} librust-regex+unicode-gencat-dev{a}
  librust-regex+unicode-perl-dev{a} librust-regex+unicode-script-dev{a} librust-regex+unicode-segment-dev{a} librust-regex-automata-dev{a} librust-regex-dev{a} librust-regex-syntax+unicode-dev{a} librust-regex-syntax-dev{a}
  librust-remove-dir-all-0.5-dev{a} librust-ryu-dev{a} librust-same-file-dev{a} librust-scoped-tls-dev{a} librust-serde-derive-dev{a} librust-serde-json+std-dev{a} librust-serde-json-dev{a} librust-serde-urlencoded-dev{a}
  librust-sha-1+std-dev{a} librust-sha-1-0.8-dev{a} librust-sha-1-dev{a} librust-shlex-dev{a} librust-slab-dev{a} librust-socket2-dev{a} librust-strsim-0.8-dev{a} librust-strum-0.21-dev{a} librust-strum-macros-0.21-dev{a}
  librust-tempfile-dev{a} librust-termcolor-dev{a} librust-textwrap-0.11-dev{a} librust-tokio+bytes-dev{a} librust-tokio+io-util-dev{a} librust-tokio+libc-dev{a} librust-tokio+memchr-dev{a} librust-tokio+net-dev{a}
  librust-tokio+num-cpus-dev{a} librust-tokio+rt-multi-thread-dev{a} librust-tokio+tokio-macros-dev{a} librust-tokio-dev{a} librust-tokio-macros-dev{a} librust-tokio-stream+time-dev{a} librust-tokio-stream-dev{a}
  librust-tokio-tungstenite-0.13-dev{a} librust-tokio-util-dev{a} librust-toml-dev{a} librust-topological-sort-dev{a} librust-tower-service-dev{a} librust-tracing+log-dev{a} librust-tracing+std-dev{a}
  librust-tracing-core+lazy-static-dev{a} librust-tracing-core-dev{a} librust-tracing-dev{a} librust-try-lock-dev{a} librust-tungstenite-0.12-dev{a} librust-typenum-dev{a} librust-ucd-trie-dev{a} librust-unicase-dev{a}
  librust-unicode-segmentation-dev{a} librust-unicode-width-dev{a} librust-vec-map-dev{a} librust-version-check-dev{a} librust-walkdir-dev{a} librust-want-dev{a} librust-warp+tokio-tungstenite-dev{a} librust-warp-dev{a}
  librust-winapi-0.2-dev{a} librust-winapi-build-dev{a} librust-winapi-util-dev{a} librust-ws2-32-sys-dev{a} sbuild-build-depends-main-dummy
The following packages are RECOMMENDED but will NOT be installed:
  librust-elasticlunr-rs+languages-dev librust-futures+default-dev librust-hashbrown+default-dev librust-inotify-0.7+stream-dev librust-regex-automata+regex-syntax-dev librust-sha-1-0.8+std-dev
  librust-tokio-tungstenite-0.13+connect-dev librust-tracing+default-dev librust-tungstenite-0.12+native-tls-dev librust-warp+default-dev
0 packages upgraded, 220 newly installed, 0 to remove and 2 not upgraded.
Need to get 0 B/5603 kB of archives. After unpacking 36.6 MB will be used.
Do you want to continue? [Y/n/?] y
Get: 1 file:/build/rust-mdbook-w6e1sF/resolver-XLFo36/apt_archive ./ librust-memchr-dev 2.4.1-1 [55.9 kB]
[..]
Setting up librust-warp+tokio-tungstenite-dev:amd64 (0.3.1-1) ...
Setting up sbuild-build-depends-main-dummy (0.invalid.0) ...

Listing 3B
==========

Starting from the end of Listing 3, aspcud can now also complete the
resolution automatically:

(debcargo-unstable-amd64-sbuild)root@pdeb1:/build/rust-mdbook-w6e1sF# apt-get install --solver aspcud sbuild-build-depends-main-dummy
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
(W)apt-cudf backend: Duplicated package (same version, name and architecture) : (librust-serde-dev,1.0.130-1,amd64)
Execute external solver... Done
The following additional packages will be installed:
  librust-aho-corasick+std-dev librust-aho-corasick-dev librust-ansi-term-0.11-dev librust-anyhow-dev librust-atty-dev librust-base64-dev librust-block-buffer-0.7-dev librust-block-buffer-0.9-dev librust-block-padding-0.1-dev
  librust-bstr+default-dev librust-bstr+lazy-static-dev librust-bstr+regex-automata-dev librust-bstr+std-dev librust-bstr+unicode-dev librust-bstr-dev librust-byte-tools-dev librust-byteorder-dev librust-bytes-dev
  librust-cfg-if-0.1-dev librust-chrono+clock-dev librust-chrono+default-dev librust-chrono+libc-dev librust-chrono+time-dev librust-chrono+winapi-dev librust-clap+color-dev librust-clap+default-dev librust-clap+strsim-dev
  librust-clap-2-dev librust-cpufeatures-dev librust-digest-0.8-dev librust-digest-0.9-dev librust-elasticlunr-rs-dev librust-env-logger-0.7+atty-dev librust-env-logger-0.7+default-dev librust-env-logger-0.7+humantime-dev
  librust-env-logger-0.7+regex-dev librust-env-logger-0.7+termcolor-dev librust-env-logger-0.7-dev librust-fake-simd-dev librust-filetime-dev librust-fnv-dev librust-fsevent-dev librust-fsevent-sys-dev librust-fuchsia-zircon-dev
  librust-fuchsia-zircon-sys-dev librust-futures+alloc-dev librust-futures-channel+alloc-dev librust-futures-channel+futures-sink-dev librust-futures-channel+std-dev librust-futures-channel-dev librust-futures-core-dev
  librust-futures-dev librust-futures-io-dev librust-futures-macro-dev librust-futures-sink-dev librust-futures-task-dev librust-futures-util+alloc-dev librust-futures-util+async-await-macro-dev librust-futures-util+default-dev
  librust-futures-util+futures-macro-dev librust-futures-util+futures-sink-dev librust-futures-util+proc-macro-hack-dev librust-futures-util+proc-macro-nested-dev librust-futures-util+slab-dev librust-futures-util+std-dev
  librust-futures-util-dev librust-generic-array-0.12-dev librust-generic-array-dev librust-getopts-dev librust-getrandom-dev librust-gitignore-dev librust-glob-dev librust-h2-dev librust-handlebars-dev librust-hashbrown-dev
  librust-headers-core-dev librust-headers-dev librust-heck-dev librust-hermit-abi-dev librust-http-body-dev librust-http-dev librust-httparse-dev librust-httpdate-dev librust-humantime-1-dev librust-hyper+h2-dev
  librust-hyper+socket2-dev librust-hyper+tcp-dev librust-hyper-dev librust-indexmap-dev librust-inotify-0.7-dev librust-inotify-sys-dev librust-input-buffer-0.4-dev librust-iovec-dev librust-itoa-dev librust-kernel32-sys-dev
  librust-lazycell-dev librust-memchr-dev librust-mime-dev librust-mime-guess-dev librust-mio-0.6-dev librust-mio-dev librust-mio-extras-dev librust-miow-0.2-dev librust-miow-dev librust-net2-dev librust-notify-4-dev
  librust-ntapi-dev librust-num-cpus-dev librust-opaque-debug-0.2-dev librust-opaque-debug-dev librust-opener-dev librust-pest-derive-dev librust-pest-dev librust-pest-generator-dev librust-pest-meta-dev librust-pin-project-dev
  librust-pin-project-internal-dev librust-pin-project-lite-dev librust-pin-utils-dev librust-proc-macro-hack-dev librust-proc-macro-nested-dev librust-pulldown-cmark-0.7+getopts-dev librust-pulldown-cmark-0.7-dev
  librust-quick-error-1-dev librust-quick-error-dev librust-rand+alloc-dev librust-rand+default-dev librust-rand+getrandom-dev librust-rand+libc-dev librust-rand+rand-chacha-dev librust-rand+rand-hc-dev librust-rand+std-dev
  librust-rand+std-rng-dev librust-rand-chacha+std-dev librust-rand-chacha-dev librust-rand-core+getrandom-dev librust-rand-core+std-dev librust-rand-core-dev librust-rand-dev librust-rand-hc-dev librust-regex+aho-corasick-dev
  librust-regex+default-dev librust-regex+memchr-dev librust-regex+perf-dev librust-regex+perf-literal-dev librust-regex+unicode-age-dev librust-regex+unicode-bool-dev librust-regex+unicode-case-dev librust-regex+unicode-dev
  librust-regex+unicode-gencat-dev librust-regex+unicode-perl-dev librust-regex+unicode-script-dev librust-regex+unicode-segment-dev librust-regex-automata-dev librust-regex-dev librust-regex-syntax+unicode-dev
  librust-regex-syntax-dev librust-remove-dir-all-dev librust-ryu-dev librust-same-file-dev librust-scoped-tls-dev librust-serde-derive-dev librust-serde-dev librust-serde-json+std-dev librust-serde-json-dev
  librust-serde-urlencoded-dev librust-sha-1+std-dev librust-sha-1-0.8-dev librust-sha-1-dev librust-shlex-dev librust-slab-dev librust-socket2-dev librust-strsim-dev librust-strum-0.21-dev librust-strum-macros-0.21-dev
  librust-tempfile-dev librust-termcolor-dev librust-textwrap-0.11-dev librust-tokio+bytes-dev librust-tokio+io-util-dev librust-tokio+libc-dev librust-tokio+memchr-dev librust-tokio+net-dev librust-tokio+num-cpus-dev
  librust-tokio+rt-multi-thread-dev librust-tokio+tokio-macros-dev librust-tokio-dev librust-tokio-macros-dev librust-tokio-stream+time-dev librust-tokio-stream-dev librust-tokio-tungstenite-0.13-dev librust-tokio-util-dev
  librust-toml-dev librust-topological-sort-dev librust-tower-service-dev librust-tracing+log-dev librust-tracing+std-dev librust-tracing-core+lazy-static-dev librust-tracing-core-dev librust-tracing-dev librust-try-lock-dev
  librust-tungstenite-0.12-dev librust-typenum-dev librust-ucd-trie-dev librust-unicase-dev librust-unicode-segmentation-dev librust-unicode-width-dev librust-vec-map-dev librust-version-check-dev librust-walkdir-dev
  librust-want-dev librust-warp+tokio-tungstenite-dev librust-warp-dev librust-winapi-0.2-dev librust-winapi-build-dev librust-winapi-util-dev librust-ws2-32-sys-dev
Suggested packages:
  librust-anyhow+backtrace-dev librust-block-buffer-0.9+block-padding-dev librust-bstr+serde-dev librust-bstr+serde1-dev librust-bytes+serde-dev librust-cfg-if-0.1+compiler-builtins-dev librust-cfg-if-0.1+core-dev
  librust-cfg-if-0.1+rustc-dep-of-std-dev librust-clap-2+ansi-term-dev librust-clap-2+atty-dev librust-clap-2+clippy-dev librust-clap-2+term-size-dev librust-clap-2+vec-map-dev librust-clap-2+wrap-help-dev
  librust-clap-2+yaml-rust-dev librust-digest-0.8+blobby-dev librust-digest-0.9+blobby-dev librust-elasticlunr-rs+jieba-rs-dev librust-elasticlunr-rs+lindera-dev librust-elasticlunr-rs+rust-stemmers-dev
  librust-futures+async-await-dev librust-futures+bilock-dev librust-futures+compat-dev librust-futures+executor-dev librust-futures+futures-executor-dev librust-futures+io-compat-dev librust-futures+read-initializer-dev
  librust-futures+std-dev librust-futures+thread-pool-dev librust-futures+unstable-dev librust-futures+write-all-vectored-dev librust-futures-util+channel-dev librust-futures-util+compat-dev librust-futures-util+futures-channel-dev
  librust-futures-util+futures-io-dev librust-futures-util+futures-01-dev librust-futures-util+io-dev librust-futures-util+io-compat-dev librust-futures-util+memchr-dev librust-futures-util+read-initializer-dev
  librust-futures-util+tokio-io-dev librust-futures-util+unstable-dev librust-generic-array-0.12+serde-dev librust-generic-array+serde-dev librust-getopts+core-dev librust-getopts+rustc-dep-of-std-dev librust-getopts+std-dev
  librust-getrandom+compiler-builtins-dev librust-getrandom+core-dev librust-getrandom+js-dev librust-getrandom+js-sys-dev librust-getrandom+rustc-dep-of-std-dev librust-getrandom+wasm-bindgen-dev librust-handlebars+rhai-dev
  librust-handlebars+walkdir-dev librust-hashbrown+ahash-dev librust-hashbrown+ahash-compile-time-rng-dev librust-hashbrown+alloc-dev librust-hashbrown+bumpalo-dev librust-hashbrown+compiler-builtins-dev librust-hashbrown+core-dev
  librust-hashbrown+rayon-dev librust-hashbrown+rustc-dep-of-std-dev librust-hashbrown+serde-dev librust-hermit-abi+compiler-builtins-dev librust-hermit-abi+core-dev librust-hermit-abi+rustc-dep-of-std-dev librust-hyper+full-dev
  librust-hyper+libc-dev librust-hyper+runtime-dev librust-indexmap+rayon-dev librust-indexmap+serde-dev librust-inotify-0.7+futures-dev librust-inotify-0.7+mio-dev librust-inotify-0.7+tokio-dev librust-inotify-0.7+tokio-io-dev
  librust-inotify-0.7+tokio-reactor-dev librust-lazycell+clippy-dev librust-lazycell+nightly-testing-dev librust-lazycell+serde-dev librust-memchr+compiler-builtins-dev librust-memchr+core-dev librust-memchr+libc-dev
  librust-memchr+rustc-dep-of-std-dev librust-ntapi+impl-default-dev librust-pest+pretty-print-dev librust-pest+serde-dev librust-pest+serde-json-dev librust-rand-chacha+serde-dev librust-rand-core+serde-dev librust-rand+log-dev
  librust-rand+packed-simd-dev librust-rand+serde-dev librust-rand+serde1-dev librust-regex-automata+fst-dev librust-regex-automata+transducer-dev librust-ryu+no-panic-dev librust-serde+serde-derive-dev librust-serde-json+alloc-dev
  librust-serde-json+indexmap-dev librust-sha-1-0.8+asm-aarch64-dev librust-sha-1-0.8+libc-dev librust-sha-1-0.8+sha1-asm-dev librust-sha-1+sha1-asm-dev librust-slab+serde-dev librust-strum-0.21+strum-macros-dev
  librust-textwrap-0.11+hyphenation-dev librust-textwrap-0.11+term-size-dev librust-tokio+full-dev librust-tokio+mio-dev librust-tokio+once-cell-dev librust-tokio+parking-lot-dev librust-tokio+process-dev librust-tokio+signal-dev
  librust-tokio+signal-hook-registry-dev librust-tokio+test-util-dev librust-tokio+tracing-dev librust-tokio+winapi-dev librust-tokio-stream+fs-dev librust-tokio-stream+io-util-dev librust-tokio-stream+net-dev
  librust-tokio-stream+signal-dev librust-tokio-stream+sync-dev librust-tokio-stream+tokio-util-dev librust-tokio-tungstenite-0.13+native-tls-dev librust-tokio-tungstenite-0.13+tls-dev
  librust-tokio-tungstenite-0.13+tokio-native-tls-dev librust-tokio-util+full-dev librust-tokio-util+futures-io-dev librust-tokio-util+futures-util-dev librust-tokio-util+io-util-dev librust-tokio-util+net-dev
  librust-tokio-util+rt-dev librust-tokio-util+slab-dev librust-tokio-util+time-dev librust-toml+indexmap-dev librust-tracing+tracing-attributes-dev librust-tungstenite-0.12+tls-vendored-dev
  librust-unicode-width+compiler-builtins-dev librust-unicode-width+core-dev librust-unicode-width+rustc-dep-of-std-dev librust-unicode-width+std-dev librust-vec-map+serde-dev librust-warp+async-compression-dev
  librust-warp+multipart-dev librust-warp+tokio-rustls-dev
Recommended packages:
  librust-elasticlunr-rs+languages-dev librust-futures+default-dev librust-hashbrown+default-dev librust-inotify-0.7+stream-dev librust-regex-automata+regex-syntax-dev librust-sha-1-0.8+std-dev
  librust-tokio-tungstenite-0.13+connect-dev librust-tracing+default-dev librust-tungstenite-0.12+native-tls-dev librust-warp+default-dev
The following NEW packages will be installed:
  librust-aho-corasick+std-dev librust-aho-corasick-dev librust-ansi-term-0.11-dev librust-anyhow-dev librust-atty-dev librust-base64-dev librust-block-buffer-0.7-dev librust-block-buffer-0.9-dev librust-block-padding-0.1-dev
  librust-bstr+default-dev librust-bstr+lazy-static-dev librust-bstr+regex-automata-dev librust-bstr+std-dev librust-bstr+unicode-dev librust-bstr-dev librust-byte-tools-dev librust-byteorder-dev librust-bytes-dev
  librust-cfg-if-0.1-dev librust-chrono+clock-dev librust-chrono+default-dev librust-chrono+libc-dev librust-chrono+time-dev librust-chrono+winapi-dev librust-clap+color-dev librust-clap+default-dev librust-clap+strsim-dev
  librust-clap-2-dev librust-cpufeatures-dev librust-digest-0.8-dev librust-digest-0.9-dev librust-elasticlunr-rs-dev librust-env-logger-0.7+atty-dev librust-env-logger-0.7+default-dev librust-env-logger-0.7+humantime-dev
  librust-env-logger-0.7+regex-dev librust-env-logger-0.7+termcolor-dev librust-env-logger-0.7-dev librust-fake-simd-dev librust-filetime-dev librust-fnv-dev librust-fsevent-dev librust-fsevent-sys-dev librust-fuchsia-zircon-dev
  librust-fuchsia-zircon-sys-dev librust-futures+alloc-dev librust-futures-channel+alloc-dev librust-futures-channel+futures-sink-dev librust-futures-channel+std-dev librust-futures-channel-dev librust-futures-core-dev
  librust-futures-dev librust-futures-io-dev librust-futures-macro-dev librust-futures-sink-dev librust-futures-task-dev librust-futures-util+alloc-dev librust-futures-util+async-await-macro-dev librust-futures-util+default-dev
  librust-futures-util+futures-macro-dev librust-futures-util+futures-sink-dev librust-futures-util+proc-macro-hack-dev librust-futures-util+proc-macro-nested-dev librust-futures-util+slab-dev librust-futures-util+std-dev
  librust-futures-util-dev librust-generic-array-0.12-dev librust-generic-array-dev librust-getopts-dev librust-getrandom-dev librust-gitignore-dev librust-glob-dev librust-h2-dev librust-handlebars-dev librust-hashbrown-dev
  librust-headers-core-dev librust-headers-dev librust-heck-dev librust-hermit-abi-dev librust-http-body-dev librust-http-dev librust-httparse-dev librust-httpdate-dev librust-humantime-1-dev librust-hyper+h2-dev
  librust-hyper+socket2-dev librust-hyper+tcp-dev librust-hyper-dev librust-indexmap-dev librust-inotify-0.7-dev librust-inotify-sys-dev librust-input-buffer-0.4-dev librust-iovec-dev librust-itoa-dev librust-kernel32-sys-dev
  librust-lazycell-dev librust-memchr-dev librust-mime-dev librust-mime-guess-dev librust-mio-0.6-dev librust-mio-dev librust-mio-extras-dev librust-miow-0.2-dev librust-miow-dev librust-net2-dev librust-notify-4-dev
  librust-ntapi-dev librust-num-cpus-dev librust-opaque-debug-0.2-dev librust-opaque-debug-dev librust-opener-dev librust-pest-derive-dev librust-pest-dev librust-pest-generator-dev librust-pest-meta-dev librust-pin-project-dev
  librust-pin-project-internal-dev librust-pin-project-lite-dev librust-pin-utils-dev librust-proc-macro-hack-dev librust-proc-macro-nested-dev librust-pulldown-cmark-0.7+getopts-dev librust-pulldown-cmark-0.7-dev
  librust-quick-error-1-dev librust-quick-error-dev librust-rand+alloc-dev librust-rand+default-dev librust-rand+getrandom-dev librust-rand+libc-dev librust-rand+rand-chacha-dev librust-rand+rand-hc-dev librust-rand+std-dev
  librust-rand+std-rng-dev librust-rand-chacha+std-dev librust-rand-chacha-dev librust-rand-core+getrandom-dev librust-rand-core+std-dev librust-rand-core-dev librust-rand-dev librust-rand-hc-dev librust-regex+aho-corasick-dev
  librust-regex+default-dev librust-regex+memchr-dev librust-regex+perf-dev librust-regex+perf-literal-dev librust-regex+unicode-age-dev librust-regex+unicode-bool-dev librust-regex+unicode-case-dev librust-regex+unicode-dev
  librust-regex+unicode-gencat-dev librust-regex+unicode-perl-dev librust-regex+unicode-script-dev librust-regex+unicode-segment-dev librust-regex-automata-dev librust-regex-dev librust-regex-syntax+unicode-dev
  librust-regex-syntax-dev librust-remove-dir-all-dev librust-ryu-dev librust-same-file-dev librust-scoped-tls-dev librust-serde-derive-dev librust-serde-json+std-dev librust-serde-json-dev librust-serde-urlencoded-dev
  librust-sha-1+std-dev librust-sha-1-0.8-dev librust-sha-1-dev librust-shlex-dev librust-slab-dev librust-socket2-dev librust-strsim-dev librust-strum-0.21-dev librust-strum-macros-0.21-dev librust-tempfile-dev
  librust-termcolor-dev librust-textwrap-0.11-dev librust-tokio+bytes-dev librust-tokio+io-util-dev librust-tokio+libc-dev librust-tokio+memchr-dev librust-tokio+net-dev librust-tokio+num-cpus-dev librust-tokio+rt-multi-thread-dev
  librust-tokio+tokio-macros-dev librust-tokio-dev librust-tokio-macros-dev librust-tokio-stream+time-dev librust-tokio-stream-dev librust-tokio-tungstenite-0.13-dev librust-tokio-util-dev librust-toml-dev
  librust-topological-sort-dev librust-tower-service-dev librust-tracing+log-dev librust-tracing+std-dev librust-tracing-core+lazy-static-dev librust-tracing-core-dev librust-tracing-dev librust-try-lock-dev
  librust-tungstenite-0.12-dev librust-typenum-dev librust-ucd-trie-dev librust-unicase-dev librust-unicode-segmentation-dev librust-unicode-width-dev librust-vec-map-dev librust-version-check-dev librust-walkdir-dev
  librust-want-dev librust-warp+tokio-tungstenite-dev librust-warp-dev librust-winapi-0.2-dev librust-winapi-build-dev librust-winapi-util-dev librust-ws2-32-sys-dev sbuild-build-depends-main-dummy
The following packages will be DOWNGRADED:
  librust-serde-dev
0 upgraded, 217 newly installed, 1 downgraded, 0 to remove and 1 not upgraded.
Need to get 0 B/5661 kB of archives.
After this operation, 36.6 MB of additional disk space will be used.
Do you want to continue? [Y/n] ^C

Listing 4
=========

This is the same output that sbuild reports, but run against my smaller Packages files, see attached.

$ cat *Packages | dose-debcheck --checkonly sbuild-build-depends-main-dummy:amd64 -v -f -e --deb-native-arch amd64
(I)Doseparse: Parsing and normalizing...
(I)Dose_deb: Parsing Packages file -...
(I)Dose_common: total packages 2896
(I)Dose_applications: Cudf Universe: 2896 packages
(I)Dose_applications: --checkonly specified, consider all packages as background packages
(I)Dose_applications: Solving...
output-version: 1.2
native-architecture: amd64
report:
 -
  package: sbuild-build-depends-main-dummy
  version: 0.invalid.0
  architecture: amd64
  status: broken
  reasons:
   -
    conflict:
     pkg1:
      package: librust-quick-error-dev
      version: 1.2.3-1
      architecture: amd64
      unsat-conflict: librust-quick-error-dev:amd64
     pkg2:
      package: librust-quick-error-dev
      version: 2.0.1-1
      architecture: amd64
     depchain1:
      -
       depchain:
        -
         package: sbuild-build-depends-main-dummy
         version: 0.invalid.0
         architecture: amd64
         depends: librust-env-logger-0.7+default-dev:amd64 (>= 0.7.1-~~)
        -
         package: librust-env-logger-0.7+default-dev
         version: 0.7.1-1
         architecture: amd64
         depends: librust-env-logger-0.7+humantime-dev:amd64 (= 0.7.1-1)
        -
         package: librust-env-logger-0.7+humantime-dev
         version: 0.7.1-1
         architecture: amd64
         depends: librust-humantime-1+default-dev:amd64 (>= 1.3-~~) | librust-humantime-1+default-dev:amd64 (>= 1.3-~~)
        -
         package: librust-humantime-1-dev
         version: 1.3.0-1
         architecture: amd64
         depends: librust-quick-error-1+default-dev:amd64 | librust-quick-error-1+default-dev:amd64
     depchain2:
      -
       depchain:
        -
         package: sbuild-build-depends-main-dummy
         version: 0.invalid.0
         architecture: amd64
         depends: librust-handlebars-4+default-dev:amd64 | librust-handlebars-4+default-dev:amd64
        -
         package: librust-handlebars-dev
         version: 4.1.3-1
         architecture: amd64
         depends: librust-quick-error-2+default-dev:amd64 | librust-quick-error-2+default-dev:amd64
   -
    conflict:
     pkg1:
      package: librust-quick-error-1-dev
      version: 1.2.3-1
      architecture: amd64
      unsat-conflict: librust-quick-error-dev:amd64
     pkg2:
      package: librust-quick-error-dev
      version: 2.0.1-1
      architecture: amd64
     depchain1:
      -
       depchain:
        -
         package: sbuild-build-depends-main-dummy
         version: 0.invalid.0
         architecture: amd64
         depends: librust-env-logger-0.7+default-dev:amd64 (>= 0.7.1-~~)
        -
         package: librust-env-logger-0.7+default-dev
         version: 0.7.1-1
         architecture: amd64
         depends: librust-env-logger-0.7+humantime-dev:amd64 (= 0.7.1-1)
        -
         package: librust-env-logger-0.7+humantime-dev
         version: 0.7.1-1
         architecture: amd64
         depends: librust-humantime-1+default-dev:amd64 (>= 1.3-~~) | librust-humantime-1+default-dev:amd64 (>= 1.3-~~)
        -
         package: librust-humantime-1-dev
         version: 1.3.0-1
         architecture: amd64
         depends: librust-quick-error-1+default-dev:amd64 | librust-quick-error-1+default-dev:amd64
     depchain2:
      -
       depchain:
        -
         package: sbuild-build-depends-main-dummy
         version: 0.invalid.0
         architecture: amd64
         depends: librust-handlebars-4+default-dev:amd64 | librust-handlebars-4+default-dev:amd64
        -
         package: librust-handlebars-dev
         version: 4.1.3-1
         architecture: amd64
         depends: librust-quick-error-2+default-dev:amd64 | librust-quick-error-2+default-dev:amd64

background-packages: 2895
foreground-packages: 1
total-packages: 2896
broken-packages: 1
exit code 1

$ cat *Packages | dose-debcheck --checkonly sbuild-build-depends-main-dummy -v -f -e
(I)Doseparse: Parsing and normalizing...
(I)Dose_deb: Parsing Packages file -...
(I)Dose_common: total packages 2896
(I)Dose_applications: Cudf Universe: 2896 packages
(I)Dose_applications: --checkonly specified, consider all packages as background packages
(I)Dose_applications: Solving...
output-version: 1.2
report:

background-packages: 2895
foreground-packages: 1
total-packages: 2896
broken-packages: 0
exit code 0