summaryrefslogtreecommitdiff
path: root/apt-pkg/pkgcachegen.cc
Commit message (Collapse)AuthorAgeFilesLines
* 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.
* | * apt-pkg/pkgcache.cc:David Kalnischkies2011-04-061-2/+3
|/ | | | - use the native Architecture stored in the cache header instead of loading it from configuration as suggested by Julian Andres Klode
* * apt-pkg/cacheiterator.h:David Kalnischkies2011-03-251-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
* * apt-pkg/pkgcachegen.cc:David Kalnischkies2011-03-251-8/+4
| | | | - 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-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
* * apt-pkg/pkgcachegen.cc:David Kalnischkies2011-02-071-7/+11
| | | | - in multiarch, let :all packages conflict with :any packages with a different version to be sure
* apt-pkg, methods: Convert users of WriteEmpty to WriteAtomic.Julian Andres Klode2010-08-101-2/+2
|
* accidently prefilling the vectors results in segfaultsDavid Kalnischkies2010-07-111-1/+1
|
* rename ReOwn to ReMap in the cacheiteratorsDavid Kalnischkies2010-07-111-7/+7
|
* * apt-pkg/deb/debmetaindex.cc:David Kalnischkies2010-07-111-0/+2
| | | - do not query each architecture for flat file archives
* switch from std::set to std::vector as it is way more simple, a bitDavid Kalnischkies2010-07-091-8/+8
| | | | faster and still provides everything we need for the Cache generator
* * doc/apt.conf.5.xml:David Kalnischkies2010-07-091-6/+16
| | | - add and document APT::Cache-{Start,Grow,Limit} options for mmap control
* * apt-pkg/pkgcachegen.{cc,h}:David Kalnischkies2010-07-081-60/+169
| | | | - make the used MMap moveable (and therefore dynamic resizeable) by applying (some) mad pointer magic (Closes: #195018)
* use references instead of copies in the Cache generation methodsDavid Kalnischkies2010-07-081-4/+5
|
* wrap the mmap actions in the CacheGenerator in their own methods toDavid Kalnischkies2010-07-061-19/+34
| | | | be able to react on condition changes later then we can move mmap
* Try to use NotEquals for the MultiArch Breaks dependencies instead ofDavid Kalnischkies2010-07-051-4/+1
| | | | Less and Greater -> half the dependencies :)
* * apt-pkg/cachefile.{cc,h}:David Kalnischkies2010-06-041-17/+28
| | | | - split Open() into submethods to be able to build only parts - make the OpProgress optional in the Cache buildprocess
* * apt-pkg/pkgcache.h:David Kalnischkies2010-05-041-2/+1
| | | | - 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/contrib/fileutl.cc:David Kalnischkies2010-04-071-1/+14
| | | | | | | | | | - add a parent-guarded "mkdir -p" as CreateDirectory() * apt-pkg/acquire.{cc,h}: - add a delayed constructor with Setup() for success reporting - check for and create directories in Setup if needed instead of error out unfriendly in the Constructor (Closes: #523920, #525783) - optional handle a lock file in Setup() * cmdline/apt-get.cc: - remove the lock file handling and let Acquire take care of it instead
* convert some tabs to spaces to respect the style guideDavid Kalnischkies2010-03-301-80/+89
|
* Group packages in the same group together in the package listDavid Kalnischkies2010-03-301-9/+17
| | | | | so it is easier to find them later on as we have no "noice" anymore between them.
* merge MultiArch-ABI. We don't support MultiArch yet (as most other tools),David Kalnischkies2010-03-181-56/+209
|\ | | | | | | | | but we support the usage of the new ABI so libapt users can start to prepare for MultiArch (Closes: #536029)
| * [BREAK] merge MultiArch-ABI. We don't support MultiArch,David Kalnischkies2010-02-131-56/+209
| |\ | | | | | | | | | | | | | | | | | | | | | | | | 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-1/+2
| | | | | | | | | | | | | | | 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-4/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
| | * Foreign Versions add an implicit Provides to the other packages in the groupDavid Kalnischkies2010-02-101-3/+4
| | |
| | * Create implicit dependencies needed for Multi-Arch handlingDavid Kalnischkies2010-02-101-7/+24
| | |
| | * Pre-MultiArch a package which depends on a package with architecture "all"David Kalnischkies2010-02-101-2/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | can be sure that a package comeing in as a dependency of this package will be of the same architecture as itself (or all). We don't want to break this, so internal an arch all package is represented as many arch depending packages. The only problem we have now is that we only know that a arch all package is installed or not - we don't know for which architecture it was installed: So we will look at all these broken arch all pseudo packages and "remove" them.
| | * Split ListParser::NewDepends into two methods to use these new methodDavid Kalnischkies2009-12-271-34/+99
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
| | * Implement the first step toward Multi-Arch by setting up a GroupDavid Kalnischkies2009-12-191-33/+78
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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!
| * | * 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 a segfault in the version merger introduced in the previous patch:David Kalnischkies2010-03-181-1/+1
| | | | | | | | | | | | | | | | | | | | | As we skip now versions with a different hash we will have situations in which the version is equal but the hash different causing to check the next version, but as this version was the last one the version iterator is invalid then the merger wants to add further information.