Stefan Schubert wrote:
Hi, apart from the solver call "resolvePool" ( collect all transactions from the pool, solving this transactions and writing the result back to pool) the solver can work off a given request queue too:
/** * Resolve package dependencies: * * The solver works off the given queue and writes back the solution * to pool. * * Returns "true" on success (i.e., if there were no problems that * need user interaction) and "false" if there were problems. In * the latter case, use problems() and later applySolutions() * below. **/ bool resolveQueue (solver::detail::SolverQueueItemList & queue);
Can resolveQueue and resolvePool be used together? I mean, if i use a few addRequires(), then a collect a few QueueItems, then call resolveQueue() and then resolvePool()? Should pose no problem, or? It is a problem. You can use one way only.
The queue can have elements which are described in the following classes:
base class: SolverQueueItem.h
SolverQueueItemDelete.h SolverQueueItemInstall.h SolverQueueItemLock.h SolverQueueItemInstallOneOf.h SolverQueueItemUpdate.h
Known problems: - The update and InstallOneOf request does not work correctly. - The error messages are too abstract now for the user. As I have not changed anything since one year here. I assume that
Jan Kupec schrieb: the problems still exists. But we will have to check it again.
Is this corrected by now? Esp. the update :O)
(Jano, you can start implementation now :-) )
Ouch, almost one year passed from 'now' :O)
At least we are starting now :-)
------------- BTW: apart from this, we will need even more rich solve API, e.g. something to: - install specific name AND version (AND arch, AND from specific repo) - install specific capability with specific arch, repo (version we already handle). - plus some more - i'll try to get together a complete list.
Please send us a list. Greetings Stefan
Currently zypper handles this by itself, but it's bug-prone, as things in libzypp change (e.g. priorities introduced), and the code is not shared this way.
-- ******************************************************************************* Stefan Schubert SUSE LINUX GmbH - Maxfeldstrasse 5 - D-90409 Nuernberg, Germany e-mail: schubi@suse.de ------------------------------------------------------------------------------- SUSE LINUX Products GmbH, GF: Markus Rex, HRB 16746 (AG Nürnberg) -- To unsubscribe, e-mail: zypp-devel+unsubscribe@opensuse.org For additional commands, e-mail: zypp-devel+help@opensuse.org