-
Julian Andres Klode authored
python-apt (1.8.2) unstable; urgency=medium * Add a init_defaults() method to apt_pkg.Policy * Document what's new in 1.8 python-apt (1.8.1) unstable; urgency=medium * python/arfile.cc: Fix FTBFS due to copying of FileFd * Revert "debian/rules: Build with pybuild" * Adjust typing for mypy 0.660 python-apt (1.8.0) unstable; urgency=medium [ Julian Andres Klode ] * templates: Add Ubuntu 19.04 'Disco Dingo' * travis: Disable CI on debian:stretch and ubuntu:bionic * Switch to python3-distutils-extra from python2 one * Drop unnecessary python3-distutils build-depend workaround * debian/rules: Build with pybuild * travis: Test on disco [ Jeremy Bicha ] * data/templates/Debian.info.in: Add Buster and Bullseye (Closes: #919613, #919615) python-apt (1.7.0) unstable; urgency=medium * Fix escaping in regular expressions and ignore some pep8 warnings * as usual; updated mirror lists python-apt (1.7.0~rc1) unstable; urgency=medium * Release to unstable python-apt (1.7.0~alpha3) experimental; urgency=medium * Fix __iter__ yielding different Packages than __getitem__ * apt.Cache: Reinstate locks in a finally / run dpkg inside try * travis: Run tests on ubuntu:cosmic too * Revert "debian/control: Drop obsolete Python-Versions fields" * Accept Version objects in apt_pkg.Policy.get_priority(), deprecate Package * Return correct pin in apt.package.Version.policy_priority * typehinting: apt_pkg.PackageFile is not an iterable * Introduce frontend locking * Convert apt.Cache.commit and apt_pkg.DepCache.commit to FE lock python-apt (1.7.0~alpha2) experimental; urgency=medium * gitlab-ci: Set DEBIAN_FRONTEND=noninteractive * Add more extensive test cases for cache remapping * Do not override __hash__ in apt.package.Package (LP: #1780099) * debian/python-apt.docs: README is README.md since some time * apt.Cache: Avoid unneccessary double weakref checks for __getitem__ * apt.Cache: Use weakref.setdefault to find existing Package objects * debian/control: Point to salsa instead of anonscm * debian/control: Drop obsolete Python-Versions fields * Switch to python3-sphinx python-apt (1.7.0~alpha1) experimental; urgency=medium [ Julian Andres Klode ] * data/templates/Ubuntu.info.in: Add cosmic cuttlefish template * apt.Cache: Fix error in apt.Package caching * apt: Correctly annotate Optional types * apt: Fix typing error related to apt_pkg * tests/test_pep484.py: Check everything * Correctly handle missing candidate in Package.get_changelog * types: Don't make apt_pkg.Cache a dict, and fix apt.Cache.__contains__ * apt.package.Dependency: Fix __init__ type annotation * Add all possible annotations that were FIXME * Various type fixes * Fix some more type annotations for apt_pkg, complete apt.utils typing * apt.Cache: Remap objects when reopening cache (LP: #1773316) * apt_pkg.DepCache: Raise CacheMismatchError if argument belongs to diff. cache * apt.Cache: Complete types * Completely type apt.progress * typehinting: Add missing type hints for unattended-upgrades * Complete typing for apt.auth * apt.debfile: Avoid exception in replaces_real_pkg for no-candidate packages * apt.debfile.DebPackage: Handle no-candidate package in _maybe_append_multiarch_suffix * Completely type apt.debfile * utils/get_debian_mirrors.py: Get data from salsa * apt.package: Add almost complete typing * tests/test_pep484.py: Pass --strict --implicit-optional to mypy * apt.Cache: Introduce fix_broken() binding * Add support for custom fields to apt_pkg.PackageRecords * Introduce gitlab ci * Document whatsnew in 1.6 and 1.7 * apt.Cache: Keep / Re-establish the system lock in commit() * apt.Cache: Keep archive locked during commit()/ in fetch_archives() [ Evgeni Golov ] * fix SourceRecordsFile class reference python-apt (1.6.0) unstable; urgency=medium * Final release, no further changes. python-apt (1.6.0~rc3) unstable; urgency=medium * Revert change to make apt.Cache subclass of dict * Fix get_changelog() to correctly decode non-unicode changelogs * Try to work around memory corruption in PackageRecords.*_hash * apt/auth.py: Protect against race with gpg when removing tmpdir (Closes: #871585) * Document Architecture: all handling in Package.{fullname,architecture()} (Closes: #863193) * python/tag.cc: Fix invalid read in TagFileNext * Raise ValueError if objects passed to DepCache are from different cache (LP: #1737441) * DepCache: Check that candidate we are setting belongs to package * debian/gbp.conf: Default branch is master now python-apt (1.6.0~rc2) unstable; urgency=medium * Add some weird python3-distutils build-depends (Closes: #893837) * Document apt_pkg.SourceRecordsFile python-apt (1.6.0~rc1) unstable; urgency=medium [ Michael Vogt ] * add info how to run the tests * Fix the remaining pep8 erorrs * README: add intro how to use python-apt with mypy * tests/old: update to py3 * apt: make Version.fetch_binary() less noisy * README: make markdown and add info about building/testing * apt: add support for pep484 (type hints) * fix tests * python: add pkgsrcrecord.Files.{hashes,size,path,type} getters * python: stop using deprecated hash access (and drive by indent fixes) [ Julian Andres Klode ] * pkgsrcrecords: Fix off-by-one error in OR group handling * data/templates/Ubuntu.info.in: Add bionic template * apt/cache.py: Fix pep8 * Switch travis to use Docker based tests * tests: Make test_sourcerecords.py more reliable python-apt (1.4.0~beta3) unstable; urgency=medium * apt.auth: Fix check of fingerprint length * data/templates/Ubuntu.info.in: Add artful template * Debian template: Adopt MatchUri to match base, switch BaseUri to CDN (Closes: #859672) * Update translation template python-apt (1.4.0~beta2) unstable; urgency=medium [ Julian Andres Klode ] * templates: Debian: Add stretch * Skip os-release test for now (Closes: #851039) [ Martin Pitt ] * data/templates/Ubuntu.info.in: Add zesty template python-apt (1.4.0~beta1) unstable; urgency=medium [ Harald Sitter ] * add fancy os-release support to pick up its ID_LIKE feature [ Julian Andres Klode ] * Add optional 'architecture' argument to parse_src_depends() * Allow keyword arguments for parse_depends() and parse_src_depends() * Migrate python-apt priority from standard to optional * Bump version number, we require APT 1.4 series for the architecture thing above. python-apt (1.1.0~beta5) unstable; urgency=medium * apt.auth: Set APT_KEY_DONT_WARN_ON_DANGEROUS_USAGE NOTE: apt.auth is about to be deprecated, do not use it. It will be removed in a later version. * Fix gpg breakage (Closes: #835465) - Use --fixed-list-mode for apt-key gpg invocations. Thanks to Daniel Kahn Gillmor for the initial patch - test_auth: Normalize public key blocks before comparing - Adjust dependencies for apt.auth on gnupg and dirmngr - Work around broken debfile multiarch test cases python-apt (1.1.0~beta4) unstable; urgency=medium * Fix test failures causing FTBFS (Closes: #830995) - tests/test_lp659438.py: Set allow-insecure - tests: Completely reset config environment in setUp python-apt (1.1.0~beta3) unstable; urgency=medium [ Adam Conrad ] * data/templates/Ubuntu.info.in: Add Yakkety Yak (16.10) template [ Julian Andres Klode ] * Set allow-unauthenticated for our local sources * Update Vcs-Git and Vcs-Browser fields to https * copyright: Update to copyright-format 1.0 * Drop the XS-Testsuite control field, not needed anymore * copyright: Remove nonexisting files * Bump Standards-Version to 3.9.8 * Build with full hardening enabled * Fix typo classes reported by lintian * rules: Do not use pie python-apt (1.1.0~beta2) unstable; urgency=medium [ Julian Andres Klode ] * tests/test_all.py: Only use test files starting with test_ * tests: Rename test_pep8 to testmanual_pep8 * pre-build.sh: Run PEP8 check * apt/README.apt: Drop it, we cannot pretend unstable API anymore * depcache: Call SetLog() and GetLock on Acquire instead of Setup * Fix regression from previous commit WRT Py_None reference count * pkgsrcrecords: Use Files2 instead of Files, part1: Size * Introduce apt_pkg.HashStringList() * pkgrecords: Use hashes instead of deprecated MD5Hash and friends * whatsnew: 1.1: Document HashStringList and PackageRecords changes * hashstring: Constify where possible * Drop deprecated uses of Hashes, add hashes attribute * HashStringList: Check for negative index, fix signed vs unsigned * acquire: Call SetLog() instead of Setup() * apt_pkg: Deprecate rewrite_section * arfile, tarfile: Decode member names using filesystem encoding (Closes: #806596) * CppPyString: Use an const std::string reference instead of value * Make Safe_FromString an overloaded version of CppPyString * Use CppPyString instead of PyString_FromString everywhere * Drop compat macros for python2 (< 2.6) * Drop deprecation-ignore macros, use APT ones instead * Use CppPyPath for returning (hopefully) all paths * apt_inst: Do not mention deprecated functions, except for porting (Closes: #807103) * control: Suggest apt, so reportbug reports apt version * Drop binding for SmartTargetPkg() (Closes: #791345) * debfile: Mention dpkg --add-architecture when arch is wrong (Closes: #725720) * Introduce apt_pkg.Error class replacing SystemError * CppPyObject_NEW: Make template variadic * Revert "CppPyObject_NEW: Make template variadic" * Add apt_pkg.Tag and subclasses (one per kind of tag) * TagSection: Check for NUL bytes in the tag section input * python-apt-common: Drop python | python3 depends (Closes: #812099) * apt.Cache: Provide get() [ Felix Dietrich ] * doc: Fix typo (Closes: #807105) * Use print function from __future__ in examples (Closes: #807104) [ Brian Murray ] * Fix typo regarding upgradeable packages. python-apt (1.1.0~beta1) unstable; urgency=medium * Upload to unstable [ Michael Vogt ] * Do not show pulse progress when the output is not a tty * Fix build-dependencies parsing from debian/control * Print the failed function name in PyPkgManager::res() [ Julian Andres Klode ] * test_paths.py: Catch the IndexRecords warning * Release 1.0.1 * changelog: Fix up the uploader name and close Barry's bug * doc: tutorials: contribution: Rewrite for git and other changes (Closes: #802084) * Build with cleaner headers * Use pkgCache::Version::No instead of pkgCache::Version::None * apt.utils: Support parsing InRelease files (LP: #1503979) Thanks to Brian Murray <brian@ubuntu.com> for the initial patch. * apt.utils: Open the release files using a 'with' statement [ Jakub Wilk ] * apt/debfile.py: Fix typo * apt/debfile.py: Fix typo [ Martin Pitt ] * ./data/templates/Ubuntu.info.in: Add Xenial template. * doc/source/examples/apt-cdrom.py: Fix PEP-8 errors. python-apt (1.1.0~alpha3) experimental; urgency=medium [ Michael Schaller ] * apt.Cache: Add Cache._rawpkg_to_pkg method to consolidate duplicated code * apt.Version: Compare against package name and version (if available) * apt/package.py: Add target_versions method to [Base]Dependency * Add helpers/filters for installed packages/versions [ Julian Andres Klode ] * Document the new additions in 1.0 * doc/source/conf.py: Do not set html_style, broken with recent sphinx * Merge 1.0.0 * Keep apt_pkg.IndexRecords dropped python-apt (1.1.0~alpha2) experimental; urgency=medium * Fix a typo in a member access. python-apt (1.1.0~alpha1) experimental; urgency=medium [ Michael Vogt ] * apt/debfile.py: use apt_pkg.open_maybe_clear_signed_file() when opening a .dsc file [ Julian Andres Klode ] * Drop apt_pkg.IndexRecords, it has been dropped in experimental * Support APT_PKG_MAJOR >= 5 * test_paths: Drop the indexrecord test * Fix pep8 1.6.2 issues * setup.py: Pass -std=c++11 and -Wno-write-strings to the compiler * Convert from SPtr and SPtrArray to unique_ptr and array * Replace pkgDistUpgrade and friend with APT::Upgrade::Upgrade * AcquireItem: Deprecate mode and introduce active_subprocess [ John R. Lenton ] * Discard stderr when calling system-image-cli (LP: #267935) python-apt (1.0.1) unstable; urgency=medium [ Michael Vogt ] * Do not show pulse progress when the output is not a tty * Fix build-dependencies parsing from debian/control [ Julian Andres Klode ] * test_paths.py: Catch the IndexRecords warning (Closes: #800624) python-apt (1.0.0) unstable; urgency=medium [ Julian Andres Klode ] * Fix pep8 1.6.2 issues * setup.py: Pass -std=c++11 and -Wno-write-strings to the compiler * Convert from SPtr and SPtrArray to unique_ptr and array * Replace pkgDistUpgrade and friend with APT::Upgrade::Upgrade * AcquireItem: Deprecate mode and introduce active_subprocess * APT 1.1: Fix a typo in a member access. * Deprecate IndexRecords * Document the new additions in 1.0 * doc/source/conf.py: Do not set html_style, broken with recent sphinx * Revert the temporary build-deps on APT 1.0.10 and the new gcc, as they are not needed anymore. [ John R. Lenton ] * Discard stderr when calling system-image-cli (LP: #267935) [ Michael Schaller ] * apt.Cache: Add Cache._rawpkg_to_pkg method to consolidate duplicated code * apt.Version: Compare against package name and version (if available) * apt/package.py: Add target_versions method to [Base]Dependency * Add helpers/filters for installed packages/versions python-apt (1.0.0~beta3.1) unstable; urgency=medium [ Michael Vogt ] * fix py3 issue with auto .gz decompression and add test * updated for the gcc5 transition [ Julian Andres Klode ] * doc/source/conf.py: Reproducibility: Set html_last_updated_fmt = None [ Michael Schaller ] * BaseDependency.__repr__: Replace pre_depend with rawtype * apt/package.py: Add rawtype property to Dependency class * Add dependency comparison (aka. relation) type in Debian notation * apt/package.py: Add missing __str__ and __repr__ methods * doc/source/library/apt_pkg.rst: Remove trailing whitespace * apt_pkg.Dependency.all_targets: Fix the documentation [ Barry Warsaw ] * python-apt: Python 3.5 and PEP 479 support (Closes: #792606) python-apt (1.0.0~beta3) unstable; urgency=medium * tests/test_paths.py: Catch and assert the DeprecationWarning * setup.py: If no version is in the environment, return None * doc/source/library/apt_pkg.rst: Fix an example from old API to new API * apt.cache.FilteredCache: Fix multi-arch package lookups * apt.Cache: Introduce a connect2() callback connector * Break the FilteredCache <-> Cache reference cycle * apt.Cache: Issue a RuntimeWarning in connect() * doc: whatsnew: Document what's new in beta3 python-apt (1.0.0~beta2) unstable; urgency=low * debian/control: Build-Depend on apt (>= 1.0.9.4) for Files2() * Handle the symlink to directory transition correctly (Closes: #788571) python-apt (1.0.0~beta1) unstable; urgency=low [ Julian Andres Klode ] * tests/test_tagfile.py: Close files we opened to prevent leakage (Closes: #785337) * doc/source/c++/api.rst: Upgrade syntax to use the new domain stuff * doc/source/library/apt_pkg.rst: Fix indentation (Closes: #736119) * sphinx docs: Fix remaining instances of old C syntax to use domains * python/cache.cc: Handle deprecation of pkgCache::PkgIterator::Section() * doc: Prepare for 1.0 release * TagFile: Provide close() and context manager (Closes: #748922) * doc: Document apt_pkg.TagFile additions * doc: templates: layout: Remove invalid icon links * debian/control: Build-Depend on dh-python * Do not link documentation from Architecture: all to Architecture: any * Use ${python:Depends} and friends for the debug packages * apt.debfile: Fix splitting of multi-lines Binary fields in dsc files (Closes: #751770) * Remove apt.progress.gtk2 * apt_pkg.Package: Drop the unset 'auto' attribute (Closes: #565364) * Update POTFILES.in and the pot * apt/cache.py: Work around a cyclic reference from Cache to its methods (Closes: #745487) * apt/debfile.py: Arch-qualify in compare_to_version_in_cache() (Closes: #750189) * apt.package: Only reference Launchpad for missing changelogs on Ubuntu (Closes: #781270) * apt/cache.py: Support :all and other special architecture specifies * apt/debfile: Stop special-casing all when looking for a package in the cache * apt/debfile.py: Allow downgrading packages in check() with a parameter (Closes: #613974) * Acquire: Document that items may have transient errors on run() success (Closes: #680997) * Large file support (Closes: #742885) - python/arfile.cc: Do not allow files larger than SIZE_MAX to be mapped - python/arfile.cc: LFS: Use long long instead of long for file sizes - python/tarfile.cc: LFS: Handle too large file * setup.py: Translate version number from Debian to PEP0440 (LP: #1445949) [ Michael Vogt ] * apt_pkg.rst: improve documentation for AcquireFile() hash and add sha512 to the documentation * rename "md5" keyword argument in AcquireFile() to "hash" and add backward compatiblity * Fix apt.Package.installed_files for multi-arch packages (LP: #1313699) [ von ] * Remove the "-Wstrict-prototypes" compiler option (Closes: #785261) * Set Standards-Version to 3.9.6 (Closes: #785431) * Fix indentation and docstring problems (Closes: #784910) [ Michael Schaller ] * Fixed docstring of BaseDependency.version property. * Improved docstring of the Version.get_dependencies method. python-apt (0.9.4) unstable; urgency=medium [ Michael Vogt ] * add apt_pkg.sha512sum() * Add binding for apt_pkg.maybe_open_clear_signed_file() * apt/debfile.py: use apt_pkg.open_maybe_clear_signed_file() when opening a .dsc file * Update doc/example/action.py for py3 and latest API (closes: #782335) * Add MULTI_ARCH_NO constant and deprecate MULTI_ARCH_NONE (closes: #782802) * Fix dead links in python-apt documentation (Closes: #779426) [ Martin Pitt ] * ./data/templates/Ubuntu.info.in: Add Wily template. Don't copy extras.u.c. stanza as that's gone since 15.04. [ von ] * Update the print_uris.py example to use the new API (Closes: #779217) python-apt (0.9.3.11) unstable; urgency=low [ Colin Watson ] * Add template for the "Ubuntu-RTM" derived distribution. * Detect whether a system is running Ubuntu-RTM by way of "system-image-cli -i". Not perfect but close enough. [ Julian Andres Klode ] * Embed changelog entry date and time instead of build date and time (Closes: #762674) [ Michael Vogt ] * python/tarfile.cc: use long long in Process() for APT >= 4.14 * Merged UbuntuRTMDistribution detection from ubuntu * Add Ubuntu 15.04 (Vivid Vervet) to the template python-apt (0.9.3.10) unstable; urgency=medium * python/tag.cc: ensure that the final \n is there when duplicating section data * apt/debfile.py: - Stop reading after the "Format" stanza in a .dsc file - Add support for apt.debfile.DscSrcPackage.filelist - Read all tags from a dsc file and improve tests * fix tests when gnupg is < 1.4.18 * update python-apt.pot python-apt (0.9.3.9) unstable; urgency=medium [ Michael Vogt ] * fix another pep8 failure [ Julian Andres Klode ] * doc/source/tutorials/apt-get.rst: Remove -s from --print-uris invocation (LP: #1308670) [ Mauricio Faria de Oliveira ] * tests/test_pep8.py: --ignore E129 too (fix FTBFS with pep8 >= 1.5) * tests/test_auth.py: update for gnupg 1.4.18 (Closes: #755342) python-apt (0.9.3.8) unstable; urgency=medium * pep8 fixes to fix autopkgtest failure with the most recent pep8 package python-apt (0.9.3.7) unstable; urgency=medium * Include "Blankon" template (Closes: #747498) * Add apt_pkg.SourceRecords.step() to step through all SrcRecords * debian/control: - update build-dependency for libapt-pkg-dev to 1.0.4 for pkgSourceRecords::Step() python-apt (0.9.3.6) unstable; urgency=medium [ Johannes Schauer ] * Add support for build profiles (Closes: 744243) [ Michael Vogt ] * debian/control: - update build-depends on libapt-pkg-dev for build-profile support * data/templates/Ubuntu.info.in: - add ubuntu utopic python-apt (0.9.3.5) unstable; urgency=medium * utils/get_ubuntu_mirrors.py: Drop, its unused and broken * doc/source/conf.py: Do not use 'u' and 'r' prefixes together * tests: Drop some more Python 2.6 cruft * debian/control: Drop X{B,S}-Python-Version and use X-Python-Version * debian/pycompat: Drop, it's not used anymore * python/tag.cc: Ignore missing 'encoding' attribute in file objects * apt/package.py: Do not shadow _ python-apt (0.9.3.4) unstable; urgency=medium * python/progress.cc: Fix InstallProgress to set child_pid (LP: #1177720) * python/progress.cc: Remove invalid checks for mixedCase methods * utils/get_*_mirrors*.py: Ensure failure if no mirrors were read * utils/get_*_mirrors*.py: Use sys.stderr.write instead of print * Support all compressors for data.tar/control.tar (Closes: #718330) * Revert "aptsources/sourceslist.py: ensure that our sources are opened with UTF-8" (Closes: #742118) python-apt (0.9.3.3) unstable; urgency=medium [ Steve Langasek ] * aptsources/sourceslist.py: ensure that our sources are opened with UTF-8 encoding, regardless of the current locale, and handle the sources lines as Unicode internally for consistency between python2 and python3. LP: #1069019. [ Brian Murray ] * Fix pep8 error. python-apt (0.9.3.2) unstable; urgency=high * Revert "* apt/cache.py:" (rootdir change) (Closes: #741251) (LP: #1288171) We cannot reset the configuration when rootdir is specified in apt.Cache(). This reopens: #728274. python-apt (0.9.3.1) unstable; urgency=medium * debian/rules: Do not run dh_sphinxdoc -a python-apt (0.9.3) unstable; urgency=medium * doc/source/conf.py: Python 3 support * debian/rules: Use dh_sphinxdoc integration * utils/doclint.py: Drop, not working anymore. * python/generic.h: Fix MkPyNumber to work if char is unsigned. * data: Add Tanglu distribution information * debian/python3-apt-dbg.files: Fix pattern for kFreeBSD * tests/test_policy.py: Disable, uses system state (FTBFS on ppc64) * tests/data/aptsources/sources.list.testDistribution: Add tanglu * tests/test_policy.py: Fix comment to conform to PEP8 python-apt (0.9.2) unstable; urgency=medium [ Michael Vogt ] * apt/cache.py: - when using apt.Cache(rootdir=/some/dir) only read the APT configuration from this rootdir instead of /etc (closes: #728274) * make pep8 test part of the unittests * add pyflakes test * add .travis.yml & update python3 dependency to 3.3 [ Barry Warsaw ] * debian/tests/control: Add python-all and python3-all as Depends for the autopkgtests so all the supported Python versions are pulled in. (closes: #734500) [ Michael Schaller] * apt/cache.py: - Fixed PEP8 issues - Fixed pyflakes issue: Removed unused local variable 'transient' * apt/package.py: - Fixed PEP8 issues - Fixed pyflakes issue: Removed unused import 'warnings' - Improved readability and documentation of BaseDependency.__dstr(). [ Julian Andres Klode ] * apt/cache.py: Call os.path.abspath() on a supplied rootdir (LP: #792295) * apt/package.py: Fix BaseDependency.__dstr.__ne__() * apt/package.py: Pass an apt_pkg.Dependency to BaseDependency * tests: Add back test_hashsums from old and update * Style fixes: - Style fix: Do not use "is True" / "is False" - debian/control: Replace a tab with spaces - tests/test_deps.py: Remove an invalid blank line * Use a single code base for Python 2 and 3 - Use print_function everywhere - Drop support for Python 2.6 - tests: Remove checks for Python older than 2.7 * Documentation fixes: - apt, doc: Fix the list of comp_type values - Unify list of comparison type values everywhere * Static analysis fixes: - (cppcheck) python/pkgmanager.cc: Do not create temporary CppPyRef * Packaging changes: - debian/README.source: Drop it, it's useless bzr - debian/gbp.conf: Set sign-tags = True - debian/control: Set Standards-Version to 3.9.5 - debian/control: Drop python-{unittest2,debian} build deps python-apt (0.9.1) unstable; urgency=low * data/templates/Ubuntu.info.in: It's 'Tahr', not 'Thar' * data/templates/Debian.info.in: Add jessie * data/templates/Debian.info.in: Change wheezy version from 7.0 to 7 * python/*.cc: Get rid of the easy-to-replace deprecated APT functions * python/{depcache.cc,string.cc}: Ignore deprecation warnings for some calls * python/depcache.cc: Add more error handling to PkgDepCacheCommit * python/cache.cc: Remove a check for an unsigned long value < 0 * python/arfile.cc: (C++11) Explicitly cast unsigned long to time_t in {} * python/apt_instmodule.cc: Make RETURN(x) be return on Python 2 * python/policy.cc: (scan-build): Fix a dead assignment * python/progress.cc: (scan-build): Fix some uninitialized values * debian: Upgrade to debhelper 9 (and dpkg-buildflags) * debian/python-apt-doc.links: Replace bundled underscore.js by symlink * po: Update the template python-apt (0.9.0) unstable; urgency=low [ Michael Vogt ] * some fixes from the "coverity" scan * merge from Ubuntu: - data/templates/Ubuntu.info.in: add "Saucy Salamander" to - debian/control: add "Multi-Arch: allowed" [ Julian Andres Klode ] * Completely remove all old-API support code * Accept bytes object for file names (Closes: #680971) * aptsources/sourceslist.py - Document correct use of uniq and hide it using __all__ (Closes: #723815) - Correctly parse multiple options (LP: #1103200) * python/apt_pkgmodule.cc: - Fix documentation of version_compare (Closes: #680891) * python/cache.cc: - Set NoDelete=true when creating Policy, fixes segfault in destructor * apt/package.py: - Add a Package.has_config_files property (Closes: #712749) * tests: - Do not set dir::etc::sourceparts to /tmp * apt, aptsources: - Only call init_config() if not already initialized (Closes: #686403) * apt/debfile.py: - Pass strip_multi_arch=False to parse_depends. Patch by Michael, tests derived from the ones provided by the reporter. Closes: #717859. Closes: #717861. * doc/source/examples/dpkg-info.py: - Use apt_inst.DebFile (Closes: #671784) * doc/examples/*.py: - Update examples to the new API (Closes: #639022) * tests/old/*.py: - Update to new API as well * data/templates/Ubuntu.info.in: - Add "Trusty Thar" * debian/control: - Set Standards-Version to 3.9.4 [ Jeremy Bicha ] * data/templates/Ubuntu.info.in: add 'devel' series (Closes: #722961) [ Jakub Wilk ] * python-apt: formatting error in library/index.rst (Closes: #692484) [ Daniel Hartwig ] * apt/package.py: - mark_upgrade misuses FromUser to set auto-installed (Closes: #686726) python-apt (0.8.9.1) unstable; urgency=low [ Michael Vogt ] * debian/control: - updated Vcs field to point to http://git.debian.org/git/apt/python-apt.git * replace .bzr-builddeb/default.conf with debian/gbp.conf [ Julian Andres Klode ] * Update the Vcs fields to use Vcs-Git with git protocol, and gitweb for Vcs-Browser [ Colin Watson ] * add support for "key in apt.debfile.DebPackage" (closes: #710541) python-apt (0.8.9) unstable; urgency=low * upload previous experimental upload to sid python-apt (0.8.9~exp2) experimental; urgency=low * apt/package.py: - export codename in apt.package.Origin as well (closes: #703401) python-apt (0.8.9~exp1) experimental; urgency=low [ Michael Vogt ] * python/tag.cc: - make TagSecString_FromStringAndSize, TagSecString_FromString static, thanks to jcristau * python/cache.cc: - add "Codename" to PackageFile object * add dep8 style autopkgtest support * build fixes for python3.3 * data/templates/Ubuntu.info.in: - add raring * tests/test_all.py, aptsources/distro.py: - python2.6 compat fixes [ Jason Conti ] * lp:~jconti/python-apt/closeable-cache: - add apt.Cache.close() method [ Martin Pitt ] * tests/*.py: Do not prepend None to sys.path, Python 3.3 redeems that with an unintelligible crash. * tests/test_auth.py: In test_add_key_from_server_mitm(), show the exception if it does not match the expectation, so that this becomes possible to debug. * aptsources/distro.py: Replace the deprecated getiterator() ElementTree method with iter(), to avoid raising a PendingDeprecationWarning. * tests/test_auth.py: Temporarily disable $http_proxy for the tests, as gnupg does not get along with proxies (LP #789049) [ Colin Watson ] * tests/test_apt_cache.py, tests/test_lp659438.py, tests/test_progress.py: - Clear out APT::Update::Post-Invoke and APT::Update::Post-Invoke-Success in tests that call cache.update to avoid pollution from the host system. * tests/test_auth.py: - Discard stderr from gpg. - Try successive keyserver ports if 19191 is already in use. * aptsources/distinfo.py, aptsources/distro.py, aptsources/sourceslist.py, tests/test_apt_cache.py, tests/test_debfile_multiarch.py: - Use logging.warning rather than the deprecated logging.warn. * tests/test_debfile_multiarch.py: - Don't log warnings when skipping tests; the resulting stderr output causes autopkgtest to fail. * tests/test_all.py: - Write general test status output to stdout, not stderr. * tests/test_aptsources.py: - Clean up file object in test_enable_component. * tests/test_lp659438.py: - Add an Architecture: line to the test Packages file so that apt doesn't get upset with it. * data/templates/Ubuntu.info.in: - Fix descriptions of quantal and raring. python-apt (0.8.8.2) unstable; urgency=low [ David Prévot ] * po/no.po: Remove useless translation (superseded by nb.po) [ Julian Andres Klode ] * apt/package.py: Try both filenames for package file lists (Closes: #700715) python-apt (0.8.8.1) unstable; urgency=low * python/tag.cc: - make TagSecString_FromStringAndSize, TagSecString_FromString static, thanks to jcristau * tests/test_lp659438.py: - fix missing architecture to make the tests pass again during build with the latest apt python-apt (0.8.8) unstable; urgency=low [ Program translation updates ] * po/pl.po: Polish (Michał Kułach) (closes: #684308) * po/da.po: Danish (Joe Hansen) (closes: #689827) [ Michael Vogt ] * merged lp:~sampo555/python-apt/fix_1042916 reuse existing but disabled sources.list entries instead of duplicating them. Thanks to "sampo555", LP: #1042916 * lp:~mvo/python-apt/fix-debfile-crash: - fix crash on missing candidates in the multiarch check * lp:~mvo/python-apt/recv-key-lp1016643: - Only support long (v4) keyids when downloading keys and check the keys fingerprint before importing. This avoids man-in-the-middle attacks (LP: #1016643) * consolidate tests/test_lp1030278.py into the new tests/test_size_to_str.py * apt/auth.py: - support importing long keyids with leading 0x and mixed case * debian/control: - build-depend on python-unittest2 to get "with TestCase.assertRaises" support in python2.6 [ Barry Warsaw ] * python/string.cc, tests/test_lp1030278.py: Fix StrSizeToStr() so that 1) it first checks for PyLong-ness so that in Python 3 on i386, it will be able to convert larger numbers (via doubles rather than ints); 2) before doing the conversions through the apt API, check to see if a Python exception occurred, e.g. OverflowError, and return an error condition in that case instead of masking it. (LP: #1030278) [ James Hunt ] * python/cache.cc: PkgCacheGetIsMultiArch(): Return calculated value rather than a random one. * lp:~jamesodhunt/python-apt/test-for-size_to_str: - add test for size_to_str() to help with finding LP: #1030278 python-apt (0.8.7) unstable; urgency=low [ Translation updates ] * po/es.po: Spanish translation updated by Omar Campagne (closes: #679285) * po/ja.po: Japanese translation updated by Kenshi Muto (closes: #679652) [ Jakub Wilk ] * Fix typos: the the -> the (closes: #679432) [ Julian Andres Klode ] * apt/auth.py: - Do not merge stdout and stderr (Closes: #678706) - Forward stderr from apt-key to our stderr if non-empty python-apt (0.8.6) unstable; urgency=low [ Michael Vogt ] * debian/control: - add build-dep for apt (>= 0.9.6) to make test_auth.py test work reliable [ Julian Andres Klode ] * apt/auth.py: - Use tempfile.NamedTemporaryFile to create temporary file - Use Popen.communicate() instead of stdin, stdout * tests/fakeroot-apt-key: - exec apt-key, otherwise we ignore the return value * debian/control: - Build-depend on fakeroot, needed for the apt.auth tests * data/templates/Debian.info.in: - Add wheezy - Add wheezy-updates as Recommended Updates - Order wheezy-proposed-updates after wheezy/updates and wheezy-updates * po: - Fixup the translations for wheezy again python-apt (0.8.5) unstable; urgency=low [ Michael Vogt ] * python/cache.cc: - ensure that pkgApplyStatus is called when the cache is opened (thanks to Sebastian Heinlein for finding this bug), LP: #659438 [ Stéphane Graber ] * data/templates/Ubuntu.info.in: - add quantal [ Steve Langasek ] * utils/get_ubuntu_mirrors_from_lp.py: move this script to python3 * pre-build.sh: call dpkg-checkbuilddeps with the list of our source-build-dependencies; this may save someone else an hour down the line scratching their head over gratuitous test-suite failures... [ Sebastian Heinlein ] * lp:~glatzor/python-apt/auth: - this is a port of the software-properties AptAuth module to python-apt with some cleanups. It provides a wrapper API for the apt-key command [ David Prévot ] * po/*.po: update PO files against current POT file * po/be.po: Belarusian translation by Viktar Siarheichyk (closes: #678286) * po/de.po: German translation updated by Holger Wansing (closes: #677916) * po/el.po: Greek translation updated by Thomas Vasileiou (closes: #677331) * po/en_GB.po: Remove useless file <20120610190618.GA1387@burratino> * po/eo.po: Esperanto translation by Kristjan Schmidt and Michael Moroni * po/fi.po: Finnish translation updated by Timo Jyrinki * po/fr.po: French translation updated (closes: #567765) * po/hu.po: Hungarian translation updated by Gabor Kelemen * po/id.po: Indonesian translation by Andika Triwidada (closes: #676960) * po/nl.po: Dutch translation updated by Jeroen Schot (closes: #652335) * po/pt_BR.po: Brazilian translation updated by Sérgio Cipolla * po/ru.po: incomplete Russian translation updated by Andrey * po/sk.po: Slovak translation updated by Ivan Masár (closes: #676973) * po/sl.po: Slovenian translation updated by Matej Urbančič * po/sr.po: incomplete Serbian translation updated by Nikola Nenadic * po/tl.po: Tagalog translation updated by Ariel S. Betan * po/am.po po/br.po po/et.po po/eu.po po/fa.po po/fur.po po/hi.po po/mr.po po/ms.po po/nn.po po/pa.po po/ps.po po/qu.po po/rw.po po/ta.po po/ur.po po/xh.po: remove useless (empty) translations [ Julian Andres Klode ] * Merge patch from Colin Watson to handle non-UTF8 tag files in Python 3, by using bytes instead of str when requested; and document this in the RST documentation (Closes: #656288) * debian/control: - Drop Recommends on python2.6 (Closes: #645970) - Replace xz-lzma Recommends by xz-utils (Closes: #677934) * python/configuration.cc: - 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) * python/tag.cc: - Correctly handle file descriptor 0 aka stdin (Closes: #669458) * python/acquire.cc: - Use pkgAcquire::Setup() to setup the acquire class and handle errors from this (Closes: #629624) * debian/control: - Set Standards-Version to 3.9.3 * utils/get_ubuntu_mirrors_from_lp.py: - Revert move to Python 3, python3-feedparser is not in the archive yet * tests: - Fix new tests from Sebastian to work with Python 2.6 python-apt (0.8.4) unstable; urgency=low [ Michael Vogt ] * doc/examples/build-deps.py: - update the build-deps.py example to use the apt API more * add support for apt_pkg.Policy.get_priority(PkgFileIterator) * apt/debfile.py: - use apt_inst for reading the control_filelist * debian/control: - remove no longer needed dependency on python-debian * tests/test_tagfile.py: - add test for apt_pkg.TagFile() both for compressed/uncompressed files * python/tag.cc, tests/test_tagfile.py: - add support a filename argument in apt_pkg.TagFile() (in addition to the file object currently supported) * apt/package.py: - if there is no Version.uri return None * apt/cache.py: - fix _have_multi_arch flag (thanks to Sebastian Heinlein) * build against apt 0.9.0 [Julian Andres Klode ] * python/apt_pkgmodule.cc: - Fix apt_pkg.Dependency.TYPE_RECOMMENDS, had Suggests value previously python-apt (0.8.4~exp1) experimental; urgency=low * tests/test_apt_cache.py: - fix tests on kfreebsd/ia64 * apt/debfile.py: - fix crash in dep multiarch handling python-apt (0.8.3ubuntu9) UNRELEASED; urgency=low [ Steve Langasek ] * Don't leak file descriptors. [ Colin Watson ] * aptsources/*.py, setup.py: Make aptsources modules work directly in either Python 2 or 3, and exclude the "future" 2to3 fixer so that 2to3 doesn't need to modify them. This makes life a little easier for the strange tricks update-manager plays with its dist-upgrader tarball. python-apt (0.8.3) unstable; urgency=low [ Alexey Feldgendler ] * handle architecture-specific conflicts correctly (LP: #829138) [ Michael Vogt ] * lp:~mvo/python-apt/debfile-multiarch: - add multiarch support to the debfile.py code * tests/test_apt_cache.py: - add additional check if provides test can actually be run python-apt (0.8.2) unstable; urgency=low [ Michael Vogt ] * merged from ubuntu: - use logging instead of print - update distro template Ubuntu.info.in - add xz compression support * po/python-apt.pot: - refreshed * po/pt_BR.po: - updated, thanks to Sergio Cipolla (closes: #628398) * po/da.po: - updated, thanks to Joe Dalton (closes: #631309) * po/sr.po: - updated, thanks to Nikola Nenadic (closes: #638308) * python/apt_pkgmodule.cc: - add apt_pkg.get_architectures() call * apt/cache.py: - remove "print" when creating dirs in apt.Cache(rootdir=dir), thanks to Martin Pitt - add __lt__ to apt.Package so that sort() sorts by name on list of package objects * debian/control: - add recommends to xz-lzma to ensure we have the unlzma command * apt/cache.py: - set Dir::bin::dpkg if a alternate rootdir is given (LP: #885895) * build fixes for the apt in experimental * apt/debfile.py: - raise error when accessing require_changes and missing_deps without calling check() before, thanks to Tshepang Lekhonkhobe (closes: #624379) * apt/package.py: - add new "suggests" property, thanks to Christop Groth - allow Dependency object to be iteratable, this allows to write code like: for or_dep_group in pkg.candidate.dependencies: for dep in or_dep_group: do_something() (thanks to Christop Groth) * apt/progress/base.py: - write exception text to stderr to avoid hidding exceptions like "pre-configure failed" from libapt (thanks to Jean-Baptiste Lallement) [ Tshepang Lekhonkhobe ] * rm usage of camelcase in cache.py doc (closes: #626617) * grammar fix in the cache.py doc (closes: #626610) [ Nikola Pavlović ] * fixed a typo, changed "Open Source software" to "free and open-source software" (LP: #500940) python-apt (0.8.1) unstable; urgency=low [ Julian Andres Klode ] * Breaks: debsecan (<< 0.4.15) [not only << 0.4.14] (Closes: #629512) [ Michael Vogt ] * python/arfile.cc: - use APT::Configuration::getCompressionTypes() instead of duplicating the supported methods here * tests/test_debfile.py: - add test for raise on unknown data.tar.xxx * tests/test_aptsources_ports.py, tests/test_aptsources.py: - use tmpdir during the tests to fix test failure with apt from experimental * tests/test_apt_cache.py: - fix test by providing proper fixture data - fix test if sources.list is not readable (as is the case on some PPA buildds) * apt/package.py: - fix py3 compatiblity with print * tests/test_all.py: - skip all tests if sources.list is not readable (as is the case on some builds) - packages in marked_install state can also be auto-removable * add concept of "ParentComponent" for e.g. ubuntu/multiverse that needs universe enabled as well (plus add test) * apt/progress/gtk2.py: - update to the latest vte API for child-exited (LP: #865388) python-apt (0.8.0) unstable; urgency=low * Upload to unstable [ Julian Andres Klode ] * Increase Breaks for update-notifier to 0.99.3debian9 * utils/get_debian_mirrors.py: Adjust for new Alioth SCM urls * debian/control: Standards-Version 3.9.2 * Fix Lintian overrides * Fix spelling errors reported by Lintian (sep[a->e]rated, overrid[d]en) * po/urd.po: Remove, ur.po is the correct file * debian/source/format: Add, set it to "3.0 (native)" [ Tshepang Lekhonkhobe ] * Fix get_changelog in Python 3 (Closes: #626532) * apt/package.py: fix a few typos [formated->formatted] (Closes: #597054) * doc/source/tutorials/contributing.rst: minor improvements (Closes: #625225) - one typo [2to => 2to3], one broken link [pep8.py link] [ Translation updates ] * Esperanto (Closes: #626430) python-apt (0.8.0~exp4) experimental; urgency=low * apt_pkg: Add OrderList, wanted for mancoosi (Closes: #623485) * apt_pkg: Add subclassing fun to PackageManager, for #623485 as well * apt.cache: Emit change signals in ProblemResolver * apt.Cache: Add a _changes_count member for later use python-apt (0.8.0~exp3) experimental; urgency=low [ Stéphane Graber ] * Update enable_component to also apply to -src entries (LP: #758732) [ Julian Andres Klode ] * apt_pkg: Add apt_pkg.Version.multi_arch and friends python-apt (0.8.0~exp2) experimental; urgency=low * aptsources: Parse multi-arch sources.list files correctly * aptsources: Allow insertion of new multi-arch entries * aptsources: Various cleanup work * all: Fix all instances of ResourceWarning about unclosed files * tests/test_apt_cache.py: Use assertTrue() instead of assert_() * apt_pkg: Raise error when parse_commandline gets empty argv (LP: #707416) * apt_pkg: Fix time_to_str, time_rfc1123 to accept more correct values (time_to_str accepts unsigned long, time_rfc1123 long long, y2k31-correct). * apt.progress: Use long for ETA, natural type for size (LP: #377375) * aptsources/sourceslist.py: s/aptsource.py/sourceslist.py/ (LP: #309603) * doc/examples: Add example on how to get architecture names (LP: #194374) * apt_pkg: Fix unsigned/long-vs-int issues (LP: #610820) * apt.cache: Document that update() may need an open() (Closes: #622342) * apt.cache: Add a fetch_archives() method (Closes: #622347) * doc: Fix a minor formatting error, patch by Jakub Wilk (Closes: #608914) * apt.package: Add 'tasks' to Version, improve doc (Closes: #619574) * doc: Fix documentation of BaseDependency.relation (Closes: #607031) python-apt (0.8.0~exp1) experimental; urgency=low * Disable the old-style API, and break all packages using it * Add an 'is_multi_arch' attribute to apt_pkg.Cache * Add apt_pkg.Group class, wrapping pkgCache::GrpIterator * Change apt_pkg.Cache() so that passing None for 'progress' results in no progress output * Support (name, arch) tuples in apt_pkg.Cache mappings, wrapping FindPkg() with two string parameters. * Introduce apt_pkg.Cache.groups and apt_pkg.Cache.group_count * Fix debian/rules to work correctly with tilde in version number python-apt (0.7.100.3) unstable; urgency=low [ Barry Warsaw ] * PyFetchProgress::Pulse(): When ignoring a false return value from PyArg_Parse() after running the simple callback pulse(), there can be an exception on the stack, which must be cleared. (LP: #711225) [ Michael Vogt ] * python/arfile.cc, apt/debfile.py: - add support for .xz archives * tests/test_debfile.py: - add test for xz compression * update priority of python3-apt to match the archive [ Julian Andres Klode ] * python/cache.cc: - Add Package.get_fullname() and Package.architecture * apt/cache.py, apt/package.py: - Add architecture property to apt.Package (LP: #703472) - Change apt.Package.name to use get_fullname(pretty=True) (LP: #740072) * tests/test_debfile.py: - Disable multi-arch for the test, it fails when run via test_all.py - Fix mixed tab/spaces indentation in xz test * tests/test_apt_cache.py: - Package records 'Package' field now corresponds to shortname * debian/python3-apt-dbg.install - Do not try to install old-style debugging files. * debian/rules: - Support the nocheck build option and ignore test failures on hurd (Closes: #610448) - Move Python 3 debug files before installing other files (Closes: #619528) [ Scott Kitterman ] * Removed ${python:Breaks} - No longer used in dh_python2 python-apt (0.7.100.2) unstable; urgency=low * apt/progress/text.py: - only run ioctl for termios.TIOCGWINSZ if the fd is a tty * apt/debfile.py, tests/test_debfile.py: - strip "./" from _get_content and add tests, this fixes a control file extraction bug in gdebi * python/depcache.cc: - when using the actiongroup as a contextmanager incref/decref on enter and leave. this should fix the instablity issues that aptdaemon runs into (LP: #691134) * debian/python3-apt.install: - fix py3 extension module install location (thanks to Barry) * python/depcache.cc: - provide bindings for new libapt SetCandidateRelease() * debian/control: - require new libapt-pkg-dev SetCandidateRelease() * py3 compatible exception handline * debian/control: - bump minimal python version to >= 2.6 * python/apt_pkgmodule.cc: - strip multiarch by default in RealParseDepends - add optional parameter to allow parse_depends() to keep the multiarch parameter * tests/test_deps.py: - add test forapt_pkg.parse_depends(strip_multiarch=True) python-apt (0.7.100.1) unstable; urgency=low [ Julian Andres Klode ] * python/generic.h: Fix a memory leak (leaking on every unicode string). * debian/control: add Replaces to python-apt-common, python3-apt; to avoid file conflicts with files previously in python-apt (Closes: #605136). [ Michael Vogt ] * python/generic.h: - set Object to NULL in CppDeallocPtr * python/depcache.cc: - don't run "actiongroup.release()" if the object was already deallocated * tests/test_apt_cache.py: - fix tests to work if apt compressed indexes are enabled python-apt (0.7.100) unstable; urgency=low * Final 0.7.100 release; targeted at Squeeze. * apt/debfile.py: - Replace (undocumented) use of python-debian debfile.DebFile API with the equivalent apt_inst.DebFile API (Closes: #603043) * apt/package.py: - Fix docstring of Package.mark_delete() (Closes: #599042) * doc: - Various documentation updates. - The C++ API/ABI is stable now. * po - Update sl.po (Closes: #603359) python-apt (0.7.98.1) unstable; urgency=low [ Piotr Ozarowski ] * Use dh_python3 to handle Python 3 files - bump minimum required versions of python-central and python3-all-dev - add new python3-apt, python3-apt-bdg and python-common binary packages * Replace python-central with dh_python2 python-apt (0.7.98) unstable; urgency=low [ Michael Vogt ] * python/acquire.cc: - return long long when calling TotalNeeded(), FetchNeeded() and PartialPresent() from pkgAcquire(). This follows the change in libapt. * apt/debfile.py: - add missing init for _installed_conflicts (LP: #618597) * add "provides" property to the apt.Version objects * apt/debfile.py: - fix error when reading binary content and add regresion test * merged patch from Samuel Lidén Borell to fix crash if there utf8 in the control file (LP: #624290) and add test * apt/cache.py: - add "sources_list" parameter to cache.update() to force updating a single sources.list entry only * debian/control: - add missing build-depends on python-debian (needed to run the tests for apt.debfile.DebPackage() * data/templates/Ubuntu.info.in: - add extras.ubuntu.com and archvie.canonical.com to the templates * aptsources/distinfo.py, aptsources/distro.py: - support non-official templates (like extras.ubuntu.com) * fix return type of DebSize() and UsrSize(), thanks to Sebastian Heinlein, LP: #642936 * merge fix from Steven Chamberlain <steven@pyro.eu.org> for crash in unattended-upgrades, many many thanks (closes: #596408) * python/acquire-item.cc: - fix two more int -> long long change to follow the changes from libapt - do use PyString_FromFormat(), in python versions below 2.7 it does not support long long (%llu), use strprintf() from libapt instead [ Kiwinote ] * apt/debfile: - don't fail if we conflict with the pkgs we are reinstalling python-apt (0.7.97.1) unstable; urgency=low * tests/test_apt_cache.py: - Do not insert ".." into sys.path, fixes FTBFS python-apt (0.7.97) unstable; urgency=low [ Julian Andres Klode ] * python/tag.cc: - Support gzip compression for control files (Closes: #383617), requires APT (>> 0.7.26~exp10) to work. * doc/conf.py: - Correctly handle non-digit characters in version (ignore everything after them). * python/apt_pkgmodule.cc: - Bind pkgAcquire::Item::StatTransientNetworkError (Closes: #589010) * doc/library/apt_pkg.rst: - Document Configuration.dump(). * debian/control: - Adapt to new Python 3 handling (Closes: #593042) - Build-depend on APT >= 0.8 to get gzip compression enabled (optional, can be reverted for backports) - Set Standards-Version to 3.9.1 [ Michael Vogt ] * python/configuration.cc: - add binding for the "dump()" method to configruation objects * apt/debfile.py: - fix crash in DscFile handling and add regression test * po/pt_BR.po: - updated, thanks to Sergio Cipolla (Closes: #593754) python-apt (0.7.96.1) unstable; urgency=low * tests/test_debfile.py: - properly setup fixture data to make debfile test pass (closes: #588796) python-apt (0.7.96) unstable; urgency=low [ Michael Vogt ] * data/templates/gNewSense.info.in, data/templates/gNewSense.mirrors: - add gNewSense template and mirrors, thanks to Karl Goetz * data/templates/Ubuntu.info.in, data/templates/Ubuntu.mirrors: - updated for Ubuntu maverick * doc/source/conf.py: - do not fail on non-digits in the version number * utils/get_debian_mirrors.py: - ignore mirrors without a county * apt/cache.py: - add new "dpkg_journal_dirty" property that can be used to detect a interrupted dpkg (the famous "E: dpkg was interrupted, you must manually run 'dpkg --configure -a'") * merged lp:~kiwinote/python-apt/merge-gdebi-changes, this port the DebPackage class fixes from gdebi into python-apt so that gdebi can use the class from python-apt directly * apt/debfile.py: - check if the debfiles provides are in conflict with the systems packages - fix py3 compatibility * tests/test_debs/*.deb, tests/test_debfile.py: - add automatic test based on the test debs from gdebi * python/progress.cc: - deal with missing return value from the acquire progress in pulse() [ Martin Pitt ] * tests/test_apt_cache.py: Test accessing the record of all packages during iteration. This both ensures that it's well-formatted and structured, and also that accessing it does not take an inordinate amount of time. This exposes a severe performance problem when using gzip compressed package indexes. * apt/cache.py: When iterating over the cache, do so sorted by package name. With this we read the the package lists linearly if we need to access the package records, instead of having to do thousands of random seeks; the latter is disastrous if we use compressed package indexes, and slower than necessary for uncompressed indexes. [ Julian Andres Klode ] * Re-enable Python 3 support for latest python-default changes (hack). python-apt (0.7.95) unstable; urgency=low [ Julian Andres Klode ] * 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. [ 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 python-apt (0.7.94.2) unstable; urgency=low * Revert 0.7.93.3 and just set APT::Architecture to i386 for test_aptsources; fixes FTBFS on powerpc. python-apt (0.7.94.1) unstable; urgency=low * 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). python-apt (0.7.94) unstable; urgency=low * 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. python-apt (0.7.93.3) unstable; urgency=low * data/templates/Ubuntu.info.in: - Use generic MirrorsFile key instead of per-architecture ones in order to fix FTBFS on !amd64 !i386 (Closes: #571752) python-apt (0.7.93.2) unstable; urgency=low [ 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 python-apt (0.7.93.1) unstable; urgency=low [ 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 ] * apt/utils.py: - add some misc utils like get_release_filename_for_pkg() python-apt (0.7.93) unstable; urgency=low [ 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). [ 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 python-apt (0.7.92) experimental; urgency=low * 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. python-apt (0.7.91) experimental; urgency=low [ 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) python-apt (0.7.90) experimental; urgency=low * 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 python-apt (0.7.13.4) unstable; urgency=low [ Michael Vogt ] * po/zh_CN.po: - updated, thanks to Feng Chao * python/progress.cc: - if the mediaChange() does not return anything or is not implemented send "false" to libapt [ Julian Andres Klode ] * apt/package.py: Fix dictionary access of VersionList, patch by Sebastian Heinlein (Closes: #554895). python-apt (0.7.13.3) unstable; urgency=low [ Michael Vogt ] * apt/cache.py: - add actiongroup() method (backport from 0.7.92) - re-work the logic in commit() to fail if installArchives() returns a unexpected result * apt/progress/__init__.py: - catch exceptions in pm.DoInstall() [ Sebastian Heinlein ] * apt/package.py: - Export if a package is an essential one (Closes: #543428) [ Julian Andres Klode ] * python/depcache.cc: - Make ActionGroups context managers so apt.Cache.actiongroup() has the same behavior as in 0.7.92 * apt/cache.py: - Add raiseOnError option to Cache.update() (Closes: #545474) * apt/package.py: - Use the source version instead of the binary version in fetch_source(). * apt/progress/__init__.py: - Correctly ignore ECHILD by checking before EINTR (Closes: #546007) python-apt (0.7.13.2) unstable; urgency=low * apt/cache.py: - Convert argument to str in __getitem__() (Closes: #542965). python-apt (0.7.13.1) unstable; urgency=low * apt/package.py: - Fix Version.get_dependencies() to not ignore the arguments. python-apt (0.7.13.0) unstable; urgency=low [ Michael Vogt ] * apt/package.py: - add "recommends" property * apt/cache.py, python/cache.cc: - add optional pulseInterval option to "update()" [ Sebastian Heinlein ] * apt/cache.py: - Fix the (inst|keep|broken|del)_count attributes (Closes: #542773). [ Julian Andres Klode ] * apt/package.py: - Introduce Version.get_dependencies() which takes one or more types of dependencies and returns a list of Dependency objects. - Do not mark the package as manually installed on upgrade (Closes: #542699) - Add Package.is_now_broken and Package.is_inst_broken. * apt/cache.py: - Introduce ProblemResolver class (Closes: #542705) * python/pkgsrcrecords.cc: - Fix spelling error (begining should be beginning). * po: - Update template and the translations de.po, fr.po (Closes: #467120), ja.po (Closes: #454293). * debian/control: - Update Standards-Version to 3.8.3. * debian/rules: - Build with DH_PYCENTRAL=include-links instead of nomove. python-apt (0.7.12.1) unstable; urgency=low * apt/debfile.py: - Fix missing space in message (Closes: #539704) * apt/package.py: - Add missing argument to Version.__le__() and Version.__ge__() * debian/control: - Do not build-depend on python-gtk2 and python-vte on kfreebsd-*. * setup.py: - Always build documentation, even if python-gtk2 is not installed. python-apt (0.7.12.0) unstable; urgency=low [ Julian Andres Klode ] * python/cache.cc: - Support Breaks, Enhances dependency types (Closes: #416247) * debian/control: - Only recommend libjs-jquery (Closes: #527543) - Build-depend on libapt-pkg-dev (>= 0.7.22~) - Update Standards-Version to 3.8.2 * apt/cache.py: - Correctly handle rootdir on second and later invocations of open(), by calling InitSystem again. (LP: #320665). - Provide broken_count, delete_count, install_count, keep_count properties (Closes: #532338) - 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 - Make comparisons of Version object more robust. - Return VersionList objects in Package.versions, which are sequences and also provide features of mappings. (partial API BREAK) + Allows to get a specific version (Closes: #523998) * apt/progress/__init__.py: - Do not break out of InstallProgress.waitChild()'s loop just because it is hitting EINTR, but only on child exit or on ECHILD. * Use debhelper 7 instead of CDBS [ Stefano Zacchiroli ] * debian/python-apt.doc-base: register the documentation with the doc-base system (Closes: #525134) [ Sebastian Heinlein ] * apt/progress.py: Extract the package name from the status message (Closes: #532660) python-apt (0.7.11.1) unstable; urgency=low [ Stephan Peijnik ] * apt/progress/__init__.py: - Exception handling fixes in InstallProgress class. [ Michael Vogt ] * python/tag.cc: - merge patch from John Wright that adds FindRaw method (closes: #538723) python-apt (0.7.11.0) unstable; urgency=low [ Julian Andres Klode ] * data/templates/Debian.info.in: Squeeze will be 6.0, not 5.1 [ Stephan Peijnik ] * apt/progress/__init__.py: - add update_status_full() that takes file_size/partial_size as additional callback arguments - add pulse_items() that takes a addtional "items" tuple that gives the user full access to the individual items that are fetched * python/progress.cc: - low level code for update_status_full and pulse_items() - better threading support [ Michael Vogt ] * aptsources/distro.py: - fix indent error that causes incorrect sources.list additons (LP: #372224) * python/progress.cc: - fix crash in RunSimpleCallback() * apt/cache.py: - when the cache is run with a alternative rootdir, create required dirs/files automatically python-apt (0.7.10.4) unstable; urgency=low [ Michael Vogt ] * data/templates/Ubuntu.info.in: - updated for the new ubuntu karmic version * data/templates/Debian.info.in: - add squeeze [ Otavio Salvador ] * utils/get_debian_mirrors.py: updated to support current mirror page. * Update Debian mirrors. (Closes: #518071) python-apt (0.7.10.3) unstable; urgency=low * apt/package.py: Handle cases where no candidate is available, by returning None in the candidate property. (Closes: #523801) python-apt (0.7.10.2) unstable; urgency=low * apt/package.py: Handle cases where no candidate is available and one of the deprecated properties (e.g. candidateVersion) is requested. (Closes: #523801) * setup.py, debian/rules: Support version in setup.py again by getting the value from the variable DEBVER (defined in debian/rules), falling back to None. python-apt (0.7.10.1) unstable; urgency=low * 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. python-apt (0.7.10) unstable; urgency=low * Build-Depend on python-debian, use it to get version number from changelog * Depend on libjs-jquery, and remove internal copy (Closes: #521532) * apt/package.py: - Introduce Version.{uri,uris,fetch_binary()} * debian/control: - Remove mdz from Uploaders (Closes: #521477), add myself. - Update Standards-Version to 3.8.1 - Use ${binary:Version} instead of ${Source-Version} - Fix spelling error: python -> Python * debian/copyright: Switch to machine-interpretable copyright * Fix documentation building - doc/source/conf.py: Only include directories for current python version. - debian/control: Build-Depend on python-gtk2, python-vte. - setup.py: If pygtk can not be imported, do not build the documentation. * Breaks: debdelta (<< 0.28~) to avoid more problems due to the internal API changes from 0.7.9. python-apt (0.7.9) unstable; urgency=low [ Julian Andres Klode ] * apt/gtk/widgets.py: - Handle older versions of python-gobject which do not ship glib * apt/package.py: Introduce the Version class - Deprecate Package.candidate*() and Package.installed*(), except for installedFiles. - Provide Version.get_source() (LP: #118788) - Provide Package.versions (Closes: #513236) * apt/progress/: New package, replaces apt.progress and apt.gtk - apt/progress/gtk2.py: Moved here from apt/gtk/widgets.py - apt/progress/__init__.py: Move here from apt/progress.py * doc/source/*: Improve the documentation - Document more attributes and functions of apt_pkg (they are all listed) [ Michael Vogt ] * aptsources/distro.py: - use iso_3166.xml instead of iso_3166.tab - fix incorrect indent * debian/control: - add Recommends to iso-codes (for iso_3166.xml) * apt/package.py: - make sure to set the defaulttimeout back to the original value (in getChangelog(), LP: #314212) Closes: #513315 * apt/cache.py: - when setting a alternative rootdir, read the config from it as well * python/configuration.cc, python/apt_pkgmodule.cc: - add apt_pkg.ReadConfigDir() * python/cache.cc, tests/getcache_mem_corruption.py: - test if progress objects have the right methods and raise error if not (thanks to Emanuele Rocca) closes: #497049 * apt/package.py: - avoid uneeded interal references in the Package objects * aptsources/sourceslist.py: - fix bug in invalid lines detection (LP: #324614) python-apt (0.7.9~exp2) experimental; urgency=low [ Julian Andres Klode ] * apt/*.py: - Almost complete cleanup of the code - Remove inconsistent use of tabs and spaces (Closes: #505443) - Improved documentation * apt/debfile.py: - Drop get*() methods, as they are deprecated and were never in a stable release - Make DscSrcPackage working * apt/gtk/widgets.py: - Fix the code and document the signals * Introduce new documentation build with Sphinx - Contains style Guide (Closes: #481562) - debian/rules: Build the documentation here - setup.py: Remove pydoc building and add new docs. - debian/examples: Include examples from documentation - debian/python-apt.docs: + Change html/ to build/doc/html. + Add build/doc/text for the text-only documentation * setup.py: - Only create build/data when building, not all the time - Remove build/mo and build/data on clean -a * debian/control: - Remove the Conflicts on python2.3-apt, python2.4-apt, as they are only needed for oldstable (sarge) - Build-Depend on python-sphinx (>= 0.5) * aptsources/distinfo.py: - Allow @ in mirror urls (Closes: #478171) (LP: #223097) * Merge Ben Finney's whitespace changes (Closes: #481563) * Merge Ben Finney's do not use has_key() (Closes: #481878) * Do not use deprecated form of raise statement (Closes: #494259) * Add support for PkgRecords.SHA256Hash (Closes: #456113) [ Michael Vogt ] * apt/package.py: - fix bug in candidateInstalledSize property * aptsources/distinfo.py: - fix too restrictive mirror url check * aptsources/distro.py: - only add nearest_server and server to the mirrors if they are defined python-apt (0.7.9~exp1) experimental; urgency=low * 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 python-apt (0.7.8) unstable; urgency=low [ Michael Vogt ] * python/cache.cc: - fix crash if Ver.PriorityType() returns NULL - fix GetCandidateVer() reporting incorrect versions after SetCandidateVer() was used. Thanks to Julian Andres Klode for the test-case (LP: #237372) * python/apt_instmodule.cc: - do not change working dir in debExtractArchive() (LP: #184093) * apt/cache.py: - support "in" in apt.Cache() (LP: #251587) * apt/package.py: - do not return None in sourcePackageName (LP: #123062) * python/progress.cc: - when pulse() does not return a boolean assume "true" (thanks to Martin Pitt for telling me about the problem) * python/apt_pkgmodule.cc: - add "SelState{Unknown,Install,Hold,DeInstall,Purge}" constants * aptsources/__init__.py, aptsources/distinfo.py: - run apt_pkg.init() when aptsources gets imported and not the distinfo function - fix detection of cdrom sources and add test for it * python/metaindex.cc - fix crash when incorrect attribute is given * data/templates/Ubuntu.info.in: - updated * aptsources/distro.py: - add parameter to get_distro() to make unit testing easier * tests/test_aptsources_ports.py: - add test for arch specific handling (when sub arch is on a different mirror than "main" arches) [ Julian Andres Klode ] * python/acquire.cc (GetPkgAcqFile): Support DestDir and DestFilename. python-apt (0.7.7.1+nmu1) unstable; urgency=medium * 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) python-apt (0.7.7.1) unstable; urgency=low * data/templates/Debian.info.in: - add 'lenny' template info (closes: #476364) * aptsources/distinfo.py: - fix template matching for arch specific code (LP: #244093) python-apt (0.7.7) unstable; urgency=low [ Emanuele Rocca ] * data/templates/Debian.info.in: - 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) * doc/examples/config.py: - Fix config.py --help (closes: #257007) [ Michael Vogt ] * python/apt_pkgmodule.cc: - fix bug in hashsum calculation when the original string contains \0 charackters (thanks to Celso Providelo and Ryan Hass for the test-case) LP: #243630 * tests/test_hashsums.py: - add tests for the hashsum code * apt/package.py: - add "isAutoRemovable()" method * python/pkgsrcrecords.cc: - add "Record" attribute to the PkgSrcRecord to access the full source record * debian/rules: - remove the arch-build target, we have bzr-builddeb now python-apt (0.7.6) unstable; urgency=low * apt/cache.py: - add "memonly" option to apt.Cache() to force python-apt to not touch the pkgcache.bin file (this works around a possible race condition in the pkgcache.bin handling) * data/templates/Ubuntu.info.in: - added ubuntu 'intrepid' * debian/README.source: - added (basic) documentation how to build python-apt * aptsources/distinfo.py: - support arch specific BaseURI, MatchURI and MirrosFile fields in the distinfo template * debian/control: - move bzr branch to bzr.debian.org and update Vcs-Bzr python-apt (0.7.5) unstable; urgency=low * use the new ListUpdate() code * add example in doc/examples/update.py * python/pkgrecords.cc: - export the Homepage field * python/tar.cc: - fix .lzma extraction (thanks to bigjools) * python/sourcelist.cc: - support GetIndexes() GetAll argument to implement something like --print-uris * python/apt_pkgmodule.cc: - add InstState{Ok,ReInstReq,Hold,HoldReInstReq} constants * apt/cache.py: - add reqReinstallPkgs property that lists all packages in ReInstReq or HoldReInstReq python-apt (0.7.4) unstable; urgency=low * apt/debfile.py: - added wrapper around apt_inst.debExtract() - support dictionary like access * apt/package.py: - fix apt.package.Dependency.relation initialization * python/apt_instmodule.cc: - added arCheckMember() - fix typo * aptsources/distro.py: - throw NoDistroTemplateException if not distribution template can be found * python/string.cc: - fix overflow in SizeToStr() * python/metaindex.cc: - added support for the metaIndex objects * python/sourceslist.cc: - support new "List" attribute that returns the list of metaIndex source entries * python/depcache.cc: - be more threading friendly * python/tag.cc - support "None" as default in ParseSection(control).get(field, default), LP: #44470 * python/progress.cc: - fix refcount problem in OpProgress - fix refcount problem in FetchProgress - fix refcount problem in CdromProgress * apt/README.apt: - fix typo (thanks to Thomas Schoepf, closes: #387787) * po/fr.po: - merge update, thanks to Christian Perrier (closes: #435918) * data/templates/: - update templates python-apt (0.7.3.1) unstable; urgency=low * NMU * Fix version to not use CPU and OS since it's not available on APT anymore (closes: #435653, #435674) python-apt (0.7.3) unstable; urgency=low * apt/package.py: - added Record class that can be accessed like a dictionary and return it in candidateRecord and installedRecord (thanks to Alexander Sack for discussing this with me) * doc/examples/records.py: - added example how to use the new Records class * apt/cache.py: - throw FetchCancelleException, FetchFailedException, LockFailedException exceptions when something goes wrong * aptsources/distro.py: - generalized some code, bringing it into the Distribution class, and wrote some missing methods for the DebianDistribution one (thanks to Gustavo Noronha Silva) * debian/control: - updated for python-distutils-extra (>= 1.9.0) * debian/python-apt.install: - fix i18n files * python/indexfile.cc: - increase str buffer in PackageIndexFileRepr python-apt (0.7.2) unstable; urgency=low * build against the new apt * support for new "aptsources" pythn module (thanks to Sebastian Heinlein) * merged support for translated package descriptions * merged support for automatic removal of unused dependencies python-apt (0.7.1) experimental; urgency=low * merged http://glatzor.de/bzr/python-apt/sebi: - this means that the new aptsources modules is available python-apt (0.7.0) experimental; urgency=low * support translated pacakge descriptions * support automatic dependency information python-apt (0.6.22) unstable; urgency=low * python/apt_pkgmodule.cc: - added pkgCache::State::PkgCurrentState enums * python/pkgrecords.cc: - added SourceVer python-apt (0.6.21) unstable; urgency=low * apt/cdrom.py: - better cdrom handling support * apt/package.py: - added candidateDependencies, installedDependencies - SizeToString supports PyLong too - support pkg.architecture - support candidateRecord, installedRecord * apt/cache.py: - fix rootdir * apt/cdrom.py: - fix bug in cdrom mountpoint handling python-apt (0.6.20) unstable; urgency=low * python/generic.h: - fix incorrect use of PyMem_DEL(), use pyObject_DEL() instead. This fixes a nasty segfault with python2.5 (lp: 63226) * python/pkgrecords.cc: - export SHA1Hash() as well * debian/rules: Remove dh_python call. * apt/progress.cc: - protect against not-parsable strings send from dpkg (lp: 68553) * python/pkgmanager.cc: - fix typo (closes: #382853) * debian/control: - tightend dependency (closes: #383478) * apt/progress.py: - use os._exit() in the child (lp: #53298) - use select() when checking for statusfd (lp: #53282) * acknoledge NMU (closes: #378048, #373512) * python/apt_pkgmodule.cc: - fix missing docstring (closes: #368907), Thanks to Josh Triplett * make it build against python2.5 * python/progress.cc: - fix memleak (lp: #43096) python-apt (0.6.19) unstable; urgency=low [ Michael Vogt ] * doc/examples/print_uris.py: - added a example to show how the indexfile.ArchiveURI() can be used with binary packages * python/apt_pkgmodule.cc: - export sha256 generation [ Otavio Salvador ] * apt/cache.py: - fix commit doc string to also cite the open related callbacks - allow change of rootdir for APT database loading - add dh_installexamples in package building Closes: #376014 * python/depcache.cc: - "IsGarbage()" method added (to support auto-mark) python-apt (0.6.18-0.2) unstable; urgency=low * Non-maintainer upload. * Add ${shlibs:Depends} and ${misc:Depends} (Closes: #377615). python-apt (0.6.18-0.1) unstable; urgency=high * Non-maintainer upload. * Call dh_pycentral and dh_python before dh_installdeb, to make sure the dh_pycentral snippets are put into the maintainer scripts; patch from Sam Morris. (Closes: #376416) python-apt (0.6.18) unstable; urgency=low * Non-maintainer upload. * Update for the new Python policy. Closes: #373512 python-apt (0.6.17) unstable; urgency=low * apt/progress.py: - initialize FetchProgress.eta with the correct type - strip the staus str before passing it to InstallProgress.statusChanged() - added InstallProgress.statusChange(pkg, percent, status) - make DumbInstallProgress a new-style class (thanks to kamion for the suggestions) - fix various pychecker warnings * apt/cache.py: - return useful values on Cache.update() - Release locks on failure (thanks to Colin Watson) - fix various pychecker warnings * apt/package.py: - fix various pychecker warnings - check if looupRecords succeeded - fix bug in the return statement of _downloadable() * python/srcrecords.cc: - add "Restart" method - don't run auto "Restart" before performing a Lookup - fix the initalization (no need to pass a PkgCacheType to the records) - added "Index" attribute * python/indexfile.cc: - added ArchiveURI() method python-apt (0.6.16.2) unstable; urgency=low * Non-maintainer upload. * debian/control: + Replaces: python-apt (<< 0.6.11), instead of Conflicts which is not correct here. (closes: #308586). python-apt (0.6.16.1) unstable; urgency=low * memleak fixed when pkgCache objects are deallocated * typos fixed (thanks to Gustavo Franco) * pkgRecords.Record added to get raw record data * python/cache.cc: "key" in pkgCache::VerIterator.DependsList[key] is no longer locale specific but always english python-apt (0.6.16) unstable; urgency=low * added GetPkgAcqFile to queue individual file downloads with the system (dosn't make use of the improved pkgAcqFile yet) * added SourceList.GetIndexes() * rewrote apt.cache.update() to use the improved aquire interface * apt/ API change: apt.Package.candidateOrigin returns a list of origins now instead of a single one * apt_pkg.Cdrom.Add() returns a boolean now, CdromProgress has totalSteps * added support for pkgIndexFile and added SourcesList.FindIndex() * added "trusted" to the Origin class python-apt (0.6.15) unstable; urgency=low * rewrote cache.Commit() and make it raise proper Exception if stuff goes wrong * fix a invalid return from cache.commit(), fail if a download failed * apt.Package.candidateOrigin returns a class now * added pkgAcquire, pkgPackageManager and a example (acquire.py) * tightend build-dependencies for new apt and the c++ transition python-apt (0.6.14) unstable; urgency=low * doc/examples/build-deps.py: - fixed/improved (thanks to Martin Michlmayr, closes: #321507) * apt_pkg.Cache.Update() does no longer reopen the cache (this is the job of the caller now) * python/srcrecords.cc: - support for "srcrecords.Files" added - always run "Restart" before performing a Lookup * export locking via: GetLock(),PkgSystem{Lock,UnLock} * apt/cache.py: - added __iter__ to make "for pkg in apt.Cache:" stuff possible python-apt (0.6.13) unstable; urgency=low * support for depcache added * support for the PkgProblemResolver added * support for PkgSrcRecord.BuildDepends added * support for cdrom handling (add, ident) added * support for progress reporting from operations added (e.g. OpProgress, FetchProgress, InstallProgress, CdromProgress) * added tests/ directory with various tests for the code * native apt/ python directory added that contains a more pythonic interface to apt_pkg * made the apt/ python code PEP08 conform * python exceptions return the apt error message now (thanks to Chris Halls for the patch) python-apt (0.6.12.2) unstable; urgency=low * rebuild against the latest apt (c++ transition) python-apt (0.6.12.1) unstable; urgency=low * rebuild against the latest apt python-apt (0.6.12ubuntu1) breezy; urgency=low * Greek0@gmx.net--2005-main/python-apt--debian--0.6: - python2.{3,4}-apt conflicts with python-apt (<< 0.6.11) (closes: #308586) (closes ubuntu: #11380) python-apt (0.6.12) breezy; urgency=low * added a tests/ directory * added tests/pkgsrcrecords.py that will check if the pkgsrcrecords interface does not segfault * new native python "apt" interface that hides the details of apt_pkg python-apt (0.6.11) experimental; urgency=low * fixed some reference count problems in the depcache and pkgsrcrecords code * DepCache.Init() is never called implicit now * merged with python-apt tree from Greek0@gmx.net--2005-main python-apt (0.5.36ubuntu2) hoary; urgency=low * return "None" in GetCandidateVer() if no Candidate is found python-apt (0.5.36ubuntu1) hoary; urgency=low * DepCache.ReadPinFile() added * Fixed a bug in DepCache.Upgrade() python-apt (0.5.36) hoary; urgency=low * Fix build-depends, somehow lost in merge python-apt (0.5.35) hoary; urgency=low * Target hoary this time python-apt (0.5.34) unstable; urgency=low * Restore Ubuntu changes - Build python 2.4 as default, add python2.3-apt - Typo fix (Ubuntu #4677) python-apt (0.5.33) unstable; urgency=low * Merge michael.vogt@ubuntu.com--2005/python-apt--pkgDepCache--0 - Basic depcache API (Ubuntu #6889) python-apt (0.5.32) unstable; urgency=low * Update to work with apt 0.5.32 (bzip2 deb support) python-apt (0.5.10) unstable; urgency=low * Recompile with apt 0.5 python-apt (0.5.9) unstable; urgency=low * Fix broken object initialization in sourcelist.cc and srcrecords.cc (Closes: #215792) python-apt (0.5.8) unstable; urgency=low * Adjust build-depends to build with python2.3. No other changes. * This seems to break the new source package support, probably because the new source package support is buggy. python-apt (0.5.5.2) unstable; urgency=low * Add myself to Uploaders so that bugs don't get tagged as NMU-fixed anymore * Initial support for working with source packages (Closes: #199716) python-apt (0.5.5.1) unstable; urgency=low * DepIterator::GlobOr increments the iterator; don't increment it again. This caused every other dependency to be skipped (Closes: #195805) * Avoid a null pointer dereference when calling keys() on an empty configuration (Closes: #149380) python-apt (0.5.5) unstable; urgency=low * Rebuild with apt 0.5.5 python-apt (0.5.4.9) unstable; urgency=low * Parse /var/lib/dpkg/status in examples/tagfile.py, so that it works out of the box (Closes: #175340) * Rebuild with apt 0.5.4.9 (libapt-pkg-libc6.3-5-3.3) python-apt (0.5.4.4) unstable; urgency=low * Fix for memory leak with TmpGetCache. Closes: #151489 * Include additional examples from Moshe Zadka <m@moshez.org> Closes: #150091, #152048 * Rebuild for python2.2, which is now the default version Closes: #158460 * No CVS directories in source tarball Closes: #157773 python-apt (0.5.4.3) unstable; urgency=low * #include <new> in python/generic.h so that we can build on ia64, which uses g++-2.96 (Closes: #137467) python-apt (0.5.4.2) unstable; urgency=high * Fix g++-3.0 compilation issues (Closes: #134020) python-apt (0.5.4.1) unstable; urgency=low * Add apt-utils to build-depends, since libapt-pkg-dev doesn't pull it in. This should allow python-apt to be autobuilt more readily. python-apt (0.5.4) unstable; urgency=low * Initial release. * Initial packaging by Jason Gunthorpe, et al.
ea2896fb
Loading