summaryrefslogtreecommitdiff
path: root/apt-pkg/cachefile.h
Commit message (Collapse)AuthorAgeFilesLines
* Call MarkAndSweep only manually in apt-get for autoremoveDavid Kalnischkies2021-04-261-0/+2
| | | | | | | | | | | | | | | | | | | | | | | An interactive tool like aptitude needs these flags current far more often than we do as a user can see them in apt only in one very well defined place – the autoremove display block – so we don't need to run it up to four times while a normal "apt install" is processed as that is just busywork. The effect on runtime is minimal, as a single run doesn't take too long anyhow, but it cuts down tremendously on debug output at the expense of requiring some manual handholding. This is opt-in so that aptitude doesn't need to change nor do we need to change our own tools like "apt list" where it is working correctly as intended. A special flag and co is needed as we want to prevent the ActionGroup inside pkgDepCache::Init to be inhibited already so we need to insert ourselves while the DepCache is still in the process of being built. This is also the reason why the debug output in some tests changed to all unmarked, but that is fine as the marking could have been already obsoleted by the actions taken, just inhibited by a proper action group.
* apt-pkg: default visibility to hiddenJulian Andres Klode2020-02-261-1/+1
|
* Run unifdef -DAPT_{8,9,10,15}_CLEANER_HEADERSJulian Andres Klode2019-06-121-5/+0
|
* cachefile: Remove deprecated functionsJulian Andres Klode2019-02-261-2/+0
|
* pkgCacheFile: Only unlock in destructor if locked beforeJulian Andres Klode2018-09-241-1/+2
| | | | | | | | | | | | | | | | | | | | pkgCacheFile's destructor unlocks the system, which is confusing if you did not open the cachefile with WithLock set. Create a private data instance that holds the value of WithLock. This regression was introduced in commit b2e465d6d32d2dc884f58b94acb7e35f671a87fe: Join with aliencode Author: jgg Date: 2001-02-20 07:03:16 GMT Join with aliencode by replacing a "Lock" member that was only initialized when the lock was taken by calls to Lock, UnLock; with the latter also taking place if the former did not occur. Regression-Of: b2e465d6d32d2dc884f58b94acb7e35f671a87fe LP: #1794053
* Drop cacheiterators.h includeJulian Andres Klode2017-07-121-1/+0
| | | | | Including cacheiterators.h before pkgcache.h fails because pkgcache.h depends on cacheiterators.h.
* reimplement build-dep via apts normal resolverDavid Kalnischkies2016-01-251-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | build-dep was implemented by parsing the build-dependencies of a package and figuring out which packages to install/remove based on this. That means that for the first level of dependencies build-dep was implementing its very own resolver with all the benefits (aka: bugs) this gives us for not using the existing resolver for all levels. Making this work involves generating a dummy binary package with fitting Depends and Conflicts and as we can't create them out of thin air the cache generation needs to be involved so we end up writing a Packages file which we want to parse – after we have parsed the other Packages files already. With .dsc/.deb files we could add them before we started parsing anything. With a bit of care we can avoid generating too much data we have to throw away again (as many parts assume that e.g. the count of packages doesn't change midair), so that on a speed front there shouldn't be much of a difference, but output can be slightly confusing as if we have a completely valid cache on disk the "Reading package lists... Done" is printed two times – but apt is pretty quick about it in that case. Closes: #137560, #444930, #489911, #583914, #728317, #812173
* add messages to our deprecation warnings in libaptDavid Kalnischkies2015-11-271-2/+2
| | | | Git-Dch: Ignore
* show or-groups in not-installed recommends and suggests listsDavid Kalnischkies2015-08-101-13/+14
| | | | | | | | Further abstracting our new ShowList allows to use it for containers of strings as well giving us the option to implement an or-groups display for the recommends and suggests lists which is a nice trick given that it also helps with migrating the last remaining other cases of old ShowList.
* make all d-pointer * const pointersDavid Kalnischkies2015-08-101-1/+1
| | | | | | | | | | | | | | Doing this disables the implicit copy assignment operator (among others) which would cause hovac if used on the classes as it would just copy the pointer, not the data the d-pointer points to. For most of the classes we don't need a copy assignment operator anyway and in many classes it was broken before as many contain a pointer of some sort. Only for our Cacheset Container interfaces we define an explicit copy assignment operator which could later be implemented to copy the data from one d-pointer to the other if we need it. Git-Dch: Ignore
* add d-pointer, virtual destructors and de-inline de/constructorsDavid Kalnischkies2015-06-161-1/+0
| | | | | | | | To have a chance to keep the ABI for a while we need all three to team up. One of them missing and we might loose, so ensuring that they are available is a very tedious but needed task once in a while. Git-Dch: Ignore
* cleanup headers and especially #includes everywhereDavid Kalnischkies2014-03-131-2/+7
| | | | | | | | 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)
* revert 2184.1.3: forward declaration instead of headersDavid Kalnischkies2011-12-131-0/+6
| | | | | The breakage is just to big for now, so guard the change with #ifndef APT_8_CLEANER_HEADERS and be nice to library users
* use forward declaration in headers if possible instead of includesDavid Kalnischkies2011-09-191-4/+5
|
* merge with debian/sidDavid Kalnischkies2011-09-131-0/+1
|\
| * remove the caches in 'apt-get update', too, as they will beDavid Kalnischkies2011-08-221-0/+1
| | | | | | invalid in most cases anyway
* | add more dpointer placeholdersMichael Vogt2011-02-021-0/+3
|/
* merge with debian-experimental-ma to get the public policy backDavid Kalnischkies2010-06-101-1/+1
|\
| * * apt-pkg/cachefile.h:Michael Vogt2010-06-101-1/+1
| | | | | | | | - make pkgPolicy public again, libapt-pkg-perl (and probably others) get unhappy without that
* | * apt-pkg/cacheset.cc:David Kalnischkies2010-06-101-2/+6
|/ | | | - get the candidate either from an already built depcache or use the policy which is a bit faster than depcache generation
* store also the SourceList we use internally for exportDavid Kalnischkies2010-06-041-1/+14
|
* * apt-pkg/cachefile.{cc,h}:David Kalnischkies2010-06-041-6/+9
| | | | - split Open() into submethods to be able to build only parts - make the OpProgress optional in the Cache buildprocess
* * move the ListUpdate() code from cachefile.h into algorithms.{cc,h}Michael Vogt2008-01-071-1/+0
| | | | as it does not require a cachefile at all
* support optional PulseInterval in ListUpdateMichael Vogt2008-01-041-1/+1
|
* * merged the apt--DoListUpdate branch, this provides a common interfaceMichael Vogt2008-01-041-0/+3
|\ | | | | | | for apt-get update like operations for the frontends and also provides hooks to run stuff in APT::Update::{Pre,Post}-Invoke
| * * apt-pkg/cachefile, cmdline/apt-get.cc:Michael Vogt2006-06-071-0/+3
| | | | | | | | - move the code that does the work from apt-get.cc to pkgCacheFile::ListUpdate()
* | * removed the pragma messMichael Vogt2006-10-021-3/+0
|/
* 'apt-get update' no longer does 'Building Dependency Tree'.Arch Librarian2004-09-201-1/+2
| | | | | | Author: jgg Date: 2002-04-27 04:28:04 GMT 'apt-get update' no longer does 'Building Dependency Tree'.
* Join with aliencodeArch Librarian2004-09-201-13/+18
| | | | | | Author: jgg Date: 2001-02-20 07:03:16 GMT Join with aliencode
* Cache operatorArch Librarian2004-09-201-2/+3
| | | | | | Author: jgg Date: 1999-06-27 03:18:28 GMT Cache operator
* Added [] operators to cachefileArch Librarian2004-09-201-2/+4
| | | | | | Author: jgg Date: 1999-06-12 03:43:48 GMT Added [] operators to cachefile
* Support for memory-only cachingArch Librarian2004-09-201-0/+48
Author: jgg Date: 1999-04-18 06:36:36 GMT Support for memory-only caching