14 #define ZYPP_USE_RESOLVER_INTERNALS
28 using namespace solver;
37 Resolver::Resolver(
const ResPool & pool )
112 #define ZOLV_FLAG_BOOL( ZSETTER, ZGETTER ) \
113 void Resolver::ZSETTER( bool yesno_r ){ _pimpl->ZSETTER( yesno_r ); } \
114 bool Resolver::ZGETTER() const { return _pimpl->ZGETTER(); } \
116 #define ZOLV_FLAG_TRIBOOL( ZSETTER, ZDEFAULT, ZGETTER ) \
117 ZOLV_FLAG_BOOL( ZSETTER , ZGETTER ) \
118 void Resolver::ZDEFAULT() { _pimpl->ZSETTER( indeterminate ); } \
121 ZOLV_FLAG_TRIBOOL( setAllowNameChange, setDefaultAllowNameChange, allowNameChange )
122 ZOLV_FLAG_TRIBOOL( setAllowArchChange, setDefaultAllowArchChange, allowArchChange )
130 #undef ZOLV_FLAG_BOOL
131 #undef ZOLV_FLAG_TRIBOOL
152 solver::detail::Testcase testcase (dumpPath);
153 return testcase.createTestcase(*
_pimpl,
true, runSolver);
172 {
return str << *obj.
_pimpl; }
bool upgradingRepos() const
Whether there is at least one UpgradeRepo request pending.
void doUpdate()
Update to newest package.
solver::detail::ItemCapKindList installs(const PoolItem &item)
Gives information about WHICH additional items will be installed due the installation of an item...
std::list< ProblemSolution_Ptr > ProblemSolutionList
bool resolvePool()
Resolve package dependencies:
sat::Transaction getTransaction()
Return the Transaction computed by the last solver run.
std::list< PoolItem > problematicUpdateItems() const
Unmaintained packages which does not fit to the updated system (broken dependencies) will be deleted...
void addUpgradeRepo(Repository repo_r)
Adding request to perform a dist upgrade restricted to this repository.
bool createSolverTestcase(const std::string &dumpPath="/var/log/YaST2/solverTestcase", bool runSolver=true)
Generates a solver Testcase of the current state.
ResolverFocus
The resolvers general attitude.
void setDefaultSolveSrcPackages()
void setCleandepsOnRemove(bool yesno_r)
Cleanup when deleting packages.
void removeRequire(const Capability &capability)
Remove the additional requirement set by addRequire(Capability).
zypp::RW_pointer< solver::detail::ResolverInternal > _pimpl
void setUpdateMode(bool yesno_r)
Setting whether the solver should perform in 'update' mode or not.
void setOnlyRequires(bool yesno_r)
Setting whether required packages are installed ONLY So recommended packages, language packages and p...
Libsolv transaction wrapper.
bool upgradingRepo(Repository repo_r) const
Whether there is an UpgradeRepo request pending for this repo.
bool doUpgrade()
Do an distribution upgrade (DUP)
std::list< SolverQueueItem_Ptr > SolverQueueItemList
solver::detail::ItemCapKindList isInstalledBy(const PoolItem &item)
Gives information about WHO has pused an installation of an given item.
bool ignoreAlreadyRecommended() const
bool solveSrcPackages() const
bool resolveQueue(solver::detail::SolverQueueItemList &queue)
Resolve package dependencies:
ResolverProblemList problems()
Return the dependency problems found by the last call to resolveDependencies().
void removeUpgradeRepo(Repository repo_r)
Remove an upgrade request for this repo.
solver::detail::ItemCapKindList installedSatisfied(const PoolItem &item)
Gives information about WHICH items require an already installed item.
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...
bool systemVerification() const
void setDefaultCleandepsOnRemove()
std::list< ResolverProblem_Ptr > ResolverProblemList
Dependency resolver interface.
std::ostream & operator<<(std::ostream &str, const Exception &obj)
#define ZOLV_FLAG_TRIBOOL(ZSETTER, ZDEFAULT, ZGETTER)
bool cleandepsOnRemove() const
CapabilitySet getConflict() const
Get all the additional conflicts set by addConflict(Capability).
CapabilitySet getRequire() const
Get all the additional requirements set by addRequire(Capability).
bool forceResolve() const
void addConflict(const Capability &capability)
Adding additional conflict.
void setSystemVerification(bool yesno_r)
System verification mode also monitors and repairs dependencies of already installed packages...
void applySolutions(const ProblemSolutionList &solutions)
Apply problem solutions.
std::unordered_set< Capability > CapabilitySet
Resolver ResolverInternal
Preferred name in API.
void addRequire(const Capability &capability)
Adding additional requirement.
std::list< ItemCapKind > ItemCapKindList
void removeConflict(const Capability &capability)
Remove the additional conflict set by addConflict(Capability).
bool verifySystem()
Resolve package dependencies:
void setForceResolve(bool force)
Remove resolvables which are conflicts with others or have unfulfilled requirements.
Combining sat::Solvable and ResStatus.
void setFocus(ResolverFocus focus_r)
Define the resolvers general attitude when resolving jobs.
ResolverFocus focus() const
void setIgnoreAlreadyRecommended(bool yesno_r)
Ignore recommended packages that were already recommended by the installed packages.
bool onlyRequires() const
void setDefaultSystemVerification()
void removeUpgradeRepos()
Remove all upgrade repo requests.
#define IMPL_PTR_TYPE(NAME)
void setSolveSrcPackages(bool yesno_r)
Set whether to solve source packages build dependencies per default.