From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 46498 invoked by alias); 13 Jan 2018 21:29:51 -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 46486 invoked by uid 89); 13 Jan 2018 21:29:50 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.9 required=5.0 tests=AWL,BAYES_00,KAM_LAZY_DOMAIN_SECURITY,RCVD_IN_DNSWL_LOW autolearn=no version=3.3.2 spammy=Hx-languages-length:2766, alberta, calgary, recommendations X-HELO: smtp-out-no.shaw.ca Received: from smtp-out-no.shaw.ca (HELO smtp-out-no.shaw.ca) (64.59.134.9) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Sat, 13 Jan 2018 21:29:49 +0000 Received: from [192.168.1.100] ([24.64.240.204]) by shaw.ca with ESMTP id aTN4eDDppZ8gBaTN5eho2R; Sat, 13 Jan 2018 14:29:47 -0700 X-Authority-Analysis: v=2.2 cv=M/g9E24s c=1 sm=1 tr=0 a=MVEHjbUiAHxQW0jfcDq5EA==:117 a=MVEHjbUiAHxQW0jfcDq5EA==:17 a=N659UExz7-8A:10 a=Et47sRAJ452rs56YcncA:9 a=7Zwj6sZBwVKJAoWSPKxL6X1jA+E=:19 a=pILNOxqGKmIA:10 Reply-To: Brian.Inglis@SystematicSw.ab.ca 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> <87e4ba12-ed92-1959-d8ae-ab51986f7036@dronecode.org.uk> <79d71e69-57a9-8303-79c8-ba2bfdd098d8@cornell.edu> <1ecbad19-013e-6cf2-7dd8-019f72f7be3b@cornell.edu> From: Brian Inglis Message-ID: <9ebf0e53-c87e-30f7-114f-a0456004b847@SystematicSw.ab.ca> Date: Sat, 13 Jan 2018 21:29:00 -0000 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.5.2 MIME-Version: 1.0 In-Reply-To: <1ecbad19-013e-6cf2-7dd8-019f72f7be3b@cornell.edu> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 8bit X-CMAE-Envelope: MS4wfAFlp1gfF9fLxsBpfkMlAFqIYzecd6vS1yEx7Ee6CdqKo/UhkgET2ZlskIJE2DikKwmtHLydlYk+la92hzatnAShqQfGvsVXqZjMRqKGiBC9l8Z6ve/j RmnPg+b+88UhlwCzLxLZlHg76qSzHzDvuJocroOqKNEyf5CiLtxr8z6q+Ty0UXtjw9l3jgb1seH7kQ== X-IsSubscribed: yes X-SW-Source: 2018-01/txt/msg00042.txt.bz2 On 2018-01-13 12:56, Ken Brown wrote: > On 1/13/2018 9:14 AM, Jon Turney wrote: >> On 09/01/2018 15:49, Ken Brown wrote: >>> On 1/9/2018 10:37 AM, Ken Brown wrote: >>>> >>>> I just did a quick test, trying to uninstall B in the situation above, >>>> and it didn't work as expected.  Even though "Uninstall A" was the first >>>> solution, A didn't get uninstalled. >>> >>> In case you want to replicate this, what I actually tried was uninstalling >>> ImageMagick, which is required, directly or indirectly, by asymptote, >>> dblatex, and xmlto.  Solution 1 was to uninstall these three but it didn't >>> happen. >> >> Doh. >> >> solver_take_solution() modifies the task list (and I went to the trouble of >> refactoring things to make it available to it), but I didn't then re-solve >> with the modified task list. >> >> Also, looking at this again, it looks like the solver places solutions which >> remove a task at the end of of the solution list, so this should be the default >> >> (This matches the previous behaviour, where the default is to accept >> dependencies i.e. if you try to remove a package required by other packages, >> the default solution should be to cancel the removal) >> >> Maybe we need more complex criteria to identify the default, but this seems to >> work in my limited testing. > > I noticed two things: > > 1. I think the code you added to PrereqPage::OnNext() also needs to be added to > PrereqPage::OnBack(). > > 2. We should probably remove, or at least reword, the dire warning about > accepting the default solutions.  I'm not sure we want to "strongly recommend" > the default solution over the other solution(s).  I guess what we really want to > say is that we strongly recommend resolving the problems before continuing. For users who only run setup and use programs, a dire warning and strong recommendations are appropriate. Alternatives are to also remove all packages dependent on the package to be removed, or lastly, to remove only the requested package, leaving the installation inconsistent. Those alternatives would have to be presented to the user for selection, then executed. Anything else requiring the user to resolve would require a FAQ entry explaining what that meant, what diagnosis and actions would be required, and that would probably generate emails from users asking what they should do. Better to allow the solver to resolve issues and just let users choose straightforward alternatives, with the view of trying to keep the installation consistent, unless explicitly overridden, such as to test an alternative implementation of a dependency installed outside of setup. -- Take care. Thanks, Brian Inglis, Calgary, Alberta, Canada