summaryrefslogtreecommitdiff
path: root/apt-pkg/algorithms.cc
Commit message (Collapse)AuthorAgeFilesLines
* * apt-pkg/algorithms.cc:Marius Vollmer2012-05-151-0/+6
| | | | - fix memory leak of Flags in pkgSimulate by a proper destructor
* * apt-pkg/algorithms.cc:David Kalnischkies2012-05-101-11/+26
| | | | - factor out of ListUpdate a AcquireUpdate to be able to provide your own pkgAcquire fetcher to the wrapper
* merge with apt/experimentalDavid Kalnischkies2012-03-061-2/+11
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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
| * * Treat the Important flag like the Essential flag with two differences:Julian Andres Klode2012-03-051-2/+11
| | | | | | | | - No Immediate configuration (see above) - Not automatically installed during dist-upgrade
* | fix a bunch of cppcheck "(warning) Member variable '<#>' is notDavid Kalnischkies2012-03-041-1/+1
|/ | | | initialized in the constructor." messages (no functional change)
* * apt-pkg/algorithms.cc:Colin Watson2012-01-291-15/+15
| | | | | - use a signed int instead of short for score calculation as upgrades become so big now that it can overflow (Closes: #657732, LP: #917173)
* * apt-pkg/algorithms.cc:Colin Watson2012-01-291-2/+1
| | | | | - 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)
* merge with my debian-sid branchDavid Kalnischkies2011-10-301-2/+9
|\
| * * algorithms.cc:David Kalnischkies2011-10-171-2/+9
| | | | | | - show a debug why a package was kept by ResolveByKeep()
| * * apt-pkg/deb/dpkgpm.cc:David Kalnischkies2011-09-201-1/+1
| | | | | | | | | | | | | | | | | | | | | | - 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
* | * apt-pkg/algorithms.cc:David Kalnischkies2011-09-201-1/+1
| | | | | | - if a package is garbage, don't try to save it with FixByInstall
* | fix foldmarker in algorithms.hDavid Kalnischkies2011-09-191-3/+2
| |
* | use forward declaration in headers if possible instead of includesDavid Kalnischkies2011-09-191-0/+3
| |
* | merge with debian/experimentalDavid Kalnischkies2011-09-131-31/+31
|\ \
| * | merged from the debian-sid branchMichael Vogt2011-08-151-31/+31
| |\|
| | * cppcheck complains about some possible speed improvements which could beDavid Kalnischkies2011-08-111-31/+31
| | | | | | | | | | | | | | | | | | done on the mirco-optimazation level, so lets fix them: (performance) Possible inefficient checking for emptiness. (performance) Prefer prefix ++/-- operators for non-primitive types.
* | | reorder includes: add <config.h> if needed and include it at firstDavid Kalnischkies2011-09-131-2/+4
|/ /
* | merged from http://bzr.debian.org/bzr/apt/apt/debian-sidMichael Vogt2011-07-151-6/+34
|\|
| * make ResolveByKeep() more clever and hold back packages that would go into a ↵Michael Vogt2011-07-141-6/+34
| | | | | | | | broken policy state by the upgrade
* | rename option APT::Solver::Name to simply APT::SolverDavid Kalnischkies2011-05-171-4/+4
| |
* | * Implement EDSP in libapt-pkg so that all front-ends whichDavid Kalnischkies2011-05-171-6/+49
|\ \ | |/ |/| | | | | | | | | 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
| * implement proper progress report with OpProgressDavid Kalnischkies2011-05-091-8/+16
| |
| * implement external solver calling for upgrade and dist-upgrade, tooDavid Kalnischkies2011-05-031-18/+22
| |
| * doesn't execute autoremove marker setting if an external solver is calledDavid Kalnischkies2011-05-021-0/+2
| | | | | | | | | | | | | | 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)
| * refactor: move solver execution into his own EDSP methodDavid Kalnischkies2011-05-021-37/+5
| |
| * handle Dir::Bin::Solvers as a list of directories and find theDavid Kalnischkies2011-05-021-4/+12
| | | | | | | | solver in this list of directories
| * send the scenario through a pipe to the solver and get the solution backDavid Kalnischkies2011-04-021-7/+35
| | | | | | | | The solution is NOT interpreted so far.
| * Read and apply install/remove requests correctlyDavid Kalnischkies2011-04-011-3/+1
| |
| * rename edspwriter to straight edsp in toplevel as it does more thanDavid Kalnischkies2011-03-311-4/+4
| | | | | | | | | | | | 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
| * rename the 'universe' to 'scenario' to reflect the naming in the draftDavid Kalnischkies2011-03-311-2/+2
| |
| * be able to write solutions, tooDavid Kalnischkies2011-03-301-0/+6
| |
| * add a first round of stuff needed for talking between APT and solversDavid Kalnischkies2011-03-301-6/+27
| | | | | | | | | | | | based on a very early draft for EDSP by Stefano APT can now write a scenario as well as load most stuff from it.
* | convert a lot of places to use IsNegative instead of checking by handDavid Kalnischkies2011-05-111-23/+8
| | | | | | | | for the three different dependencies
* | cppcheck: (style) Variable 'State' is assigned a value that is never usedDavid Kalnischkies2011-04-161-3/+1
|/
* Remove the "pseudopackage" handling of Architecture: all packages forDavid Kalnischkies2011-03-081-64/+0
| | | | | | | | | 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
* merged from lp:~mvo/apt/mvoMichael Vogt2011-02-101-2/+2
|\
| * * merged lp:~evfool/apt/fix641673:Michael Vogt2011-02-101-2/+2
| | | | | | | | * merged lp:~evfool/apt/fix418552: - Grammar fix for bug LP: #418552, thanks to Robert Roth
* | * apt-pkg/algorithms.cc:David Kalnischkies2011-02-071-1/+22
|/ | | | - mark pseudo packages of installed all packages as configured in the simulation as we don't call configure for these packages
* * apt-pkg/algorithms.cc:David Kalnischkies2010-11-291-0/+7
| | | | | - 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)
* * apt-pkg/algorithms.cc:David Kalnischkies2010-11-101-0/+1
| | | | - if the package was explicitly marked as ToRemove don't consider it as a candidate for FixByInstall
* merged lp:~mvo/apt/conflicts-on-virtuals to better deal withMichael Vogt2010-09-151-10/+19
|\ | | | | conflicts/breaks against virtual packages (LP: #614993)
| * remove duplicated test, move test for conflicts higher up, better debug outputMichael Vogt2010-09-031-24/+15
| |
| * apt-pkg/algorithms.cc: show debug output only if debug option is givenMichael Vogt2010-08-311-3/+4
| |
| * apt-pkg/algorithms.cc: if a package was added to the kill list via a ↵Michael Vogt2010-08-311-1/+2
| | | | | | | | DpkgBreaks, make sure to break in the loop (just like for a conflict)
| * apt-pkg/algorithms.cc: in the case of conflicts/breaks against a Provide ↵Michael Vogt2010-08-311-0/+17
|/ | | | Start.AllTarget() returns all non-canidates as well, we want to filter them out
* do not unconditional print the new debugoutput for "FixByInstall"David Kalnischkies2010-08-141-1/+2
|
* * apt-pkg/algorithms.cc:David Kalnischkies2010-08-131-11/+29
| | | | | | | | | | | | | | | | | - 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
* * apt-pkg/algorithms.cc:David Kalnischkies2010-08-101-37/+37
| | | | - change the debug outputs to display also arch of the package and version dependencies information
* * merge the remaining Ubuntu change:Michael Vogt2010-06-091-2/+1
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - on gpg verification failure warn and restore the last known good state - on failure display the IP of the server (useful for servers that use round robin DNS) - support Original-Maintainer in RewritePackageOrder - enable cdrom autodetection via libudev by default - show messsage about Vcs in use when apt-get source is run for packages maintained in a Vcs - better support transitional packages with mark auto-installed. when the transitional package is in "oldlibs" the new package is not marked auto installed (same is true for section metapackages) - provide new "deb mirror://archive.foo/mirrors.list sid main" method expects a list of mirrors (generated on the server e.g. via geoip) and will use that, including cycle on failure - write apport crash file on package failure (disabled by default on debian until apport is available) - support mirror failure reporting (disabled by default on debian)
| * merged from debianMichael Vogt2009-07-301-37/+77
| |\