[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1002021: apt-cache [--installed] lists package name for each available version



Control: tags -1 + patch

Patch attached (based on top of Salsa HEAD, 2662f6f255).
It's something, I think, but it's also entirely possible it's nothing!

New output:
-- >8 --
$ build/cmdline/apt-cache rdepends libtokyocabinet9
libtokyocabinet9
Reverse Depends:
  libtokyocabinet-dev
  neomutt
  libtokyocabinet9-dbgsym
  tokyocabinet-bin
  bogofilter-tokyocabinet
  ruby-tokyocabinet
  regina-normal
  mutt
  libtokyocabinet-perl
  libgrok1
  grok
  duc-nox
  duc
-- >8 --

Diff of apt-cache depends systemd --recurse, bullseye against patch,
first 200 lines, is promising:
-- >8 --
diff --git a/tmp/cur b/tmp/new
index 975d5b1d2..f38a4840b 100644
--- a/tmp/cur
+++ b/tmp/new
@@ -645,7 +645,6 @@ locales
 locales-all
   Depends: libc-l10n
 macs
-  Depends: python3
   Depends: python3
   Depends: python3-numpy
   Depends: <python3:any>
@@ -658,7 +657,6 @@ nscd
   Depends: lsb-base
   Depends: libaudit1
   Depends: libc6
-  Depends: libc6
   Depends: libcap2
   Depends: libselinux1
 openarena
@@ -671,7 +669,6 @@ openarena
   Depends: openarena-085-data
   Depends: openarena-088-data
   Depends: openarena-data
-  Depends: openarena-data
   Depends: libc6
   Recommends: openarena-oacmp1
 openssh-server
@@ -773,7 +770,6 @@ libnss-nis
 libnss-nisplus
   Depends: libc6
   Depends: libnsl2
-  Depends: libnsl2
   Depends: libtirpc3
   Breaks: libc6
   Replaces: libc6
@@ -831,7 +827,6 @@ rng-tools-debian
   Depends: makedev
   Conflicts: <intel-rng-tools>
   Breaks: rng-tools
-  Breaks: rng-tools
   Replaces: <intel-rng-tools>
     rng-tools-debian
   Replaces: rng-tools
@@ -1216,7 +1211,6 @@ network-manager
   Depends: policykit-1
     policykit-1:i386
   Breaks: ppp
-  Breaks: ppp
   Recommends: ppp
   Recommends: dnsmasq-base
     dnsmasq-base-lua
@@ -1291,7 +1285,6 @@ perl:i386
   Suggests: <libterm-readline-perl-perl:i386>
   Suggests: make:i386
     make-guile:i386
-    make-guile
   Suggests: <libtap-harness-archive-perl:i386>
   Replaces: perl-base:i386
 perl
@@ -1799,7 +1792,6 @@ python3:i386
   Suggests: python3-venv:i386
   Replaces: python3-minimal:i386
 python3-dbus
-  Depends: python3
   Depends: python3
   Depends: <python3:any>
     python3:i386
@@ -1813,7 +1805,6 @@ python3-dbus
 python3-gi
   Depends: gir1.2-glib-2.0
   Depends: python3
-  Depends: python3
   Depends: <python3:any>
     python3:i386
     python3
@@ -1960,11 +1951,9 @@ nscd:i386
     lsb-base
   Depends: libaudit1:i386
   Depends: libc6:i386
-  Depends: libc6:i386
   Depends: libcap2:i386
   Depends: libselinux1:i386
 unscd
-  Depends: libc6
   Depends: libc6
   Depends: libsystemd0
     libelogind0
@@ -2702,18 +2691,15 @@ libgegl-dev
   Replaces: <libgegl-0.0-dev>
     libgegl-dev
 libc-bin
-  Depends: libc6
   Depends: libc6
   Recommends: manpages
 libc-bin:i386
-  Depends: libc6:i386
   Depends: libc6:i386
   Recommends: <manpages:i386>
     manpages
 python3-numpy
   Depends: python3-pkg-resources
   Depends: python3
-  Depends: python3
   Depends: <python3.9:any>
     python3.9:i386
     python3.9
@@ -4037,7 +4023,6 @@ libgegl-0.4-0:i386
   Replaces: libgegl-dev:i386
   Breaks: libgegl-dev:i386
 macs:i386
-  Depends: python3:i386
   Depends: python3:i386
   Depends: python3-numpy:i386
   Depends: <python3:any>
@@ -4120,7 +4105,6 @@ libnss-nis:i386
 libnss-nisplus:i386
   Depends: libc6:i386
   Depends: libnsl2:i386
-  Depends: libnsl2:i386
   Depends: libtirpc3:i386
   Breaks: libc6:i386
   Replaces: libc6:i386
@@ -4178,7 +4162,6 @@ openarena:i386
   Depends: <openarena-085-data:i386>
   Depends: <openarena-088-data:i386>
   Depends: <openarena-data:i386>
-  Depends: <openarena-data:i386>
   Depends: libc6:i386
   Recommends: <openarena-oacmp1:i386>
 r-cran-later:i386
@@ -4233,7 +4216,6 @@ network-manager:i386
   Depends: policykit-1:i386
     policykit-1
   Breaks: ppp:i386
-  Breaks: ppp:i386
   Recommends: ppp:i386
   Recommends: dnsmasq-base:i386
     dnsmasq-base-lua:i386
@@ -4937,14 +4919,6 @@ make-guile:i386
   Suggests: <make-doc:i386>
   Replaces: make:i386
     make-guile:i386
-    make-guile
-make-guile
-  Depends: guile-3.0-libs
-  Depends: libc6
-  Conflicts: make
-  Suggests: make-doc
-  Replaces: make
-    make-guile
 libperl5.32
   Depends: libbz2-1.0
   Depends: libc6
@@ -5054,6 +5028,13 @@ make
   Conflicts: make-guile
   Suggests: make-doc
   Replaces: make-guile
+make-guile
+  Depends: guile-3.0-libs
+  Depends: libc6
+  Conflicts: make
+  Suggests: make-doc
+  Replaces: make
+    make-guile
 libtap-harness-archive-perl
   Depends: perl
   Depends: libyaml-tiny-perl
@@ -5079,7 +5060,6 @@ python3-doc
   Suggests: python3
   Suggests: python3-examples
 python3-tk
-  Depends: python3
   Depends: python3
   Depends: blt
   Depends: libc6
@@ -5580,8 +5560,6 @@ postfix
   Suggests: <dovecot-common>
     dovecot-core
  |Suggests: libsasl2-modules
-  Suggests: <dovecot-common>
-    dovecot-core
   Suggests: resolvconf
     openresolv
   Suggests: postfix-cdb
@@ -6179,8 +6157,6 @@ postfix:i386
   Suggests: <dovecot-common:i386>
     dovecot-core:i386
  |Suggests: libsasl2-modules:i386
-  Suggests: <dovecot-common:i386>
-    dovecot-core:i386
   Suggests: <resolvconf:i386>
     openresolv
   Suggests: postfix-cdb:i386
@@ -6349,7 +6325,6 @@ exim4
  |Depends: debconf
   Depends: cdebconf
   Depends: exim4-base
-  Depends: exim4-base
  |Depends: exim4-daemon-light
  |Depends: exim4-daemon-heavy
   Depends: <exim4-daemon-custom>
-- >8 --

Of apt-cache -o APT::Cache::ShowVersion=true depends systemd --recurse,
full:
-- >8 --
diff --git a/tmp/cur+v b/tmp/new+v
index 14e736b58..adb98aab6 100644
--- a/tmp/old+v
+++ b/tmp/new+v
@@ -1291,7 +1291,6 @@ perl:i386
   Suggests: <libterm-readline-perl-perl:i386>
   Suggests: make:i386
     make-guile:i386
-    make-guile
   Suggests: <libtap-harness-archive-perl:i386>
   Replaces: perl-base:i386 (<< 5.32.0-2)
 perl
@@ -4937,14 +4936,6 @@ make-guile:i386
   Suggests: <make-doc:i386>
   Replaces: make:i386
     make-guile:i386
-    make-guile
-make-guile
-  Depends: guile-3.0-libs
-  Depends: libc6 (>= 2.27)
-  Conflicts: make
-  Suggests: make-doc
-  Replaces: make
-    make-guile
 libperl5.32
   Depends: libbz2-1.0
   Depends: libc6 (>= 2.29)
@@ -5054,6 +5045,13 @@ make
   Conflicts: make-guile
   Suggests: make-doc
   Replaces: make-guile
+make-guile
+  Depends: guile-3.0-libs
+  Depends: libc6 (>= 2.27)
+  Conflicts: make
+  Suggests: make-doc
+  Replaces: make
+    make-guile
 libtap-harness-archive-perl
   Depends: perl (>= 5.15.4)
   Depends: libyaml-tiny-perl
@@ -5580,8 +5578,6 @@ postfix
   Suggests: <dovecot-common>
     dovecot-core
  |Suggests: libsasl2-modules
-  Suggests: <dovecot-common>
-    dovecot-core
   Suggests: resolvconf
     openresolv
   Suggests: postfix-cdb
@@ -6179,8 +6175,6 @@ postfix:i386
   Suggests: <dovecot-common:i386>
     dovecot-core:i386
  |Suggests: libsasl2-modules:i386
-  Suggests: <dovecot-common:i386>
-    dovecot-core:i386
   Suggests: <resolvconf:i386>
     openresolv
   Suggests: postfix-cdb:i386
@@ -13261,7 +13255,6 @@ r-base-dev
  |Depends: libblas-dev
   Depends: libatlas-base-dev
  |Depends: liblapack-dev
-  Depends: libatlas-base-dev
   Depends: libncurses5-dev
     libncurses-dev
   Depends: libreadline-dev
@@ -14258,7 +14251,6 @@ pandoc:i386
     uwsgi-plugin-php:i386
   Suggests: perl:i386
   Suggests: <python:i386>
-    python-is-python2
   Suggests: ruby:i386
   Suggests: r-base-core:i386
   Suggests: <libjs-mathjax:i386>
@@ -18142,14 +18134,11 @@ backuppc:i386
   Depends: <libcgi-pm-perl:i386>
   Depends: <libdigest-md5-perl:i386>
     perl:i386
-    perl
   Depends: <libfile-listing-perl:i386>
  |Depends: <libio-compress-perl:i386>
     perl:i386
-    perl
   Depends: <libcompress-zlib-perl:i386>
     perl:i386
-    perl
   Depends: <libtime-parsedate-perl:i386>
   Depends: <lsb-base:i386>
     lsb-base
@@ -18302,10 +18291,8 @@ slic3r:i386
   Depends: <libmoo-perl:i386>
   Depends: <libstorable-perl:i386>
     perl:i386
-    perl
   Depends: <libtime-hires-perl:i386>
     perl:i386
-    perl
   Depends: perl:i386
   Depends: <perlapi-5.32.1:i386>
     perl-base:i386
@@ -18448,7 +18435,6 @@ libfilter-perl:i386
   Recommends: cpp:i386
   Suggests: <libcompress-zlib-perl:i386>
     perl:i386
-    perl
 libc6-dev:i386
   Depends: libc6:i386 (= 2.31-13+deb11u2)
   Depends: libc-dev-bin:i386 (= 2.31-13+deb11u2)
@@ -18706,25 +18692,6 @@ guile-3.0-libs:i386
   Depends: libltdl7:i386 (>= 2.4.6)
   Depends: libreadline8:i386 (>= 6.0)
   Depends: libunistring2:i386 (>= 0.9.7)
-guile-3.0-libs
-  Depends: libc6 (>= 2.29)
-  Depends: libcrypt1 (>= 1:4.1.0)
-  Depends: libffi7 (>= 3.3~20180313)
-  Depends: libgc1 (>= 1:7.4.2)
-  Depends: libgmp10
-  Depends: libltdl7 (>= 2.4.6)
-  Depends: libreadline8 (>= 6.0)
-  Depends: libunistring2 (>= 0.9.7)
-make-doc
- |Depends: dpkg (>= 1.15.4)
-    dpkg:i386
-  Depends: install-info
-    install-info:i386
-  Suggests: make
-    make-guile
-  Replaces: make (<< 3.80+3.81.rc2-1)
-  Enhances: make
-    make-guile
 libgdbm-compat4
   Depends: libc6 (>= 2.14)
   Depends: libgdbm6 (>= 1.16)
@@ -18991,6 +18958,25 @@ libterm-readkey-perl
   Depends: <perlapi-5.32.0>
     perl-base
   Depends: libc6 (>= 2.28)
+make-doc
+ |Depends: dpkg (>= 1.15.4)
+    dpkg:i386
+  Depends: install-info
+    install-info:i386
+  Suggests: make
+    make-guile
+  Replaces: make (<< 3.80+3.81.rc2-1)
+  Enhances: make
+    make-guile
+guile-3.0-libs
+  Depends: libc6 (>= 2.29)
+  Depends: libcrypt1 (>= 1:4.1.0)
+  Depends: libffi7 (>= 3.3~20180313)
+  Depends: libgc1 (>= 1:7.4.2)
+  Depends: libgmp10
+  Depends: libltdl7 (>= 2.4.6)
+  Depends: libreadline8 (>= 6.0)
+  Depends: libunistring2 (>= 0.9.7)
 libyaml-tiny-perl
   Depends: perl
 python3.9-minimal
@@ -32725,7 +32711,6 @@ gcc:i386
   Suggests: gcc-multilib:i386
   Suggests: make:i386
     make-guile:i386
-    make-guile
   Suggests: <manpages-dev:i386>
     manpages-dev
   Suggests: <autoconf:i386>
@@ -38717,13 +38702,10 @@ ruby:i386
   Suggests: ruby-dev:i386
   Replaces: <irb:i386>
     ruby:i386
-    ruby
   Replaces: <rdoc:i386>
     ruby:i386
-    ruby
   Replaces: <rubygems:i386>
     ruby:i386
-    ruby
 ruby-sqlite3:i386
   Depends: libc6:i386 (>= 2.4)
   Depends: libsqlite3-0:i386 (>= 3.7.10)
@@ -50804,7 +50786,6 @@ libjson-rpc-perl
  |Depends: libhttp-daemon-perl
   Depends: libwww-perl (<< 6)
  |Depends: libhttp-message-perl
-  Depends: libwww-perl (<< 6)
   Depends: libjson-perl
   Depends: libplack-perl
   Depends: librouter-simple-perl
@@ -62649,7 +62630,6 @@ slapd:i386
     perl
   Depends: <libmime-base64-perl:i386>
     perl:i386
-    perl
   Depends: <adduser:i386>
     adduser
   Depends: <lsb-base:i386> (>= 3.2-13)
@@ -74196,7 +74176,6 @@ muffin:i386
     cinnamon-session:i386
     lxqt-session:i386
     lxsession:i386
-    lxsession
     mate-session-manager:i386
     openbox:i386
     plasma-workspace:i386
@@ -74290,7 +74269,6 @@ network-manager-gnome:i386
     gnome-flashback:i386
     gnome-shell:i386
     lxpolkit:i386
-    lxpolkit
     lxqt-policykit:i386
     mate-polkit:i386
     phosh:i386
@@ -74821,7 +74799,6 @@ gdm3:i386
     cinnamon-session:i386
     lxqt-session:i386
     lxsession:i386
-    lxsession
     mate-session-manager:i386
     openbox:i386
     plasma-workspace:i386
@@ -80590,7 +80567,6 @@ ocl-icd-opencl-dev
  |Depends: opencl-c-headers
   Depends: opencl-headers
  |Depends: opencl-clhpp-headers
-  Depends: opencl-headers
   Depends: ocl-icd-libopencl1 (= 2.2.14-2)
   Conflicts: <opencl-dev>
   Breaks: <amd-libopencl1> (<< 1:13.4-4~)
@@ -82474,7 +82450,6 @@ build-essential:i386
   Depends: g++:i386 (>= 4:10.2)
   Depends: make:i386
     make-guile:i386
-    make-guile
   Depends: <dpkg-dev:i386> (>= 1.17.11)
     dpkg-dev
 bison-doc
@@ -89036,7 +89011,6 @@ mc:i386
   Suggests: poppler-utils:i386
     poppler-utils
   Suggests: <python:i386>
-    python-is-python2
   Suggests: <python-boto:i386>
   Suggests: <python-tz:i386>
   Suggests: unar:i386
@@ -119942,7 +119916,6 @@ lxsession:i386
     gnome-flashback:i386
     gnome-shell:i386
     lxpolkit:i386
-    lxpolkit
     lxqt-policykit:i386
     mate-polkit:i386
     phosh:i386
@@ -129365,7 +129338,6 @@ lxappearance:i386
   Recommends: gtk2-engines:i386
   Recommends: lxde-settings-daemon:i386
     lxsession:i386
-    lxsession
 liblxqt-globalkeys0:i386
   Depends: libc6:i386 (>= 2.4)
   Depends: libqt5core5a:i386 (>= 5.15.1)
@@ -130014,7 +129986,6 @@ xinit:i386
     cinnamon-session:i386
     lxqt-session:i386
     lxsession:i386
-    lxsession
     mate-session-manager:i386
     openbox:i386
     plasma-workspace:i386
@@ -134824,7 +134795,6 @@ ayatana-indicator-session
   Suggests: mate-control-center
  |Suggests: <unity-control-center-signon>
  |Suggests: <gnome-control-center-signon>
-  Suggests: mate-control-center
   Suggests: lightdm
   Suggests: zenity
     zenity:i386
@@ -144440,7 +144410,6 @@ mate-desktop-environment
   Recommends: ffmpegthumbnailer
   Recommends: libcanberra-pulse
  |Recommends: mate-backgrounds (>= 1.24)
-  Recommends: <ubuntu-mate-wallpapers>
   Recommends: mate-calc (>= 1.24)
   Recommends: mate-applet-brisk-menu
   Recommends: mate-applets (>= 1.24)
@@ -145555,7 +145524,6 @@ libmath-bigint-gmp-perl:i386
   Depends: libgmp10:i386
   Depends: <libmath-bigint-perl:i386> (>= 1.999817)
     perl:i386
-    perl
 asterisk-modules:i386
   Depends: libasound2:i386 (>= 1.0.16)
   Depends: libc6:i386 (>= 2.27)
@@ -147928,7 +147896,6 @@ libdbd-pg-perl:i386
   Depends: libdbi-perl:i386
   Depends: libversion-perl:i386
     perl:i386
-    perl
 libterm-size-perl:i386
   Depends: perl:i386
   Depends: <perlapi-5.32.0:i386>
@@ -149815,7 +149782,6 @@ gnome-applets:i386
     gnome-flashback:i386
     gnome-shell:i386
     lxpolkit:i386
-    lxpolkit
     lxqt-policykit:i386
     mate-polkit:i386
     phosh:i386
@@ -152632,7 +152598,6 @@ libgivaro-dev:i386
   Depends: libgivaro9:i386 (= 4.1.1-2)
   Depends: make:i386
     make-guile:i386
-    make-guile
   Suggests: <libgivaro-doc:i386>
     libgivaro-doc
 gap-core:i386
@@ -157208,7 +157173,6 @@ pcmanfm:i386
     gnome-flashback:i386
     gnome-shell:i386
     lxpolkit:i386
-    lxpolkit
     lxqt-policykit:i386
     mate-polkit:i386
     phosh:i386
@@ -159851,7 +159815,6 @@ kde-telepathy-call-ui
   Depends: kde-telepathy-data (>= 0.8.1)
  |Depends: pulseaudio
     pulseaudio:i386
-  Depends: gstreamer1.0-alsa
   Depends: qml-module-org-kde-telepathy
   Depends: qml-module-qtgstreamer (>= 1.2)
   Depends: libc6 (>= 2.14)
@@ -164492,7 +164455,6 @@ ayatana-indicator-session:i386
   Suggests: mate-control-center:i386
  |Suggests: <unity-control-center-signon:i386>
  |Suggests: <gnome-control-center-signon:i386>
-  Suggests: mate-control-center:i386
   Suggests: lightdm:i386
   Suggests: zenity:i386
     zenity
@@ -166326,7 +166288,6 @@ kde-telepathy-call-ui:i386
     kde-telepathy-data
  |Depends: pulseaudio:i386
     pulseaudio
-  Depends: gstreamer1.0-alsa:i386
   Depends: qml-module-org-kde-telepathy:i386
   Depends: qml-module-qtgstreamer:i386 (>= 1.2)
   Depends: libc6:i386 (>= 2.4)
@@ -174415,7 +174376,6 @@ cmake:i386
   Recommends: gcc:i386
   Recommends: make:i386
     make-guile:i386
-    make-guile
   Suggests: <cmake-doc:i386>
     cmake-doc
   Suggests: ninja-build:i386
@@ -175714,8 +175674,6 @@ ocl-icd-opencl-dev:i386
     opencl-headers
  |Depends: <opencl-clhpp-headers:i386>
     opencl-clhpp-headers
-  Depends: <opencl-headers:i386>
-    opencl-headers
   Depends: ocl-icd-libopencl1:i386 (= 2.2.14-2)
   Conflicts: <opencl-dev:i386>
   Breaks: ocl-icd-libopencl1:i386 (<< 2.1.3-5~)
@@ -179528,7 +179486,6 @@ jigit:i386
   Depends: zlib1g:i386 (>= 1:1.2.3.3)
   Depends: <libio-compress-perl:i386>
     perl:i386
-    perl
   Recommends: wget:i386
     wget
 cdck:i386
@@ -194300,7 +194257,6 @@ google-android-build-tools-installer:i386
     wget
  |Depends: make:i386
     make-guile:i386
-    make-guile
  |Depends: build-essential:i386
   Depends: <dpkg-dev:i386>
     dpkg-dev
@@ -215722,7 +215678,6 @@ systemtap:i386
   Depends: systemtap-common:i386 (= 4.4-2)
   Depends: make:i386
     make-guile:i386
-    make-guile
   Depends: <lsb-release:i386>
     lsb-release
   Suggests: systemtap-doc:i386
-- >8 --

It's pointing toward beign nothing especially
with the @@ -89036,7 +89011,6 @@ hunk, which is missing the entire
quad-indented bit (TODO-marked).

Hm.

наб
From 3d32f4e9a692131b92e05408f9ed578a63c5de88 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=D0=BD=D0=B0=D0=B1?= <nabijaczleweli@nabijaczleweli.xyz>
Date: Tue, 21 Dec 2021 03:57:28 +0100
Subject: [PATCH] apt-cache: deduplicate output lines in each package if
 possible
X-Mutt-PGP: OS

---
 apt-private/private-depends.cc | 27 ++++++++++++++++++---------
 1 file changed, 18 insertions(+), 9 deletions(-)

diff --git a/apt-private/private-depends.cc b/apt-private/private-depends.cc
index 95c747ee3..0bccf00b8 100644
--- a/apt-private/private-depends.cc
+++ b/apt-private/private-depends.cc
@@ -14,6 +14,7 @@
 
 #include <iostream>
 #include <string>
+#include <string_view>
 #include <vector>
 
 #include <stddef.h>
@@ -59,6 +60,7 @@ static bool ShowDepends(CommandLine &CmdL, bool const RevDepends)
       Shown[Pkg->ID] = true;
 
       std::cout << Pkg.FullName(true) << std::endl;
+      std::set<std::tuple<const char *, std::string, map_flags_t, std::string_view>> already_written;
 
       if (RevDepends == true)
 	 std::cout << "Reverse Depends:" << std::endl;
@@ -82,21 +84,26 @@ static bool ShowDepends(CommandLine &CmdL, bool const RevDepends)
 
 	 if((Installed && Trg->CurrentVer != 0) || !Installed)
 	 {
-
-	    if ((D->CompareOp & pkgCache::Dep::Or) == pkgCache::Dep::Or && ShowOnlyFirstOr == false)
+	    bool or_pkg = (D->CompareOp & pkgCache::Dep::Or) == pkgCache::Dep::Or && ShowOnlyFirstOr == false;
+	    std::tuple<const char *, std::string, map_flags_t, std::string_view> cachent_c{ShowDepType ? D.DepType() : nullptr, (Trg->VersionList == 0 ? "<" : "") + Trg.FullName(true) += (Trg->VersionList == 0 ? ">" : ""), ShowVersion == true && D->Version != 0 ? D->CompareOp : 0, ShowVersion == true && D->Version != 0 ? D.TargetVer() : ""};
+	    const auto *cachent = &cachent_c;
+	    if (or_pkg)
 	       std::cout << " |";
 	    else
+	    {
+	       auto [i, ins] = already_written.insert(std::move(cachent_c));
+	       if (!ins)
+		  goto last;
+	       cachent = &*i;
 	       std::cout << "  ";
+	    }
 
 	    // Show the package
-	    if (ShowDepType == true)
-	       std::cout << D.DepType() << ": ";
-	    if (Trg->VersionList == 0)
-	       std::cout << "<" << Trg.FullName(true) << ">";
-	    else
-	       std::cout << Trg.FullName(true);
+	    if (std::get<0>(*cachent))
+	       std::cout << std::get<0>(*cachent) << ": ";
+	    std::cout << std::get<1>(*cachent);
 	    if (ShowVersion == true && D->Version != 0)
-	       std::cout << " (" << pkgCache::CompTypeDeb(D->CompareOp) << ' ' << D.TargetVer() << ')';
+	       std::cout << " (" << pkgCache::CompTypeDeb(std::get<2>(*cachent)) << ' ' << std::get<3>(*cachent) << ')';
 	    std::cout << std::endl;
 
 	    if (Recurse == true && Shown[Trg->ID] == false)
@@ -106,6 +113,7 @@ static bool ShowDepends(CommandLine &CmdL, bool const RevDepends)
 	    }
 
 	    // Display all solutions
+	    // TODO: only allow fallthrough if this has no entries?
 	    std::unique_ptr<pkgCache::Version *[]> List(D.AllTargets());
 	    pkgPrioSortList(*Cache,List.get());
 	    for (pkgCache::Version **I = List.get(); *I != 0; I++)
@@ -125,6 +133,7 @@ static bool ShowDepends(CommandLine &CmdL, bool const RevDepends)
 
 	 }
 
+      last:
 	 if (ShowOnlyFirstOr == true)
 	    while ((D->CompareOp & pkgCache::Dep::Or) == pkgCache::Dep::Or) ++D;
       }
-- 
2.30.2

Attachment: signature.asc
Description: PGP signature


Reply to: