From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 105168 invoked by alias); 14 Dec 2017 14:12:59 -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 105151 invoked by uid 89); 14 Dec 2017 14:12:58 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-3.2 required=5.0 tests=AWL,BAYES_00,SPF_HELO_PASS,SPF_PASS,T_RP_MATCHES_RCVD autolearn=ham version=3.3.2 spammy=band, Hx-languages-length:1502, transactions, transaction X-HELO: limerock01.mail.cornell.edu Received: from limerock01.mail.cornell.edu (HELO limerock01.mail.cornell.edu) (128.84.13.241) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Thu, 14 Dec 2017 14:12:57 +0000 X-CornellRouted: This message has been Routed already. Received: from authusersmtp.mail.cornell.edu (granite3.serverfarm.cornell.edu [10.16.197.8]) by limerock01.mail.cornell.edu (8.14.4/8.14.4_cu) with ESMTP id vBEECtfu019924 for ; Thu, 14 Dec 2017 09:12:55 -0500 Received: from [192.168.0.15] (mta-68-175-129-7.twcny.rr.com [68.175.129.7] (may be forged)) (authenticated bits=0) by authusersmtp.mail.cornell.edu (8.14.4/8.12.10) with ESMTP id vBEECrwY023748 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES128-SHA bits=128 verify=NOT) for ; Thu, 14 Dec 2017 09:12:54 -0500 Subject: Re: [PATCH setup 00/14] Use libsolv, solve all our problems... (WIP) To: cygwin-apps@cygwin.com References: <20170531105015.162228-1-jon.turney@dronecode.org.uk> <488ba627-de58-ddc7-7f69-696adae76b8a@cornell.edu> <7a173f99-a2e1-a07c-a9df-5bebcf377957@cornell.edu> <87poau9znx.fsf@Rainer.invalid> <050204e5-0ed3-8e47-3825-58ec6a10f44f@cornell.edu> <87ingltcn0.fsf@Rainer.invalid> <4ed6c549-dddd-fc45-3ed8-f7339548d7cd@cornell.edu> <1ec0f4de-380f-c6d1-59e7-03570f36b80b@cornell.edu> <87609alczj.fsf@Rainer.invalid> <31df6cf0-1abd-9cb0-a5c3-3c2b0a7d069c@cornell.edu> From: Ken Brown Message-ID: <3c8e48a1-c235-8626-1cc1-d37962edb3da@cornell.edu> Date: Thu, 14 Dec 2017 14:12:00 -0000 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.5.0 MIME-Version: 1.0 In-Reply-To: <31df6cf0-1abd-9cb0-a5c3-3c2b0a7d069c@cornell.edu> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit X-PMX-Cornell-Gauge: Gauge=XXXXX X-PMX-CORNELL-AUTH-RESULTS: dkim-out=none; X-IsSubscribed: yes X-SW-Source: 2017-12/txt/msg00071.txt.bz2 On 12/13/2017 5:31 PM, Ken Brown wrote: > On 12/13/2017 1:05 PM, Achim Gratz wrote: >> Ken Brown writes: >>> 1. Uninstall A. >>> 2. Don't uninstall B. >>> >>> On the surface, it would seem that libsolv chose 2 by default, because >>> it returned an empty transaction list.  This was reflected in the log >>> and was also clear when I selected 'Back'. >> >> I don't think there is a default in this case.  I also see in zypper >> that the order of the proposed solutions (there can be way more than two >> if the dependencies are more complicated) is not always the same, so >> there is no preference implied by the order as well. >> >>> Maybe we have to deal with this situation ourselves.  Whenever a >>> problem involves a missing dependency, we could choose as default >>> solution the one that installs/keeps the dependent package, as is >>> currently done. >> >> That solution unfortunately isn't always the one that causes the least >> amount of transactions or even the least amount of breakage. > > That may be true, but I still think it's a reasonable default.  The user > doesn't have to accept it.  Also, it's consistent with what setup > currently does, so it won't surprise anyone. > > The attached patch attempts to implement my suggestion. I should add that this patch is only a band aid. Eventually, as we start to use more of libsolv's capabilities, we will have to find a way for users to choose a solution. Ken