summaryrefslogtreecommitdiff
path: root/apt-pkg/pkgcachegen.cc
Commit message (Collapse)AuthorAgeFilesLines
* abstract version hash comparison a bitDavid Kalnischkies2014-03-131-4/+10
| | | | | | | | In #737085 we see that apt can be confused if informations about versions only differ slightly. This commit adds a way of at least adding a few more data points with the next abi break to help a bit with it. Git-Dch: Ignore
* cleanup headers and especially #includes everywhereDavid Kalnischkies2014-03-131-7/+13
| | | | | | | | Beside being a bit cleaner it hopefully also resolves oddball problems I have with high levels of parallel jobs. Git-Dch: Ignore Reported-By: iwyu (include-what-you-use)
* warning: unused parameter ‘foo’ [-Wunused-parameter]David Kalnischkies2014-03-131-1/+1
| | | | | Reported-By: gcc -Wunused-parameter Git-Dch: Ignore
* warning: cannot optimize loop, the loop counter may overflow ↵David Kalnischkies2014-03-131-2/+2
| | | | | | | [-Wunsafe-loop-optimizations] Git-Dch: Ignore Reported-By: gcc -Wunsafe-loop-optimizations
* warning: cast from type A to type B casts away qualifiers [-Wcast-qual]David Kalnischkies2014-03-131-7/+7
| | | | | Git-Dch: Ignore Reported-By: gcc -Wcast-qual
* handle missing "Description" in apt-cache showDavid Kalnischkies2013-06-201-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
* share version strings between same versions (of different architectures)David Kalnischkies2013-04-031-6/+31
| | | to save some space and allow quick comparisions later on
* - sort group and package names in the hashtable on insertDavid Kalnischkies2013-04-031-5/+11
| | | | * apt-pkg/pkgcache.cc: - assume sorted hashtable entries for groups/packages
* equal comparisions are used mostly in same-source relations,David Kalnischkies2013-04-011-6/+14
| | | so use this to try to reuse some version strings
* factor version string creation out of NewDepends, so we can easily reuseDavid Kalnischkies2013-03-131-26/+31
| | | version strings e.g. for implicit multi-arch dependencies
* handle language tags for descriptions are unique strings to be sharedDavid Kalnischkies2013-03-121-1/+1
|
* * apt-pkg/pkgcachegen.cc:David Kalnischkies2013-03-121-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
* * apt-pkg/pkgcachegen.cc:Michael Vogt2012-10-151-2/+6
| | | | - Fix crash if the cache is remapped while writing a Provides version (LP: #1066445).
* write the native architecture as unique string into the cache headerDavid Kalnischkies2012-10-131-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)
* correct "3 missing" to "2 missing" remap registrations as the VersionDavid Kalnischkies2012-10-131-1/+1
| | | | handled in NewVersion is already registered
* add 3 missing remap registrations causing a segfault in caseDavid Kalnischkies2012-09-191-0/+3
| | | we use the not remapped iterators after a move of the mmap again
* * apt-pkg/pkgcachegen.cc:David Kalnischkies2012-09-191-1/+1
| | | - ensure that dependencies for packages:none are always generated
* * apt-pkg/pkgcachegen.cc:David Kalnischkies2012-09-091-0/+2
| | | | - do not create 'native' (or now 'none') package structures as a side effect of description translation parsing as it pollutes the cache
* handle packages without a mandatory architecture (debian-policy §5.3)David Kalnischkies2012-09-091-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)
* * apt-pkg/pkgcachegen.cc:Daniel Hartwig2012-06-141-2/+3
| | | | - always reset _error->StackCount in MakeStatusCache (Closes: #677175)
* * apt-pkg/pkgcachegen.cc:David Kalnischkies2012-05-121-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
* check if we work on a valid description in IsDuplicateDescription asDavid Kalnischkies2012-05-051-2/+2
| | | | we end up working on dangling pointers otherwise which segfaults on s390x and ppc64 (Closes: #669427)
* * apt-pkg/pkgcachegen.cc:David Kalnischkies2012-05-021-0/+6
| | | - check if NewDescription allocation has failed and error out accordingly
* atleast libapt should announce to itself that it is clean…David Kalnischkies2011-12-151-7/+9
| | | | (and be it if it tries to announce that…)
* add implicit dependencies needed for Multi-Arch at the time a VersionDavid Kalnischkies2011-10-121-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.
* use one string to construct the error message instead of using multipleDavid Kalnischkies2011-10-121-23/+30
| | | | just with different debugging information at the end
* a version can have only a single md5 for descriptions, so we can optimizeDavid Kalnischkies2011-10-121-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
* share description list between "same" versions (LP: #868977)David Kalnischkies2011-10-111-15/+45
|
* * apt-pkg/pkgcachegen.cc:David Kalnischkies2011-10-111-126/+178
| | | - refactor MergeList by creating -Group, -Package and -Version specialist
* remove old APT_COMPATIBILITY ifdef'sDavid Kalnischkies2011-09-191-1/+0
|
* use forward declaration in headers if possible instead of includesDavid Kalnischkies2011-09-191-0/+2
|
* merge with debian/experimentalDavid Kalnischkies2011-09-131-21/+37
|\
| * merged from the debian-sid branchMichael Vogt2011-08-151-15/+15
| |\
| | * merged fixes from lp:~mvo/apt/mvoMichael Vogt2011-08-151-1/+1
| | |\
| | | * apt-pkg/pkgcachegen.cc: fix incorrect test for modification timeMichael Vogt2011-08-081-1/+1
| | | |
| | * | cppcheck complains about some possible speed improvements which could beDavid Kalnischkies2011-08-111-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.
| * | apt-pkg/pkgcachegen.cc: fix compiler errorMichael Vogt2011-08-051-1/+1
| | |
| * | fix crash when P.Arch() was used but the cache got remappedMichael Vogt2011-08-011-1/+3
| |\|
| | * apt-pkg/pkgcachegen.cc: copy Arch to avoid segfault on cache remapMichael Vogt2011-08-011-1/+3
| | |
| | * merged from debian-sidMichael Vogt2011-07-291-3/+19
| | |\
| * | | merge from lp:~mvo/apt/mvoMichael Vogt2011-07-291-1/+4
| |\| |
| | * | * apt-pkg/pkgcachegen.{cc,h}:Michael Vogt2011-07-291-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)
| * | | merged from lp:~mvo/apt/mvoMichael Vogt2011-07-281-4/+14
| |\| |
| | * | * apt-pkg/contrib/fileutl.{cc,h}:Michael Vogt2011-07-281-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
| * | | apt-pkg/pkgcachegen.cc: Write the file size to the cacheJulian Andres Klode2011-07-201-0/+1
| | | |
* | | | reorder includes: add <config.h> if needed and include it at firstDavid Kalnischkies2011-09-131-4/+3
|/ / /
* | | merged from http://bzr.debian.org/bzr/apt/apt/debian-sidMichael Vogt2011-07-151-3/+19
|\ \ \ | | |/ | |/|
| * | * apt-pkg/pkgcachegen.cc:David Kalnischkies2011-06-301-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)
* | * Implement EDSP in libapt-pkg so that all front-ends whichDavid Kalnischkies2011-05-171-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
| * add a first round of stuff needed for talking between APT and solversDavid Kalnischkies2011-03-301-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.