summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorDongHun Kwak <dh0128.kwak@samsung.com>2018-11-30 12:40:49 +0900
committerDongHun Kwak <dh0128.kwak@samsung.com>2018-11-30 12:40:49 +0900
commitc948f862b552adbe2cdee24096357b887dfbb088 (patch)
treeb25b1ac6fc699b94972c9f1cf697a0c679cd02a5 /doc
parente1659dc4ce74d3c47f465103951dafff8fc0cf9f (diff)
downloadlibsolv-c948f862b552adbe2cdee24096357b887dfbb088.tar.gz
libsolv-c948f862b552adbe2cdee24096357b887dfbb088.tar.bz2
libsolv-c948f862b552adbe2cdee24096357b887dfbb088.zip
Imported Upstream version 0.6.29upstream/0.6.29
Change-Id: I9bac0213cb8a171344b94297e08c1c52595c0abe Signed-off-by: DongHun Kwak <dh0128.kwak@samsung.com>
Diffstat (limited to 'doc')
-rw-r--r--doc/CMakeLists.txt4
-rw-r--r--doc/Makefile.gen8
-rw-r--r--doc/appdata2solv.txt4
-rw-r--r--doc/archpkgs2solv.txt4
-rw-r--r--doc/archrepo2solv.txt4
-rw-r--r--doc/comps2solv.txt4
-rw-r--r--doc/deb2solv.txt4
-rw-r--r--doc/deltainfoxml2solv.txt4
-rw-r--r--doc/dumpsolv.txt4
-rw-r--r--doc/gen/appdata2solv.1 (renamed from doc/appdata2solv.1)6
-rw-r--r--doc/gen/archpkgs2solv.1 (renamed from doc/archpkgs2solv.1)6
-rw-r--r--doc/gen/archrepo2solv.1 (renamed from doc/archrepo2solv.1)6
-rw-r--r--doc/gen/comps2solv.1 (renamed from doc/comps2solv.1)6
-rw-r--r--doc/gen/deb2solv.1 (renamed from doc/deb2solv.1)6
-rw-r--r--doc/gen/deltainfoxml2solv.1 (renamed from doc/deltainfoxml2solv.1)6
-rw-r--r--doc/gen/dumpsolv.1 (renamed from doc/dumpsolv.1)6
-rw-r--r--doc/gen/helix2solv.1 (renamed from doc/helix2solv.1)6
-rw-r--r--doc/gen/installcheck.1 (renamed from doc/installcheck.1)6
-rw-r--r--doc/gen/libsolv-bindings.3 (renamed from doc/libsolv-bindings.3)60
-rw-r--r--doc/gen/libsolv-constantids.3 (renamed from doc/libsolv-constantids.3)6
-rw-r--r--doc/gen/libsolv-history.3 (renamed from doc/libsolv-history.3)6
-rw-r--r--doc/gen/libsolv-pool.3 (renamed from doc/libsolv-pool.3)49
-rw-r--r--doc/gen/libsolv.3 (renamed from doc/libsolv.3)6
-rw-r--r--doc/gen/mdk2solv.1 (renamed from doc/mdk2solv.1)6
-rw-r--r--doc/gen/mergesolv.1 (renamed from doc/mergesolv.1)6
-rw-r--r--doc/gen/repomdxml2solv.1 (renamed from doc/repomdxml2solv.1)6
-rw-r--r--doc/gen/rpmdb2solv.1 (renamed from doc/rpmdb2solv.1)6
-rw-r--r--doc/gen/rpmmd2solv.1 (renamed from doc/rpmmd2solv.1)6
-rw-r--r--doc/gen/rpms2solv.1 (renamed from doc/rpms2solv.1)6
-rw-r--r--doc/gen/susetags2solv.1 (renamed from doc/susetags2solv.1)6
-rw-r--r--doc/gen/testsolv.1 (renamed from doc/testsolv.1)6
-rw-r--r--doc/gen/updateinfoxml2solv.1 (renamed from doc/updateinfoxml2solv.1)6
-rw-r--r--doc/helix2solv.txt4
-rw-r--r--doc/installcheck.txt4
-rw-r--r--doc/libsolv-bindings.txt45
-rw-r--r--doc/libsolv-constantids.txt3
-rw-r--r--doc/libsolv-history.txt4
-rw-r--r--doc/libsolv-pool.txt58
-rw-r--r--doc/libsolv.txt3
-rw-r--r--doc/mdk2solv.txt4
-rw-r--r--doc/mergesolv.txt4
-rw-r--r--doc/repomdxml2solv.txt4
-rw-r--r--doc/rpmdb2solv.txt4
-rw-r--r--doc/rpmmd2solv.txt4
-rw-r--r--doc/rpms2solv.txt4
-rw-r--r--doc/susetags2solv.txt4
-rw-r--r--doc/testsolv.txt4
-rw-r--r--doc/updateinfoxml2solv.txt4
48 files changed, 321 insertions, 111 deletions
diff --git a/doc/CMakeLists.txt b/doc/CMakeLists.txt
index 13e086c..b18596d 100644
--- a/doc/CMakeLists.txt
+++ b/doc/CMakeLists.txt
@@ -42,6 +42,10 @@ IF (ENABLE_APPDATA)
SET (libsolv_MANPAGES1 ${libsolv_MANPAGES1} appdata2solv.1)
ENDIF (ENABLE_APPDATA)
+# prepend gen directory
+STRING(REGEX REPLACE "([^;]+)" "gen/\\1" libsolv_MANPAGES1 "${libsolv_MANPAGES1}")
+STRING(REGEX REPLACE "([^;]+)" "gen/\\1" libsolv_MANPAGES3 "${libsolv_MANPAGES3}")
+
INSTALL(FILES
${libsolv_MANPAGES3}
DESTINATION "${MAN_INSTALL_DIR}/man3")
diff --git a/doc/Makefile.gen b/doc/Makefile.gen
index 84a1095..2e8c4a1 100644
--- a/doc/Makefile.gen
+++ b/doc/Makefile.gen
@@ -1,4 +1,6 @@
+VPATH = gen
+
man: man3 man1
man3: libsolv.3 libsolv-bindings.3 libsolv-constantids.3 libsolv-history.3 libsolv-pool.3
@@ -13,10 +15,10 @@ html: libsolv.html libsolv-bindings.html libsolv-constantids.html libsolv-histor
.SUFFIXES: .html .3 .1 .txt
.txt.1:
- a2x -f manpage $<
+ a2x -f manpage -D gen $<
.txt.3:
- a2x -f manpage $<
+ a2x -f manpage -D gen $<
.txt.html:
- a2x -f xhtml $<
+ a2x -f xhtml -D gen $<
diff --git a/doc/appdata2solv.txt b/doc/appdata2solv.txt
index 3ccb4b5..c31311a 100644
--- a/doc/appdata2solv.txt
+++ b/doc/appdata2solv.txt
@@ -37,3 +37,7 @@ mergesolv(1)
Author
------
Michael Schroeder <mls@suse.de>
+
+////
+vim: syntax=asciidoc
+////
diff --git a/doc/archpkgs2solv.txt b/doc/archpkgs2solv.txt
index 2a17066..4ce3155 100644
--- a/doc/archpkgs2solv.txt
+++ b/doc/archpkgs2solv.txt
@@ -33,3 +33,7 @@ pacman(8)
Author
------
Michael Schroeder <mls@suse.de>
+
+////
+vim: syntax=asciidoc
+////
diff --git a/doc/archrepo2solv.txt b/doc/archrepo2solv.txt
index 3f5b138..1a7791c 100644
--- a/doc/archrepo2solv.txt
+++ b/doc/archrepo2solv.txt
@@ -29,3 +29,7 @@ pacman(8)
Author
------
Michael Schroeder <mls@suse.de>
+
+////
+vim: syntax=asciidoc
+////
diff --git a/doc/comps2solv.txt b/doc/comps2solv.txt
index 23e304e..8d98708 100644
--- a/doc/comps2solv.txt
+++ b/doc/comps2solv.txt
@@ -27,3 +27,7 @@ mergesolv(1), createrepo(8)
Author
------
Michael Schroeder <mls@suse.de>
+
+////
+vim: syntax=asciidoc
+////
diff --git a/doc/deb2solv.txt b/doc/deb2solv.txt
index 0907383..cb42ff7 100644
--- a/doc/deb2solv.txt
+++ b/doc/deb2solv.txt
@@ -33,3 +33,7 @@ deb(5), dpkg-deb(1)
Author
------
Michael Schroeder <mls@suse.de>
+
+////
+vim: syntax=asciidoc
+////
diff --git a/doc/deltainfoxml2solv.txt b/doc/deltainfoxml2solv.txt
index f14a843..13c987d 100644
--- a/doc/deltainfoxml2solv.txt
+++ b/doc/deltainfoxml2solv.txt
@@ -27,3 +27,7 @@ mergesolv(1), createrepo(8)
Author
------
Michael Schroeder <mls@suse.de>
+
+////
+vim: syntax=asciidoc
+////
diff --git a/doc/dumpsolv.txt b/doc/dumpsolv.txt
index ec2d771..b09aa97 100644
--- a/doc/dumpsolv.txt
+++ b/doc/dumpsolv.txt
@@ -24,3 +24,7 @@ Write the contents in JSON format.
Author
------
Michael Schroeder <mls@suse.de>
+
+////
+vim: syntax=asciidoc
+////
diff --git a/doc/appdata2solv.1 b/doc/gen/appdata2solv.1
index b5fdf9f..4fe217d 100644
--- a/doc/appdata2solv.1
+++ b/doc/gen/appdata2solv.1
@@ -1,13 +1,13 @@
'\" t
.\" Title: appdata2solv
.\" Author: [see the "Author" section]
-.\" Generator: DocBook XSL Stylesheets v1.78.0 <http://docbook.sf.net/>
-.\" Date: 08/26/2015
+.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
+.\" Date: 07/25/2017
.\" Manual: LIBSOLV
.\" Source: libsolv
.\" Language: English
.\"
-.TH "APPDATA2SOLV" "1" "08/26/2015" "libsolv" "LIBSOLV"
+.TH "APPDATA2SOLV" "1" "07/25/2017" "libsolv" "LIBSOLV"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
diff --git a/doc/archpkgs2solv.1 b/doc/gen/archpkgs2solv.1
index 6052aee..bb47364 100644
--- a/doc/archpkgs2solv.1
+++ b/doc/gen/archpkgs2solv.1
@@ -1,13 +1,13 @@
'\" t
.\" Title: archpkgs2solv
.\" Author: [see the "Author" section]
-.\" Generator: DocBook XSL Stylesheets v1.78.0 <http://docbook.sf.net/>
-.\" Date: 08/26/2015
+.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
+.\" Date: 07/25/2017
.\" Manual: LIBSOLV
.\" Source: libsolv
.\" Language: English
.\"
-.TH "ARCHPKGS2SOLV" "1" "08/26/2015" "libsolv" "LIBSOLV"
+.TH "ARCHPKGS2SOLV" "1" "07/25/2017" "libsolv" "LIBSOLV"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
diff --git a/doc/archrepo2solv.1 b/doc/gen/archrepo2solv.1
index 94f5c41..9d7c868 100644
--- a/doc/archrepo2solv.1
+++ b/doc/gen/archrepo2solv.1
@@ -1,13 +1,13 @@
'\" t
.\" Title: archrepo2solv
.\" Author: [see the "Author" section]
-.\" Generator: DocBook XSL Stylesheets v1.78.0 <http://docbook.sf.net/>
-.\" Date: 08/26/2015
+.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
+.\" Date: 07/25/2017
.\" Manual: LIBSOLV
.\" Source: libsolv
.\" Language: English
.\"
-.TH "ARCHREPO2SOLV" "1" "08/26/2015" "libsolv" "LIBSOLV"
+.TH "ARCHREPO2SOLV" "1" "07/25/2017" "libsolv" "LIBSOLV"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
diff --git a/doc/comps2solv.1 b/doc/gen/comps2solv.1
index c6f8d32..2be0bc9 100644
--- a/doc/comps2solv.1
+++ b/doc/gen/comps2solv.1
@@ -1,13 +1,13 @@
'\" t
.\" Title: comps2solv
.\" Author: [see the "Author" section]
-.\" Generator: DocBook XSL Stylesheets v1.78.0 <http://docbook.sf.net/>
-.\" Date: 08/26/2015
+.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
+.\" Date: 07/25/2017
.\" Manual: LIBSOLV
.\" Source: libsolv
.\" Language: English
.\"
-.TH "COMPS2SOLV" "1" "08/26/2015" "libsolv" "LIBSOLV"
+.TH "COMPS2SOLV" "1" "07/25/2017" "libsolv" "LIBSOLV"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
diff --git a/doc/deb2solv.1 b/doc/gen/deb2solv.1
index 95f5091..7da3828 100644
--- a/doc/deb2solv.1
+++ b/doc/gen/deb2solv.1
@@ -1,13 +1,13 @@
'\" t
.\" Title: deb2solv
.\" Author: [see the "Author" section]
-.\" Generator: DocBook XSL Stylesheets v1.78.0 <http://docbook.sf.net/>
-.\" Date: 08/26/2015
+.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
+.\" Date: 07/25/2017
.\" Manual: LIBSOLV
.\" Source: libsolv
.\" Language: English
.\"
-.TH "DEB2SOLV" "1" "08/26/2015" "libsolv" "LIBSOLV"
+.TH "DEB2SOLV" "1" "07/25/2017" "libsolv" "LIBSOLV"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
diff --git a/doc/deltainfoxml2solv.1 b/doc/gen/deltainfoxml2solv.1
index 11cda74..0ef0bb4 100644
--- a/doc/deltainfoxml2solv.1
+++ b/doc/gen/deltainfoxml2solv.1
@@ -1,13 +1,13 @@
'\" t
.\" Title: deltainfoxml2solv
.\" Author: [see the "Author" section]
-.\" Generator: DocBook XSL Stylesheets v1.78.0 <http://docbook.sf.net/>
-.\" Date: 08/26/2015
+.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
+.\" Date: 07/25/2017
.\" Manual: LIBSOLV
.\" Source: libsolv
.\" Language: English
.\"
-.TH "DELTAINFOXML2SOLV" "1" "08/26/2015" "libsolv" "LIBSOLV"
+.TH "DELTAINFOXML2SOLV" "1" "07/25/2017" "libsolv" "LIBSOLV"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
diff --git a/doc/dumpsolv.1 b/doc/gen/dumpsolv.1
index cb6a136..eed45fe 100644
--- a/doc/dumpsolv.1
+++ b/doc/gen/dumpsolv.1
@@ -1,13 +1,13 @@
'\" t
.\" Title: dumpsolv
.\" Author: [see the "Author" section]
-.\" Generator: DocBook XSL Stylesheets v1.78.0 <http://docbook.sf.net/>
-.\" Date: 08/26/2015
+.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
+.\" Date: 07/25/2017
.\" Manual: LIBSOLV
.\" Source: libsolv
.\" Language: English
.\"
-.TH "DUMPSOLV" "1" "08/26/2015" "libsolv" "LIBSOLV"
+.TH "DUMPSOLV" "1" "07/25/2017" "libsolv" "LIBSOLV"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
diff --git a/doc/helix2solv.1 b/doc/gen/helix2solv.1
index 07d9497..dacc5fe 100644
--- a/doc/helix2solv.1
+++ b/doc/gen/helix2solv.1
@@ -1,13 +1,13 @@
'\" t
.\" Title: helix2solv
.\" Author: [see the "Author" section]
-.\" Generator: DocBook XSL Stylesheets v1.78.0 <http://docbook.sf.net/>
-.\" Date: 12/14/2015
+.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
+.\" Date: 08/04/2017
.\" Manual: LIBSOLV
.\" Source: libsolv
.\" Language: English
.\"
-.TH "HELIX2SOLV" "1" "12/14/2015" "libsolv" "LIBSOLV"
+.TH "HELIX2SOLV" "1" "08/04/2017" "libsolv" "LIBSOLV"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
diff --git a/doc/installcheck.1 b/doc/gen/installcheck.1
index 7ee3e4d..7965f00 100644
--- a/doc/installcheck.1
+++ b/doc/gen/installcheck.1
@@ -1,13 +1,13 @@
'\" t
.\" Title: installcheck
.\" Author: [see the "Author" section]
-.\" Generator: DocBook XSL Stylesheets v1.78.0 <http://docbook.sf.net/>
-.\" Date: 08/26/2015
+.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
+.\" Date: 08/04/2017
.\" Manual: LIBSOLV
.\" Source: libsolv
.\" Language: English
.\"
-.TH "INSTALLCHECK" "1" "08/26/2015" "libsolv" "LIBSOLV"
+.TH "INSTALLCHECK" "1" "08/04/2017" "libsolv" "LIBSOLV"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
diff --git a/doc/libsolv-bindings.3 b/doc/gen/libsolv-bindings.3
index f2d8e8d..7350224 100644
--- a/doc/libsolv-bindings.3
+++ b/doc/gen/libsolv-bindings.3
@@ -2,12 +2,12 @@
.\" Title: Libsolv-Bindings
.\" Author: [see the "Author" section]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
-.\" Date: 12/14/2016
+.\" Date: 09/07/2017
.\" Manual: LIBSOLV
.\" Source: libsolv
.\" Language: English
.\"
-.TH "LIBSOLV\-BINDINGS" "3" "12/14/2016" "libsolv" "LIBSOLV"
+.TH "LIBSOLV\-BINDINGS" "3" "09/07/2017" "libsolv" "LIBSOLV"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@@ -2070,9 +2070,9 @@ Add the contents of the mageia/mandriva repository metadata (the "synthesis\&.hd
.\}
.nf
\fBbool add_mdk_info(FILE *\fR\fIfp\fR\fB, int\fR \fIflags\fR \fB= 0)\fR
-\fI$repo\fR\fB\->add_mdk(\fR\fI$fp\fR\fB)\fR;
-\fIrepo\fR\fB\&.add_mdk(\fR\fIfp\fR\fB)\fR
-\fIrepo\fR\fB\&.add_mdk(\fR\fIfp\fR\fB)\fR
+\fI$repo\fR\fB\->add_mdk_info(\fR\fI$fp\fR\fB)\fR;
+\fIrepo\fR\fB\&.add_mdk_info(\fR\fIfp\fR\fB)\fR
+\fIrepo\fR\fB\&.add_mdk_info(\fR\fIfp\fR\fB)\fR
.fi
.if n \{\
.RE
@@ -2426,9 +2426,9 @@ Return a tuple containing the on\-media location and an optional media number fo
.\}
.nf
\fBconst char *lookup_sourcepkg()\fR;
-my \fR\fI$sourcepkg\fR\fB =\fR \fI$solvable\fR\fB\->lookup_sourcepkg()\fR;
-\fIsourcepkg\fR\fB \fB=\fR \fIsolvable\fR\fB\&.lookup_sourcepkg()\fR
-\fIsourcepkg\fR\fB \fB=\fR \fIsolvable\fR\fB\&.lookup_sourcepkg()\fR
+my \fI$sourcepkg\fR \fB=\fR \fI$solvable\fR\fB\->lookup_sourcepkg()\fR;
+\fIsourcepkg\fR \fB=\fR \fIsolvable\fR\fB\&.lookup_sourcepkg()\fR
+\fIsourcepkg\fR \fB=\fR \fIsolvable\fR\fB\&.lookup_sourcepkg()\fR
.fi
.if n \{\
.RE
@@ -2566,7 +2566,7 @@ Returns \-1 if the epoch/version/release of the solvable is less than the one fr
.RE
.\}
.sp
-Return true if the dependencies stored in keyname match the specified dependeny\&.
+Return true if the dependencies stored in keyname match the specified dependency\&.
.sp
.if n \{\
.RS 4
@@ -3561,7 +3561,7 @@ If multiple packages obsolete an installed package, the solver checks the provid
.PP
\fBSOLVER_FLAG_NEED_UPDATEPROVIDE\fR
.RS 4
-This is somewhat the opposite of SOLVER_FLAG_NO_UPDATEPROVIDE: Only packages that provied the installed package names are considered for updating\&.
+This is somewhat the opposite of SOLVER_FLAG_NO_UPDATEPROVIDE: Only packages that provide the installed package names are considered for updating\&.
.RE
.PP
\fBSOLVER_FLAG_SPLITPROVIDES\fR
@@ -3968,6 +3968,36 @@ my \fB(\fR\fI$reason\fR\fB,\fR \fI$rule\fR\fB) =\fR \fI$solver\fR\fB\->describe_
.\}
.sp
Return the reason why a specific solvable was installed or erased\&. For most of the reasons the rule that triggered the decision is also returned\&.
+.sp
+.if n \{\
+.RS 4
+.\}
+.nf
+\fBSolvable *get_recommended(bool\fR \fInoselected\fR\fB=0)\fR;
+my \fI@solvables\fR \fB=\fR \fI$solver\fR\fB\->get_recommended()\fR;
+\fIsolvables\fR \fB=\fR \fIsolver\fR\fB\&.get_recommended()\fR
+\fIsolvables\fR \fB=\fR \fIsolver\fR\fB\&.get_recommended()\fR
+.fi
+.if n \{\
+.RE
+.\}
+.sp
+Return all solvables that are recommended by the solver run result\&. This includes solvables included in the result, set noselected if you want to filter those\&.
+.sp
+.if n \{\
+.RS 4
+.\}
+.nf
+\fBSolvable *get_suggested(bool\fR \fInoselected\fR\fB=0)\fR;
+my \fI@solvables\fR \fB=\fR \fI$solver\fR\fB\->get_suggested()\fR;
+\fIsolvables\fR \fB=\fR \fIsolver\fR\fB\&.get_suggested()\fR
+\fIsolvables\fR \fB=\fR \fIsolver\fR\fB\&.get_suggested()\fR
+.fi
+.if n \{\
+.RE
+.\}
+.sp
+Return all solvables that are suggested by the solver run result\&. This includes solvables included in the result, set noselected if you want to filter those\&.
.SH "THE PROBLEM CLASS"
.sp
Problems are the way of the solver to interact with the user\&. You can simply list all problems and terminate your program, but a better way is to present solutions to the user and let him pick the ones he likes\&.
@@ -4025,8 +4055,8 @@ Return the rule that caused the problem\&. Of course in most situations there is
.nf
\fBRule *findallproblemrules(bool\fR \fIunfiltered\fR \fB= 0)\fR
my \fI@probrules\fR \fB=\fR \fI$problem\fR\fB\->findallproblemrules()\fR;
-\fIprobrules\fR \fB=\fR \fIproblem\fR\fB\&.findallproblemrule()\fR
-\fIprobrules\fR \fB=\fR \fIproblem\fR\fB\&.findallproblemrule()\fR
+\fIprobrules\fR \fB=\fR \fIproblem\fR\fB\&.findallproblemrules()\fR
+\fIprobrules\fR \fB=\fR \fIproblem\fR\fB\&.findallproblemrules()\fR
.fi
.if n \{\
.RE
@@ -4531,7 +4561,7 @@ my \fI$job\fR \fB=\fR \fI$solutionelement\fR\fB\->Job()\fR;
.RE
.\}
.sp
-Create a job that implements the solution element\&. Add this job to the array of jobs for all elements of type different to SOLVER_SOLUTION_JOB and SOLVER_SOLUTION_POOLJOB\&. For the later two, a SOLVER_NOOB Job is created, you should replace the old job with the new one\&.
+Create a job that implements the solution element\&. Add this job to the array of jobs for all elements of type different to SOLVER_SOLUTION_JOB and SOLVER_SOLUTION_POOLJOB\&. For the latter two, a SOLVER_NOOB Job is created, you should replace the old job with the new one\&.
.sp
.if n \{\
.RS 4
@@ -5456,7 +5486,7 @@ Create stub repodatas from the information stored in the repodata meta area\&.
.RE
.\}
.sp
-Extend the repodata so that it has the same size as the repo it belongs to\&. This method is only needed when switching to a just written repodata extension to make the repodata match the written extension (which is always of the size of the repo)\&.
+Extend the repodata so that it has the same size as the repo it belongs to\&. This method is needed when setting up a new extension repodata so that it matches the repository size\&. It is also needed when switching to a just written repodata extension to make the repodata match the written extension (which is always of the size of the repo)\&.
.sp
.if n \{\
.RS 4
@@ -5573,7 +5603,7 @@ Lookup functions\&. Return the data element stored in the specified solvable\&.
.\}
.nf
\fBvoid set_sourcepkg(Id\fR \fIsolvid\fR\fB, const char *\fR\fIsourcepkg\fR\fB)\fR;
-\fI$data\fR\fB\->set_sourcepkg(\fR\fI$solvid\fR\fB, \fI$sourcepkg\fR\fB)\fR;
+\fI$data\fR\fB\&.set_sourcepkg(\fR\fI$solvid\fR\fB,\fR \fI$sourcepkg\fR\fB)\fR;
\fIdata\fR\fB\&.set_sourcepkg(\fR\fIsolvid\fR\fB,\fR \fIsourcepkg\fR\fB)\fR
\fIdata\fR\fB\&.set_sourcepkg(\fR\fIsolvid\fR\fB,\fR \fIsourcepkg\fR\fB)\fR
.fi
diff --git a/doc/libsolv-constantids.3 b/doc/gen/libsolv-constantids.3
index 327150c..87a14e6 100644
--- a/doc/libsolv-constantids.3
+++ b/doc/gen/libsolv-constantids.3
@@ -1,13 +1,13 @@
'\" t
.\" Title: Libsolv-Constantids
.\" Author: [see the "Author" section]
-.\" Generator: DocBook XSL Stylesheets v1.78.0 <http://docbook.sf.net/>
-.\" Date: 12/14/2015
+.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
+.\" Date: 08/04/2017
.\" Manual: LIBSOLV
.\" Source: libsolv
.\" Language: English
.\"
-.TH "LIBSOLV\-CONSTANTIDS" "3" "12/14/2015" "libsolv" "LIBSOLV"
+.TH "LIBSOLV\-CONSTANTIDS" "3" "08/04/2017" "libsolv" "LIBSOLV"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
diff --git a/doc/libsolv-history.3 b/doc/gen/libsolv-history.3
index 872cd4e..6a600ac 100644
--- a/doc/libsolv-history.3
+++ b/doc/gen/libsolv-history.3
@@ -1,13 +1,13 @@
'\" t
.\" Title: Libsolv-History
.\" Author: [see the "Author" section]
-.\" Generator: DocBook XSL Stylesheets v1.78.0 <http://docbook.sf.net/>
-.\" Date: 08/26/2015
+.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
+.\" Date: 08/04/2017
.\" Manual: LIBSOLV
.\" Source: libsolv
.\" Language: English
.\"
-.TH "LIBSOLV\-HISTORY" "3" "08/26/2015" "libsolv" "LIBSOLV"
+.TH "LIBSOLV\-HISTORY" "3" "08/04/2017" "libsolv" "LIBSOLV"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
diff --git a/doc/libsolv-pool.3 b/doc/gen/libsolv-pool.3
index adc13e3..d324f68 100644
--- a/doc/libsolv-pool.3
+++ b/doc/gen/libsolv-pool.3
@@ -1,13 +1,13 @@
'\" t
.\" Title: Libsolv-Pool
.\" Author: [see the "Author" section]
-.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
-.\" Date: 05/06/2016
+.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
+.\" Date: 09/04/2017
.\" Manual: LIBSOLV
.\" Source: libsolv
.\" Language: English
.\"
-.TH "LIBSOLV\-POOL" "3" "05/06/2016" "libsolv" "LIBSOLV"
+.TH "LIBSOLV\-POOL" "3" "09/04/2017" "libsolv" "LIBSOLV"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@@ -608,10 +608,35 @@ An internal file conflict dependency used to represent file conflicts\&. See the
A conditional dependency, the \(lqname\(rq sub\-dependency is only considered if the \(lqevr\(rq sub\-dependency is fulfilled\&. See the section about boolean dependencies about more information\&.
.RE
.PP
+\fBREL_UNLESS\fR
+.RS 4
+A conditional dependency, the \(lqname\(rq sub\-dependency is only considered if the \(lqevr\(rq sub\-dependency is not fulfilled\&. See the section about boolean dependencies about more information\&.
+.RE
+.PP
\fBREL_COMPAT\fR
.RS 4
A compat dependency used in Haiku to represent version ranges\&. The \(lqname\(rq part is the actual version, the \(lqevr\(rq part is the backwards compatibility version\&.
.RE
+.PP
+\fBREL_KIND\fR
+.RS 4
+A pseudo dependency that limits the solvables to a specific kind\&. The kind is expected to be a prefix of the solvable name, e\&.g\&. \(lqpatch:foo\(rq would be of kind \(lqpatch\(rq\&. \(lqREL_KIND\(rq is only supported in the selection functions\&.
+.RE
+.PP
+\fBREL_MULTIARCH\fR
+.RS 4
+A debian multiarch annotation\&. The most common value for the \(lqevr\(rq part is \(lqany\(rq\&.
+.RE
+.PP
+\fBREL_ELSE\fR
+.RS 4
+The else part of a \(lqREL_COND\(rq or \(lqREL_UNLESS\(rq dependency\&. See the section about boolean dependencies\&.
+.RE
+.PP
+\fBREL_ERROR\fR
+.RS 4
+An illegal dependency\&. This is useful to encode dependency parse errors\&.
+.RE
.SS "Functions"
.sp
.if n \{\
@@ -1241,7 +1266,7 @@ There can be multiple equivalence classes, the set of allowed vendor changes for
You can turn off the architecture replacement checks with the Solver\(cqs SOLVER_FLAG_ALLOW_VENDORCHANGE flag\&.
.SH "BOOLEAN DEPENDENCIES"
.sp
-Boolean Dependencies allow to build complex expressions from simple dependencies\&. While rpm does not support boolean expressions in dependencies and debian only allows an "OR" expression, libsolv allows arbitrary complex expressions\&. The following basic types are supported:
+Boolean Dependencies allow to build complex expressions from simple dependencies\&. Note that depending on the package manager only a subset of those may be useful\&. For example, debian currently only allows an "OR" expression\&.
.PP
\fBREL_OR\fR
.RS 4
@@ -1250,17 +1275,27 @@ The expression is true if either the first dependency or the second one is true\
.PP
\fBREL_AND\fR
.RS 4
-The expression is true if both dependencies are true\&. The packages fulfilling the dependencies may be different, i\&.e\&. \(lqSupplements: perl AND python\(rq is true if both a package providing perl and a package providing python are installed\&. The solver currently only supports REL_AND in Supplements/Enhances dependencies, in other types of dependencies it gets treated as REL_WITH\&.
+The expression is true if both dependencies are true\&. The packages fulfilling the dependencies may be different, i\&.e\&. \(lqSupplements: perl REL_AND python\(rq is true if both a package providing perl and a package providing python are installed\&.
.RE
.PP
\fBREL_WITH\fR
.RS 4
-The expression is true if both dependencies are true and are fulfilled by the same package\&. Thus \(lqSupplements: perl AND python\(rq would only be true if a package is installed that provides both dependencies (some kind of multi\-language interpreter)\&.
+The expression is true if both dependencies are true and are fulfilled by the same package\&. Thus \(lqSupplements: perl REL_WITH python\(rq would only be true if a package is installed that provides both dependencies (some kind of multi\-language interpreter)\&.
.RE
.PP
\fBREL_COND\fR
.RS 4
-The expression is true if the first dependency is true or the second dependency is false\&. Libsolv currently does not support this type of dependency in the solver code\&.
+The expression is true if the first dependency is true or the second dependency is false\&. \(lqA REL_COND B\(rq is equivalent to \(lqA REL_OR (NOT B)\(rq (except that libsolv does not expose \(lqNOT\(rq)\&.
+.RE
+.PP
+\fBREL_UNLESS\fR
+.RS 4
+The expression is true if the first dependency is true and the second dependency is false\&. \(lqA REL_UNLESS B\(rq is equivalent to \(lqA REL_AND (NOT B)\(rq (except that libsolv does not expose \(lqNOT\(rq)\&.
+.RE
+.PP
+\fBREL_ELSE\fR
+.RS 4
+The \(lqelse\(rq part of a \(lqREL_COND\(rq or \(lqREL_UNLESS\(rq dependency\&. It has to be directly in the evr part of the condition, e\&.g\&. \(lqfoo REL_COND (bar REL_ELSE baz)\(rq\&. For \(lqREL_COND\(rq this is equivalent to writing \(lq(foo REL_COND bar) REL_AND (bar REL_OR baz)\(rq\&. For \(lqREL_UNLESS\(rq this is equivalent to writing \(lq(foo REL_UNLESS bar) REL_OR (bar REL_AND baz)\(rq\&.
.RE
.sp
Each sub\-dependency of a boolean dependency can in turn be a boolean dependency, so you can chain them to create complex dependencies\&.
diff --git a/doc/libsolv.3 b/doc/gen/libsolv.3
index 24ab788..dcebb02 100644
--- a/doc/libsolv.3
+++ b/doc/gen/libsolv.3
@@ -1,13 +1,13 @@
'\" t
.\" Title: Libsolv
.\" Author: [see the "Author" section]
-.\" Generator: DocBook XSL Stylesheets v1.78.0 <http://docbook.sf.net/>
-.\" Date: 08/26/2015
+.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
+.\" Date: 08/04/2017
.\" Manual: LIBSOLV
.\" Source: libsolv
.\" Language: English
.\"
-.TH "LIBSOLV" "3" "08/26/2015" "libsolv" "LIBSOLV"
+.TH "LIBSOLV" "3" "08/04/2017" "libsolv" "LIBSOLV"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
diff --git a/doc/mdk2solv.1 b/doc/gen/mdk2solv.1
index 4400c9b..513187a 100644
--- a/doc/mdk2solv.1
+++ b/doc/gen/mdk2solv.1
@@ -1,13 +1,13 @@
'\" t
.\" Title: mdk2solv
.\" Author: [see the "Author" section]
-.\" Generator: DocBook XSL Stylesheets v1.78.0 <http://docbook.sf.net/>
-.\" Date: 08/26/2015
+.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
+.\" Date: 08/04/2017
.\" Manual: LIBSOLV
.\" Source: libsolv
.\" Language: English
.\"
-.TH "MDK2SOLV" "1" "08/26/2015" "libsolv" "LIBSOLV"
+.TH "MDK2SOLV" "1" "08/04/2017" "libsolv" "LIBSOLV"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
diff --git a/doc/mergesolv.1 b/doc/gen/mergesolv.1
index 3ff00e8..1c706c7 100644
--- a/doc/mergesolv.1
+++ b/doc/gen/mergesolv.1
@@ -1,13 +1,13 @@
'\" t
.\" Title: mergesolv
.\" Author: [see the "Author" section]
-.\" Generator: DocBook XSL Stylesheets v1.78.0 <http://docbook.sf.net/>
-.\" Date: 08/26/2015
+.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
+.\" Date: 08/04/2017
.\" Manual: LIBSOLV
.\" Source: libsolv
.\" Language: English
.\"
-.TH "MERGESOLV" "1" "08/26/2015" "libsolv" "LIBSOLV"
+.TH "MERGESOLV" "1" "08/04/2017" "libsolv" "LIBSOLV"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
diff --git a/doc/repomdxml2solv.1 b/doc/gen/repomdxml2solv.1
index e14b974..aeac7bd 100644
--- a/doc/repomdxml2solv.1
+++ b/doc/gen/repomdxml2solv.1
@@ -1,13 +1,13 @@
'\" t
.\" Title: repomdxml2solv
.\" Author: [see the "Author" section]
-.\" Generator: DocBook XSL Stylesheets v1.78.0 <http://docbook.sf.net/>
-.\" Date: 08/26/2015
+.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
+.\" Date: 08/04/2017
.\" Manual: LIBSOLV
.\" Source: libsolv
.\" Language: English
.\"
-.TH "REPOMDXML2SOLV" "1" "08/26/2015" "libsolv" "LIBSOLV"
+.TH "REPOMDXML2SOLV" "1" "08/04/2017" "libsolv" "LIBSOLV"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
diff --git a/doc/rpmdb2solv.1 b/doc/gen/rpmdb2solv.1
index 2b4b931..79c6d26 100644
--- a/doc/rpmdb2solv.1
+++ b/doc/gen/rpmdb2solv.1
@@ -1,13 +1,13 @@
'\" t
.\" Title: rpmdb2solv
.\" Author: [see the "Author" section]
-.\" Generator: DocBook XSL Stylesheets v1.78.0 <http://docbook.sf.net/>
-.\" Date: 08/26/2015
+.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
+.\" Date: 08/04/2017
.\" Manual: LIBSOLV
.\" Source: libsolv
.\" Language: English
.\"
-.TH "RPMDB2SOLV" "1" "08/26/2015" "libsolv" "LIBSOLV"
+.TH "RPMDB2SOLV" "1" "08/04/2017" "libsolv" "LIBSOLV"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
diff --git a/doc/rpmmd2solv.1 b/doc/gen/rpmmd2solv.1
index 2d8e245..44ea70f 100644
--- a/doc/rpmmd2solv.1
+++ b/doc/gen/rpmmd2solv.1
@@ -1,13 +1,13 @@
'\" t
.\" Title: rpmmd2solv
.\" Author: [see the "Author" section]
-.\" Generator: DocBook XSL Stylesheets v1.78.0 <http://docbook.sf.net/>
-.\" Date: 08/26/2015
+.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
+.\" Date: 08/04/2017
.\" Manual: LIBSOLV
.\" Source: libsolv
.\" Language: English
.\"
-.TH "RPMMD2SOLV" "1" "08/26/2015" "libsolv" "LIBSOLV"
+.TH "RPMMD2SOLV" "1" "08/04/2017" "libsolv" "LIBSOLV"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
diff --git a/doc/rpms2solv.1 b/doc/gen/rpms2solv.1
index e67c6ef..11b3671 100644
--- a/doc/rpms2solv.1
+++ b/doc/gen/rpms2solv.1
@@ -1,13 +1,13 @@
'\" t
.\" Title: rpms2solv
.\" Author: [see the "Author" section]
-.\" Generator: DocBook XSL Stylesheets v1.78.0 <http://docbook.sf.net/>
-.\" Date: 08/26/2015
+.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
+.\" Date: 08/04/2017
.\" Manual: LIBSOLV
.\" Source: libsolv
.\" Language: English
.\"
-.TH "RPMS2SOLV" "1" "08/26/2015" "libsolv" "LIBSOLV"
+.TH "RPMS2SOLV" "1" "08/04/2017" "libsolv" "LIBSOLV"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
diff --git a/doc/susetags2solv.1 b/doc/gen/susetags2solv.1
index 9b07094..43a616a 100644
--- a/doc/susetags2solv.1
+++ b/doc/gen/susetags2solv.1
@@ -1,13 +1,13 @@
'\" t
.\" Title: susetags2solv
.\" Author: [see the "Author" section]
-.\" Generator: DocBook XSL Stylesheets v1.78.0 <http://docbook.sf.net/>
-.\" Date: 08/26/2015
+.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
+.\" Date: 08/04/2017
.\" Manual: LIBSOLV
.\" Source: libsolv
.\" Language: English
.\"
-.TH "SUSETAGS2SOLV" "1" "08/26/2015" "libsolv" "LIBSOLV"
+.TH "SUSETAGS2SOLV" "1" "08/04/2017" "libsolv" "LIBSOLV"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
diff --git a/doc/testsolv.1 b/doc/gen/testsolv.1
index 0e71874..158aedc 100644
--- a/doc/testsolv.1
+++ b/doc/gen/testsolv.1
@@ -1,13 +1,13 @@
'\" t
.\" Title: testsolv
.\" Author: [see the "Author" section]
-.\" Generator: DocBook XSL Stylesheets v1.78.0 <http://docbook.sf.net/>
-.\" Date: 08/26/2015
+.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
+.\" Date: 08/04/2017
.\" Manual: LIBSOLV
.\" Source: libsolv
.\" Language: English
.\"
-.TH "TESTSOLV" "1" "08/26/2015" "libsolv" "LIBSOLV"
+.TH "TESTSOLV" "1" "08/04/2017" "libsolv" "LIBSOLV"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
diff --git a/doc/updateinfoxml2solv.1 b/doc/gen/updateinfoxml2solv.1
index 20ab3ad..cd0386d 100644
--- a/doc/updateinfoxml2solv.1
+++ b/doc/gen/updateinfoxml2solv.1
@@ -1,13 +1,13 @@
'\" t
.\" Title: updateinfoxml2solv
.\" Author: [see the "Author" section]
-.\" Generator: DocBook XSL Stylesheets v1.78.0 <http://docbook.sf.net/>
-.\" Date: 08/26/2015
+.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
+.\" Date: 08/04/2017
.\" Manual: LIBSOLV
.\" Source: libsolv
.\" Language: English
.\"
-.TH "UPDATEINFOXML2SOLV" "1" "08/26/2015" "libsolv" "LIBSOLV"
+.TH "UPDATEINFOXML2SOLV" "1" "08/04/2017" "libsolv" "LIBSOLV"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
diff --git a/doc/helix2solv.txt b/doc/helix2solv.txt
index f9b303f..40d523a 100644
--- a/doc/helix2solv.txt
+++ b/doc/helix2solv.txt
@@ -22,3 +22,7 @@ input and writes it in solv file format to standard output.
Author
------
Michael Schroeder <mls@suse.de>
+
+////
+vim: syntax=asciidoc
+////
diff --git a/doc/installcheck.txt b/doc/installcheck.txt
index 99eb279..5780772 100644
--- a/doc/installcheck.txt
+++ b/doc/installcheck.txt
@@ -27,3 +27,7 @@ file.
Author
------
Michael Schroeder <mls@suse.de>
+
+////
+vim: syntax=asciidoc
+////
diff --git a/doc/libsolv-bindings.txt b/doc/libsolv-bindings.txt
index 4de090f..83ae6c2 100644
--- a/doc/libsolv-bindings.txt
+++ b/doc/libsolv-bindings.txt
@@ -167,7 +167,7 @@ a foreach style:
libsolv's arrays are mapped to tcl's lists:
- TCL set jobs [list $job1 $job2]
+ TCL set jobs [list $job1 $job2]
TCL set problems [$solver solve $jobs]
TCL puts "We have [llength $problems] problems..."
@@ -1173,9 +1173,9 @@ Add the contents of the mageia/mandriva repository metadata (the
"synthesis.hdlist" file) to the repository.
bool add_mdk_info(FILE *fp, int flags = 0)
- $repo->add_mdk($fp);
- repo.add_mdk(fp)
- repo.add_mdk(fp)
+ $repo->add_mdk_info($fp);
+ repo.add_mdk_info(fp)
+ repo.add_mdk_info(fp)
Extend the packages from the synthesis file with the info.xml and files.xml
data. Do not forget to specify *REPO_EXTEND_SOLVABLES*.
@@ -1426,7 +1426,7 @@ Note that "equal" does not mean that the evr is identical.
solvable.matchesdep(keyname, dep)
solvable.matchesdep?(keyname, dep)
-Return true if the dependencies stored in keyname match the specified dependeny.
+Return true if the dependencies stored in keyname match the specified dependency.
Selection Selection(int setflags = 0)
my $sel = $solvable->Selection();
@@ -2136,7 +2136,7 @@ by setting this flag.
*SOLVER_FLAG_NEED_UPDATEPROVIDE*::
This is somewhat the opposite of SOLVER_FLAG_NO_UPDATEPROVIDE: Only
-packages that provied the installed package names are considered
+packages that provide the installed package names are considered
for updating.
*SOLVER_FLAG_SPLITPROVIDES*::
@@ -2464,6 +2464,23 @@ interfaces that show both the job result and the problems.
Return the reason why a specific solvable was installed or erased. For most of
the reasons the rule that triggered the decision is also returned.
+ Solvable *get_recommended(bool noselected=0);
+ my @solvables = $solver->get_recommended();
+ solvables = solver.get_recommended()
+ solvables = solver.get_recommended()
+
+Return all solvables that are recommended by the solver run result. This includes
+solvables included in the result, set noselected if you want to filter those.
+
+ Solvable *get_suggested(bool noselected=0);
+ my @solvables = $solver->get_suggested();
+ solvables = solver.get_suggested()
+ solvables = solver.get_suggested()
+
+Return all solvables that are suggested by the solver run result. This includes
+solvables included in the result, set noselected if you want to filter those.
+
+
The Problem Class
-----------------
Problems are the way of the solver to interact with the user. You can simply list
@@ -2500,8 +2517,8 @@ that somewhat describes the problem best to the user.
Rule *findallproblemrules(bool unfiltered = 0)
my @probrules = $problem->findallproblemrules();
- probrules = problem.findallproblemrule()
- probrules = problem.findallproblemrule()
+ probrules = problem.findallproblemrules()
+ probrules = problem.findallproblemrules()
Return all rules responsible for the problem. The returned set of rules contains
all the needed information why there was a problem, but it's hard to present
@@ -2790,7 +2807,7 @@ the solver class.
Create a job that implements the solution element. Add this job to the array
of jobs for all elements of type different to SOLVER_SOLUTION_JOB and
-SOLVER_SOLUTION_POOLJOB. For the later two, a SOLVER_NOOB Job is created,
+SOLVER_SOLUTION_POOLJOB. For the latter two, a SOLVER_NOOB Job is created,
you should replace the old job with the new one.
const char *str()
@@ -3364,9 +3381,10 @@ area.
data.extend_to_repo()
Extend the repodata so that it has the same size as the repo it belongs to.
-This method is only needed when switching to a just written repodata extension
-to make the repodata match the written extension (which is always of the
-size of the repo).
+This method is needed when setting up a new extension repodata so that it
+matches the repository size. It is also needed when switching to a just written
+repodata extension to make the repodata match the written extension (which is
+always of the size of the repo).
<equality>
if ($data1 == $data2)
@@ -3541,3 +3559,6 @@ Author
------
Michael Schroeder <mls@suse.de>
+////
+vim: syntax=asciidoc
+////
diff --git a/doc/libsolv-constantids.txt b/doc/libsolv-constantids.txt
index e067642..907a7e5 100644
--- a/doc/libsolv-constantids.txt
+++ b/doc/libsolv-constantids.txt
@@ -678,3 +678,6 @@ Author
------
Michael Schroeder <mls@suse.de>
+////
+vim: syntax=asciidoc
+////
diff --git a/doc/libsolv-history.txt b/doc/libsolv-history.txt
index da59fe5..d0a5e62 100644
--- a/doc/libsolv-history.txt
+++ b/doc/libsolv-history.txt
@@ -111,3 +111,7 @@ were removed in February.
Author
------
Michael Schroeder <mls@suse.de>
+
+////
+vim: syntax=asciidoc
+////
diff --git a/doc/libsolv-pool.txt b/doc/libsolv-pool.txt
index 69291a4..cc7707a 100644
--- a/doc/libsolv-pool.txt
+++ b/doc/libsolv-pool.txt
@@ -408,11 +408,33 @@ A conditional dependency, the ``name'' sub-dependency is only considered if
the ``evr'' sub-dependency is fulfilled. See the section about boolean
dependencies about more information.
+*REL_UNLESS*::
+A conditional dependency, the ``name'' sub-dependency is only considered if
+the ``evr'' sub-dependency is not fulfilled. See the section about boolean
+dependencies about more information.
+
*REL_COMPAT*::
A compat dependency used in Haiku to represent version ranges. The
``name'' part is the actual version, the ``evr'' part is the backwards
compatibility version.
+*REL_KIND*::
+A pseudo dependency that limits the solvables to a specific kind.
+The kind is expected to be a prefix of the solvable name, e.g.
+``patch:foo'' would be of kind ``patch''. ``REL_KIND'' is only
+supported in the selection functions.
+
+*REL_MULTIARCH*::
+A debian multiarch annotation. The most common value for the ``evr''
+part is ``any''.
+
+*REL_ELSE*::
+The else part of a ``REL_COND'' or ``REL_UNLESS'' dependency. See the
+section about boolean dependencies.
+
+*REL_ERROR*::
+An illegal dependency. This is useful to encode dependency parse errors.
+
=== Functions ===
Id pool_str2id(Pool *pool, const char *str, int create);
@@ -815,10 +837,9 @@ SOLVER_FLAG_ALLOW_VENDORCHANGE flag.
Boolean Dependencies
--------------------
Boolean Dependencies allow to build complex expressions from simple
-dependencies. While rpm does not support boolean expressions in
-dependencies and debian only allows an "OR" expression, libsolv
-allows arbitrary complex expressions. The following basic types
-are supported:
+dependencies. Note that depending on the package manager only a subset
+of those may be useful. For example, debian currently only allows
+an "OR" expression.
*REL_OR*::
The expression is true if either the first dependency or the second
@@ -829,21 +850,33 @@ installed.
*REL_AND*::
The expression is true if both dependencies are true. The packages
fulfilling the dependencies may be different, i.e.
-``Supplements: perl AND python'' is true if both a package providing
-perl and a package providing python are installed. The solver currently
-only supports REL_AND in Supplements/Enhances dependencies, in other
-types of dependencies it gets treated as REL_WITH.
+``Supplements: perl REL_AND python'' is true if both a package providing
+perl and a package providing python are installed.
*REL_WITH*::
The expression is true if both dependencies are true and are fulfilled by
-the same package. Thus ``Supplements: perl AND python'' would only be true
+the same package. Thus ``Supplements: perl REL_WITH python'' would only be true
if a package is installed that provides both dependencies (some kind
of multi-language interpreter).
*REL_COND*::
The expression is true if the first dependency is true or the second
-dependency is false. Libsolv currently does not support this type of
-dependency in the solver code.
+dependency is false. ``A REL_COND B'' is equivalent to
+``A REL_OR (NOT B)'' (except that libsolv does not expose ``NOT'').
+
+*REL_UNLESS*::
+The expression is true if the first dependency is true and the second
+dependency is false. ``A REL_UNLESS B'' is equivalent to
+``A REL_AND (NOT B)'' (except that libsolv does not expose ``NOT'').
+
+*REL_ELSE*::
+The ``else'' part of a ``REL_COND'' or ``REL_UNLESS'' dependency.
+It has to be directly in the evr part of the condition,
+e.g. ``foo REL_COND (bar REL_ELSE baz)''.
+For ``REL_COND'' this is equivalent to writing
+``(foo REL_COND bar) REL_AND (bar REL_OR baz)''.
+For ``REL_UNLESS'' this is equivalent to writing
+``(foo REL_UNLESS bar) REL_OR (bar REL_AND baz)''.
Each sub-dependency of a boolean dependency can in turn be a boolean
dependency, so you can chain them to create complex dependencies.
@@ -882,3 +915,6 @@ Author
------
Michael Schroeder <mls@suse.de>
+////
+vim: syntax=asciidoc
+////
diff --git a/doc/libsolv.txt b/doc/libsolv.txt
index af44168..f101808 100644
--- a/doc/libsolv.txt
+++ b/doc/libsolv.txt
@@ -56,3 +56,6 @@ Author
------
Michael Schroeder <mls@suse.de>
+////
+vim: syntax=asciidoc
+////
diff --git a/doc/mdk2solv.txt b/doc/mdk2solv.txt
index 2616a87..eb2ac14 100644
--- a/doc/mdk2solv.txt
+++ b/doc/mdk2solv.txt
@@ -31,3 +31,7 @@ genhdlist2(1)
Author
------
Michael Schroeder <mls@suse.de>
+
+////
+vim: syntax=asciidoc
+////
diff --git a/doc/mergesolv.txt b/doc/mergesolv.txt
index bbe8c72..8ae67d1 100644
--- a/doc/mergesolv.txt
+++ b/doc/mergesolv.txt
@@ -23,3 +23,7 @@ Autoexpand SUSE pattern and product provides into packages.
Author
------
Michael Schroeder <mls@suse.de>
+
+////
+vim: syntax=asciidoc
+////
diff --git a/doc/repomdxml2solv.txt b/doc/repomdxml2solv.txt
index feb859c..3b77820 100644
--- a/doc/repomdxml2solv.txt
+++ b/doc/repomdxml2solv.txt
@@ -34,3 +34,7 @@ rpmmd2solv(1), mergesolv(1), createrepo(8)
Author
------
Michael Schroeder <mls@suse.de>
+
+////
+vim: syntax=asciidoc
+////
diff --git a/doc/rpmdb2solv.txt b/doc/rpmdb2solv.txt
index 0c4585f..ad8314f 100644
--- a/doc/rpmdb2solv.txt
+++ b/doc/rpmdb2solv.txt
@@ -57,3 +57,7 @@ rpms2solv(1)
Author
------
Michael Schroeder <mls@suse.de>
+
+////
+vim: syntax=asciidoc
+////
diff --git a/doc/rpmmd2solv.txt b/doc/rpmmd2solv.txt
index c72ccc9..f103f06 100644
--- a/doc/rpmmd2solv.txt
+++ b/doc/rpmmd2solv.txt
@@ -28,3 +28,7 @@ repomdxml2solv(1), mergesolv(1), createrepo(8)
Author
------
Michael Schroeder <mls@suse.de>
+
+////
+vim: syntax=asciidoc
+////
diff --git a/doc/rpms2solv.txt b/doc/rpms2solv.txt
index 244dffb..11bdcf0 100644
--- a/doc/rpms2solv.txt
+++ b/doc/rpms2solv.txt
@@ -46,3 +46,7 @@ rpmdb2solv(1)
Author
------
Michael Schroeder <mls@suse.de>
+
+////
+vim: syntax=asciidoc
+////
diff --git a/doc/susetags2solv.txt b/doc/susetags2solv.txt
index 9a2e2f1..0d61c4d 100644
--- a/doc/susetags2solv.txt
+++ b/doc/susetags2solv.txt
@@ -37,3 +37,7 @@ Autoexpand SUSE pattern and product provides into packages.
Author
------
Michael Schroeder <mls@suse.de>
+
+////
+vim: syntax=asciidoc
+////
diff --git a/doc/testsolv.txt b/doc/testsolv.txt
index dc3a34e..eb52d95 100644
--- a/doc/testsolv.txt
+++ b/doc/testsolv.txt
@@ -39,3 +39,7 @@ to encountered problems.
Author
------
Michael Schroeder <mls@suse.de>
+
+////
+vim: syntax=asciidoc
+////
diff --git a/doc/updateinfoxml2solv.txt b/doc/updateinfoxml2solv.txt
index 7e7c5fc..6ebdeb4 100644
--- a/doc/updateinfoxml2solv.txt
+++ b/doc/updateinfoxml2solv.txt
@@ -25,3 +25,7 @@ mergesolv(1), createrepo(8)
Author
------
Michael Schroeder <mls@suse.de>
+
+////
+vim: syntax=asciidoc
+////