What’s New In python-apt 1.0¶
Python-Apt 1.0 fixes several issues and use of deprecated methods. Most importantly, it introduces large file support
New features¶
- apt_pkg.AcquireFilecan now take a hash string that is not an md5 value, using the new hash argument.
- A new a - apt_pkg.TagFile.close()method was added
- apt_pkg.TagFileis now a context manager
- The high-level cache class, - apt.cache.Cacheand it’s companion- apt.cache.FilteredCachenow support package names with special architecture qualifiers such as :all and :native.
- The method - apt.cache.Cache.connect2()allows connecting callbacks on cache changes that take the cache as their first argument, reducing the potential for reference cycles.
- The property - apt.package.Version.is_installedwas added.
- The properties - apt.package.BaseDependency.installed_target_versionsand- apt.package.Dependency.installed_target_versionswere added.
- The property - apt.Dependency.rawtypewas added to give the raw type of a dependency, such as ‘Depends’.
- The attribute - apt_pkg.Dependency.comp_type_deband the property- apt.Dependency.relation_debwere added, they return a Debian-style comparison operator instead of a mathematical-style one.
- A new filter for filtered caches is provided, - apt.cache.InstalledFilter.
Backward-incompatible changes¶
- apt.Versionnow compares package names in addition to version only when checking for equality. This was broken previously.
Deprecated¶
The following features are deprecated, starting with this release:
- The section member of - apt_pkg.Package
- The files member of of - apt_pkg.SourceRecords
- The md5 argument to - apt_pkg.AcquireFile, it is replaced by the hash argument.
- The method - apt.cache.Cache.connect()has been deprecated. It is replaced by- apt.cache.Cache.connect2()which is more flexible and less prone to reference cycles.
- The attribute - apt_pkg.AcquireItem.modehas been replaced by- apt_pkg.AcquireItem.active_subprocess
- The class - apt_pkg.IndexRecordshas been deprecated and will be removed in the next release.
Removed¶
- The module - apt.progress.gtk2has been removed. There were no users in the Debian archive, its last update was in 2013, and it was buggy already. Apart from that, it suggested that it is OK to run a graphical application as root, and used the unmaintained GTK+ 2 version.- Therefore, there is no replacement, please use PackageKit or aptdaemon for installation in graphical environments. 
- The attribute - apt_pkg.Package.autowas not set anymore, and thus removed.
Maintenance¶
- The classes - apt.cache.Cacheand- apt.cache.FilteredCacheno longer store cyclic references to/between them. This fixes a huge issue, because a cache can have tens of open file descriptors, causing the maximum of file descriptors to be reached easily.
- apt_instnow supports ar and tar archives that are larger than 4 GiB
- Various smaller bug fixes