summaryrefslogtreecommitdiff
path: root/apt-pkg/pkgcachegen.cc
AgeCommit message (Collapse)AuthorFilesLines
2013-06-20handle missing "Description" in apt-cache showDavid Kalnischkies1-1/+3
do not blindly assume that all packages stanzas have a "Description:" field in 'apt-cache show' as well as in the cache creation itself. We instead assume now that if the stanza has a Description, it will not be the first field as we look out for "\nDescription" to take care of MD5sum as well as (maybe ignored) translated Descriptions embedded in the package stanza. Closes: #712435
2013-04-03share version strings between same versions (of different architectures)David Kalnischkies1-6/+31
to save some space and allow quick comparisions later on
2013-04-03 - sort group and package names in the hashtable on insertDavid Kalnischkies1-5/+11
* apt-pkg/pkgcache.cc: - assume sorted hashtable entries for groups/packages
2013-04-01equal comparisions are used mostly in same-source relations,David Kalnischkies1-6/+14
so use this to try to reuse some version strings
2013-03-13factor version string creation out of NewDepends, so we can easily reuseDavid Kalnischkies1-26/+31
version strings e.g. for implicit multi-arch dependencies
2013-03-12handle language tags for descriptions are unique strings to be sharedDavid Kalnischkies1-1/+1
2013-03-12* apt-pkg/pkgcachegen.cc:David Kalnischkies1-29/+32
- do not store the MD5Sum for every description language variant as it will be the same for all so it can be shared to save cache space
2012-10-15* apt-pkg/pkgcachegen.cc:Michael Vogt1-2/+6
- Fix crash if the cache is remapped while writing a Provides version (LP: #1066445).
2012-10-13write the native architecture as unique string into the cache headerDavid Kalnischkies1-1/+3
as it is used for arch:all packages as a map to arch:native. Otherwise arch comparisons later will see differences (Closes: #689323)
2012-10-13correct "3 missing" to "2 missing" remap registrations as the VersionDavid Kalnischkies1-1/+1
handled in NewVersion is already registered
2012-09-19add 3 missing remap registrations causing a segfault in caseDavid Kalnischkies1-0/+3
we use the not remapped iterators after a move of the mmap again
2012-09-19* apt-pkg/pkgcachegen.cc:David Kalnischkies1-1/+1
- ensure that dependencies for packages:none are always generated
2012-09-09* apt-pkg/pkgcachegen.cc:David Kalnischkies1-0/+2
- do not create 'native' (or now 'none') package structures as a side effect of description translation parsing as it pollutes the cache
2012-09-09handle packages without a mandatory architecture (debian-policy §5.3)David Kalnischkies1-1/+52
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-14* apt-pkg/pkgcachegen.cc:Daniel Hartwig1-2/+3
- always reset _error->StackCount in MakeStatusCache (Closes: #677175)
2012-05-12* apt-pkg/pkgcachegen.cc:David Kalnischkies1-2/+2
- make IsDuplicatedDescription static so that it is really private as we don't need a symbol for it as it is not in a header
2012-05-05check if we work on a valid description in IsDuplicateDescription asDavid Kalnischkies1-2/+2
we end up working on dangling pointers otherwise which segfaults on s390x and ppc64 (Closes: #669427)
2012-05-02* apt-pkg/pkgcachegen.cc:David Kalnischkies1-0/+6
- check if NewDescription allocation has failed and error out accordingly
2011-12-15atleast libapt should announce to itself that it is clean…David Kalnischkies1-7/+9
(and be it if it tries to announce that…)
2011-10-12add implicit dependencies needed for Multi-Arch at the time a VersionDavid Kalnischkies1-81/+100
struct is created and not at the end of the cache generation This allows us to be independent from the configured architectures for these kind of conflicts, we get natural progress for free and only the needed dependencies are in th respective binary cache.
2011-10-12use one string to construct the error message instead of using multipleDavid Kalnischkies1-23/+30
just with different debugging information at the end
2011-10-12a version can have only a single md5 for descriptions, so we can optimizeDavid Kalnischkies1-24/+30
the merging with this knowledge a bit and by correctly sharing the lists we only need to have a single description list for possibly many different versions. This also means that description translations are shared between different sources
2011-10-11share description list between "same" versions (LP: #868977)David Kalnischkies1-15/+45
2011-10-11* apt-pkg/pkgcachegen.cc:David Kalnischkies1-126/+178
- refactor MergeList by creating -Group, -Package and -Version specialist
2011-09-19remove old APT_COMPATIBILITY ifdef'sDavid Kalnischkies1-1/+0
2011-09-19use forward declaration in headers if possible instead of includesDavid Kalnischkies1-0/+2
2011-09-13merge with debian/experimentalDavid Kalnischkies1-21/+37
2011-09-13reorder includes: add <config.h> if needed and include it at firstDavid Kalnischkies1-4/+3
2011-08-15merged from the debian-sid branchMichael Vogt1-15/+15
2011-08-15merged fixes from lp:~mvo/apt/mvoMichael Vogt1-1/+1
2011-08-11cppcheck complains about some possible speed improvements which could beDavid Kalnischkies1-14/+14
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-08-08apt-pkg/pkgcachegen.cc: fix incorrect test for modification timeMichael Vogt1-1/+1
2011-08-05apt-pkg/pkgcachegen.cc: fix compiler errorMichael Vogt1-1/+1
2011-08-01fix crash when P.Arch() was used but the cache got remappedMichael Vogt1-1/+3
2011-08-01apt-pkg/pkgcachegen.cc: copy Arch to avoid segfault on cache remapMichael Vogt1-1/+3
2011-07-29merged from debian-sidMichael Vogt1-3/+19
2011-07-29merge from lp:~mvo/apt/mvoMichael Vogt1-1/+4
2011-07-29* apt-pkg/pkgcachegen.{cc,h}:Michael Vogt1-1/+4
- use ref-to-ptr semantic in NewDepends() to ensure that the libapt does not segfault if the cache is remapped in between (LP: #812862)
2011-07-28merged from lp:~mvo/apt/mvoMichael Vogt1-4/+14
2011-07-28* apt-pkg/contrib/fileutl.{cc,h}:Michael Vogt1-4/+14
- add GetModificationTime() helper * apt-pkg/pkgcachegen.cc: - regenerate the cache if the sources.list changes to ensure that changes in the ordering there will be honored by apt * apt-pkg/sourcelist.{cc,h}: - add pkgSourceList::GetLastModifiedTime() helper
2011-07-20apt-pkg/pkgcachegen.cc: Write the file size to the cacheJulian Andres Klode1-0/+1
2011-07-15merged from http://bzr.debian.org/bzr/apt/apt/debian-sidMichael Vogt1-3/+19
2011-06-30* apt-pkg/pkgcachegen.cc:David Kalnischkies1-3/+19
- fallback to memory if file is not writeable even if access() told us the opposite before (e.g. in fakeroot 1.16) (Closes: #630591)
2011-05-17* Implement EDSP in libapt-pkg so that all front-ends whichDavid Kalnischkies1-1/+1
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-04-06* apt-pkg/pkgcache.cc:David Kalnischkies1-2/+3
- use the native Architecture stored in the cache header instead of loading it from configuration as suggested by Julian Andres Klode
2011-03-30add a first round of stuff needed for talking between APT and solversDavid Kalnischkies1-1/+1
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-25* apt-pkg/cacheiterator.h:David Kalnischkies1-1/+1
- return "all" instead of native architecture without breaking the abi (too much) by extending enum instead of using bitflags (LP: #733741) With the next abi break that enum should be a char bitflag instead
2011-03-25* apt-pkg/pkgcachegen.cc:David Kalnischkies1-8/+4
- make "all"->"native" an implementation detail of NewPackage rather than rewrite it in higher methods
2011-03-08Remove the "pseudopackage" handling of Architecture: all packages forDavid Kalnischkies1-36/+13
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-07* apt-pkg/pkgcachegen.cc:David Kalnischkies1-7/+11
- in multiarch, let :all packages conflict with :any packages with a different version to be sure