[PATCH setup 00/14] Use libsolv, solve all our problems... (WIP)
Ken Brown
kbrown@cornell.edu
Tue Aug 29 13:37:00 GMT 2017
On 5/31/2017 6:50 AM, Jon Turney wrote:
> ... solve some problems, perhaps add some new ones, I guess. I'm not 100%
> sure this is the right approach to take, but I wrote it, so here it is.
[...]
> - As implemented, selecting "Current" overrides "Keep". This is wrong, and a
> change from current behaviour, but is probably a symptom of some deeper
> confusion in the picker UI I'm not sure how to address
I think the problem might be the following lines in the definition of
SolverSolution::update:
if (update)
queue_push2(&job, SOLVER_UPDATE | SOLVER_SOLVABLE_ALL, 0);
When the prerequisite checker calls SolverSolution::update, doesn't this
cause the upgrading of old versions that we want to keep (assuming
"Current" has been selected)? As a quick test, I commented out those
lines and found that setup.exe let me keep an old version of a package.
Maybe you need to add a DISABLE_UPDATE command to the solver task list
to implement "Keep" for packages that would otherwise be updated.
(Disclaimer: I have only looked briefly at the libsolv sources, so what
I'm saying might be complete nonsense.)
Ken
More information about the Cygwin-apps
mailing list