summaryrefslogtreecommitdiff
path: root/python/cache.cc
AgeCommit message (Collapse)AuthorFilesLines
2009-06-25python: Use PyVarObject_HEAD_INIT() instead of PyObject_HEAD_INIT().Julian Andres Klode1-36/+9
This is related to PEP 3123 and fixes some compiler warnings.
2009-06-25python: Fix some build warnings.Julian Andres Klode1-5/+4
2009-06-25python/cache.cc: Support unicode objects and str objects in Python 2.Julian Andres Klode1-7/+6
2009-06-22python/cache.cc: Drop apt_pkg.Cache.open() and apt_pkg.Cache.close().Julian Andres Klode1-2/+5
Drop these functions, because they cause segfaults and memory leaks. To replace this functionality, simply create/delete a Cache object. This way, reference counting can work.
2009-06-21python: Make all CppOwnedPyObjects and similar support garbage collection.Julian Andres Klode1-34/+28
If you want to subclass apt_pkg.Cache() and create an apt_pkg.DepCache() object in it (e.g. as self.depcache) this is needed because otherwise, Python would not know about the cyclic dependency and refuse to free any of them. This also changes apt_pkg.Cache to the standard deallocation schema, because the underlying CacheFile deletes its pointers automatically on deletion. Thus a second call is not needed.
2009-06-21python: Add DeprecationWarning to functions which were replaced by classes.Julian Andres Klode1-0/+2
2009-06-21python/cache.cc: Give more information on TypeErrors in CacheMapOpJulian Andres Klode1-1/+3
2009-06-15Add support for Enhances as a dependency type (Closes: #416247)Julian Andres Klode1-1/+1
2009-06-14python/cache.cc,depcache.cc: Do not delete the depcache and cache pointers.Julian Andres Klode1-1/+3
Deleting the pointers caused a crash because those pointers will also be deleted by closing the cache file.
2009-06-12Bugfix: Delete pointers correctly, fixing memory leaks. (LP: #370149)Julian Andres Klode1-2/+2
We previously called the destructor of the pointer. This resulted in no object using pointers being deallocated. This patch introduces CppDeallocPtr() and CppOwnedDeallocPtr() which do the same as the other CppDealloc() and CppOwnedDealloc(), but use 'delete' on the pointer instead of the deconstructor. Furthermore, this patch also changes AcquireFile to be a CppOwnedPyObject, owned by the Acquire object. Without this change, deleting the Acquire object would cause a crash when AcquireFile is deallocated.
2009-06-09Allow types providing __new__() to be subclassed.Julian Andres Klode1-1/+2
2009-06-09python/cache.cc: Fix segfaults using the new allocation methods.Julian Andres Klode1-1/+19
We switched to using tp_alloc() to create new objects. Some types had no tp_flags set and were not initialized using PyType_Ready, causing tp_alloc (PyType_GenericAlloc) to crash.
2009-06-05python/: Put all deprecated Get*() functions into #ifdef COMPAT_0_7.Julian Andres Klode1-1/+2
2009-06-05Introduce the rename rules formally, and add some exceptions.Julian Andres Klode1-1/+1
2009-06-04python/cache.cc: Remove some (char*) to make migrate-0.8.py work again.Julian Andres Klode1-13/+13
2009-06-04python/: Unify naming conventions for all new names.Julian Andres Klode1-15/+15
Unify all names to follow these rules: 1. Replace the first [A-Z] with the lowercase version [a-z] 2. Replace multiple [A-Z] with [A-Z][a-z] (one upper, remaining ones lowercase) 3. Replace all remaining [A-Z] with _[a-z] This brings us from 'FileName' to 'file_name' and from 'DescURI' to 'desc_uri'. We will at a later stage add some exceptions to this rule, like 'filename' instead of 'file_name', to improve readability.
2009-06-04python/cache.cc, python/metaindex.cc: Convert remaining stuff to getset ↵Julian Andres Klode1-118/+278
descriptors.
2009-06-03python/: Convert most names to PEP8 naming conventions (except ↵Julian Andres Klode1-1/+48
Version,PackageFile,MetaIndex). On our way to close Bug#481061, this converts almost all names to PEP 8 naming conventions. Missing are now apt_pkg.Version, apt_pkg.PackageFile, apt_pkg.MetaIndex and apt.progress.*. In case of the missing apt_pkg classes, they are not converted yet because they do not use getset descriptors yet. apt.progress.* has not been converted yet because the extension interacts with it, and we first need to modify the extension to recognize the new names, as well as the old names (old applications shouldn't break).
2009-04-24* python/*.cc: Fix build failures with python2.4-dbg.Julian Andres Klode1-1/+1
2009-04-19* python/*.cc: Export all types and add a __new__() method to them.Julian Andres Klode1-52/+73
Some names may be changed before the release, but this is a good draft.
2009-04-16* python/cache.cc: Correct the 'Auto' descriptor of the Package class.Julian Andres Klode1-1/+1
2009-04-15* python: Port AcquireItem,Package,Description to GetSetJulian Andres Klode1-76/+122
2009-04-15* Introduce support for Python 3 (Closes: #523645)Julian Andres Klode1-0/+18
This is the first initial port to Python 3. The API is almost completely identical to the one found in Python 2, except that functions working with binary data require bytes (md5sum,sha1sum,sha256sum,Base64Encode). Using setup3.py to install the modules will not work, because the apt package still has to be converted to Python 3. For the package, we call 2to3-3.1 in debian/rules to do this automatically.
2009-04-14* python/cache.cc: Add tp_getset and tp_methods to DependencyType.Julian Andres Klode1-24/+73
2009-04-14* python/cache.cc: Use tp_methods and tp_getset for PkgCacheTypeJulian Andres Klode1-29/+70
2009-04-14* Remove any trailing whitespaceJulian Andres Klode1-1/+1
2009-04-13* python/cache.cc: Add support for the Breaks fieldsJulian Andres Klode1-1/+1
This also fixes problems on packages with Breaks field, where the lookup of the field name leads to some unprintable characters (because the index exceeds the number of items).
2009-03-03* python/cache.cc, tests/getcache_mem_corruption.py:Michael Vogt1-3/+15
- test if progress objects have the right methods and raise error if not (thanks to Emanuele Rocca) closes: #497049
2009-01-11Merge Ben Finney's whitespace changes (Closes: #481563)Julian Andres Klode1-66/+66
2008-10-06Test case and proposed fix for Debian bug #497049Emanuele Rocca1-3/+14
2008-08-08Fix whitespace in changes from 0.7.7.Ben Finney1-0/+5
2008-07-30* python/cache.cc:Michael Vogt1-1/+1
- fix crash if Ver.PriorityType() returns NULL
2008-07-21* data/templates/Debian.info.in:Emanuele Rocca1-0/+5
- s/MatchUri/MatchURI/. Thanks, Gustavo Noronha Silva (closes: #487673) * python/cache.cc: - Throw an exception rather than segfaulting when GetCache() is called before InitSystem() (closes: #369147)
2008-05-16Remove trailing whitespace.Ben Finney1-66/+66
2008-01-07update to latest ListUpdate()Michael Vogt1-1/+2
2008-01-04* use the new CacheFile::ListUpdate() codeMichael Vogt1-41/+8
* add example in doc/examples/update.py
2007-06-10* merged translated package descriptions branchMichael Vogt1-0/+69
2006-09-18* fix api changes for python2.5Michael Vogt1-4/+4
2006-08-03* basic ddtp support addedMichael Vogt1-0/+69
2006-01-26* the pkgCache::VerIterator.DependsList[] dict does no longer depend on the ↵Michael Vogt1-1/+11
localized depends name but on the english one
2006-01-11* make sure to close the CacheFile when a pkgCache is deallocatedMichael Vogt1-1/+12
2005-11-22* less debug messagesMichael Vogt1-2/+0
2005-08-08* support for srcrecords.Files addedMichael Vogt1-2/+3
2005-08-05* changelog merged with older debian versions, apt-secure support added (but ↵Michael Vogt1-0/+15
#if 0ed for performance reasons)
2005-07-01* added "Downloadable" as attribute to a VerIteratorMichael Vogt1-1/+3
2005-07-01* added Cache.Open(),Close(); fixed some refcout problemsMichael Vogt1-5/+53
2005-05-27* make better use of the cachefile in the depcache, avoid a stupid double ↵Michael Vogt1-7/+10
depcache building
2005-05-04* more tests addedMichael Vogt1-0/+1
* tests/cache.py: - test that iterates over all the cache and dependencies * tests/pkgrecords.py - test that iterates over all the pkgrecords * python/cache.cc - added a comment * python/pkgrecords.cc - return "True" from pkgRecord.Lookup() (to make it consistent with the PkgSrcRecords object)
2005-04-08* started the DepCache.Commit() interface Michael Vogt1-0/+4
2005-03-31* merged with the pkgDepCache treeMichael Vogt1-2/+9
Patches applied: * michael.vogt@ubuntu.com--2005/python-apt--pkgDepCache--0--patch-10 * version number is 0.5.36ubuntu1 * michael.vogt@ubuntu.com--2005/python-apt--pkgDepCache--0--patch-11 * return "None" in GetCandidateVer if no Candidate is found * michael.vogt@ubuntu.com--2005/python-apt--pkgDepCache--0--patch-12 * changelog entry * michael.vogt@ubuntu.com--2005/python-apt--pkgDepCache--0--patch-13 * never do "DepCache.Init()" implicit * michael.vogt@ubuntu.com--2005/python-apt--pkgDepCache--0--patch-14 * reference counting added for Py_None