summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2010-06-01* doc/source/conf.py:Michael Vogt2-1/+5
- do not fail for non digit version numbers like 0.7.95ubuntu1
2010-06-01revert commit 346 (this re-enable the deprecation warnings)Michael Vogt18-92/+68
2010-06-01* merge from debian bzr, remaining changes:Michael Vogt34-1133/+2754
- different mirror list * data/templates/gNewSense.info.in, data/templates/gNewSense.mirrors: - add gNewSense template and mirrors, thanks to Karl Goetz * apt/cache.py: - Make Cache.get_changes() much (~35x) faster (Closes: #578074). - Make Cache.req_reinstall_pkgs much faster as well. - Make Cache.get_providing_packages() about 1000 times faster. - Use has_versions and has_provides from apt_pkg.Package where possible. * apt/package.py: - Decode using utf-8 in installed_files (LP: #407953). - Fix fetch_source() to work when source name = binary name (LP: #552400). - Merge a patch from Sebastian Heinlein to make get_changelog() only check sources where source version >= binary version (Closes: #581831). - Add Version.source_version and enhance Sebastian's patch to make use of it, in order to find the best changelog for the package. * python: - Return bool instead of int to Python where possible, looks better. - Document every class, function, property. * python/cache.cc: - Check that 2nd argument to Cache.update() really is a SourceList object. - Fix PackageFile.not_automatic to use NotAutomatic instead of NotSource. - Add Package.has_versions to see which packages have at least one version, and Package.has_provides for provides. - Add rich compare methods to the Version object. * python/generic.cc: - Fix a memory leak when using old attribute names. - Map ArchiveURI property to archive_uri * python/progress.cc: - Do not pass arguments to InstallProgress.wait_child(). * doc: - Update the long documentation. * debian/control: - Change priority to standard, keep -doc and -dev on optional. * utils/migrate-0.8.py: - Open files in universal newline support and pass filename to ast.parse. - Add has_key to the list of deprecated functions. - Don't abort if parsing failed. - do not require files to end in .py if they are passed on the command line or if they contain python somewhere in the shebang line. * apt/cache.py: - make cache open silent by default (use apt.progress.base.OpProgress) * tests/data/aptsources_ports/sources.list: - fix ports test-data * tests/test_apt_cache.py: - add simple test for basic cache/dependency iteration
2010-06-01* data/templates/gNewSense.info.in,Michael Vogt3-0/+553
data/templates/gNewSense.mirrors: - add gNewSense template and mirrors, thanks to Karl Goetz
2010-05-19Release 0.7.95Julian Andres Klode1-2/+2
2010-05-19Update debian/changelog for the documentation updates.Julian Andres Klode1-0/+2
* doc: - Update the long documentation.
2010-05-19Add Version.source_version and enhance Sebastian's patch to make useJulian Andres Klode2-8/+24
of it, in order to find the best changelog for the package.
2010-05-19Merge a patch from Sebastian Heinlein to make get_changelog() onlyJulian Andres Klode2-17/+10
check sources where source version >= binary version (Closes: #581831).
2010-05-19Big documentation update.Julian Andres Klode7-644/+993
2010-05-09releasing version 0.7.94.2ubuntu7Colin Watson1-2/+2
2010-05-09* data/templates/Ubuntu.info.in:Colin Watson2-0/+68
- add maverick
2010-05-09Initial commit of gNS templates for python-aptKarl Goetz2-0/+544
2010-04-30* python/progress.cc:Julian Andres Klode2-3/+3
- Do not pass arguments to InstallProgress.wait_child().
2010-04-21python: Commit documentation changes suggested by debian-l10n-english.Julian Andres Klode18-174/+223
2010-04-21apt/cache.py: Use has_versions and has_provides from apt_pkg.Package where ↵Julian Andres Klode2-3/+4
possible.
2010-04-21python/cache.cc: Add Package.has_provides to see which packages are provided ↵Julian Andres Klode2-1/+10
at least once.
2010-04-21apt/cache.py: Make Cache.get_providing_packages() about 1000 times faster.Julian Andres Klode2-15/+23
2010-04-21apt/cache.py: Make Cache.req_reinstall_pkgs much faster as well.Julian Andres Klode2-4/+7
2010-04-21Add rich compare methods to the Version object.Julian Andres Klode2-1/+21
2010-04-21Add Package.has_versions to see which packages have at least one version.Julian Andres Klode2-0/+10
2010-04-21apt/cache.py: Make Cache.get_changes() much (~35x) faster (Closes: #578074).Julian Andres Klode2-4/+10
This change consists of the following ideas: - Switch to the low-level API - Use 'not marked_keep()' to check if a package has been modified.
2010-04-14releasing version 0.7.94.2ubuntu6Michael Vogt1-1/+1
2010-04-14merged -r 396..397 from the debian-sid branchMichael Vogt2-1/+11
2010-04-01python: Document every class, function, property.Julian Andres Klode17-325/+893
Finally, a complete reference to apt_pkg available via pydoc and __doc__ attributes.
2010-04-01python: Return bool instead of int to Python where possible, looks better.Julian Andres Klode16-60/+61
2010-04-01Fix PackageFile.not_automatic to use NotAutomatic instead of NotSource.Julian Andres Klode2-1/+2
2010-03-31releasing version 0.7.94.2ubuntu5Michael Vogt1-1/+1
2010-03-31merged from http://bzr.debian.org/apt/python-apt/debian-sid/Michael Vogt8-21/+48
2010-03-31* python/cache.cc:Julian Andres Klode2-1/+4
- Check that 2nd argument to Cache.update() really is a SourceList object.
2010-03-31apt/package.py: Fix fetch_source() to work when source name = binary name ↵Julian Andres Klode2-5/+6
(LP: #552400).
2010-03-30apt/package.py: Decode using utf-8 in installed_files (LP: #407953).Julian Andres Klode2-2/+4
2010-03-29do not require files to end in .py if they are passed on the commandJulian Andres Klode2-1/+6
line or if they contain python somewhere in the shebang line.
2010-03-29Don't abort if parsing failed.Julian Andres Klode2-1/+7
2010-03-29Add has_key to the list of deprecated functions.Julian Andres Klode2-1/+2
2010-03-29utils/migrate-0.8.py: Open files in universal newline support and pass ↵Julian Andres Klode2-1/+3
filename to ast.parse.
2010-03-29If PYTHON_APT_DEPRECATION_WARNINGS is unset, also disable theMichael Vogt19-66/+98
deprecation warnings in apt_pkg directly; and don't just disable any deprecation warning in apt/__init__.py (LP: #548623)
2010-03-29If PYTHON_APT_DEPRECATION_WARNINGS is unset, also disable theJulian Andres Klode19-66/+98
deprecation warnings in apt_pkg directly; and don't just disable any deprecation warning in apt/__init__.py (LP: #548623)
2010-03-26Merge with mvo, with the following changes:Julian Andres Klode5-9/+54
* python/generic.cc is changed instead of python/indexfile.cc to add the ArchiveURI property * tests/test_apt_cache.py is changed to assert the properties of the Dependency object instead of assigning them to a variable. The additions to the changelog are: [ Julian Andres Klode ] - Map ArchiveURI property to archive_uri [ Michael Vogt ] * apt/cache.py: - make cache open silent by default (use apt.progress.base.OpProgress) * tests/data/aptsources_ports/sources.list: - fix ports test-data * tests/test_apt_cache.py: - add simple test for basic cache/dependency iteration
2010-03-25commit prefix upload changesMichael Vogt2-3/+11
2010-03-25* python/indexfile.cc:Michael Vogt2-0/+11
- add missing 0.7 compat indexfile.ArchiveURI method (LP: #545848)
2010-03-25* apt/__init__.py:Michael Vogt3-56/+64
- only show deprecation warnings if PYTHON_APT_DEPRECATION_WARNINGS is set in the environment * python/indexfile.cc: - add missing 0.7 compat indexfile.ArchiveURI method
2010-03-23releasing version 0.7.94.2ubuntu1Michael Vogt1-3/+5
2010-03-23apt/__init__.py: use warnings.simplefilterMichael Vogt1-2/+1
2010-03-23Updated to the 0.7.9x series (FFe LP: #531518)Michael Vogt234-61063/+30554
[ Julian Andres Klode ] * python/generic.cc: - Fix a memory leak when using old attribute names. * debian/control: - Change priority to standard, keep -doc and -dev on optional. [ Michael Vogt ] * apt/cache.py: - make cache open silent by default (use apt.progress.base.OpProgress) * tests/data/aptsources_ports/sources.list: - fix ports test-data * debian/control - build against XS-Python-Versions: 2.6, 3.1 * tests/test_apt_cache.py: - add simple test for basic cache/dependency iteration * apt/__init__.py: - only show deprecation warnings if PYTHON_APT_DEPRECATION_WARNINGS is set in the environment. While we do want to have the new API its not feasible to port all apps in the lucid timeframe. Once lucid is released we turn the warnings on by default again * Revert 0.7.93.3 and just set APT::Architecture to i386 for test_aptsources; fixes FTBFS on powerpc. * Pass --exclude=migrate-0.8.py to dh_pycentral; in order to not depend on python2.6; but recommend python2.6. * Use dh_link instead of ln for python-apt-doc (Closes: #573523). * Pass --link-doc=python-apt to dh_installdocs. * Install examples to python-apt-doc instead of python-apt. * tests/test_all.py: Write information header to stderr, not stdout. * Build documentation only when needed (when building python-apt-doc). * Move documentation into python-apt-doc (Closes: #572617) * Build documentation only once on the default Python version. * python/acquire-item.cc: - Add AcquireItem.partialsize member. * python/apt_pkgmodule.cc: - Treat '>>' and '>', '<<' and '<' as identical in check_dep (LP: #535667). * python/generic.cc: - Map UntranslatedDepType to dep_type_untranslated. * python/tag.cc: - Hack the TagFile iterator to not use shared storage (Closes: #572596): Scan once, duplicate the section data, and scan again. * apt/package.py: - Create a string class BaseDependency.__dstr which makes '>' equal to '>>' and '<' equal to '<<' (compatibility). - Use the binary package version in Version.fetch_source() if the source version is not specified (i.e. in the normal case). - Always return unicode strings in Package.get_changelog (Closes: #572998). * apt/progress/text.py: - Drop InstallProgress, it's useless to keep this alias around. * apt/progress/old.py: - Let the new method call the old one; e.g. status_update() now calls self.statusUpdate(). This improves compatibility for sub classes. * Merge with Ubuntu: - util/get_ubuntu_mirrors_from_lp.py: + rewritten to use +archivemirrors-rss and feedburner - pre-build.sh: update ubuntu mirrors on bzr-buildpackage (and also do this for Debian mirrors) - add break for packagekit-backend-apt (<= 0.4.8-0ubuntu4) * tests: - test_deps: Add tests for apt_pkg.CheckDep, apt_pkg.check_dep, apt_pkg.parse_depends and apt_pkg.parse_src_depends. * tests/data/aptsources/sources.list.testDistribution: - change one mirror which is not on the mirror list anymore. * utils/get_debian_mirrors.py: - Parse Mirrors.masterlist instead of the HTML web page. * utils/get_ubuntu_mirrors_from_lp.py: - Sort the mirror list of each country. - Use generic MirrorsFile key instead of per-architecture ones in order to fix FTBFS on !amd64 !i386 (Closes: #571752) [ Julian Andres Klode ] * Fix some places where the old API was still used: - apt/utils.py: Completely ported, previous one was old-API from Ubuntu. - apt/cache.py: Use the new progress classes instead of the old ones. - apt/package.py: Various smaller issues fixed, probably caused by merge. * utils/migrate-0.8.py: - Improve C++ parsing and add apt.progress.old to the modules, reduces false positives. - Ship the list of deprecated things in the apt_pkg and apt_inst modules inside the script itself, so we don't have to parse the source code anymore. * python: - Handle deprecated attributes and methods in the tp_gettattro slot, this allows us to easily warn if a deprecated function is used. * python/tagfile.cc: - Implement the iterator protocol in TagFile. * python/cache.cc: - Implement Cache.__len__() and Cache.__contains__() (Closes: #571443). * data/templates/Debian.info.in: - Replace the MatchURI with one that really matches something. * aptsources/distro.py: - Call lsb_release with -idrc instead of --all. * tests: - Fix aptsources tests to use local data files if available. - test_all.py: Use local modules instead of system ones if possible. * data/templates/*.in: Switch MirrorsFile to relative filenames. - setup.py: Copy the mirror lists to the build directory - aptsources/distinfo.py: Support relative filenames for MirrorsFile. * debian/rules: - Run tests during build time. * debian/python-apt.install: - Install utils/migrate-0.8.py to /usr/share/python-apt/. [ Michael Vogt ] * apt/cache.py: - call install_progress.startUpdate()/finishUpdate() to keep compatibility with older code * apt/progress/base.py: - restore "self.statusfd, self.writefd" type, provide additional self.status_stream and self.write_stream file like objects * python/progress.cc: - try to call compatibility functions first, then new functions [ Julian Andres Klode ] * Fix reference counting for old progress classes (Closes: #566370). * apt/cache.py: - Fix Cache.update() to not raise errors on successful updates. * python/progress.cc: - Fix some threading issues (add some missing PyCbObj_BEGIN_ALLOW_THREADS) * python/acquire-item.cc: - Support items without an owner set. * python/tarfile.cc: - When extracting, only allocate a new buffer if the old one was too small. - Do not segfault if TarFile.go() is called without a member name. - Clone all pkgDirStream::Item's so apt_pkg.TarMember object can be used outside of the callback function passed to go(). - If only one member is requested, extract just that one. * Drop the segfault prevention measures from the Acquire code, as they fail to work. A replacement will be added once destruction callbacks are added in APT. * Merge the CppOwnedPyObject C++ class into CppPyObject. * Remove inline functions from the C++ API, export them instead. * Localization - de.po: Update against new template * python/arfile.cc: - Handle the case where ararchive_new returns NULL in debfile_new. * apt/progress/base.py: - select.error objects do not have an errno attribute (Closes: #568005) * doc/client-example.cc: Update against the new API. * Fix typos of separated in multiple files (reported by lintian). * debian/control: - Make python-apt-dev depend on ${misc:Depends} and recommend python-dev. - Set Standards-Version to 3.8.4. [ Michael Vogt ] [ Julian Andres Klode ] * Merge debian-sid and debian-experimental. * Add a tutorial on how to do things which are possible with apt-get, like apt-get --print-uris update (cf. #551164). * Build for Python 2.5, 2.6 and 3.1; 2.6 and 3.1 hit unstable on Jan 16. - Use DH_PYCENTRAL=nomove for now because include-links seems broken * Merge lp:~forest-bond/python-apt/cache-is-virtual-package-catch-key-error - Return False in Cache.is_virtual_package if the package does not exist. * Make all class-level constants have uppercase names. * Rewrite apt.progress.gtk2 documentation by hand and drop python-gtk2 build-time dependency. * aptsources: - Make all classes subclasses of object. - distro.py: Support Python 3, decode lsb_release results using utf-8. * apt/progress/base.py: - Fix some parsing of dpkg status fd. * apt/progress/text.py: - Replace one print statement with a .write() call. * Rename apt_pkg.PackageIndexFile to apt_pkg.IndexFile. [ Colin Watson ] * apt/progress/__init__.py: - Fix InstallProgress.updateInterface() to cope with read() returning 0 on non-blocking file descriptors (LP: #491027). * New features: - Provide a C++ API in the package python-apt-dev (Closes: #334923). - Add apt_pkg.HashString and apt_pkg.IndexRecords (Closes: #456141). - Add apt_pkg.Policy class (Closes: #382725). - Add apt_pkg.Hashes class. - Allow types providing __new__() to be subclassed. - Add apt_pkg.DepCache.mark_auto() and apt.Package.mark_auto() methods to mark a package as automatically installed. - Make AcquireFile a subclass of AcquireItem, thus inheriting attributes. - New progress handling in apt.progress.base and apt.progress.text. Still missing Qt4 progress handlers. - Classes in apt_inst (Closes: #536096) + You can now use apt_inst.DebFile.data to access the data.tar.* member regardless of its compression (LP: #44493) * Unification of dependency handling: - apt_pkg.parse_[src_]depends() now use CompType instead of CompTypeDeb (i.e. < instead of <<) to match the interface of Version.depends_list_str - apt_pkg.SourceRecords.build_depends matches exactly the interface of Version.depends_list_str just with different keys (e.g. Build-Depends). + Closes: #468123 - there is no need anymore for binding CompType or CompTypeDeb, because we don't return integer values for CompType anymore. * Bugfixes: - Delete pointers correctly, fixing memory leaks (LP: #370149). - Drop open() and close() in apt_pkg.Cache as they cause segfaults. - Raise ValueError in AcquireItem if the Acquire process is shut down instead of segfaulting. * Other stuff: - Merge releases 0.7.10.4 - 0.7.12.1 from unstable. - Merge Configuration,ConfigurationPtr,ConfigurationSub into one type. - Simplify the whole build process by using a single setup.py. - The documentation has been restructured and enhanced with tutorials. - Only recommend lsb-release instead of depending on it. Default to Debian unstable if lsb_release is not available. [ Julian Andres Klode ] * Rename where needed according to PEP 8 conventions (Closes: #481061) * Where possible, derive apt.package.Record from collections.Mapping. * ActionGroups can be used as a context manager for the 'with' statement. * utils/migrate-0.8.py: Helper to check Python code for deprecated functions, attributes,etc. Has to be run from the python-apt source tree, but can be used for all Python code using python-apt. * debian/control: Only recommend libjs-jquery (Closes: #527543). [ Stefano Zacchiroli ] * debian/python-apt.doc-base: register the documentation with the doc-base system (Closes: #525134) [ Sebastian Heinlein ] * apt/package.py: Add Package.get_version() which returns a Version instance for the given version string or None (Closes: #523998) * Introduce support for Python 3 (Closes: #523645) * Support the 'in' operator (e.g. "k in d") in Configuration{,Ptr,Sub} objects (e.g. apt_pkg.Config) and in TagSections (apt_pkg.ParseSection()) * Replace support for file objects with a more generic support for any object providing a fileno() method and for file descriptors (integers). * Add support for the Breaks fields * Only create Package objects when they are requested, do not keep them in a dict. Saves 10MB for 25,000 packages on my machine. * apt/package.py: Allow to set the candidate of a package (Closes: #523997) - Support assignments to the 'candidate' property of Package objects. - Initial patch by Sebastian Heinlein [ Michael Vogt ] * data/templates/Ubuntu.info.in: - make armel point to ports.ubuntu.com (LP: #531876) [ Emmet Hikory ] * data/templates/Ubuntu.info.in: - refactor to use ports by default for gutsy and newer releases - Set appropriate exceptions to defaults for warty-lucid * Drop build dependency on python2.4. * apt/utils.py: - add some misc utils like get_release_filename_for_pkg() [ Michael Vogt ] * apt/cache.py: - improved docstring for the cache - add "enhances" property * data/templates/Ubuntu.info.in: - add lucid * python/cache.cc: - add UntranslatedDepType attribute to DependencyType - add DepTypeEnum that returns a value from {DepDepends, DepPreDepends, ...} * python/apt_pkgmodule.cc: - add DepDpkgBreaks, DepEnhances constants * doc/source/apt_pkg/{cache.rst, index.rst}: - update documentation as well * Fix FTBFS with python-debian (>= 0.1.13) on Python 2.4 by not using it to get a version number in setup.py (Closes: #523473) * apt/package.py: - (Package.candidateRecord): Fix missing 'd' in 'record' - (DeprecatedProperty.__get__): Only warn when used on objects, this makes it easier to use e.g. pydoc,sphinx,pychecker. * Merged python-apt consolidation branch by Sebastian Heinlein (many thanks) * apt/cache.py: - new method "isVirtualPackage()" - new method "getProvidingPackages()" - new method "getRequiredDownload()" - new method "additionalRequiredSpace()" * apt/debfile.py: - move a lot of the gdebi code into this file, this provides interfaces for querrying and installing .deb files and .dsc files * apt/package.py: - better description parsing - new method "installedFiles()" - new method "getChangelog()" * apt/gtk/widgets.py: - new gobject GOpProgress - new gobject GFetchProgress - new gobject GInstallProgress - new gobject GDpkgInstallProgress - new widget GtkAptProgress * doc/examples/gui-inst.py: - updated to use the new widgets * debian/control: - add suggests for python-gtk2 and python-vte * setup.py: - build html/ help of the apt and aptsources modules into /usr/share/doc/python-apt/html * apt/__init__.py: - remove the future warning * Non-maintainer upload. * data/templates/Debian.info.in: Set the BaseURI to security.debian.org for lenny/updates, etch/updates and sarge/updates. (Closes: #503237) * data/templates/Debian.info.in: - add 'lenny' template info (closes: #476364) * aptsources/distinfo.py: - fix template matching for arch specific code (LP: #244093)
2010-03-23debian/changelog: updated to prepare for the releaseMichael Vogt1-2/+4
2010-03-23* tests/test_apt_cache.py:Michael Vogt2-0/+36
- add simple test for basic cache/dependency iteration
2010-03-23* tests/test_apt_cache.py:Michael Vogt2-0/+36
- add simple test for basic cache/dependency iteration
2010-03-23* tests/data/aptsources_ports/sources.list:Michael Vogt3-9/+13
- fix ports test-data * debian/control - build against XS-Python-Versions: 2.6, 3.1
2010-03-23* tests/data/aptsources_ports/sources.list:Michael Vogt2-8/+10
- fix ports test-data
2010-03-23merged from lp:~mvo/python-apt/mvoMichael Vogt233-61055/+30492