pkginfo
Query metadata from sdists / bdists / installed packages.
Downloads: 0 (30 days)
Description
``pkginfo`` README ================== This package provides an API for querying the distutils metadata written in the ``PKG-INFO`` file inside a source distribution (an ``sdist``) or a binary distribution (e.g., created by running ``bdist_egg``). It can also query the ``EGG-INFO`` directory of an installed distribution, and the ``*.egg-info`` stored in a "development checkout" (e.g, created by running ``setup.py develop``). Please see the `pkginfo docs <http://packages.python.org/pkginfo>`_ for detailed documentation. ``pkginfo`` Changelog ===================== 1.12.1.2 (2025-02-19) --------------------- - Fix *another* packaging error (more missing testcase data!). LP #2098833 1.12.1.1 (2025-02-18) --------------------- - Fix packaging error which prevents running tests from the released sdist. 1.12.1 (2025-02-18) ------------------- - Disuse the metadata of the installed 'pkginfo' package for testing: during creation of the various 'tox' environments, different versions of 'setuptools' will overwrite that file with different metadata (version, 'Dynamic' headers, etc). LP #2098742 1.12.0 (2024-12-02) ------------------- - Declare content type of long description explicitly as 'text/x-rst'. - Support 'metadata_version' == '2.4' (PEP 639). 1.11.3 (2024-12-02) ------------------- - Add dependency ordering of tox environments FBO running tests in parallel. - Fix tests broken by bump of 'metadata_version' in 'wheels' >= '0.44.0'. LP #2090840. 1.11.2 (2024-10-10) ------------------- - Swap order of zip/tarball checks to work around archives which fool 'zipfile.is_zipfile'. LP #2084140. 1.11.1 (2024-06-08) ------------------- - Update typing stubs, adding additional checks to 'tox -e mypy' to verify that they don't drift in the future. LP #2068777. 1.11.0 (2024-05-31) ------------------- - Add support for Python 3.13. - Drop support for Python 3.7. - Emit warnings for distributions parsed with unknown metadata versions, or metadata versions newer than highest supported version. LP #2058697. - Improve exception message when failing to find a valid 'PKG-INFO' file within an 'sdist' archive. LP #2064652. 1.10.0 (2024-03-03) ------------------- - Add support for Python 3.11 and 3.12. - Drop support for Python 3.6. - Declare explicit testing dependency on 'wheel'. - Add support for Metadata 2.3. 1.9.6 (2023-01-08) ------------------ - Fix various typos in docs / docstrings. LP #2002232. 1.9.5 (2023-01-06) ------------------ - Add stricter typing checks, matching those used in 'twine'. - Fix typing errors / gaps reported from 'twine' CI failure. LP #2002104. 1.9.4 (2023-01-05) ------------------ - Fix packaging of stub file for Python typing support. 1.9.3 (2023-01-03) ------------------ - Added stub files for Python typing support; verify using 'mypy'. LP #1876591. 1.9.2 (2022-11-29) ------------------ - Drop "universal" wheel support (should be redundant with 'python_requires >= 3.6', but just in case). LP #1998258. 1.9.1 (2022-11-29) ------------------ - Restore a deprecated alias for the '_must_decode' helper function, moved from 'pkginfo._compat.must_decode' to 'pkginfo.distribution._must_decode' in 1.90. - Repair unit tests broken by dropping Python 2.7 classifier. 1.9.0 (2022-11-29) ------------------ - Drop support for Python 2.7. - Switch to use 'pytest' vs. 'nose', which doesn't support Python > 3.9. 1.8.3 (2022-06-08) ------------------ - Specify supported Python versions in 'setup.py' using 'python_requires'. LP #1977981. 1.8.2 (2021-12-01) ------------------ - Add fix for installed distributions with '__package__' set to an empty string. LP #1952946. 1.8.1 (2021-11-19) ------------------ - Add 'MANIFEST.in' to ensure example files used by tests are included in source distributions. LP #1951553. 1.8.0 (2021-11-18) ------------------ - Support new standard metadata location for installed dists. LP #1865286. - Don't overwrite header-based 'description' with empty payload. LP #1885458. - Add support for Metadata-Version 2.2. LP #1928729. - Add support for uncompressed tarballs for sdists. LP #1951457. - Add support for Python 3.10. 1.7.1 (2021-07-09) ------------------ - Use Python3 to build docs, and fix doctest examples to use Python3- compatible syntax. LP #1933322. 1.7.0 (2021-01-16) ------------------ - Add support for Python 3.9. - Drop support for Python 3.5. 1.6.1 (2020-10-26) ------------------ - Adjust test classifiers to match supported Python versions. LP #1901127. 1.6.0 (2020-10-20) ------------------ - Add support for Python 3.8. LP #1869854. - Drop support for Python 3.4. - Update tests to match setuptools' change, no longer reporting metadata version for installed packages w/o explicit metadata. LP #1870197. 1.5.0.1 (2019-01-08) -------------------- - Fix broken 'sdist'. LP #1639585. 1.5.0 (2019-01-07) ------------------ - Fix 'console_scripts' entry point syntax. LP #1810734. - Add support for JSON output from the CLI. LP #1700580. - Add support for installed wheels. E.g., 'dist-info/' dirs. LP #1700200. - Harden metadata extraction against unexpected encodings. LP #1780454. - Update tests to match pip/setuptools' use of new metadata version. LP #1772274. - Add support for Python 3.6 and 3.7. - Drop support for Python 3.3. 1.4.2 (2018-03-14) ------------------ - Use relative imports in pkginfo modules. Supports vendoring of the package into setuptools. - Add support for ``Provides-Extra`` and ``Description-Content-Type`` fields. Per https://packaging.python.org/specifications/. See: PEP 566. - Remove support for old setuptools leaving ``PKG-INFO`` in the root of the project directory. 1.4.1 (2016-11-07) ------------------ - Packaging only change (invalid sdist built for 1.4.0). 1.4.0 (2016-11-04) ------------------ - Relicense under MIT license: the PSF license is not suitable for third-party libraries. 1.3.2 (2016-05-24) ------------------ - Packaging-only change (automate fix for wheel built for 1.3.1). 1.3.1 (2016-05-24) ------------------ - Packaging-only change (invalid wheel built for 1.3.0). 1.3.0 (2016-05-23) ------------------ - Update homepage URL to point to Launchpad, rather than PyPI. - Add support for building wheels. - Add support for Python 3.5. - Drop support for Python 2.6 and 3.2. 1.2.1 (2014-01-02) ------------------ - Add overlooked Trove classifier for Python 3.4. 1.2 (2014-01-02) ---------------- - Add support for Python 3.4, PyPy3. - Add 100% coverage for ``pkginfo.commandline`` module. 1.2b1 (2013-12-05) ------------------ - Add support for the "wheel" distribution format, along with minimal metadata 2.0 support (not including new PEP 426 JSON properties). Code (re-)borrowed from Donald Stuft's ``twine`` package. 1.1 (2013-10-09) ---------------- - Fix tests to pass with current PyPy releases. 1.1b1 (2013-05-05) ------------------ - Support "develop" packages which keep their ``*.egg-info`` in a subdirectory. See https://bugs.launchpad.net/pkginfo/+bug/919147. - Add support for "unpacked SDists" (thanks to Mike Lundy for the patch). 1.0 (2013-05-05) ---------------- - No changes from 1.0b2. 1.0b2 (2012-12-28) ------------------ - Suppress resource warning leaks reported against clients. - Fix 'commandline' module under Py3k. 1.0b1 (2012-12-28) ------------------ - Add support for Python 3.2 and 3.3, including testing them under ``tox``. - Add support for PyPy, including testing it under ``tox``. - Test supported Python versions under ``tox``. - Drop support for Python 2.5. - Add a ``setup.py dev`` alias: runs ``setup.py develop`` and installs testing extras (``nose`` and ``coverage``). 0.9.1 (2012-10-22) ------------------ - Fix test failure under Python >= 2.7, which is enforcing 'metadata_version == 1.1' because we have classifiers. 0.9 (2012-04-25) ---------------- - Fix introspection of installed namespace packages. They may be installed as eggs or via dist-installed 'egg-info' files. https://bugs.launchpad.net/pkginfo/+bug/934311 - Avoid a regression in 0.8 under Python 2.6 / 2.7 when parsing unicode. https://bugs.launchpad.net/pkginfo/+bug/733827/comments/3 0.8 (2011-03-12) ---------------- - Work around Python 2.7's breakage of StringIO. Fixes https://bugs.launchpad.net/pkginfo/+bug/733827 - Fix bug in introspection of installed packages missing the ``__package__`` attribute. 0.7 (2010-11-04) ---------------- - Preserve newlines in the ``description`` field. Thanks to Sridhar Ratnakumar for the patch. - 100% test coverage. 0.6 (2010-06-01) ---------------- - Replace use of ``StringIO.StringIO`` with ``io.StringIO``, where available (Python >= 2.6). - Replace use of ``rfc822`` stdlib module with ``email.parser``, when available (Python >= 2.5). Ensured that distributions "unfold" wrapped continuation lines, stripping any leading / trailing whitespace, no matter which module was used for parsing. - Remove bogus testing dependency on ``zope.testing``. - Add tests that the "environment markers" spelled out in the approved PEP 345 are captured. - Add ``Project-URL`` for ``1.2`` PKG-INFO metadata (defined in the accepted version of PEP 345). 0.5 (2009-09-11) ---------------- - Marked package as non-zip-safe. - Fix Trove metadata misspelling. - Restore compatibility with Python 2.4. - Note that the introspection of installed packages / modules works only in Python 2.6 or later. - Add ``Index`` class as an abstraction over a collection of distributions. - Add ``download_url_prefix`` argument to ``pkginfo`` script. If passed, the script will use the prefix to synthesize a ``download_url`` for distributions which do not supply that value directly. 0.4.1 (2009-05-07) ------------------ - Fix bugs in handling of installed packages which lack ``__file__`` or ``PKG-INFO``. 0.4 (2009-05-07) ----------------