summaryrefslogtreecommitdiff
path: root/apt-pkg/pkgcache.cc
Commit message (Collapse)AuthorAgeFilesLines
* 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.
| * Add Multi-Arch: allowed support by creating an implicit provide ofDavid Kalnischkies2010-02-111-1/+4
| | | | | | | | | | name:any for such packages, so dependencies in this style can be easily resolved.
| * Drop the Arch information from the Version structure as we can getDavid Kalnischkies2010-02-071-2/+2
| | | | | | | | the information from the parent package now
| * Split ListParser::NewDepends into two methods to use these new methodDavid Kalnischkies2009-12-271-0/+27
| | | | | | | | | | | | | | | | | | for creating the dependencies needed for our groups: For now for all groups only one package can be installed at the same time which conflicts with each other packages in the group. The exceptions are architecture all package. Also, the Multi-Arch field is now parsed, but not used for now.
| * merge Goswin Brederlow "support download of index files for different archs"David Kalnischkies2009-12-231-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | patch which includes the following big changes: - Declare the unused [vendor] field in sources.list as option field, e.g. deb [arch=amd64,i386 lang=en_GB have=fun] http://example.org - When fetching index files download them for all APT::Architectures (overrideable with the options field above) - Allow all architectures of APT::Architectures to be in the Cache - Add the architecture to status and progress informations - Add b= (Binary architecture) to policy This commit doesn't incude the "pin-hack" as the Group structure will take care of this (and does it already to some extend).
| * Implement the first step toward Multi-Arch by setting up a GroupDavid Kalnischkies2009-12-191-16/+96
| | | | | | | | | | | | | | | | | | | | | | | | infrastructor for packages. APT is now aware of the fact that a package A in architecture X can't satisfy a dependency on package A in architecture Y - to handle these packages are now identified by name and architecture, so different architectures of the same package are handled internally as completly different packages. This is great for pinning, dependency checking and in many other situations, but sometimes we need to know which archs are available for a given package: Here Groups come to our rescue!
| * Refactor the cache iterators by using a common base classDavid Kalnischkies2009-12-091-31/+25
| | | | | | | | | | This should not change the public interface, but it removes the friend connection between the iterators and pkgcache as it is unused.
* | * apt-pkg/contrib/macros.h:David Kalnischkies2010-01-301-1/+1
| | | | | | | | | | - move the header system.h with a new name to the public domain, to be able to use it in other headers (Closes: #567662)
* | Fix the following gcc-4.5 buildfailure in pkgcache.cc by following the ↵David Kalnischkies2010-01-021-1/+1
|/ | | | | | | | suggestion: pkgcache.cc: In member function ‘const char* pkgCache::PkgIterator::CandVersion() const’: pkgcache.cc:301:51: error: cannot call constructor ‘pkgPolicy::pkgPolicy’ directly pkgcache.cc:301:51: note: for a function-style cast, remove the redundant ‘::pkgPolicy’
* [BREAK] add possibility to download and use multiplyDavid Kalnischkies2009-11-261-9/+17
| | | | | | | Translation files, configurable with Acquire::Languages accessable with APT::Configuration::getLanguages() and as always with documentation in apt.conf. The commit also includes a very very simple testapp.