History log of /haiku/headers/os/package/solver/Solver.h
Revision Date Author Comments
# af585d03 20-Nov-2015 Jérôme Duval <jerome.duval@gmail.com>

pkgman search: Add --requirements option


# 74b582a4 25-Oct-2014 Ingo Weinhold <ingo_weinhold@gmx.de>

BSolver: Add SetDebugLevel()

In LibsolvSolver set the debug level of the pool.


# 6ef57ae2 25-Jan-2014 Ingo Weinhold <ingo_weinhold@gmx.de>

pkgman: Add full-sync command

* BSolver/LibsolvSolver: Add FullSync() method. It uses libsolv's
SOLVER_DISTUPGRADE mode.
* BPackageManager: Add FullSync() using the new solver mode.
* pkgman: Add full-sync command.

The new command is similar to the update command without arguments, just
more aggressive, allowing downgrading or even removal of packages, to
match the state of the repositories. Just like "update" it doesn't work
properly yet.


# 89cb0015 27-Aug-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

BSolver::VerifyInstallation(): Add flags parameter

Only flag ATM is B_VERIFY_ALLOW_UNINSTALL. It tells to solver to suggest
uninstalling packages when necessary instead of considering such a case
a problem.


# 75d15eb4 27-Aug-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

BSolver: Extend FindPackages() functionality

* Add flag B_FIND_INSTALLED_ONLY to only return installed packages.
* Add FindPackages() version that finds packages like Install() or
Uninstall() do.


# 212c636f 21-Apr-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

BSolver/LibsolvSolver: Add Update()


# de62d761 20-Apr-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

BSolver/LibsolvSolver: Add Uninstall()

Also fix incorrect check in LibsolvSolver::GetResult().


# 8e6c3631 20-Apr-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

BSolver/LibsolvSolver: Add problem solution selection support

... and re-solving.


# 0d8ed3f2 12-Apr-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

BSolver::Install(): Add optional unmatched specifier return param


# 663e351c 11-Apr-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

BSolver/pkgman: Support for searching in provides

* BSolver/LibsolvSolver:
* Add B_FIND_IN_NAME and make searching in the names explicit.
* Add B_FIND_IN_PROVIDES to search the packages' provides list.
* pkgman: Also search in provides.


# fc57db48 11-Apr-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

BSolver/LibsolvSolver: Add FindPackages()

Given a search string it finds all matching packages.


# 65502bbe 03-Apr-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

BSolver: Add VerifyInstallation()

... and implement it in LibsolvSolver.


# 1a4d020d 02-Apr-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

Flesh out the package kit solver API quite a bit more

* Reorganize things a bit:
- BSolver is now an abstract base class.
- A libsolv based implementation, LibsolvSolver, lives in a new
add-on, which is loaded lazily.
- Get rid of libpackage_solver. Save for LibsolvSolver everything
is moved to libpackage.
- This is a nicer solution for the cyclic dependency caused by
libsolv (libsolvext to be precise) using the package kit for
reading repositories and package files.
* Add a solver result data structure and and an accessor the solver.
* Add problem reporting support to the solver. There aren't data
structures for the problem solutions yet and support for selecting
solutions and re-solving is missing as well.


# 479ca816 31-Mar-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

Beginnings of the PackageKit dependency solver

Not functional (or tested) yet. The libsolv setup for a somewhat
simplified installation case should be more or less complete, though.
The solution conversion to to-be-created Haiku data structures and the
handling of problems is still missing, though.


# 74b582a4e5a633d6ac8541ab3274725d51e49bec 25-Oct-2014 Ingo Weinhold <ingo_weinhold@gmx.de>

BSolver: Add SetDebugLevel()

In LibsolvSolver set the debug level of the pool.


# 6ef57ae2a96085ccb56e356e21e652cc11777ac0 25-Jan-2014 Ingo Weinhold <ingo_weinhold@gmx.de>

pkgman: Add full-sync command

* BSolver/LibsolvSolver: Add FullSync() method. It uses libsolv's
SOLVER_DISTUPGRADE mode.
* BPackageManager: Add FullSync() using the new solver mode.
* pkgman: Add full-sync command.

The new command is similar to the update command without arguments, just
more aggressive, allowing downgrading or even removal of packages, to
match the state of the repositories. Just like "update" it doesn't work
properly yet.


# 89cb0015110ee685f9f53debfde366626d1b0d3b 27-Aug-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

BSolver::VerifyInstallation(): Add flags parameter

Only flag ATM is B_VERIFY_ALLOW_UNINSTALL. It tells to solver to suggest
uninstalling packages when necessary instead of considering such a case
a problem.


# 75d15eb4c28f63d038c43325dcfa0f71df6211a6 27-Aug-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

BSolver: Extend FindPackages() functionality

* Add flag B_FIND_INSTALLED_ONLY to only return installed packages.
* Add FindPackages() version that finds packages like Install() or
Uninstall() do.


# 212c636f4181a2b3a05fbfaa45e016b6c2e3aaa6 21-Apr-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

BSolver/LibsolvSolver: Add Update()


# de62d76176c323928d2b97bc667f39850727aa1f 20-Apr-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

BSolver/LibsolvSolver: Add Uninstall()

Also fix incorrect check in LibsolvSolver::GetResult().


# 8e6c3631a3e6deca3ca008bbce20bf30ec616d63 20-Apr-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

BSolver/LibsolvSolver: Add problem solution selection support

... and re-solving.


# 0d8ed3f2a8f240750c15e9dfec09fb2e20b7160a 12-Apr-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

BSolver::Install(): Add optional unmatched specifier return param


# 663e351cb468e889ffcd08c07fc867b3002a1c91 11-Apr-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

BSolver/pkgman: Support for searching in provides

* BSolver/LibsolvSolver:
* Add B_FIND_IN_NAME and make searching in the names explicit.
* Add B_FIND_IN_PROVIDES to search the packages' provides list.
* pkgman: Also search in provides.


# fc57db481fa36695457bc355ca9710c91d53ab1d 11-Apr-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

BSolver/LibsolvSolver: Add FindPackages()

Given a search string it finds all matching packages.


# 65502bbe88c4686bdefbc5d646b9b681e1c49743 03-Apr-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

BSolver: Add VerifyInstallation()

... and implement it in LibsolvSolver.


# 1a4d020daf80d0b0c30062530cf735ce46dc7dba 02-Apr-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

Flesh out the package kit solver API quite a bit more

* Reorganize things a bit:
- BSolver is now an abstract base class.
- A libsolv based implementation, LibsolvSolver, lives in a new
add-on, which is loaded lazily.
- Get rid of libpackage_solver. Save for LibsolvSolver everything
is moved to libpackage.
- This is a nicer solution for the cyclic dependency caused by
libsolv (libsolvext to be precise) using the package kit for
reading repositories and package files.
* Add a solver result data structure and and an accessor the solver.
* Add problem reporting support to the solver. There aren't data
structures for the problem solutions yet and support for selecting
solutions and re-solving is missing as well.


# 479ca8169c85621dda097bebe337bcc373eba68f 31-Mar-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

Beginnings of the PackageKit dependency solver

Not functional (or tested) yet. The libsolv setup for a somewhat
simplified installation case should be more or less complete, though.
The solution conversion to to-be-created Haiku data structures and the
handling of problems is still missing, though.