summaryrefslogtreecommitdiff
path: root/apt-pkg/algorithms.cc
AgeCommit message (Collapse)Author
2013-01-18* Merge from Debian unstable, pulling in new translations and fixes.Adam Conrad
* Add linux-headers to /etc/kernel/postinst.d/apt-auto-removal guard. * Catalan (Jordi Mallach) * Drop a confusing non-breaking space. Closes: #691024 * Thai (Theppitak Karoonboonyanan). Closes: #691613 * Vietnamese (Trần Ngọc Quân). Closes: #693773 * Fix Plural forms in German, French, Japanese and Portuguese translations. Thanks to Jakub Wilk for reporting these errors. * apt-pkg/packagemanager.cc: - do not do lock-step configuration for a M-A:same package if it isn't unpacked yet in SmartConfigure and do not unpack a M-A:same package again in SmartUnPack if we have already configured it (LP: #1062503) * apt-pkg/depcache.cc: - don't call MarkInstall with the FromUser flag set for packages which are dependencies of APT::Never-MarkAuto-Sections matchers - no mode changes should obviously be ok for pkgDepCache::IsModeChangeOk * cmdline/apt-get.cc: - do not call Mark{Install,Delete} from the autoremove code with the FromUser bit set to avoid modifying the auto-installed bit * apt-pkg/algorithms.cc: - ensure pkgProblemResolver calls MarkDelete without FromUser set so that it can't overrule holds and the protection flag * change permissions of /var/log/apt/term.log to 0640 (LP: #975199) * apt-pkg/algorithms.cc: - fix package-pointer array memory leak in ResolveByKeepInternal() * Portuguese (Américo Monteiro) (Closes: #686975) * handle packages without a mandatory architecture (debian-policy §5.3) by introducing a pseudo-architecture 'none' so that the small group of users with these packages can get right of them without introducing too much hassle for other users (Closes: #686346) * merged the latest debian-sid fixes Correct fi translation for hash sum mismatches (lp:420403)
2012-09-09handle packages without a mandatory architecture (debian-policy §5.3)David Kalnischkies
by introducing a pseudo-architecture 'none' so that the small group of users with these packages can get right of them without introducing too much hassle for other users (Closes: #686346)
2012-06-10* apt-pkg/deb/deblistparser.cc:David Kalnischkies
- set pkgCacheGen::Essential to "all" again (Closes: #675449) * apt-pkg/algorithms.cc: - force install only for one essential package out of a group
2012-05-15* apt-pkg/algorithms.cc:Marius Vollmer
- fix memory leak of Flags in pkgSimulate by a proper destructor
2012-05-10* apt-pkg/algorithms.cc:David Kalnischkies
- factor out of ListUpdate a AcquireUpdate to be able to provide your own pkgAcquire fetcher to the wrapper
2012-03-06merge with apt/experimentalDavid Kalnischkies
* apt-pkg/packagemanager.cc: - fix bug in predepends handling - ensure that packages that needs unpackaging are unpacked before they are configured (LP: #927993) [ Julian Andres Klode ] * apt-pkg/deb/deblistparser.cc: - Set the Essential flag on APT instead of only Important * apt-pkg/packagemanager.cc: - Do not use immediate configuration for packages with the Important flag * Treat the Important flag like the Essential flag with those differences: - No Immediate configuration (see above) - Not automatically installed during dist-upgrade - No higher score for installation ordering
2012-03-05* Treat the Important flag like the Essential flag with two differences:Julian Andres Klode
- No Immediate configuration (see above) - Not automatically installed during dist-upgrade
2012-03-04fix a bunch of cppcheck "(warning) Member variable '<#>' is notDavid Kalnischkies
initialized in the constructor." messages (no functional change)
2012-01-29* apt-pkg/algorithms.cc:Colin Watson
- use a signed int instead of short for score calculation as upgrades become so big now that it can overflow (Closes: #657732, LP: #917173)
2012-01-29* apt-pkg/algorithms.cc:Colin Watson
- don't break out of the main-resolver loop for Breaks to deal with all of them in a single iteration (Closes: #657695, LP: #922485)
2011-10-30merge with my debian-sid branchDavid Kalnischkies
2011-10-17* algorithms.cc:David Kalnischkies
- show a debug why a package was kept by ResolveByKeep()
2011-09-20* apt-pkg/deb/dpkgpm.cc:David Kalnischkies
- use std::vector instead of fixed size arrays to store args and multiarch-packagename strings - load the dpkg base arguments only one time and reuse them later * cmdline/apt-get.cc: - follow Provides in the evaluation of saving candidates, too, for statisfying garbage package dependencies (Closes: #640590) * apt-pkg/algorithms.cc: - if a package is garbage, don't try to save it with FixByInstall
2011-09-20* apt-pkg/algorithms.cc:David Kalnischkies
- if a package is garbage, don't try to save it with FixByInstall
2011-09-19fix foldmarker in algorithms.hDavid Kalnischkies
2011-09-19use forward declaration in headers if possible instead of includesDavid Kalnischkies
2011-09-13merge with debian/experimentalDavid Kalnischkies
2011-09-13reorder includes: add <config.h> if needed and include it at firstDavid Kalnischkies
2011-08-15merged from the debian-sid branchMichael Vogt
2011-08-11cppcheck complains about some possible speed improvements which could beDavid Kalnischkies
done on the mirco-optimazation level, so lets fix them: (performance) Possible inefficient checking for emptiness. (performance) Prefer prefix ++/-- operators for non-primitive types.
2011-07-15merged from http://bzr.debian.org/bzr/apt/apt/debian-sidMichael Vogt
2011-07-14make ResolveByKeep() more clever and hold back packages that would go into a ↵Michael Vogt
broken policy state by the upgrade
2011-05-17rename option APT::Solver::Name to simply APT::SolverDavid Kalnischkies
2011-05-17* Implement EDSP in libapt-pkg so that all front-ends whichDavid Kalnischkies
use the internal resolver can now be used also with external ones as the usage is hidden in between the old API * provide two edsp solvers in apt-utils: - 'dump' to quickly output a complete scenario and - 'apt' to use the internal as an external resolver
2011-05-11convert a lot of places to use IsNegative instead of checking by handDavid Kalnischkies
for the three different dependencies
2011-05-09implement proper progress report with OpProgressDavid Kalnischkies
2011-05-03implement external solver calling for upgrade and dist-upgrade, tooDavid Kalnischkies
2011-05-02doesn't execute autoremove marker setting if an external solver is calledDavid Kalnischkies
and instead rely on the Autoremove tagging to show us what could be done. (apt-internal-solver doesn't support this currently as it doesn't load the auto-information into the cache)
2011-05-02refactor: move solver execution into his own EDSP methodDavid Kalnischkies
2011-05-02handle Dir::Bin::Solvers as a list of directories and find theDavid Kalnischkies
solver in this list of directories
2011-04-16cppcheck: (style) Variable 'State' is assigned a value that is never usedDavid Kalnischkies
2011-04-02send the scenario through a pipe to the solver and get the solution backDavid Kalnischkies
The solution is NOT interpreted so far.
2011-04-01Read and apply install/remove requests correctlyDavid Kalnischkies
2011-03-31rename edspwriter to straight edsp in toplevel as it does more thanDavid Kalnischkies
just writing stuff… it also reads and can work for both: - APT talking to an external solver - an external solver (understanding EDSP) talking to APT
2011-03-31rename the 'universe' to 'scenario' to reflect the naming in the draftDavid Kalnischkies
2011-03-30be able to write solutions, tooDavid Kalnischkies
2011-03-30add a first round of stuff needed for talking between APT and solversDavid Kalnischkies
based on a very early draft for EDSP by Stefano APT can now write a scenario as well as load most stuff from it.
2011-03-08Remove the "pseudopackage" handling of Architecture: all packages forDavid Kalnischkies
Multi-Arch; instead, Arch: all packages only satisfy dependencies for the native arch, except where the Arch: all package is declared Multi-Arch: foreign. (Closes: #613584) This has the sideeffect that arch:all packages internally show up as coming from the native arch - so packages with the architecture "all" doesn't exist any longer in the pkgcache
2011-02-10merged from lp:~mvo/apt/mvoMichael Vogt
2011-02-10* merged lp:~evfool/apt/fix641673:Michael Vogt
* merged lp:~evfool/apt/fix418552: - Grammar fix for bug LP: #418552, thanks to Robert Roth
2011-02-07* apt-pkg/algorithms.cc:David Kalnischkies
- mark pseudo packages of installed all packages as configured in the simulation as we don't call configure for these packages
2010-11-29* apt-pkg/algorithms.cc:David Kalnischkies
- mark all installed packages first without auto installation in a dist-upgrade to prefer upgrading packages instead of installing new packages in versioned or-groups (Closes: #605394)
2010-11-10* apt-pkg/algorithms.cc:David Kalnischkies
- if the package was explicitly marked as ToRemove don't consider it as a candidate for FixByInstall
2010-09-15merged lp:~mvo/apt/conflicts-on-virtuals to better deal withMichael Vogt
conflicts/breaks against virtual packages (LP: #614993)
2010-09-03remove duplicated test, move test for conflicts higher up, better debug outputMichael Vogt
2010-08-31apt-pkg/algorithms.cc: show debug output only if debug option is givenMichael Vogt
2010-08-31apt-pkg/algorithms.cc: if a package was added to the kill list via a ↵Michael Vogt
DpkgBreaks, make sure to break in the loop (just like for a conflict)
2010-08-31apt-pkg/algorithms.cc: in the case of conflicts/breaks against a Provide ↵Michael Vogt
Start.AllTarget() returns all non-canidates as well, we want to filter them out
2010-08-14do not unconditional print the new debugoutput for "FixByInstall"David Kalnischkies
2010-08-13* apt-pkg/algorithms.cc:David Kalnischkies
- let the problem resolver install packages to fix or-groups as a needed remove nuked another or-member (helps for #591882) The resolver sometimes need to break or-groups because he need to remove the previous satisfier as a result of a breaks/conflicts. In such broken or-groups he now tries to install a non-installed non-deleted member of the or-group to statisfy it again. This move is dangerous as it introduces the possibility of a bunch of "new" broken breaks/conflicts on the new statisfier or its dependencies and we don't know about them beforehand. We also don't have the infrastructure to undo the decision later, so we just do it and pray! For now a test option is provided to disable this behavior on the fly to test if the situation is worse: pkgProblemResolver::FixByInstall