From vangyzen@stat.duke.edu  Tue Nov 19 08:41:25 2002
Return-Path: <vangyzen@stat.duke.edu>
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP id C30C037B401
	for <FreeBSD-gnats-submit@freebsd.org>; Tue, 19 Nov 2002 08:41:25 -0800 (PST)
Received: from davinci.isds.duke.edu (davinci.isds.duke.edu [152.3.22.1])
	by mx1.FreeBSD.org (Postfix) with ESMTP id 1CDDC43E6E
	for <FreeBSD-gnats-submit@freebsd.org>; Tue, 19 Nov 2002 08:41:25 -0800 (PST)
	(envelope-from vangyzen@stat.duke.edu)
Received: from floyd.isds.duke.edu (floyd.isds.duke.edu [152.3.22.120])
	by davinci.isds.duke.edu (8.11.6/8.11.6) with ESMTP id gAJGfJQ02559
	for <FreeBSD-gnats-submit@freebsd.org>; Tue, 19 Nov 2002 11:41:19 -0500 (EST)
Received: (from vangyzen@localhost)
	by floyd.isds.duke.edu (8.12.5/8.12.5/Submit) id gAJGfJwN073741;
	Tue, 19 Nov 2002 11:41:19 -0500 (EST)
	(envelope-from vangyzen)
Message-Id: <200211191641.gAJGfJwN073741@floyd.isds.duke.edu>
Date: Tue, 19 Nov 2002 11:41:19 -0500 (EST)
From: Eric van Gyzen <vangyzen@stat.duke.edu>
Reply-To: Eric van Gyzen <vangyzen@stat.duke.edu>
To: FreeBSD-gnats-submit@freebsd.org
Cc:
Subject: pkg_update(1) does not correctly re-register dependencies
X-Send-Pr-Version: 3.113
X-GNATS-Notify:

>Number:         45484
>Category:       bin
>Synopsis:       pkg_update(1) does not correctly re-register dependencies
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    paul
>State:          closed
>Quarter:        
>Keywords:       
>Date-Required:  
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Tue Nov 19 08:50:01 PST 2002
>Closed-Date:    Tue Jul 22 04:26:41 PDT 2003
>Last-Modified:  Tue Jul 22 04:26:41 PDT 2003
>Originator:     Eric van Gyzen
>Release:        FreeBSD 4.7-STABLE i386
>Organization:
>Environment:
FreeBSD 4.7-STABLE i386

>Description:

The pkg_update utility doesn't fully grok package versions
and therefore doesn't re-register +REQUIRED_BY dependencies
after upgrading a package.

>How-To-Repeat:

By example, when upgrading XFree86-Server-4.2.1_3 to _5:

  # pkg_update XFree86-Server-4.2.1_5.tgz
  Updating XFree86-Server packages to version 4.2.1
  Can't open /var/db/pkg/XFree86-Server-4.2.1/+REQUIRED_BY,
    No such file or directory

>Fix:

--- src/usr.sbin/pkg_install/update/pkg_update.pl.orig  Tue Nov 19 11:35:25 2002
+++ src/usr.sbin/pkg_install/update/pkg_update.pl       Tue Nov 19 11:35:18 2002
@@ -51,7 +51,7 @@
 sub get_version($) {
        my ($pkg) = @_;
 
-       $pkg =~ /(.+)-([0-9\.]+)/;
+       $pkg =~ /(.+)-([0-9\._,]+)/;
        if (! $2) {
                return($pkg, "");
        } else {

>Release-Note:
>Audit-Trail:

From: Eric van Gyzen <vangyzen@stat.duke.edu>
To: freebsd-gnats-submit@FreeBSD.org, vangyzen@stat.duke.edu
Cc:  
Subject: Re: bin/45484: pkg_update(1) does not correctly re-register dependencies
Date: Tue, 19 Nov 2002 13:23:38 -0500

 My first suggested patch still doesn't handle package versions which=20
 contain letters, such as:
   bash-2.05b.004
   xpm-3.4k
   xv-3.10a_3
 
 This one makes much more sense (though you might want to apply the=20
 first one, too).
 
 --- src/usr.sbin/pkg_install/update/pkg_update.pl.orig  Tue Nov 19=20
 13:17:42 2002
 +++ src/usr.sbin/pkg_install/update/pkg_update.pl       Tue Nov 19=20
 13:19:43 2002
 @@ -215,7 +215,7 @@
                 }
         }
  } else {
 -       put_requires($pkgname . "-" . $new_version, \%requires);
 +       put_requires($newpkg, \%requires);
  }
 =20
  exit;
 
 
 --=20
 Eric van Gyzen
                    Sr. Systems Programmer, ISDS, Duke University
 PGP Public Key:  http://www.stat.duke.edu/~vangyzen/vangyzen.asc
 
Responsible-Changed-From-To: freebsd-bugs->paul 
Responsible-Changed-By: dwmalone 
Responsible-Changed-When: Sun Dec 22 06:05:40 PST 2002 
Responsible-Changed-Why:  
Let Paul decide what to do with this PR. 

http://www.freebsd.org/cgi/query-pr.cgi?pr=45484 
State-Changed-From-To: open->closed 
State-Changed-By: paul 
State-Changed-When: Tue Jul 22 04:26:08 PDT 2003 
State-Changed-Why:  
Problem fixed. 

http://www.freebsd.org/cgi/query-pr.cgi?pr=45484 
>Unformatted:
