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)
[contrib/mmap] implements a theoretical dynamic growing mmap
based on Michael Vogts patch in #195018 this commit implements the use
of mmap (as preferred) instead of a static char array. In theory this
made it possible to grow the mmap as needed, but as it is currently
impossible to move the mmap around in the memory the grow is likely
to fail but it improve the memory usage a bit, so it is not totally
useless for now - and maybe we can adjust the pointers in the future...
* remove the MarkKeep calls if Is{Delete,Install}Ok false, because
they have no effect anyway (thanks Daniel Burrows for noticing)
* improve documentation of the Is{Delete,Install}Ok methods a bit
* add the FromUser boolean to the debug output of the markers
Michael Vogt [Thu, 2 Jul 2009 12:07:18 +0000 (14:07 +0200)]
* 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)
* add hook for MarkInstall and MarkDelete (closes: #470035)
* honor the dpkg hold state in new Marker hooks (closes: #64141)
Combine the proposed AutoInstOk and IsAutoInstallOk to more general hooks
for MarkInstall (and another one for MarkDelete) with the same parameters
as the call these hooks should check.
Michael Vogt [Mon, 29 Jun 2009 16:00:54 +0000 (18:00 +0200)]
* add depth information to the debug output and show what depends
type triggers a autoinst (closes: #458389)
* add debug::pkgDepCache::Marker with more detailed debug output
(closes: #87520)
[apt-pkg] allow also codenames for specifying a release
* MatchType::Release checks first for archive than for codename equality
* new n= option in apt_preference to be able to pin based on a codeName
Michael Vogt [Thu, 23 Apr 2009 10:53:48 +0000 (12:53 +0200)]
fix problematic use of tolower() when calculating the version
hash by using locale independant tolower_ascii() function.
Thanks to M. Vefa Bicakci (LP: #80248)
Michael Vogt [Thu, 9 Apr 2009 02:36:34 +0000 (04:36 +0200)]
* apt-pkg/contrib/strutl.cc:
- fix TimeToStr i18n (LP: #289807)
* [ABI break] merge support for http redirects, thanks to
Jeff Licquia and Anthony Towns
* [ABI break] use int for the package IDs (thanks to Steve Cotton)
* apt-pkg/pkgcache.cc:
- do not run "dpkg --configure pkg" if pkg is in trigger-awaited
state (LP: #322955)
* methods/https.cc:
- add Acquire::https::AllowRedirect support
* Clarify the --help for 'purge' (LP: #243948)
* cmdline/apt-get.cc
- fix "apt-get source pkg" if there is a binary package and
a source package of the same name but from different
packages (LP: #330103)
* cmdline/acqprogress.cc:
- Call pkgAcquireStatus::Pulse even if quiet, so that we still get
dlstatus messages on the status-fd (LP: #290234).
Daniel Burrows [Fri, 6 Mar 2009 16:22:53 +0000 (08:22 -0800)]
Fix FindFile (and FindDir) so that the value of RootDir is applied to the default if no value is found.
Previously FindFile("Dir::etc", "/etc") would use RootDir if a value
existed for "Dir::etc"; otherwise it would go ahead and use "/etc",
ignoring RootDir. Of course, this made RootDir fairly useless; it
has now been fixed.