ntk/apt.git
10 years agoreleasing package apt version 0.9.15 0.9.15
Michael Vogt [Sat, 25 Jan 2014 20:57:26 +0000 (21:57 +0100)]
releasing package apt version 0.9.15

10 years agoMerge remote-tracking branch 'mvo/debian/sid' into debian/sid
Michael Vogt [Sat, 25 Jan 2014 20:55:11 +0000 (21:55 +0100)]
Merge remote-tracking branch 'mvo/debian/sid' into debian/sid

10 years agoMerge branch 'debian/experimental-no-abi-break' into debian/sid
Michael Vogt [Sat, 25 Jan 2014 20:54:52 +0000 (21:54 +0100)]
Merge branch 'debian/experimental-no-abi-break' into debian/sid

10 years agosupport " " in deb822 source options
Michael Vogt [Sat, 25 Jan 2014 13:53:03 +0000 (14:53 +0100)]
support " " in deb822 source options

10 years agoreleasing package apt version 0.9.14.3~exp5 0.9.14.3.exp5
Michael Vogt [Fri, 24 Jan 2014 22:21:23 +0000 (23:21 +0100)]
releasing package apt version 0.9.14.3~exp5

10 years agofix test
Michael Vogt [Fri, 24 Jan 2014 22:29:10 +0000 (23:29 +0100)]
fix test

10 years agoset APT::Sources::Use-Deb822 to default false for now
Michael Vogt [Fri, 24 Jan 2014 22:17:30 +0000 (23:17 +0100)]
set APT::Sources::Use-Deb822 to default false for now

10 years agomake update-po
Michael Vogt [Fri, 24 Jan 2014 22:16:27 +0000 (23:16 +0100)]
make update-po

10 years agoMerge remote-tracking branch 'mvo/feature/apt-show-nice' into debian/experimental...
Michael Vogt [Fri, 24 Jan 2014 22:07:10 +0000 (23:07 +0100)]
Merge remote-tracking branch 'mvo/feature/apt-show-nice' into debian/experimental-no-abi-break

Conflicts:
apt-private/private-cmndline.cc

10 years agoMerge remote-tracking branch 'mvo/debian/sid' into debian/experimental-no-abi-break
Michael Vogt [Fri, 24 Jan 2014 22:05:25 +0000 (23:05 +0100)]
Merge remote-tracking branch 'mvo/debian/sid' into debian/experimental-no-abi-break

10 years agoMerge remote-tracking branch 'ajt/better-pdiffs-dk' into debian/sid
Michael Vogt [Fri, 24 Jan 2014 22:00:57 +0000 (23:00 +0100)]
Merge remote-tracking branch 'ajt/better-pdiffs-dk' into debian/sid

10 years agoapt-mark help shows all commands now
Michael Vogt [Fri, 24 Jan 2014 21:59:36 +0000 (22:59 +0100)]
apt-mark help shows all commands now

10 years agohide more from apt show
Michael Vogt [Fri, 24 Jan 2014 21:20:28 +0000 (22:20 +0100)]
hide more from apt show

Hide the Hashes,Filename,Multi-Arch,Architecture by default from
"apt show". The information is still available via apt-cache show.

Also improve the output of the Size-

10 years agoshow APT-Sources in apt show
Michael Vogt [Fri, 24 Jan 2014 20:17:07 +0000 (21:17 +0100)]
show APT-Sources in apt show

10 years agoShow "Manual-Installed: {yes|no}" in apt show
Michael Vogt [Fri, 24 Jan 2014 20:03:49 +0000 (21:03 +0100)]
Show "Manual-Installed: {yes|no}" in apt show

10 years agoadd "apt full-upgrade" and tweak "apt upgrade"
Michael Vogt [Fri, 24 Jan 2014 19:33:02 +0000 (20:33 +0100)]
add "apt full-upgrade" and tweak "apt upgrade"

There is a new "apt full-upgrade" that performs a apt-get dist-upgrade.
"apt dist-upgrade" is still supported as a alias. The "apt upgrade" code
is changed so that it mirrors the behavior of
"apt-get upgrade --with-new-pkgs" and also honors
"apt uprade --no-new-pkgs".

10 years agoinclude "Archive-Origin" in the apt show output
Michael Vogt [Thu, 23 Jan 2014 07:12:02 +0000 (08:12 +0100)]
include "Archive-Origin" in the apt show output

10 years agoShow only the candidate with "apt show"
Michael Vogt [Thu, 23 Jan 2014 06:52:23 +0000 (07:52 +0100)]
Show only the candidate with "apt show"

Display only the candidate version with "apt show pkg" but show
a notice that there is more to see.

10 years agoreleasing package apt version 0.9.14.3~exp4
Michael Vogt [Wed, 22 Jan 2014 17:59:14 +0000 (18:59 +0100)]
releasing package apt version 0.9.14.3~exp4

10 years agoMerge remote-tracking branch 'mvo/debian/sid' into debian/experimental-no-abi-break
Michael Vogt [Wed, 22 Jan 2014 17:49:15 +0000 (18:49 +0100)]
Merge remote-tracking branch 'mvo/debian/sid' into debian/experimental-no-abi-break

10 years ago"apt show" show user friendly size info
Michael Vogt [Wed, 22 Jan 2014 16:18:26 +0000 (17:18 +0100)]
"apt show" show user friendly size info

The size/installed-size is displayed via SizeToStr() and Size
is rewriten to "Download-Size" to make clear what size is refered
to here.

10 years agoadd test for apt show
Michael Vogt [Wed, 22 Jan 2014 15:41:00 +0000 (16:41 +0100)]
add test for apt show

10 years agoadd integration test for apt search
Michael Vogt [Wed, 22 Jan 2014 07:25:02 +0000 (08:25 +0100)]
add integration test for apt search

10 years agoMerge remote-tracking branch 'upstream/debian/experimental-no-abi-break' into feature...
Michael Vogt [Tue, 21 Jan 2014 06:20:07 +0000 (07:20 +0100)]
Merge remote-tracking branch 'upstream/debian/experimental-no-abi-break' into feature/source-deb822

Conflicts:
test/integration/test-apt-sources-deb822

10 years agomethods/rred: minor robustness improvements
Anthony Towns [Mon, 20 Jan 2014 19:00:12 +0000 (05:00 +1000)]
methods/rred: minor robustness improvements

Use retry_fwrite to better handle partial fwrite successes, and to keep
the Hashes in sync with what's actually written.

10 years agoadd support for multipl types in one line
Michael Vogt [Mon, 20 Jan 2014 07:17:43 +0000 (08:17 +0100)]
add support for multipl types in one line

10 years agoadd support for multiple URIs in deb822 style sources.list
Michael Vogt [Mon, 20 Jan 2014 07:10:50 +0000 (08:10 +0100)]
add support for multiple URIs in deb822 style sources.list

10 years agoadd support for Enabled: no in deb822 sources.list
Michael Vogt [Mon, 20 Jan 2014 06:59:11 +0000 (07:59 +0100)]
add support for Enabled: no in deb822 sources.list

10 years agoadd Description tag for deb822 sources
Michael Vogt [Mon, 20 Jan 2014 06:43:17 +0000 (07:43 +0100)]
add Description tag for deb822 sources

10 years agodo not ignore ioctl(TIOCSCTTY) errors
Michael Vogt [Sat, 18 Jan 2014 22:42:51 +0000 (23:42 +0100)]
do not ignore ioctl(TIOCSCTTY) errors

Show a proper error message when a ioctl() in dpkgpm.cc fails.
Also simply StartPtyMagic() a bit.

10 years agoreleasing package apt version 0.9.14.3~exp3 0.9.14.3.exp3
Michael Vogt [Sat, 18 Jan 2014 20:12:40 +0000 (21:12 +0100)]
releasing package apt version 0.9.14.3~exp3

10 years ago* implement deb822 suggestions from donkult (thanks!):
Michael Vogt [Sat, 18 Jan 2014 20:10:58 +0000 (21:10 +0100)]
* implement deb822 suggestions from donkult (thanks!):
  - rename "Dist" to "Suites"
  - rename "Section" to "Sections"
  - rename "Architectures-Delete" to "Architectures-Remove"
  - rename "Uri" to "URI"
* add "apt list --manual-installed"
* add "apt upgrade --dist"
* add "apt purge"
* flock() the file edited in "apt edit-sources"
* apt-private/private-show.cc:
  - do not show Description-lang: header
* reword apt !isatty() warning
* add missing integration test for "apt list" and fix bugs
  found by it

10 years agoMerge remote-tracking branch 'mvo/feature/source-deb822' into debian/experimental...
Michael Vogt [Sat, 18 Jan 2014 20:05:24 +0000 (21:05 +0100)]
Merge remote-tracking branch 'mvo/feature/source-deb822' into debian/experimental-no-abi-break

10 years agorename "Suite/Section" to plural
Michael Vogt [Sat, 18 Jan 2014 19:51:03 +0000 (20:51 +0100)]
rename "Suite/Section" to plural

10 years agoMerge remote-tracking branch 'mvo/feature/source-deb822' into debian/experimental...
Michael Vogt [Sat, 18 Jan 2014 07:52:02 +0000 (08:52 +0100)]
Merge remote-tracking branch 'mvo/feature/source-deb822' into debian/experimental-no-abi-break

10 years agoMerge remote-tracking branch 'mvo/debian/sid' into debian/experimental-no-abi-break
Michael Vogt [Sat, 18 Jan 2014 07:51:53 +0000 (08:51 +0100)]
Merge remote-tracking branch 'mvo/debian/sid' into debian/experimental-no-abi-break

10 years agoadd purge to the apt cmdline
Michael Vogt [Fri, 17 Jan 2014 20:38:23 +0000 (21:38 +0100)]
add purge to the apt cmdline

10 years agoimplement suggestion by donkult (thanks!)
Michael Vogt [Fri, 17 Jan 2014 19:41:55 +0000 (20:41 +0100)]
implement suggestion by donkult (thanks!)

10 years agoadd missing integration test for "apt list"
Michael Vogt [Fri, 17 Jan 2014 07:43:14 +0000 (08:43 +0100)]
add missing integration test for "apt list"

10 years agoreword !isatty() warning
Michael Vogt [Fri, 17 Jan 2014 06:52:22 +0000 (07:52 +0100)]
reword !isatty() warning

10 years agoadd apt upgrade --dist
Michael Vogt [Fri, 17 Jan 2014 06:48:43 +0000 (07:48 +0100)]
add apt upgrade --dist

10 years agoprepare upload 0.9.14.3.exp2
Michael Vogt [Thu, 16 Jan 2014 20:47:28 +0000 (21:47 +0100)]
prepare upload

10 years agomerged mvo/feature/deb822
Michael Vogt [Thu, 16 Jan 2014 20:40:58 +0000 (21:40 +0100)]
merged mvo/feature/deb822

10 years agoprepare new upload
Michael Vogt [Thu, 16 Jan 2014 17:55:13 +0000 (18:55 +0100)]
prepare new upload

10 years agoapt-private/private-show.cc: do not show Description-lang: header, the user probably...
Michael Vogt [Thu, 16 Jan 2014 17:26:07 +0000 (18:26 +0100)]
apt-private/private-show.cc: do not show Description-lang: header, the user probably knows his language (thanks to Donkult)

10 years agoupdate libapt test
Michael Vogt [Thu, 16 Jan 2014 17:14:14 +0000 (18:14 +0100)]
update libapt test

10 years agosupport multiple "Suite:" entries
Michael Vogt [Thu, 16 Jan 2014 16:13:18 +0000 (17:13 +0100)]
support multiple "Suite:" entries

10 years agorename URL to Uri in deb822-sources
Michael Vogt [Thu, 16 Jan 2014 16:03:07 +0000 (17:03 +0100)]
rename URL to Uri in deb822-sources

10 years agorename "distribution" in sources.list to "suite"
Michael Vogt [Thu, 16 Jan 2014 16:00:56 +0000 (17:00 +0100)]
rename "distribution" in sources.list to "suite"

10 years ago* refactor to have a new virtual ParseStanza
Michael Vogt [Thu, 16 Jan 2014 15:25:33 +0000 (16:25 +0100)]
* refactor to have a new virtual ParseStanza

Have a similar ParseStanza() to the current ParseLine().
Rename the Architectures options in deb822 to make it more
user friendly

10 years agoadd --manual-installed commandline switch
Michael Vogt [Thu, 16 Jan 2014 15:45:11 +0000 (16:45 +0100)]
add --manual-installed commandline switch

10 years agoremove "," in components again
Michael Vogt [Thu, 16 Jan 2014 07:03:24 +0000 (08:03 +0100)]
remove "," in components again

10 years agorework some testcases to not spit out text
David Kalnischkies [Wed, 15 Jan 2014 17:44:47 +0000 (18:44 +0100)]
rework some testcases to not spit out text

Rework also uncovers two FIXMEs

Git-Dch: Ignore

10 years agointegrate Anthonys rred with POC for client-side merge
David Kalnischkies [Wed, 15 Jan 2014 16:23:05 +0000 (17:23 +0100)]
integrate Anthonys rred with POC for client-side merge

Providing the benefits of both without the downsides :)
(ABI breaks or external dependencies)

For this Anthonys rred is equipped with:
- magic-filename-pickup of patches rather than explicit messages
- use of FileFd instead of FILE* to get on-the-fly uncompress
  of the gzip compressed pdiff patches

The acquire code in turn stops checking for apt-file's helper
as our own rred is now clever enough for our needs.

10 years agoreimplement rred to allow applying all the diffs in a single pass
Anthony Towns [Wed, 15 Jan 2014 15:33:36 +0000 (16:33 +0100)]
reimplement rred to allow applying all the diffs in a single pass

Based on the idea presented in:
https://lists.debian.org/deity/2009/08/msg00169.html  and
https://lists.debian.org/debian-devel/2014/01/msg00081.html

It reads all patches one by one and merges them in-memory before
applying the merged changes to the index.

Beware: This commit by David Kalnischkies rips out the rred binary
rewrite unchanged (expect minor format issue corrections) from the
proposed changes, so this commit alone BREAKS pdiff completely.
The integration into the acquire system as it was prepared in the
previous POC will be done in the next commit to have proper 'blame'.

10 years agoactually register the tempfile removal atexit
David Kalnischkies [Wed, 15 Jan 2014 15:14:23 +0000 (16:14 +0100)]
actually register the tempfile removal atexit

Git-Dch: Ignore

10 years agoreenable unlimited pdiff files download
David Kalnischkies [Fri, 27 Dec 2013 13:52:15 +0000 (14:52 +0100)]
reenable unlimited pdiff files download

In 51fc6def77edfb1f429a48e5169519e9e05a759b we limited the amount of
pdiff to be downloaded per index to 20. This was a compromise between
not letting it go overboard (becoming even slower) and not using
bandwidth needlessly. Now that with the POC the speed reason is gone it
makes sense again to download as much files as we possible can via pdiff
to save bandwidth (and possibly even time).

It also avoids problems with the limit in cases we were we deal with a
server merged archieve as this limit assumes a strict patch progression.

10 years agocorrect IndexDiff vs DiffIndex in Debug output
Anthony Towns [Wed, 15 Jan 2014 14:55:26 +0000 (15:55 +0100)]
correct IndexDiff vs DiffIndex in Debug output

10 years agodocument deb822 style sources.list
Michael Vogt [Mon, 6 Jan 2014 07:35:51 +0000 (08:35 +0100)]
document deb822 style sources.list

10 years agoflock() the file edited in edit-sources
Michael Vogt [Mon, 6 Jan 2014 07:12:28 +0000 (08:12 +0100)]
flock() the file edited in edit-sources

10 years agodebian/rules: Call dh_makeshlibs for 'apt'
Julian Andres Klode [Sun, 5 Jan 2014 18:41:15 +0000 (19:41 +0100)]
debian/rules: Call dh_makeshlibs for 'apt'

The package ships libapt-private now, so we need an
ldconfig call in postinst. dh_makeshlibs creates
one for us.

Reported-by: lintian
10 years agodebian/rules: Call dh_makeshlibs for 'apt'
Julian Andres Klode [Sun, 5 Jan 2014 18:41:15 +0000 (19:41 +0100)]
debian/rules: Call dh_makeshlibs for 'apt'

The package ships libapt-private now, so we need an
ldconfig call in postinst. dh_makeshlibs creates
one for us.

Reported-by: lintian
10 years agoprepare 0.9.14.3~exp1 0.9.14.3.exp1
Michael Vogt [Sun, 5 Jan 2014 09:08:42 +0000 (10:08 +0100)]
prepare 0.9.14.3~exp1

10 years agoprepare 0.9.14.3~exp1
Michael Vogt [Sun, 5 Jan 2014 09:08:42 +0000 (10:08 +0100)]
prepare 0.9.14.3~exp1

10 years agoMerge remote-tracking branch 'mvo/feature/source-deb822' into debian/experimental...
Michael Vogt [Sun, 5 Jan 2014 09:06:38 +0000 (10:06 +0100)]
Merge remote-tracking branch 'mvo/feature/source-deb822' into debian/experimental-no-abi-break

10 years agoMerge remote-tracking branch 'donkult/feature/clientmergepdiffs' into debian/experime...
Michael Vogt [Sun, 5 Jan 2014 09:06:26 +0000 (10:06 +0100)]
Merge remote-tracking branch 'donkult/feature/clientmergepdiffs' into debian/experimental-no-abi-break

10 years agoimprove error message
Michael Vogt [Sat, 4 Jan 2014 15:23:32 +0000 (16:23 +0100)]
improve error message

10 years agoimprove tests
Michael Vogt [Sat, 4 Jan 2014 14:39:04 +0000 (15:39 +0100)]
improve tests

10 years agoMerge branch 'debian/sid' into feature/source-deb822
Michael Vogt [Sat, 4 Jan 2014 14:11:59 +0000 (15:11 +0100)]
Merge branch 'debian/sid' into feature/source-deb822

10 years agoMerge branch 'debian/sid' into feature/source-deb822
Michael Vogt [Sat, 4 Jan 2014 10:15:28 +0000 (11:15 +0100)]
Merge branch 'debian/sid' into feature/source-deb822

10 years agol10n: vi.po (617t): Update translation up to v0.9.14.2
Trần Ngọc Quân [Wed, 1 Jan 2014 08:43:36 +0000 (09:43 +0100)]
l10n: vi.po (617t): Update translation up to v0.9.14.2

Signed-off-by: Michael Vogt <mvo@debian.org>
10 years agol10n: vi.po(617t): Update Vietnamese translation
Trần Ngọc Quân [Fri, 13 Dec 2013 07:06:42 +0000 (14:06 +0700)]
l10n: vi.po(617t): Update Vietnamese translation

Signed-off-by: Trần Ngọc Quân <vnwildman@gmail.com>
10 years agoprepare release 0.9.14.2
Michael Vogt [Sun, 29 Dec 2013 16:01:11 +0000 (17:01 +0100)]
prepare release

10 years agovendor/ubuntu/sources.list.in: whitespace fix
Michael Vogt [Sun, 29 Dec 2013 15:40:49 +0000 (16:40 +0100)]
vendor/ubuntu/sources.list.in: whitespace fix

10 years agoupdate changelog
Michael Vogt [Sun, 29 Dec 2013 15:38:48 +0000 (16:38 +0100)]
update changelog

10 years agoMerge remote-tracking branch 'mvo/debian/sid' into debian/sid
Michael Vogt [Sun, 29 Dec 2013 15:04:42 +0000 (16:04 +0100)]
Merge remote-tracking branch 'mvo/debian/sid' into debian/sid

10 years agoadd missing vector include
Michael Vogt [Sat, 28 Dec 2013 08:50:06 +0000 (09:50 +0100)]
add missing vector include

10 years agoMerge branch 'debian/sid' into bugfix/bts731738-fancy-progess
Michael Vogt [Fri, 27 Dec 2013 23:31:01 +0000 (00:31 +0100)]
Merge branch 'debian/sid' into bugfix/bts731738-fancy-progess

Conflicts:
apt-pkg/install-progress.cc

10 years agoMerge remote-tracking branch 'origin/bugfix/bts731738-fancy-progess' into bugfix...
Michael Vogt [Fri, 27 Dec 2013 23:30:28 +0000 (00:30 +0100)]
Merge remote-tracking branch 'origin/bugfix/bts731738-fancy-progess' into bugfix/bts731738-fancy-progess

Conflicts:
apt-pkg/install-progress.cc

10 years agoproperly handle SIGWINCH in PackageManagerFancy again
Michael Vogt [Fri, 27 Dec 2013 23:26:17 +0000 (00:26 +0100)]
properly handle SIGWINCH in PackageManagerFancy again

10 years agofix APTWEBSERVERBINDIR default
Michael Vogt [Fri, 27 Dec 2013 22:17:26 +0000 (23:17 +0100)]
fix APTWEBSERVERBINDIR default

10 years agoadd make -C test/interactive-helper/ to .travis.yml
Michael Vogt [Fri, 27 Dec 2013 22:07:06 +0000 (23:07 +0100)]
add make -C test/interactive-helper/ to .travis.yml

10 years agoMerge branch 'feature/tests-on-installed' into debian/sid
Michael Vogt [Fri, 27 Dec 2013 21:18:11 +0000 (22:18 +0100)]
Merge branch 'feature/tests-on-installed' into debian/sid

10 years agoMerge branch 'feature/test-apt-key-net-update' into debian/sid
Michael Vogt [Fri, 27 Dec 2013 21:18:05 +0000 (22:18 +0100)]
Merge branch 'feature/test-apt-key-net-update' into debian/sid

10 years agoMerge branch 'feature/policy-parser-bts732746' into debian/sid
Michael Vogt [Fri, 27 Dec 2013 21:18:00 +0000 (22:18 +0100)]
Merge branch 'feature/policy-parser-bts732746' into debian/sid

10 years agoremove debian entry from default steamos sources.list
Michael Vogt [Fri, 27 Dec 2013 08:34:34 +0000 (09:34 +0100)]
remove debian entry from default steamos sources.list

10 years agoadd integration test
Michael Vogt [Tue, 24 Dec 2013 22:21:23 +0000 (23:21 +0100)]
add integration test

10 years agoadd basic tests for GetTempDir()
Michael Vogt [Mon, 23 Dec 2013 12:35:08 +0000 (13:35 +0100)]
add basic tests for GetTempDir()

10 years agofactor GetTempDir out
Michael Vogt [Sun, 22 Dec 2013 21:15:52 +0000 (22:15 +0100)]
factor GetTempDir out

10 years agoapt-pkg/contrib/gpgv.cc: use /tmp as fallback dir
Thomas Bechtold [Sun, 22 Dec 2013 10:40:49 +0000 (11:40 +0100)]
apt-pkg/contrib/gpgv.cc: use /tmp as fallback dir

if the directory given by $TMPDIR is not available, use /tmp as fallback.

10 years agofirst proof-of-concept for a fix for #731738
Michael Vogt [Sun, 22 Dec 2013 13:38:39 +0000 (14:38 +0100)]
first proof-of-concept for a fix for #731738

10 years agofirst proof-of-concept for a fix for #731738
Michael Vogt [Sun, 22 Dec 2013 13:38:39 +0000 (14:38 +0100)]
first proof-of-concept for a fix for #731738

10 years agomake /etc/apt/preferences parser deal with comment only sections
Michael Vogt [Sat, 21 Dec 2013 17:50:03 +0000 (18:50 +0100)]
make /etc/apt/preferences parser deal with comment only sections

10 years agovendor/steamos/*:
Michael Vogt [Sat, 21 Dec 2013 17:18:51 +0000 (18:18 +0100)]
vendor/steamos/*:

* vendor/steamos/*:
  - add steamos support

10 years agovendor/getinfo:
Michael Vogt [Sat, 21 Dec 2013 16:56:32 +0000 (17:56 +0100)]
vendor/getinfo:

* vendor/getinfo:
  - fix ubuntu-codename

10 years agoadd apt-vendor for raspbian. Closes: #732749
Michael Vogt [Sat, 21 Dec 2013 15:21:29 +0000 (16:21 +0100)]
add apt-vendor for raspbian. Closes: #732749

10 years agofix apt-key net-update test to use the buildin webserver
Michael Vogt [Thu, 19 Dec 2013 15:43:50 +0000 (16:43 +0100)]
fix apt-key net-update test to use the buildin webserver

10 years agoDanish translation update
Joe Dalton [Sun, 15 Dec 2013 07:44:33 +0000 (08:44 +0100)]
Danish translation update

10 years agomake apt-key net-update actually testable
Michael Vogt [Fri, 13 Dec 2013 13:37:14 +0000 (14:37 +0100)]
make apt-key net-update actually testable

10 years agoimplement POC client-side merging of pdiffs via apt-file
David Kalnischkies [Fri, 6 Dec 2013 11:17:48 +0000 (12:17 +0100)]
implement POC client-side merging of pdiffs via apt-file

The idea of pdiffs is to avoid downloading the hole file by patching the
existing index. This works very well, but becomes slow if a lot of
patches needs to be applied to reconstruct an up-to-date index and in
recent years more and more dinstall (or similar) runs are executed
creating more and more pdiffs in the same amount of time, so pdiffs
became less useful.

The solution is simple: Reduce the amount of patches (which are very
small) which need to be applied on top of the index we have available
(which is usually pretty big).

This can be done in two ways: Either merge the patches on the
server-side so that the client has to download only one patch or the
patches are all downloaded and merged on the client-side.

The first needs a client who is doing one step at a time who can also
skip patches if it needs (APT supports this for a long time now).

The later is implemented by this commit, but depends on the server NOT
merging the patches and the patches being in a strict order in which no
patch is skipped.

This is traditionally the case for dak, but other repository creators
support merging – e.g. reprepro (which helpfully adds a flag indicating
that the patches are merged). To support both or even mixes a client
needs more information which isn't available for now.

This POC uses the external diffindex-rred included in apt-file to
do the heavy lifting of merging & applying all patches in one pass,
hence to test this feature apt-file needs to be installed.