Rework the CompressionTypes system by adding an Order subgroup to
simplify customisation of the order and improve the documentation
about this setting group.
Michael Vogt [Fri, 28 Aug 2009 16:54:02 +0000 (18:54 +0200)]
* apt-pkg/pkgcache.cc:
- do not set internel "needs-configure" state for packages in
triggers-pending state. dpkg will deal with the trigger and
it if does it before we trigger it, dpkg will error out
(LP: #414631)
Thanks again for the initial patch from KURASAWA Nozomu and
for the improvements and cleanups done by Nicolas François
to get po4a up and running for apt man page translations!
* buildlib/po4a_manpage.mak, doc/makefile, configure:
- simplify the makefiles needed for po4a manpages
Add a bit more autodetection to the buildsystem to be able to
add only half translated languages (only a few man pages, not all) and
try to reduce the overhead needed to add new languages.
add ignore patterns to be able to use "bzr status" or "bzr add" again
after building apt by ignoring temporary files, build files and the
autogenerated files in doc/.
[ Nicolas François ]
* doc/ja/*, doc/po/ja.po:
- remove the old ja man page translation and replace it with
the new po4a-powered translation by KURASAWA Nozomu.
[ Nicolas François ]
* Cleaned up the first patch draft from KURASAWA Nozomu to finally
get po4a support for translating the man pages.
Many thanks to both for this excellent work! (Closes: #441608)
* doc/Doxyfile.in
- activate DOT_MULTI_TARGETS, it is default on since doxygen 1.5.9
The description for this option is:
# Set the DOT_MULTI_TARGETS tag to YES allow dot to generate multiple output
# files in one run (i.e. multiple -o and -T options on the command line). This
# makes dot run faster, but since only newer versions of dot (>1.8.10)
# support this, this feature is disabled by default.
Even oldstable has a newer dot version, so the debian package doxygen
activate it per default and we will follow this recommendation now.
"backport" the APT::Configuration class to apt-sid
We can use it to simplify the internal code to operate with
Acquire::CompressionTypes group. This also made it possible
to set this setting with the -o flag.
Michael Vogt [Mon, 24 Aug 2009 09:20:27 +0000 (11:20 +0200)]
* apt-pkg/pkgcache.cc:
- do not set internel "needs-configure" state for packages in
triggers-pending state. dpkg will deal with the trigger and
it if does it before we trigger it, dpkg will error out
(LP: #414631)
Allow empty Reason-Phase in the Status-Lines, which is allowed by rtf
http://www.w3.org/Protocols/rfc2616/rfc2616.html .
Fixed by removing a space which will now be visibly in the errormessages,
but as this errors should never happen anyway and an extra space doesn't
harm we don't removed it.
* methods/http.cc:
- allow empty Reason-Phase in Status-Line to please squid,
thanks Modestas Vainius for noticing! (Closes: #531157, LP: #411435)
With the introduction of the Is{Delete,Install}Ok hooks the apt flag
--ignore-hold only works partly: The holds are to strongly enforced
in these hooks - this commit brings the old (and expected) behaviour back.
[apt-pkg/depcache.cc]
- restore the --ignore-hold effect in the Is{Delete,Install}Ok hooks
Add a Acquire::CompressionTypes config variable from there the
acquire-items choose which compression file they should (try first to)
download to easily add new or change the order of the compression types.
And because it is easy now we directly add builtin lzma support.
The compression ratio is better than bzip2 but we prefer the later for now
as no (official) mirror uses lzma, so this would only generate useless
hits on the servers. Maybe sometime in the future lzma will be the default...
[apt-pkg/acquire-item.cc]
- use configsettings for dynamic compression type use and order.
Based on a patch by Jyrki Muukkonen, thanks! (LP: #71746)
[apt-pkg/init.cc]
- add default configuration for compression types and add lzma
support. Order is now bzip2, lzma, gzip, none (Closes: #510526)
[ftparchive/writer.cc]
- add lzma support also here, patch for this (and inspiration for
the one above) by Robert Millan, thanks!
[debian/changlog] add entry for the "missing source.list file" fix
* apt-pkg/sourcelist.cc:
- only show warning about missing sources.list file if no we have
no valid sourceentry (Closes: #539731)
* apt-pkg/sourcelist.cc:
- Only warn about missing sources.list if there is no sources.list.d
and vice versa as only one of them is needed (Closes: #539731).
[apt-pkg/sourcelist.cc] only display the warning about missing sources.list
file, if no SourceListEntry exists (e.g. sources.list.d dir does not exists
or it exists but does not include a .list-file with valid entries)
Michael Vogt [Thu, 30 Jul 2009 16:45:46 +0000 (18:45 +0200)]
* cmdline/apt-get.cc:
- honor APT::Get::Only-Source properly in FindSrc() (thanks to
Martin Pitt for reporting the problem)
* Added more error handlings. Closes: #438803, #462734, #454989
Michael Vogt [Tue, 28 Jul 2009 11:27:03 +0000 (13:27 +0200)]
apt-pkg/depcache.cc:
- Call opProgress->Update() less often too avoid spending too
much time in it (it shows up relatively high in the callgrind logs).
But do call it more often than just for each percent so that the
UI frontends can use the OpProgress::Update() calling to do e.g. UI
updates
merge with lp:apt/debian-sid
Remove a bug (= an evil amok running if) introduced by the merge in 1817
which cause a segfault in the destructor for the dynamic mmap.
[apt-pkg] yet another bit of mmap and pkgcachegen housekeeping
* add mmap error message also to the dynamic mmap
* remove some more {Ver,Desc} == 0 checks in for loops
* try to respect the given flags to the dynamic mmap
* open cached caches not as ReadOnly and not as Shared, so we
always have a copy of the cache in the memory we can modify
(e.g. set the hold state on-the-fly)
Michael Vogt [Thu, 23 Jul 2009 08:41:38 +0000 (10:41 +0200)]
[ABI] merged the libudev-dlopen branch, this allows to pass
"apt-udev-auto" to Acquire::Cdrom::mount and the cdrom method will
dynamically find/mount the cdrom device (if libhal is available)
[apt-pkg/pkgcachegen.cc] remove the Ver == 0 and Desc == 0 from the last
changeset as they are useless after the checks for LastVer & co work
correctly.
Michael Vogt [Tue, 21 Jul 2009 16:31:36 +0000 (18:31 +0200)]
The 'not dead yet' release
* add hook for MarkInstall and MarkDelete (closes: #470035)
* add the various foldmarkers in apt-pkg & cmdline (no code change)
* versions with a pin of -1 shouldn't be a candidate (Closes: #355237)
* prefer mmap as memory allocator in MMap instead of a static char
array which can (at least in theory) grow dynamic
* eliminate (hopefully all) segfaults in pkgcachegen.cc and mmap.cc
which can arise if cache doesn't fit into the mmap (Closes: #535218)
* display warnings instead of errors if the parts dirs doesn't exist
* honor the dpkg hold state in new Marker hooks (closes: #64141)
Michael Vogt [Tue, 21 Jul 2009 14:05:52 +0000 (16:05 +0200)]
* apt-pkg/acquire.cc:
- make the max pipeline depth of the acquire queue configurable
via Acquire::Max-Pipeline-Depth
* apt-pkg/deb/dpkgpm.cc:
- add Dpkg::UseIoNice boolean option to run dpkg with ionice -c3
(off by default)
- send "dpkg-exec" message on the status fd when dpkg is run
- provide DPkg::Chroot-Directory config option (useful for testing)
- fix potential hang when in a backgroud process group
* apt-pkg/algorithms.cc:
- consider recommends when making the scores for the problem
resolver
* apt-pkg/acquire-worker.cc:
- show error details of failed methods
* apt-pkg/contrib/fileutl.cc:
- if a process aborts with signal, show signal number
* methods/http.cc:
- ignore SIGPIPE, we deal with EPIPE from write in
HttpMethod::ServerDie() (LP: #385144)
* apt-pkg/indexcopy.cc:
- support having CDs with no Packages file (just a Packages.gz)
by not forcing a verification on non-existing files
(LP: #255545)
- remove the gettext from a string that consists entirely
of variables (LP: #56792)
* apt-pkg/cacheiterators.h:
- add missing checks for Owner == 0 in end()
* apt-pkg/indexrecords.cc:
- fix some i18n issues
* apt-pkg/contrib/strutl.h:
- add new strprintf() function to make i18n strings easier
- fix compiler warning
* apt-pkg/deb/debsystem.cc:
- make strings i18n able
* fix problematic use of tolower() when calculating the version
hash by using locale independant tolower_ascii() function.
Thanks to M. Vefa Bicakci (LP: #80248)
* build fixes for g++-4.4
* cmdline/apt-mark:
- add "showauto" option to show automatically installed packages
* document --install-recommends and --no-install-recommends
(thanks to Dereck Wonnacott, LP: #126180)
* Updated cron script to support backups by hardlinks and
verbose levels. All features turned off by default.
* Added more error handlings. Closes: #438803, #462734, #454989,
* Refactored condition structure to make download and upgrade performed
if only previous steps succeeded. Closes: #341970
* Documented all cron script related configuration items in
configure-index.
* apt-ftparchive might write corrupt Release files (LP: #46439)
* Apply --important option to apt-cache depends (LP: #16947)
display warnings instead of errors if the parts dirs doesn't exist
Parts dirs are /etc/apt/{sources.list,apt.conf,preferences}.d
(in the default setup)
[contrib/error.cc] place a colon between errno and error text in output
of GlobalError::Errno and WarningE (as it described in the comments of
these methods)