module Diagnostic:sig
..end
type
reason =
| |
Dependency of |
(* |
Not strictly a un-installability, Dependency (a,vpkglist,pkglist) is used
to recontruct the the dependency path from the root package to the
offending un-installable package
| *) |
| |
Missing of |
(* |
Missing (a,vpkglist) means that the dependency
vpkglist of package a cannot be satisfied | *) |
| |
Conflict of |
(* |
Conflict (a,b,vpkg) means that the package
a is in conflict
with package b because of vpkg | *) |
typerequest =
Cudf.package list
type
result =
| |
Success of |
(* |
If successfull returns a function that will
return the installation set for the given query. Since
not all packages are tested for installability directly, the
installation set might be empty. In this case, the solver can
be called again to provide the real installation set
using the parameter
~all:true | *) |
| |
Failure of |
(* |
If unsuccessful returns a function containing the list of reason
| *) |
type
diagnosis = {
|
result : |
|
request : |
module ResultHash:Hashtbl.S
with type key = reason
type
summary = {
|
mutable missing : |
|
mutable conflict : |
|
mutable unique_missing : |
|
mutable unique_conflict : |
|
mutable unique_selfconflict : |
|
summary : |
|
statistic : |
val default_result : int -> summary
val collect : summary -> diagnosis -> unit
collect summary result
. Callback function to collect result
information in the summary
data structure. Can be used to build
a custom callback function for Depsolver.listcheck
or Depsolver.univcheck
val pp_out_version : Format.formatter -> unit
val pp_package : ?source:bool ->
?fields:bool -> Common.CudfAdd.pp -> Format.formatter -> Cudf.package -> unit
val pp_dependency : Common.CudfAdd.pp ->
?label:string ->
Format.formatter -> Cudf.package * Cudf_types.vpkglist -> unit
val pp_dependencies : Common.CudfAdd.pp ->
Format.formatter -> (Cudf.package * Cudf_types.vpkglist) list list -> unit
val pp_list : (Format.formatter -> 'a -> unit) -> Format.formatter -> 'a list -> unit
val print_error : ?minimal:bool ->
Common.CudfAdd.pp ->
Cudf.package -> Format.formatter -> reason list -> unit
val get_installationset : ?minimal:bool -> diagnosis -> Cudf.package list
get_installationset
return
the associated installation set . If minimal is true (false by default),
the installation set is restricted to the dependency cone of the packages
specified in the installablity query. @Raise Not_found
if the result is
a failure.val is_solution : diagnosis -> bool
val pp_summary : ?pp:Common.CudfAdd.pp ->
?explain:bool -> unit -> Format.formatter -> summary -> unit
pp
: cudf package printerexplain
: if true, print the list of all affected packages associated to
and installation problem.val print_error_human : ?prefix:string ->
Common.CudfAdd.pp ->
Cudf.package -> Format.formatter -> reason list -> unit
val fprintf_human : ?pp:Common.CudfAdd.pp ->
?prefix:string -> Format.formatter -> diagnosis -> unit
val fprintf : ?pp:Common.CudfAdd.pp ->
?failure:bool ->
?success:bool ->
?explain:bool ->
?minimal:bool -> Format.formatter -> diagnosis -> unit
printf fmt d
print the output of the solver in yaml format
to the formatter fmt
.pp
: cudf package printerfailure
: print the list of not installable packagessuccess
: print the list of installable packagesexplain
: for installable packages, print the associated installation set
for not installable packages, print the all dependencies chainsval printf : ?pp:Common.CudfAdd.pp ->
?failure:bool ->
?success:bool -> ?explain:bool -> diagnosis -> unit
fprintf
but print using the standard formatterval print_dot : ?pp:Common.CudfAdd.pp ->
?addmissing:bool -> ?dir:string -> diagnosis -> unit