This is the mail archive of the cygwin-apps mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH setup 00/14] Use libsolv, solve all our problems... (WIP)


On 9/26/2017 10:50 AM, Jon Turney wrote:
On 15/09/2017 17:53, Ken Brown wrote:
On 9/15/2017 11:15 AM, Jon Turney wrote:
On 08/09/2017 19:54, Ken Brown wrote:
Finally, I have a question for you, Jon: You introduced PrereqChecker::upgrade, which is true if and only if the user selects Current or Test.  I don't see why this is needed.  I've disabled the use of it and haven't noticed any ill effects.  Am I missing something?

This is supposed to be passed into SolverSolution::update() and used to determine if a SOLVER_UPDATE | SOLVER_SOLVABLE_ALL task is given to the solver, causing all packages to be updated (if possible) (i.e. so 'Keep' doesn't update anything)

I've already arranged (by using SOLVER_LOCK) that 'Keep' doesn't update anything.  So I don't think we need to worry about that case. On the other hand, if 'Current' or 'Test' is selected, then we already upgrade as appropriate in the task list sent to the solver, so I don't think it's necessary to send SOLVER_UPDATE | SOLVER_SOLVABLE_ALL to the solver in that case either.

Yeah, I see. Sigh.

If we select 'curr', then the latest version of all installed packages is selected by the picker and will be shown in the pending view, and gets fed into the solver.

I guess this is technically wrong: really we should ask the solver to do SOLVER_UPDATE | SOLVER_SOLVABLE_ALL, which will come up with a solution which updates all installed packages to the latest possible version, subject to any other constraints which exist.

I suspect there's no difference between these two at the moment, though.

Not sure how to do this properly, though.

One possibility is that we feed all our information to the solver before going to the chooser page. We could then present the solver's initial solution in the pending view as the first thing the user sees.

Ken


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]