[pacman-dev] [PATCH] makepkg: drop duplicate reporting of missing dependencies

Dave Reisner dreisner at archlinux.org
Thu Feb 6 12:48:39 UTC 2020


When pacman fails to satisfy deps, we might see output like the
following:

==> Making package: spiderfoot 3.0-1 (Thu 06 Feb 2020 12:45:10 PM CET)
==> Checking runtime dependencies...
==> Installing missing dependencies...
error: target not found: python-pygexf
==> ERROR: 'pacman' failed to install missing dependencies.
==> Missing dependencies:
  -> python-dnspython
  -> python-exifread
  -> python-cherrypy
  -> python-beautifulsoup4
  -> python-netaddr
  -> python-pysocks
  -> python-ipwhois
  -> python-ipaddress
  -> python-phonenumbers
  -> python-pypdf2
  -> python-stem
  -> python-whois
  -> python-future
  -> python-pyopenssl
  -> python-docx
  -> python-pptx
  -> python-networkx
  -> python-cryptography
  -> python-secure
  -> python-pygexf
  -> python-adblockparser
==> Checking buildtime dependencies...
==> ERROR: Could not resolve all dependencies.

This is misleading -- the only truly missing package is python-pygexf,
but we fail to remove sync-able deps from our deplist and report
everything as if it were missing. Simply drop this extra reporting
because pacman already tells us exactly what couldn't be resolved.
---
I thought about trying to make this accurate and diff the lists --
something like:

  mapfile -t deplist < <(printf '%s\n' "${deplist}" | grep -vxFf <(run_pacman -Ssq))

but I'm not convinced this is really the right thing to do...

 scripts/makepkg.sh.in | 6 ------
 1 file changed, 6 deletions(-)

diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in
index 7fa791e1..bfbf165b 100644
--- a/scripts/makepkg.sh.in
+++ b/scripts/makepkg.sh.in
@@ -316,12 +316,6 @@ resolve_deps() {
 		[[ -z $deplist ]] && return $R_DEPS_SATISFIED
 	fi
 
-	msg "$(gettext "Missing dependencies:")"
-	local dep
-	for dep in ${deplist[@]}; do
-		msg2 "$dep"
-	done
-
 	return $R_DEPS_MISSING
 }
 
-- 
2.25.0


More information about the pacman-dev mailing list