OpamSolverSAT-solver for package dependencies and conflicts
module Action : OpamActionGraph.ACTION with type package = OpamTypes.packagemodule ActionGraph : OpamActionGraph.SIG with type package = OpamTypes.packageval empty_universe : OpamTypes.universeval string_of_request : OpamTypes.atom OpamTypes.request -> stringConvert a request to a string
val stats : solution -> OpamTypes.statsCompute statistics about a solution
val new_packages : solution -> OpamTypes.package_setReturn the new packages in the solution
val string_of_stats : OpamTypes.stats -> stringPretty-printing of statistics
val solution_is_empty : solution -> boolIs the solution empty ?
val print_solution :
messages:(OpamTypes.package -> string list) ->
rewrite:(OpamTypes.package -> OpamTypes.package) ->
requested:OpamTypes.name_set ->
solution ->
unitDisplay a solution
val cudf_versions_map :
OpamTypes.universe ->
OpamTypes.package_set ->
int OpamPackage.Map.tComputes an opam->cudf version map from a set of package
val load_cudf_universe :
?depopts:bool ->
build:bool ->
OpamTypes.universe ->
?version_map:int OpamTypes.package_map ->
OpamTypes.package_set ->
Cudf.universeCreates a CUDF universe from an OPAM universe, including the given packages
val resolve :
?verbose:bool ->
OpamTypes.universe ->
orphans:OpamTypes.package_set ->
OpamTypes.atom OpamTypes.request ->
(solution, OpamCudf.conflict) OpamTypes.resultGiven a description of packages, return a solution preserving the consistency of the initial description.
val get_atomic_action_graph : solution -> ActionGraph.tReturns the graph of atomic actions (rm, inst) from a solution
val installable : OpamTypes.universe -> OpamTypes.package_setKeep only the packages that are installable.
val dependencies :
depopts:bool ->
build:bool ->
installed:bool ->
?unavailable:bool ->
OpamTypes.universe ->
OpamTypes.package_set ->
OpamTypes.package listReturn the topological sort of the transitive dependency closures of a collection of packages.
val reverse_dependencies :
depopts:bool ->
build:bool ->
installed:bool ->
?unavailable:bool ->
OpamTypes.universe ->
OpamTypes.package_set ->
OpamTypes.package listSame as dependencies but for reverse dependencies
val check_for_conflicts : OpamTypes.universe -> OpamCudf.conflict optionCheck the current set of installed packages in a universe for inconsistencies
val dump_universe : OpamTypes.universe -> out_channel -> unitDumps a cudf file containing all available packages in the given universe, plus version bindings (as '#v2v' comments) for the other ones.
val filter_solution : (OpamTypes.package -> bool) -> solution -> solutionFilters actions in a solution. Dependents of a removed actions are removed to keep consistency