Go to the documentation of this file.
14 #define ZYPP_USE_RESOLVER_INTERNALS
27 using namespace solver;
57 {
return _pimpl->verifySystem(); }
60 {
return _pimpl->resolvePool(); }
63 {
return _pimpl->resolveQueue(queue); }
69 {
return _pimpl->problems (); }
72 {
_pimpl->applySolutions (solutions); }
75 {
return _pimpl->getTransaction(); }
78 {
return _pimpl->doUpgrade(); }
114 #define ZOLV_FLAG_BOOL( ZSETTER, ZGETTER ) \
115 void Resolver::ZSETTER( bool yesno_r ){ _pimpl->ZSETTER( yesno_r ); } \
116 bool Resolver::ZGETTER() const { return _pimpl->ZGETTER(); } \
118 #define ZOLV_FLAG_TRIBOOL( ZSETTER, ZDEFAULT, ZGETTER ) \
119 ZOLV_FLAG_BOOL( ZSETTER , ZGETTER ) \
120 void Resolver::ZDEFAULT() { _pimpl->ZSETTER( indeterminate ); } \
123 ZOLV_FLAG_TRIBOOL( setAllowNameChange, setDefaultAllowNameChange, allowNameChange )
124 ZOLV_FLAG_TRIBOOL( setAllowArchChange, setDefaultAllowArchChange, allowArchChange )
132 #undef ZOLV_FLAG_BOOL
133 #undef ZOLV_FLAG_TRIBOOL
150 {
return _pimpl->problematicUpdateItems(); }
154 solver::detail::Testcase testcase (dumpPath);
155 return testcase.createTestcase(*
_pimpl,
true, runSolver);
159 {
return _pimpl->isInstalledBy (item); }
162 {
return _pimpl->installs (item); }
165 {
return _pimpl->satifiedByInstalled (item); }
168 {
return _pimpl->installedSatisfied (item); }
171 {
_pimpl->reset(
false ); }
void removeRequire(const Capability &capability)
Remove the additional requirement set by addRequire(Capability).
Combining sat::Solvable and ResStatus.
bool createSolverTestcase(const std::string &dumpPath="/var/log/YaST2/solverTestcase", bool runSolver=true)
Generates a solver Testcase of the current state.
zypp::RW_pointer< solver::detail::ResolverInternal > _pimpl
void setDefaultSystemVerification()
void doUpdate()
Update to newest package.
void setOnlyRequires(bool yesno_r)
Setting whether required packages are installed ONLY So recommended packages, language packages and p...
void setSolveSrcPackages(bool yesno_r)
Set whether to solve source packages build dependencies per default.
#define ZOLV_FLAG_TRIBOOL(ZSETTER, ZDEFAULT, ZGETTER)
Resolver(const ResPool &pool)
Ctor.
bool systemVerification() const
void setUpdateMode(bool yesno_r)
Setting whether the solver should perform in 'update' mode or not.
void addUpgradeRepo(Repository repo_r)
Adding request to perform a dist upgrade restricted to this repository.
bool doUpgrade()
Do an distribution upgrade (DUP)
CapabilitySet getConflict() const
Get all the additional conflicts set by addConflict(Capability).
void setDefaultSolveSrcPackages()
bool ignoreAlreadyRecommended() const
void removeUpgradeRepo(Repository repo_r)
Remove an upgrade request for this repo.
CapabilitySet getRequire() const
Get all the additional requirements set by addRequire(Capability).
std::list< ProblemSolution_Ptr > ProblemSolutionList
bool solveSrcPackages() const
ResolverFocus
The resolvers general attitude.
Libsolv transaction wrapper.
bool forceResolve() const
::s_Solver CSolver
Wrapped libsolv C data type exposed as backdoor.
void setCleandepsOnRemove(bool yesno_r)
Cleanup when deleting packages.
solver::detail::ItemCapKindList isInstalledBy(const PoolItem &item)
Gives information about WHO has pused an installation of an given item.
bool resolveQueue(solver::detail::SolverQueueItemList &queue)
Resolve package dependencies:
void addConflict(const Capability &capability)
Adding additional conflict.
std::list< PoolItem > problematicUpdateItems() const
Unmaintained packages which does not fit to the updated system (broken dependencies) will be deleted.
std::unordered_set< Capability > CapabilitySet
solver::detail::ItemCapKindList installedSatisfied(const PoolItem &item)
Gives information about WHICH items require an already installed item.
ResolverProblemList problems()
Return the dependency problems found by the last call to resolveDependencies().
std::list< SolverQueueItem_Ptr > SolverQueueItemList
void applySolutions(const ProblemSolutionList &solutions)
Apply problem solutions.
Dependency resolver interface.
bool cleandepsOnRemove() const
void setUpgradeMode(bool yesno_r)
Setting whether the solver should perform in 'upgrade' mode or not.
solver::detail::ItemCapKindList satifiedByInstalled(const PoolItem &item)
Gives information about WHICH installed items are requested by the installation of an item.
Easy-to use interface to the ZYPP dependency resolver.
void setSystemVerification(bool yesno_r)
System verification mode also monitors and repairs dependencies of already installed packages.
void setDefaultCleandepsOnRemove()
sat::detail::CSolver * get() const
Expert backdoor.
IMPL_PTR_TYPE(Application)
void addRequire(const Capability &capability)
Adding additional requirement.
ResolverFocus focus() const
std::list< ResolverProblem_Ptr > ResolverProblemList
void setIgnoreAlreadyRecommended(bool yesno_r)
Ignore recommended packages that were already recommended by the installed packages.
void setForceResolve(bool force)
Remove resolvables which are conflicts with others or have unfulfilled requirements.
std::ostream & operator<<(std::ostream &str, const Exception &obj)
bool onlyRequires() const
bool upgradingRepo(Repository repo_r) const
Whether there is an UpgradeRepo request pending for this repo.
bool verifySystem()
Resolve package dependencies:
solver::detail::ItemCapKindList installs(const PoolItem &item)
Gives information about WHICH additional items will be installed due the installation of an item.
Resolver ResolverInternal
Preferred name in API.
String related utilities and Regular expression matching.
std::list< ItemCapKind > ItemCapKindList
bool resolvePool()
Resolve package dependencies:
void removeUpgradeRepos()
Remove all upgrade repo requests.
bool upgradingRepos() const
Whether there is at least one UpgradeRepo request pending.
void removeConflict(const Capability &capability)
Remove the additional conflict set by addConflict(Capability).
sat::Transaction getTransaction()
Return the Transaction computed by the last solver run.
void setFocus(ResolverFocus focus_r)
Define the resolvers general attitude when resolving jobs.