summaryrefslogtreecommitdiff
path: root/apt-pkg/depcache.cc
AgeCommit message (Collapse)Author
2011-05-12move the broken dependency detection above the new recommends detectionDavid Kalnischkies
as if the recommends can't be installed there is not much sense in checking if it a new recommends or not
2011-05-11convert a lot of places to use IsNegative instead of checking by handDavid Kalnischkies
for the three different dependencies
2011-05-11if critical or-group can't be satisfied, exit directly.David Kalnischkies
2011-04-20merge with debian-sid branch and 0.8.14.1 releaseDavid Kalnischkies
* apt-pkg/depcache.cc: - Really release action groups only once (Closes: #622744) * apt-pkg/acquire-item.cc: - Only try to rename existing Release files (Closes: #622912)
2011-04-18apt-pkg/depcache.cc: Really release action groups only once (Closes: #622744)Julian Andres Klode
2011-04-16* apt-pkg/depcache.cc:David Kalnischkies
- really include 'rc' packages in the delete count by fixing a typo which exists since 1999 in the source… (LP: #761175)
2011-03-26do not change protected packages in autoinstall (Closes: #618848)David Kalnischkies
2011-03-25* apt-pkg/depcache.cc:David Kalnischkies
- remove pseudo handling leftover from SetReInstall
2011-03-20reorganize the marker methods a bit by moving the common part to aDavid Kalnischkies
seperate IsModeChangeOk which checks sanity and dpkg holds
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-17* apt-pkg/depcache.cc:David Kalnischkies
- party revert fix in 0.8.11.2 which marked all packages as manual installed if the FromUser bit is set in the MarkInstall call. The default for this bit is true and aptitude depends on the old behavior so the package is only marked as manual if its not marked ("old" behavior) or if automatic installation is enabled - which aptitude disables always (see also #613775)
2011-02-11* apt-pkg/depcache.cc:David Kalnischkies
- mark a package which was requested to be installed on commandline always as manual regardless if it is already marked or not as the marker could be lost later by the removal of rdepends (Closes: #612557)
2011-02-07allow conflicts in the same group again (Closes: #612099)David Kalnischkies
2011-01-12remove two unused variables gcc-4.6 reports from depcache.ccDavid Kalnischkies
2011-01-12* apt-pkg/contrib/fileutl.cc:David Kalnischkies
- add a RealFileExists method and check that your configuration files are real files to avoid endless loops if not (Closes: #604401)
2010-12-05check in the DepCache::SetCandidateVersion that the package is marked toDavid Kalnischkies
be installed before setting the InstallVer as otherwise the Sizes states will be confused in some cases - this can happen now as SetCandidateRelease works also on packages which are not installed now (or will never in the final solution)
2010-12-03* apt-pkg/depcache.cc:David Kalnischkies
- add SetCandidateRelease() to set a candidate version and the candidates of dependencies if needed to a specified release (Closes: #572709) - change pkg/release behavior to use the new SetCandidateRelease so installing packages from experimental or backports is easier
2010-11-30apply a very simple speed-up in case we try to set the candidate versionDavid Kalnischkies
of a package to the version which is already the candidate (apt-get does that for all packages it installs for simplicity)
2010-11-10* apt-pkg/depcache.cc:David Kalnischkies
- don't install previously not installed providers in a try to statisfy a "Breaks: provides" dependency by upgrade
2010-10-02* apt-pkg/depcache.cc:David Kalnischkies
- do not remove packages which the user requested for installation explicitly while satisfying other install requests (Closes: #598669)
2010-09-14* apt-pkg/policy.cc:David Kalnischkies
- support 100-pinning in Release file with ButAutomaticUpgrades as requested by the backports crew (Closes: #596097) * apt-pkg/deb/deblistparser.cc: - overrule NotAutomatic in case of ButAutomaticUpgrades
2010-08-27* apt-pkg/depcache.cc:David Kalnischkies
- now that apt-get purge works on 'rc' packages let the MarkDelete pass this purge forward to the non-pseudo package for pseudos
2010-08-10apt-pkg, methods: Convert users of WriteEmpty to WriteAtomic.Julian Andres Klode
2010-08-06* apt-pkg/depcache.cc:Julian Andres Klode
- Only try upgrade for Breaks if there is a newer version, otherwise handle it as Conflicts (by removing it) (helps for #591881).
2010-07-14* apt-pkg/depcache.cc:David Kalnischkies
- handle "circular" conflicts for "all" packages correctly
2010-07-04* apt-pkg/policy.h:David Kalnischkies
- add another round of const& madness as the previous round accidently NOT override the virtual GetCandidateVer() method (Closes: #587725)
2010-06-26always mark the all package if a pseudo package is marked for installDavid Kalnischkies
2010-06-26 - use the new MatchAgainstConfig for the DefaultRootSetFuncDavid Kalnischkies
* apt-pkg/contrib/configuration.{cc,h}: - add a wrapper to match strings against configurable regex patterns
2010-06-16* apt-pkg/depcache.cc:David Kalnischkies
- SetCandidateVer for all pseudo packages - SetReInstall for the "all" package of a pseudo package
2010-06-09* apt-pkg/pkgcache.h:David Kalnischkies
- switch {,Install-}Size to unsigned long long - deal with long long, not with int to remove 2GB Limit (LP: #250909) - deprecate AddSize with Multiplier as it is unused and switch to boolean instead to handle the sizes more gracefully. - switch i{Download,Usr}Size from double to (un)signed long long * cmdline/apt-get.cc: - use unsigned long long instead of double to store values it gets
2010-06-03deprecate AddSize with Multiplier as it is unused and switch toDavid Kalnischkies
boolean instead to handle the sizes more gracefully.
2010-06-03* apt-pkg/pkgcache.h:David Kalnischkies
- switch {,Install-}Size to unsigned long long * apt-pkg/depcache.cc: - deal with long long, not with int to remove 2GB Limit (LP: #250909)
2010-05-29* apt-pkg/depcache.cc:David Kalnischkies
- correct "Dangerous iterator usage." pointed out by cppcheck
2010-05-28try harder to find the other pseudo versions for autoremove multiarchDavid Kalnischkies
2010-05-28* apt-pkg/depcache.cc:David Kalnischkies
- do the autoremove mark process also for required packages to handle these illegally depending on lower priority packages (Closes: #583517)
2010-05-28* apt-pkg/deb/debsystem.cc:David Kalnischkies
- add better config item for extended_states file
2010-05-11* apt-pkg/depcache.cc:David Kalnischkies
- be doublesure that the killer query is empty before starting reinstall
2010-05-04merge from the debian-sid branchDavid Kalnischkies
2010-05-04merge from the mvo branchMichael Vogt
2010-05-03replace »« with '' in the internal error msg to have ascii chars for gettextDavid Kalnischkies
2010-04-28rewrite the pseudo package reinstaller to be more intelligentDavid Kalnischkies
in his package choices The previous implementation tried to install the package for arch A and if this fails B, C and so on. This results in wrong architecture choices for packages which depend on other pseudo packages, so he will now try to install the dependencies first before trying the package itself and only if this fails he tries the next architecture.
2010-04-28* apt-pkg/depcache.cc:Michael Vogt
- fix incorrect std::cout usage for debug output
2010-04-03* apt-pkg/depcache.cc:David Kalnischkies
- "reinstall" the correct version for a killed pseudo package
2010-03-18merge MultiArch-ABI. We don't support MultiArch yet (as most other tools),David Kalnischkies
but we support the usage of the new ABI so libapt users can start to prepare for MultiArch (Closes: #536029)
2010-03-14* apt-pkg/depcache.cc:David Kalnischkies
- remove Auto-Installed information from extended_states together with the package itself (Closes: #572364)
2010-03-14Ensure that for each all package at least one pseudopackage is installedDavid Kalnischkies
Removing pseudo packages is cool so far, the problem is that we will remove with the not required removing so many pseudo packages that we will have after the remove a few packages with NO installed pseudo package (e.g. metapackages are good candidates) - so we will walk over all these packages and try to find a pseudopackage for this package we can install without breaking something.
2010-03-01We need to kill also pseudo packages which have no dependency, noDavid Kalnischkies
installed reverse dependency and which also doesn't provide something. They cause problems if this pseudo packages get new dependencies. As a consequence we also need to recheck the dependencies of a killed pseudo package (and especially the providers of these dependencies) to really kill all non required packages.
2010-02-27Enable the AutoRemover to talk "Multi-Arch" by marking all pseudoDavid Kalnischkies
packages in a group if one is marked. The auto-installed flag is from now on Architecture bound: A section without an architecture tag will be treated as applying to all architectures - the next write operation will take care of this by creating separate sections for the architectures.
2010-02-13[BREAK] merge MultiArch-ABI. We don't support MultiArch,David Kalnischkies
but we support the usage of the new ABI so libapt users can start to prepare for MultiArch (Closes: #536029) MultiArch isn't ready for Primetime usage for now, but the branch has managed to be a NOP if used in SingleArch-mode so we can start to promote the use of the new MultiArchable API-extensions.
2010-02-12Add yet another pseudo package which isn't as pseudo as the others:David Kalnischkies
Arch all packages are now represented by arch depending packages which all depend on a package with the same name and the special arch "all". This packages has NO dependencies, but beside this the same information. It is the only package which has a size, the arch depending ones all have a zero size. While the arch depending pseudo packages are used for dependency resolution the arch "all" package is used for downloading and ordering of the package.