Age | Commit message (Collapse) | Author | Files | Lines |
|
We should be done now.
DO NOT MERGE
|
|
- Handle the use of "del" on configuration values. Those are represented
by calling the setter with NULL, which we did not handle before, causing
a segmentation fault (Closes: #661062)
|
|
|
|
This fix is large, but simple in concept. Instead of relying
on Py_BuildValue and type signatures, or type-specific
conversion functions, create a new set of overloaded
MkPyNumber() functions that automatically do the right
thing for each numerical type.
|
|
|
|
|
|
- add binding for the "dump()" method to configruation objects
|
|
|
|
Finally, a complete reference to apt_pkg available
via pydoc and __doc__ attributes.
|
|
|
|
- Handle deprecated attributes and methods in the tp_gettattro slot, this
allows us to easily warn if a deprecated function is used.
|
|
|
|
|
|
In apt_pkgmodule, change the type to Configuration*. In configuration.cc,
check that GetSelf(Self).Tree(0) != 0 before doing GetSelf(Self).Tree(0)->Parent.
|
|
|
|
Configuration,ConfigurationPtr,ConfigurationSub into one type.
This makes the whole API easier. The disadvantage is that we require 8 bytes (??) more per
object for the owner object pointer, which is NULL for most cases (the only exception being
objects created by Configuration.sub_tree).
|
|
|
|
This is the first step towards implementing coding guidelines for the
C++ code and providing an usable C++ API.
|
|
This is related to PEP 3123 and fixes some compiler warnings.
|
|
of Configuration.
This makes isinstance(apt_pkg.config, apt_pkg.Configuration) return True
instead of False.
|
|
|
|
PyObject_NEW/DEL
This allows us to finally implement subclassing. Previously deletion of an
instance of a subclass caused segmentation faults, this is not the case
anymore.
|
|
|
|
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.
|
|
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).
|
|
Some names may be changed before the release, but this is a good draft.
|
|
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.
|
|
|
|
Support the replacement of mapping.has_key() for Configuration,ConfigurationPtr
and ConfigurationSub objects.
This is implemented by extending the various types with the tp_as_sequence
slot, which refers to a PySequenceMethods containing only this method.
The CnfGetAttr() function has been removed and replaced by the use of the
tp_method slot. This helps the py3k port because the previously used
Py_FindMethod() is not avilable anymore.
This completes the support of the 'in' operator in all python-apt objects,
which makes it even easier to convert python-apt-using applications to py3k
once python-apt supports it, as 2to3 converts 'm.has_key(k)' to 'k in m'.
Also finalize the types in apt_pkgmodule.cc and add the new 'key in conf'
description to the documentation.
|
|
- when setting a alternative rootdir, read the
config from it as well
* python/configuration.cc, python/apt_pkgmodule.cc:
- add apt_pkg.ReadConfigDir()
|
|
|
|
- and the final(!?!) incorrect PyMem_{DEL,Free} usage
|
|
Author: mdz
Date: 2003-06-03 03:22:27 GMT
Avoid null pointer deref in CnfKeys()
|
|
Author: mdz
Date: 2002-02-26 01:36:15 GMT
Fix g++-3.0 compilation issues
|
|
Author: jgg
Date: 2002-01-08 06:53:04 GMT
Changed include paths
|
|
Author: jgg
Date: 2001-02-20 06:32:01 GMT
Initial revision
|