From owner-freebsd-ports-bugs@FreeBSD.ORG Tue Feb 17 19:50:29 2004 Return-Path: Delivered-To: freebsd-ports-bugs@hub.freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id E2EE416A4CF for ; Tue, 17 Feb 2004 19:50:28 -0800 (PST) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id C69EA43D2F for ; Tue, 17 Feb 2004 19:50:28 -0800 (PST) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) i1I3oSbv038524 for ; Tue, 17 Feb 2004 19:50:28 -0800 (PST) (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.12.10/8.12.10/Submit) id i1I3oSmg038523; Tue, 17 Feb 2004 19:50:28 -0800 (PST) (envelope-from gnats) Resent-Date: Tue, 17 Feb 2004 19:50:28 -0800 (PST) Resent-Message-Id: <200402180350.i1I3oSmg038523@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-ports-bugs@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, Leland Wang Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 541E616A4CF; Tue, 17 Feb 2004 19:50:16 -0800 (PST) Received: from muse.csie.ntu.edu.tw (muse.csie.ntu.edu.tw [140.112.28.158]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2F93C43D2F; Tue, 17 Feb 2004 19:50:16 -0800 (PST) (envelope-from rafan@muse.csie.ntu.edu.tw) Received: by muse.csie.ntu.edu.tw (Postfix, from userid 1001) id AE0EE52EE4; Wed, 18 Feb 2004 11:50:14 +0800 (CST) Message-Id: <20040218035014.AE0EE52EE4@muse.csie.ntu.edu.tw> Date: Wed, 18 Feb 2004 11:50:14 +0800 (CST) From: Leland Wang To: FreeBSD-gnats-submit@FreeBSD.org X-Send-Pr-Version: 3.113 cc: knu@FreeBSD.org Subject: ports/62990: portupgrade fails to use package even with -PP when package name changes X-BeenThere: freebsd-ports-bugs@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list Reply-To: Leland Wang List-Id: Ports bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Feb 2004 03:50:29 -0000 >Number: 62990 >Category: ports >Synopsis: portupgrade fails to use package even with -PP when package name changes >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Tue Feb 17 19:50:28 PST 2004 >Closed-Date: >Last-Modified: >Originator: Leland Wang >Release: FreeBSD 4.9-RELEASE-p1 i386 >Organization: NTU CSIE >Environment: System: FreeBSD muse.csie.ntu.edu.tw 4.9-RELEASE-p1 FreeBSD 4.9-RELEASE-p1 #3: Sun Feb 1 23:56:10 CST 2004 root@muse.csie.ntu.edu.tw:/home/admin/usr/obj/home/admin/usr/src/sys/MUSE i386 >Description: When a port's name changes to a alphabetically smaller one, portupgrade fails to use package with -P or -PP options. This is because it compares oldpkg and newpkg directly rather than oldpkg.version and newpkg.version. I am not sure if a similiar condition will occur in the case like upgrading 4.9 to 4.10. >How-To-Repeat: In the recent mozilla-firebird -> firefox change, get a firefox package and do portupgrade -PP mozilla-firebird. >Fix: --- portupgrade.orig Wed Feb 18 11:37:11 2004 +++ portupgrade Wed Feb 18 11:36:42 2004 @@ -941,22 +941,22 @@ have_package = false newpkg = newpkgname = nil - if (oldpkg < portpkg || $force) && $use_packages + if (oldpkg.version < portpkg.version || $force) && $use_packages progress_message "Checking the availability of the latest package of '#{origin}'" newpkg, pkgfile = find_pkg(origin) - if !newpkg || newpkg < oldpkg || newpkg < portpkg + if !newpkg || newpkg.version < oldpkg.version || newpkg.version < portpkg.version if fetch_pkg(origin, logfile) newpkg, pkgfile = find_pkg(origin) end - if !newpkg || newpkg < portpkg + if !newpkg || newpkg.version < portpkg.version warning_message "Could not fetch the latest version '#{portpkg.version}'" end - if newpkg && newpkg < portpkg - if oldpkg < newpkg && $use_packages_only + if newpkg && newpkg.version < portpkg.version + if oldpkg.version < newpkg.version && $use_packages_only progress_message "Putting up with the version '#{newpkg.version}'" else newpkg = nil >Release-Note: >Audit-Trail: >Unformatted: