summaryrefslogtreecommitdiff
path: root/apt-pkg/pkgcache.cc
Commit message (Collapse)AuthorAgeFilesLines
* Version 3 for DPkg::Pre-Install-Pkgs with MultiArch infoDavid Kalnischkies2013-07-111-0/+12
| | | | | | | | | | | | | | | | | | | | | Adds on top of Version 2 to all displayed version numbers the architecture as well as the MultiArch flag for consumption by the hooks. Most of the time the architecture will be the same for both versions displayed, but packages might change from "all" to "any" (or back) between versions so we can't display the architecture for packages. Pseudo-Format for Version 3: <name> <version> <arch> <m-a-flag> <compare> <version> <arch> <m-a-flag> Examples: stuff - - none < 1 amd64 none **CONFIGURE** libsame 1 i386 same < 2 i386 same **CONFIGURE** stuff 2 i386 none > 1 i386 none **CONFIGURE** libsame 2 i386 same > - - none **REMOVE** toolkit 1 all foreign > - - none **REMOVE** Closes: #712116
* * apt-pkg/cacheiterators.h:David Kalnischkies2013-04-031-4/+12
| | | - provide DepIterator::IsSatisfied as a nicer shorthand for DepCheck
* - sort group and package names in the hashtable on insertDavid Kalnischkies2013-04-031-11/+20
| | | | * apt-pkg/pkgcache.cc: - assume sorted hashtable entries for groups/packages
* various simple changes to fix cppcheck warningsDavid Kalnischkies2013-03-101-9/+9
|
* * apt-pkg/pkgcache.cc:David Kalnischkies2012-09-191-2/+23
| | | | - ignore negative dependencies applying in the same group for M-A:same packages on the real package name as self-conflicts
* handle packages without a mandatory architecture (debian-policy ยง5.3)David Kalnischkies2012-09-091-1/+5
| | | | | 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)
* * apt-pkg/pkgcache.cc:David Kalnischkies2012-06-141-1/+1
| | | | - do a string comparision for architecture checking in IsMultiArchImplicit as 'unique' strings in the pkgcache aren't unique (Closes: #677454)
* * apt-pkg/deb/deblistparser.cc:Thibaut Girka2012-06-111-1/+4
| | | | - add support for arch-specific qualifiers in dependencies
* * apt-pkg/cacheiterators.h:David Kalnischkies2012-06-111-0/+26
| | | - add an IsMultiArchImplicit() method for Dep- and PrvIterator
* factor out the detection of self-conflicts into Dep::IsIgnorableDavid Kalnischkies2012-01-131-15/+34
|
* * apt-pkg/pkgcache.cc:David Kalnischkies2012-01-131-5/+12
| | | - ignore implicit conflicts on providers in AllTarget, too
* * apt-pkg/pkgcache.cc:David Kalnischkies2011-10-121-3/+14
| | | - always prefer "en" over "" for "en"-language regardless of cache-order
* do not pollute namespace in the headers with using (Closes: #500198)David Kalnischkies2011-09-191-2/+2
|
* merge with debian/sidDavid Kalnischkies2011-09-131-1/+1
|\
| * * apt-pkg/packagemanager.cc, apt-pkg/pkgcache.cc:David Kalnischkies2011-08-171-1/+1
| | | | | | | | | | - ignore "self"-conflicts for all architectures of a package instead of just for the architecture of the package locked at in the ordering of installations too (Closes: #802901)
* | merge with debian/experimentalDavid Kalnischkies2011-09-131-13/+18
|\ \
| * | merged from the debian-sid branchMichael Vogt2011-08-151-13/+13
| |\|
| | * cppcheck complains about some possible speed improvements which could beDavid Kalnischkies2011-08-111-13/+13
| | | | | | | | | | | | | | | | | | done on the mirco-optimazation level, so lets fix them: (performance) Possible inefficient checking for emptiness. (performance) Prefer prefix ++/-- operators for non-primitive types.
| * | * apt-pkg/pkgcache.cc:Julian Andres Klode2011-07-201-0/+3
| | | | | | | | | - Check that cache is at least CacheFileSize bytes large (LP: #16467)
| * | apt-pkg/pkgcache.h: Add pkgCache::Header::CacheFileSize, storing the cache sizeJulian Andres Klode2011-07-201-0/+2
| | |
* | | reorder includes: add <config.h> if needed and include it at firstDavid Kalnischkies2011-09-131-3/+4
|/ /
* / remove deprecated methods which nobody should have used anyway likeDavid Kalnischkies2011-05-171-3/+0
|/ | | | pseudo-package related and/or private
* convert a lot of places to use IsNegative instead of checking by handDavid Kalnischkies2011-05-111-9/+3
| | | | for the three different dependencies
* if critical or-group can't be satisfied, exit directly.David Kalnischkies2011-05-111-0/+11
|
* * apt-pkg/pkgcache.cc:David Kalnischkies2011-04-251-3/+6
| | | - really ignore :arch in FindPkg() in non-multiarch environment
* * apt-pkg/pkgcache.cc:David Kalnischkies2011-04-061-5/+6
| | | | - use the native Architecture stored in the cache header instead of loading it from configuration as suggested by Julian Andres Klode
* document the pkg:any specialcasing in FindPkg as well to make it clearDavid Kalnischkies2011-04-061-0/+3
| | | | that it is a needed "hack" to support multi-arch in the least breaking way
* * apt-pkg/deb/deblistparser.cc:David Kalnischkies2011-03-281-5/+5
| | | - create foo:any provides for all architectures for an allowed package
* * apt-pkg/pkgcachegen.cc:David Kalnischkies2011-03-251-1/+1
| | | | - make "all"->"native" an implementation detail of NewPackage rather than rewrite it in higher methods
* Remove the "pseudopackage" handling of Architecture: all packages forDavid Kalnischkies2011-03-081-16/+2
| | | | | | | | | 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
* * apt-pkg/pkgcache.cc:David Kalnischkies2010-10-261-7/+8
| | | - fallback always to a suitable description (Closes: #601016)
* * apt-pkg/policy.cc:David Kalnischkies2010-09-141-0/+1
| | | | | | - 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
* * apt-pkg/pkgcache.cc:David Kalnischkies2010-08-131-1/+2
| | | - fix LongDesc handling in LANG=C environment
* merge with debian-experimental-maDavid Kalnischkies2010-08-101-1/+4
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Swedish translation update. Closes: #592366 * apt-pkg/pkgcache.cc: - re-evaluate the architectures cache when the cache is (re)opened * apt-pkg/cdrom.cc: - fix off-by-one error in DropBinaryArch * apt-pkg/contrib/fileutl.cc: - Add WriteAtomic mode. - Revert WriteEmpty to old behavior (LP: #613211) * apt-pkg, methods: - Convert users of WriteEmpty to WriteAtomic. * apt-pkg/depcache.cc: - Only try upgrade for Breaks if there is a newer version, otherwise handle it as Conflicts (by removing it) (helps for #591882). * debian/control: - Add dependency on gnupg to apt, apt-key uses it.
| * * apt-pkg/pkgcache.cc:Michael Vogt2010-07-301-1/+4
| | | | | | - re-evaluate the architectures cache when the cache is (re)opened
* | * apt-pkg/algorithms.cc:David Kalnischkies2010-08-101-0/+24
|/ | | | - change the debug outputs to display also arch of the package and version dependencies information
* * apt-pkg/pkgcache.cc:David Kalnischkies2010-07-251-3/+5
| | | - prefer non-virtual packages in FindPreferredPkg
* * apt-pkg/pkgcachegen.{cc,h}:David Kalnischkies2010-07-081-1/+4
| | | | - make the used MMap moveable (and therefore dynamic resizeable) by applying (some) mad pointer magic (Closes: #195018)
* * apt-pkg/policy.h:David Kalnischkies2010-07-041-6/+6
| | | | - add another round of const& madness as the previous round accidently NOT override the virtual GetCandidateVer() method (Closes: #587725)
* * apt-pkg/cacheset.{cc,h}:David Kalnischkies2010-05-311-1/+1
| | | - add simple wrapper around std::set for cache structures
* * apt-pkg/pkgcache.cc:David Kalnischkies2010-05-311-0/+19
| | | - get the best matching arch package from a group with FindPreferredPkg
* * doc/files.sgml:Michael Vogt2010-05-041-0/+3
|\ | | | | | | | | | | | | | | | | - sync documentation with status quo, regarding files/directories in use, extended_states and uri schemes. * doc/cache.sgml: - drop the file in favor of inplace documentation with doxygen * apt-pkg/pkgcache.h: - enhance the Groups ABI by providing a ID as the other structs does - check also the size of the Group struct then checking for the others
| * * apt-pkg/pkgcache.h:David Kalnischkies2010-05-041-0/+3
| | | | | | | | - enhance the Groups ABI by providing a ID as the other structs does - check also the size of the Group struct then checking for the others
* | * apt-pkg/pkgcache.cc:Julian Andres Klode2010-05-041-1/+1
|/ | | | | - Merge fix from David to correct handling in single-arch environments. This makes apt-get showauto working.
* Group packages in the same group together in the package listDavid Kalnischkies2010-03-301-12/+5
| | | | | so it is easier to find them later on as we have no "noice" anymore between them.
* Readd the FindPkg() method implementation used in the singleArch days toDavid Kalnischkies2010-03-181-1/+29
| | | | | use it as a fallback if multiarch is not enabled. The effect is barly noticeable but SingleArch is the realworld scenario.
* move ShowPkg() from apt-get to the PkgIterator and rename it to FullName()David Kalnischkies2010-02-261-0/+12
| | | | | | | responseable for displaying a package name and the architecture in a uniform way. Pretty option can be used to not append the architecture if it is the native architecture or all - and use it all over the place in the commandline tools.
* [BREAK] merge MultiArch-ABI. We don't support MultiArch,David Kalnischkies2010-02-131-46/+171
|\ | | | | | | | | | | | | | | | | 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.
| * In SingleArch environments we don't need the arch "all" pseudo packageDavid Kalnischkies2010-02-121-2/+7
| | | | | | | | | | for handling arch:all packages, so we create only one package and stop calling it a pseudo package.
| * Add yet another pseudo package which isn't as pseudo as the others:David Kalnischkies2010-02-121-0/+12
| | | | | | | | | | | | | | | | | | | | 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.