start adding apt.8.xml
document list/search
Merge branch 'debian/sid' into feature/apt-manpage
improve apt.8.xml
another fixup for apt.8 -> apt.7 rename
add "Script usage" section and bugfixes
describe script usage in the manpage
continue reading in xz even if it outputs nothing

It can happen that content in our buffer is not enough to produce a
meaningful output in which case no output is created by liblzma, but
still reports that everything is okay and we should go on.

The code assumes it has reached the end through if it encounters a null
read, so this commit makes it so that it looks like this read was
interrupted just like the lowlevel read() on uncompressed files could.

It subsequently fixes the issue with that as well as until now our loop
would still break even if we wanted it to continue on.

(This bug triggers our usual "Hash sum mismatch" error)

Reported-By: Stefan Lippers-Hollmann <s.L-H@gmx.de>
only consider versioned kernel packages in autoremove

Metapackages like "linux-image-amd64" are otherwise matched by our
extraction as well, which later on can't be successfully compared via
dpkg --compare-versions as the 'amd64' bit isn't a version number.
(Luckily none of our architectures starts with a digit.)

This was broken by me in 0.9.16 as I moved a shell-glob matcher to a
regex-based one which has slightly different semantics regarding '*'.

Closes: 741962
Italian manpages translation update

Closes: 741867
correct some reported typos in /etc/cron.daily/apt

Closes: 702016
Reported-By: Mason Loring Bliss <mason@blisses.org>,
 Jakub Wilk <jwilk@debian.org>
Japanese programs translation update

Closes: 742255
add testcase for APT::Architectures "arch1,arch2"

Git-Dch: Ignore
enable fvisibility=hidden for our private library

While it is a huge undertaking to enable it for our public libraries as
basically everything we exported so far could be seen as public
interface our private library is new and under our full control, so we
can do whatever we like with it. The benefits are not that big in return
of course, but it reduces the size a bit, so thats great nontheless.

Git-Dch: ignore
mark optional (private) symbols as hidden

This methods should not be used by anyone expect the library itself as
they are helpers for the specific class and therefore perfect candidates
for hidding.

Git-Dch: Ignore
ensure proper teardown in dpkg error cases

We have to properly close our pseudo terminals even in error cases
before we call post-invoke scripts. This is done now by breaking from
the dpkg calling loop instead of copying the handling, which did it in
the wrong order before.

This also ensures that our state file is written in error cases to
record autobit and co as this was forgotten before.

Closes: 738969
update symbols file to include new symbols from 0.9.16
do IsInstallOk call in MarkInstall unconditionally

Hooked checks could be influenced by AutoInst as a lot can happen
between a call without and one with this bit set. The real cache-hit
check is above this call already. Individual hooked checks can then
inspect the state if they want to cache. Calling them multiple times
shouldn't be a problem either way.
discard candidates via IsInstallOk to allow override

In commit 446551c8 I changed MarkInstall to discard the candidate if the
candidate can't satisfy the dependency. This breaks interactive solvers
like aptitude which can change the candidate on-the-fly later.

In commit df77d8a5 I introduced this 'early' loop-breaking to begin with
which can't be that helpful for interactive solvers as well, but makes
perfect sense for non-interactives to stop them from exploring trees
which can't be satisfied, but it isn't perfect as ideally we would check
this before auto-installing the first dependency.

This commit therefore moves the loop into its own IsInstallOk hook so
that frontends can override this check if they want to and in exchange
removes the loop-breaking from MarkInstall itself and does it before any
dependency is installed.

Closes: 740750
make fancy-progress fg/bg color configurable

Add two new options: Dpkg::Progress-Fancy::Progress-{fg,bg} that
allows customizing the colors in the dpkg fancy progress output.