From owner-freebsd-hackers@FreeBSD.ORG Thu Feb 15 16:53:39 2007 Return-Path: X-Original-To: freebsd-hackers@freebsd.org Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 5DDC816A409 for ; Thu, 15 Feb 2007 16:53:39 +0000 (UTC) (envelope-from michel@lpthe.jussieu.fr) Received: from shiva.jussieu.fr (shiva.jussieu.fr [134.157.0.129]) by mx1.freebsd.org (Postfix) with ESMTP id D263D13C474 for ; Thu, 15 Feb 2007 16:53:38 +0000 (UTC) (envelope-from michel@lpthe.jussieu.fr) Received: from parthe.lpthe.jussieu.fr (parthe.lpthe.jussieu.fr [134.157.10.1]) by shiva.jussieu.fr (8.13.7/jtpda-5.4) with ESMTP id l1FGqYw5022764 for ; Thu, 15 Feb 2007 17:53:18 +0100 (CET) X-Ids: 165 Received: by parthe.lpthe.jussieu.fr (Postfix, from userid 10096) id 7C067BF65D; Thu, 15 Feb 2007 17:52:33 +0100 (CET) X-Spam-Checker-Version: SpamAssassin 3.1.7 (2006-10-05) on parthe.lpthe.jussieu.fr X-Spam-Level: * X-Spam-Status: No, score=1.2 required=5.0 tests=AWL,NO_DNS_FOR_FROM autolearn=no version=3.1.7 Received: from niobe.lpthe.jussieu.fr (niobe.lpthe.jussieu.fr [134.157.10.41]) by parthe.lpthe.jussieu.fr (Postfix) with ESMTP id 4F45ABF65A for ; Thu, 15 Feb 2007 17:52:29 +0100 (CET) Received: by niobe.lpthe.jussieu.fr (Postfix, from userid 2005) id 3CF6C1DD; Thu, 15 Feb 2007 17:52:29 +0100 (CET) Date: Thu, 15 Feb 2007 17:52:29 +0100 From: Michel Talon To: freebsd-hackers@freebsd.org Message-ID: <20070215165228.GA72462@lpthe.jussieu.fr> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.4.2.2i X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-2.0.2 (shiva.jussieu.fr [134.157.0.165]); Thu, 15 Feb 2007 17:53:18 +0100 (CET) X-Mailman-Approved-At: Thu, 15 Feb 2007 16:57:04 +0000 Subject: Re: portupgrade O(n^m)? and pkgupgrade X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 15 Feb 2007 16:53:39 -0000 As a tentative solution to the problem in the subject, i have corrected still more bugs in my program pkguprade. The last version is at http://www.lpthe.jussieu.fr/~talon/pkgupgrade I had observed on my own machine two problems, one being that the topological sort was scrambled, this i have discovered was due to a bad use of the python sort() function (although i don't understand clearly why the syntax was bad), the other had to do with ports being moved in the MOVED files and whose moves were accounted incorrectly. This is a hairy problem with the FreeBSD ports sytem. As an example of running pkgupgrade, here is what i get after having upgraded the port tree from 6.2-RELEASE to current: niobe% ./pkgupgrade There are now 711 packages installed. Collecting installed packages. Building the updated index. Building and filling the dependency DAG. Printing the upgrade list in UpgradeLog Total time spent in analysis: 01 minutes 29 seconds. Second phase, downloads and backups. Total time spent in downloads: 00 minutes 13 seconds. Total time spent in backups: 00 minutes 15 seconds. Writing upgrade shell script. Will remove 3 old packages. Will install 17 new binary packages. Will compile 8 ports. All tasks completed. ****************************************************************** Total time: 01 minutes 53 seconds. At first sight, the shell script which has been produced, UpgradeShell seems reasonable. Of course such a program can only gain very good reliability by testing, but testing is always dangerous ..., except perhaps on testing machines, but i don't have any. -- Michel TALON