Subject: pkg/8910: wildcard-depends get not properly registered in +CONTENTS
To: None <gnats-bugs@gnats.netbsd.org>
From: None <frueauf@netbsd.org>
List: netbsd-bugs
Date: 11/28/1999 13:39:41
>Number:         8910
>Category:       pkg
>Synopsis:       wildcard-depends get not properly registered in +CONTENTS
>Confidential:   no
>Severity:       serious
>Priority:       high
>Responsible:    pkg-manager (NetBSD software packages system bug manager)
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sun Nov 28 13:39:00 1999
>Last-Modified:
>Originator:     Thorsten Frueauf
>Organization:
private
	
>Release:        any
>Environment:
	
Any NetBSD machine running the current version of pkgsrc and pkg_install.
Tested with

bsd.pkg.mk:
     $NetBSD: bsd.pkg.mk,v 1.372 1999/11/23 14:31:24 dmcmahill Exp $

on NetBSD/i386 running 1.4P build with src from 27.11.1999.

>Description:
	
I will explain the problem with an example:

The current lesstif version in pkgsrc is 0.89.4. Lets assume the user
has still version 0.89.1 from an older pkgsrc version installed. With
wildcard depends its possible for packages to still use this older
version of lesstif like e.g. xscreensaver does.
So if the user builds and installs xscreensaver,
/var/db/pkg/lesstif-0.89.1/+REQUIRED_BY gets an entry for xscreensaver-3.21.
But in /var/db/pkg/xscreensaver-3.21/+CONTENTS it gets an entry
"@pkgdep lesstif-0.89.4", thus if the user pkg_deletes xscreensaver later,
/var/db/pkg/lesstif-0.89.1/+REQUIRED_BY gets not updated (the xscreensaver
entry leaves there), which in turn results in lesstif not being
pkg_deleteable.

>How-To-Repeat:
	
Build any pkg that wildcard-depends on another pkg of which you have an older
version installed. Try to remove both packages again.

>Fix:
	
Register the installed version of a dependand package, not the current
version in pkgsrc in +CONTENTS.
>Audit-Trail:
>Unformatted:
 wildcard-depends get not properly registered in +CONTENTS