summaryrefslogtreecommitdiff
path: root/apt-pkg
AgeCommit message (Collapse)Author
2011-08-15Fixed a bug where SmartUnPack would be called with Immediate=true (to ↵Christopher Baines
resolve dependancies in SmartConfigure) yet Pkg would not be immediately configured. This was because SmartUnPack still required the immediate flag to be set on Pkg. Also inproved the debuging adding indented output for SmartUnPack and SmartConfigure and specifying in the output if SmartConfigure or SmartUnPack was called just to Correct something (PkgLoop = true) or not.
2011-08-14Applied DonKult (David)'s excellent fix for inproving the loop management. ↵Christopher Baines
Now both SmartConfigure and SmartUnPack can be called mutiple times on the same package, this is to make sure that when loops are broken all packages that are required are kept in the same dpkg run.
2011-08-13Fix a bug introduced in Rev.2159 on line 398, also fix another potential bug.Christopher Baines
2011-08-12Added code to allow SmartConfigure to be called mutiple times on the same ↵Christopher Baines
package to ensure all dependancies are satisfied.
2011-08-12Inproved debug with versioningChristopher Baines
2011-08-12Small fix for loop handeling.Christopher Baines
2011-08-11Added a RmFlag function to remvoe the loop flag, this should prevent any ↵Christopher Baines
errors or wierd behaviour because of the loop flag being used at mutiple stages in both SmartUnpack and SmartConfigure.
2011-08-09More inproved comments about loops.Christopher Baines
2011-08-07Improved errors and messages in general and improved the comments.Christopher Baines
Removed quite a bit of code I used while learning about how apt handles things. Added some extra checks and warnings relevent for Immediate Configuration. Removed a wierd section I put in to prevent a segfault at 724+, this appears no longer to be needed.
2011-08-07Fixed a bug on line 623, I picked this up after seeing SmartUnpack trying to ↵Christopher Baines
remove packages once they were confiured to solve Conflicts with the previous version! Luckily EarlyRemove is sane, and properly checks, so I think this was just cosmetic. Also fixed a bug on line 374 with SmartUnpack not checking if a dependancy has been removed, this bug was definately harmful.
2011-08-02Inproved the SIGINT stop in the dpkgpm, not perfect yet but it should work ↵Christopher Baines
when using Immediate-Configure-All.
2011-08-01Only stop on SigInt if the system state is right (still needs more testing).Christopher Baines
More inprovements to the package manager to prevent packages from being configured twice.
2011-07-31Only allow interupts when using, Immediate-Configure-All.Christopher Baines
TODO for dpkgpm: Useful messages about the interupt, what was done to what packages and what was not done to what packages. Only fail when the system is in a clean state, at the moment it will fail either a configure or install run.
2011-07-27SmartConfigure and SmartUnPack have got smarter! The full descriptions of ↵Christopher Baines
what they now do is in the apt-pkg/packagemanager.cc file. The short version is that they will both put the system in a state where there operation can be achived, this involves calling themselves and each other recursively. Because SmartConfigure can now configure a package and all its dependancies itself, there is no current need for DepAdd (at least in packagemanager.cc), SmartConfigure also performs the function of the short lived VerifyConfigure as it checks through all the dependancies before performing configuration. Another change is to use the ConfigureAll method in OrderInstall to clean up any packages left unconfigured during ImmConfigureAll. This is necessary to inprove the safety of ImmConfiguration and because of the new SIGINT functionality of dpkgpm.cc relies on no packages being left unconfigured between pairs of dpkg calls. While writing this commit log, I have realised that the SIGINT stuff is a prototype and not ready to be used yet as I have only tested it twice.
2011-07-16Dont try to configure packages using SmartConfigure when not performing ↵Christopher Baines
immediate configuration.
2011-07-14Inproved errors and warnings, will now warn if package configuration fails, ↵Christopher Baines
but only error if the package is not configured at the end.
2011-07-14More changes to make imediate configuration work for all packages, Christopher Baines
I have stolen the Loop flag from orderlist.cc as it didnt seem to use it anymore.
2011-07-13More changes to the SmartUnpack method to allow imediate configuration of ↵Christopher Baines
all packages.
2011-07-06Added a APT::Immediate-Configure-All option to enable imediate configuration ↵Christopher Baines
for all packages. Began adding to the SmartUnpack method to prevent dependancy loops breaking apt.
2011-07-05Flag the package in the SmartUnPack method as UnPacked while solving ↵Christopher Baines
breakages to prevent loops.
2011-07-05Fix for reinstallation of packagesChristopher Baines
2011-07-05[ David Kalnischkies ]Christopher Baines
* doc/makefile: - create doxygen directory to avoid depending on magic (Closes: #628799) * cmdline/apt-key: - explicitly state that net-update is not supported if no url is set - require to be root for add, rm, update and net-update - clarify update vs. net-update in different distros (Closes: #632043) * debian/apt.symbols: - forgot 'mips' in the list for all architecture dependent symbols - comment out gcc-4.5 specific symbols as gcc-4.6 is now default - the symbol for PrintStatus() is architecture dependent * apt-pkg/policy.cc: - do not segfault in pinning if a package with this name doesn't exist. Thanks to Ferdinand Thommes for the report! - Defaults is a vector of Pin not of PkgPin - ensure that only the first specific stanza for a package is used - save all stanzas which had no effect in Unmatched - allow package:architecure in Package: - remove invalid pkgcache.bin and rebuild it if possible - log reinstall commands in history.log * apt-pkg/init.cc: - don't set deprecated APT::Acquire::Translation, thanks Jörg Sommer! * cmdline/apt-config.cc: - show Acquire::Languages and APT::Architectures settings in 'dump' (Closes: 626739) * apt-pkg/orderlist.cc: - ensure that an old version of a package with a provides can never satisfy a dependency of a newer version of this package [ Michael Vogt ] * methods/mirror.cc: - ignore lines starting with "#" in the mirror file - ignore non http urls in the mirrors - append the dist (e.g. sid, wheezy) as a query string when asking for a suitable mirror * apt-pkg/deb/deblistparser.cc: - include all known languages when building the apt cache (LP: #794907) * apt-pkg/deb/debindexfile.cc: - remove some no longer valid checks for "TranslationsAvailable()" [ Kenneth Solbø Andersen ] * apt-pkg/deb/dpkgpm.cc: - set permissions of term.log to root.adm and 644 (LP: #404724) [ Chris Leick ] * various typo and syntax corrections in doc/*.xml [Chris Baines] * Began to fix DepAdd for imediate configuration of all packages
2011-07-05Changed check in the SmartUnpack method, reverted change in the DepAdd method.Christopher Baines
2011-07-05Removed some debug stuff, corrected the VerifyConfigure calls to ↵Christopher Baines
VerifyAndConfigure
2011-07-04Added temp debug statement.Christopher Baines
2011-07-03Added debug output to package manager.Christopher Baines
2011-07-02The modification to orderlist.cc is from a patch DonKult (David) gave me, ↵Christopher Baines
The modifications to the packagemanager should fix the test-provides-gone-with-upgrade testcase.
2011-06-30* doc/makefile:Michael Vogt
- create doxygen directory to avoid depending on magic (Closes: #628799) * cmdline/apt-key: - explicitly state that net-update is not supported if no url is set - require to be root for add, rm, update and net-update - clarify update vs. net-update in different distros (Closes: #632043) * debian/apt.symbols: - forgot 'mips' in the list for all architecture dependent symbols - comment out gcc-4.5 specific symbols as gcc-4.6 is now default - the symbol for PrintStatus() is architecture dependent * apt-pkg/policy.cc: - do not segfault in pinning if a package with this name doesn't exist. Thanks to Ferdinand Thommes for the report! - Defaults is a vector of Pin not of PkgPin - ensure that only the first specific stanza for a package is used - save all stanzas which had no effect in Unmatched - allow package:architecure in Package:
2011-06-28merged from lp:~mvo/apt/mvoMichael Vogt
2011-06-28merged from donkultMichael Vogt
2011-06-28cherry pick from donkultMichael Vogt
2011-06-27Removed temp debug lines.Christopher Baines
2011-06-27Fixed missing argument in VerifyConfigure call.Christopher Baines
2011-06-27Initial commit from my GSoC project. Added a verification function ↵Christopher Baines
(VerifyConfigure) to the configuration methods.
2011-06-27* apt-pkg/deb/dpkgpm.cc:Michael Vogt
- set permissions of term.log to root.adm and 644 (LP: #404724)
2011-06-09apt-pkg/deb/debindexfile.cc: kill off another TranslationsAvailable() usage ↵Michael Vogt
that is not needed
2011-06-09apt-pkg/deb/debindexfile.cc: remove tests for TranslationsAvailable() as ↵Michael Vogt
this will break adding translations to the cache if the current environment does not include the language (e.g. LANG=C but german translations). testing for existance of the file is the better approach
2011-06-09* apt-pkg/deb/deblistparser.cc:Michael Vogt
- include all known languages when building the apt cache (LP: #794907)
2011-05-31apt-pkg/acquire-item.cc: only test packages file for correctness if its not ↵Michael Vogt
empty (its ok to have empty packages files)
2011-05-30Reject files known to be invalid (LP: #346386) (Closes: #627642)Julian Andres Klode
2011-05-30apt-pkg/acquire-item.cc: Reject files known to be invalid (LP: #346386) ↵Julian Andres Klode
(Closes: #195301) This commit deals with the following cases: - First section of index file (Packages,Sources,Translation) without Package field - Signed release files without GPG data (NODATA) - i18n/Index files without hash sums Handling unsigned Release files is more complicated, and the example code using indexRecords is disabled as it can reject correct Release files without hashes. How we can reliably check unsigned Release files is another question, and not urgent anyway, as it should have no dramatic effect (we could check that it is a valid RFC-822 section, but that's a bit too long to write)
2011-05-28* apt-pkg/init.cc:Jörg Sommer
- don't set deprecated APT::Acquire::Translation, thanks Jörg Sommer!
2011-05-28use the correct option name in comment for Acquire::LanguagesJörg Sommer
2011-05-23log reinstall commands in history.logDavid Kalnischkies
2011-05-19remove invalid pkgcache.bin and rebuild it if possibleDavid Kalnischkies
The next invocation of APT tried to load an outdated big (and possible io-cold) file just to end up rebuilding it (possibly only as non-root in memory again and again), so we remove it here and if we have a srcpkgcache we are going to rebuild, too.
2011-05-17rename I to J to avoid redefining a variable (clang warning)David Kalnischkies
2011-05-16* apt-pkg/packagemanager.cc:David Kalnischkies
- ensure for Multi-Arch:same packages that they are unpacked in lock step even in immediate configuration (Closes: #618288)
2011-05-13MAP_ANON is deprecated in favor of MAP_ANONYMOUS, but telesphoreo needsDavid Kalnischkies
to ships a patch for this so pretend to be nice and make it work (TM)
2011-05-13* apt-pkg/contrib/netrc.cc:David Kalnischkies
- replace non-posix gnu-extension strdupa with strdup
2011-05-13rewrite new and previously satisfied important dependency detection inDavid Kalnischkies
MarkInstall to be a bit more easy to read and possibily a bit faster - and add a small testcase for these situations to ensure the same behaviour