From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 56866 invoked by alias); 9 Jul 2018 18:17:49 -0000 Mailing-List: contact cygwin-apps-help@cygwin.com; run by ezmlm Precedence: bulk Sender: cygwin-apps-owner@cygwin.com List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Mail-Followup-To: cygwin-apps@cygwin.com Received: (qmail 56835 invoked by uid 89); 9 Jul 2018 18:17:48 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-27.6 required=5.0 tests=BAYES_00,GIT_PATCH_0,GIT_PATCH_1,GIT_PATCH_2,GIT_PATCH_3,RCVD_IN_DNSWL_LOW autolearn=ham version=3.3.2 spammy=H*M:c8fe, Hx-spam-relays-external:ESMTPA X-HELO: wout1-smtp.messagingengine.com Received: from wout1-smtp.messagingengine.com (HELO wout1-smtp.messagingengine.com) (64.147.123.24) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Mon, 09 Jul 2018 18:17:47 +0000 Received: from compute6.internal (compute6.nyi.internal [10.202.2.46]) by mailout.west.internal (Postfix) with ESMTP id 89343395 for ; Mon, 9 Jul 2018 14:17:44 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute6.internal (MEProxy); Mon, 09 Jul 2018 14:17:44 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=content-transfer-encoding:content-type :date:from:in-reply-to:message-id:mime-version:references :subject:to:x-me-sender:x-me-sender:x-sasl-enc; s=fm3; bh=PXmT4o 80A2YmRkJeW1QFb5BO6VyyOSy//Eu2xULjXvU=; b=j/WmIvUEiA1YMXNOUSOgBR iuUsfcnebquXuBXVngH2nHbMMl7x/yoaXEMnYCNpyB8XzxPvsyTBSKaUussL/2v5 ugxntDwVJcqRQJqP4vYadyDtwGy4d8p9Z+IVWxeDXNR2UHI/HaBMusbidXopy+Jj 4KQiIuyAnt+NCqo4b81dNTlb+UXYfvP5MAkXu9dCOB4Bp18AVF2eMZG0YoOjU/Ko DUviQao4Oj5hma2nThbdFp6QlXfIAdBVGh6ORYUWoP71KVB7tKs9WLKvktyEsjSN 8aBFso1bFLykNUVwXetOyXM7lWsTfNQNm7S43YfBMW7CryvH9NGxfcArq9C35I2A == Received: from [192.168.1.102] (host86-184-210-66.range86-184.btcentralplus.com [86.184.210.66]) by mail.messagingengine.com (Postfix) with ESMTPA id 75864E4439 for ; Mon, 9 Jul 2018 14:17:43 -0400 (EDT) Subject: Re: [PATCH setup 3/3] Keep track of all known sites for a given version of a package To: "cygwin-apps@cygwin.com" References: <20180317145955.4944-1-kbrown@cornell.edu> <20180317145955.4944-4-kbrown@cornell.edu> From: Jon Turney Message-ID: Date: Mon, 09 Jul 2018 18:17:00 -0000 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.9.0 MIME-Version: 1.0 In-Reply-To: <20180317145955.4944-4-kbrown@cornell.edu> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-SW-Source: 2018-07/txt/msg00018.txt.bz2 On 17/03/2018 14:59, Ken Brown wrote: > When adding a packageversion for an entry in setup.ini, make its > packagesource::sites vector include the sites from previously > processed ini files. > > Also remove from the libsolv pool the previous packageversions, so > that libsolv will always find the one that lists all the sites. Thanks. I think that this might be better done in packagemeta::add_version() as you originally proposed, although that does involve moving more things around. A couple of patches which replace this one to do that follow. > diff --git a/package_meta.cc b/package_meta.cc > index 7f8110d..89b67bc 100644 > --- a/package_meta.cc > +++ b/package_meta.cc > @@ -140,6 +140,14 @@ packagemeta::add_version (packageversion & thepkg, const SolverPool::addPackageD > set ::iterator i = versions.find(thepkg); > if (i != versions.end()) > { > + if (pkgdata.reponame != "_installed") > + { > + if (curr == *i) > + curr = thepkg; > + if (exp == *i) > + exp = thepkg; > + i->remove(); > + } A comment would have been useful here. It took a bit of head scratching and testing with this removed to understand what this part is doing.