# # spec file for package python-packaging # # Copyright (c) 2020 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via https://bugs.opensuse.org/ # %{?!python_module:%define python_module() python-%{**} python3-%{**}} %global flavor %{nil} %if "%{flavor}" == "test" %define psuffix -test %bcond_without test %else %define psuffix %{nil} %bcond_with test %endif Name: python-packaging%{psuffix} Version: 20.3 Release: 1.1 Summary: Core utilities for Python packages License: Apache-2.0 Group: Development/Languages/Python URL: https://github.com/pypa/packaging Source: https://pypi.io/packages/source/p/packaging/packaging-%{version}.tar.gz BuildRequires: %{python_module six} BuildRequires: fdupes BuildRequires: python-rpm-macros Requires: python-pyparsing >= 2.0.2 Requires: python-six BuildArch: noarch # do not add setuptools dependency, this is now a dependency # of setuptools. Ensure that all dependencies also don't depend # on setuptools # (at the moment, six and pyparsing are ok) %if %{with test} BuildRequires: %{python_module pretend} BuildRequires: %{python_module pyparsing >= 2.0.2} BuildRequires: %{python_module pytest} %endif %python_subpackages %description Core utilities for Python packages %prep %setup -q -n packaging-%{version} # sdist must provide a packaging.egg-info, used below in install phase test -d packaging.egg-info %build %python_build %if %{with test} %check %pytest %endif # %%{with_test} %if !%{with test} %install %python_install # Replace distutils generated egg-info, which varies in metadata version and # structure (single file vs directory) based on distutils, with the egg-info # which is provided in the sdist and uses same metadata version as setuptools. %{python_expand rm -r %{buildroot}%{$python_sitelib}/*.egg-info cp -r packaging.egg-info %{buildroot}%{$python_sitelib}/packaging-%{version}-py%{$python_version}.egg-info } %python_expand %fdupes %{buildroot}%{$python_sitelib} %files %{python_files} %license LICENSE LICENSE.APACHE LICENSE.BSD %doc CHANGELOG.rst README.rst %{python_sitelib}/packaging %{python_sitelib}/packaging-%{version}-py*.egg-info/ %endif # !%%{with_test} %changelog * Wed Mar 11 2020 Marketa Calabkova - Update to 20.3 * Fix a bug that caused a 32-bit OS that runs on a 64-bit ARM CPU (e.g. ARM-v8, aarch64), to report the wrong bitness. - Drop already upstreamed patch issue_254.patch * Mon Feb 10 2020 Ondřej Súkup - add issue_254.patch to fix tests under non-x86_64 pplatforms * Wed Feb 5 2020 Ondřej Súkup - Update to 20.1 * Fix a bug caused by reuse of an exhausted iterator. * Add type hints * Add proper trove classifiers for PyPy support * Scale back depending on ctypes for manylinux support detection * Use sys.implementation.name where appropriate for packaging.tags * Expand upon the API provded by packaging.tags * Officially support Python 3.8 * Add major, minor, and micro aliases to packaging.version.Version * Properly mark packaging has being fully typed by adding a py.typed file * Tue Oct 8 2019 Tomáš Chvátal - Update to 19.2: * Many buildsystem tweaks to accomodate for distribution shipping - Remove all the merged patches: * 0001-Fix-test-failures-test_linux_platforms_manylinux-for.patch * 0002-Fix-check-for-64-bit-OS.patch * 0003-Add-additional-test-to-get-100-branch-coverage.patch * 0004-Fix-test_macos_version_detection-failure-on-32-bit-L.patch * 0005-Drop-dependency-on-attrs.patch * Mon Aug 19 2019 Dan Čermák - Remove dependency on attrs Add: 0005-Drop-dependency-on-attrs.patch this fixes bsc#1144506 * Thu Aug 15 2019 Tomáš Chvátal - Fix a bit the multibuild conversion - Remove the attrs from the deps as they are no longer needed * Thu Aug 8 2019 Dan Čermák - Enable tests via _multibuild Add patches from https://github.com/pypa/packaging/pull/176: * 0001-Fix-test-failures-test_linux_platforms_manylinux-for.patch * 0002-Fix-check-for-64-bit-OS.patch * 0003-Add-additional-test-to-get-100-branch-coverage.patch * 0004-Fix-test_macos_version_detection-failure-on-32-bit-L.patch (these fix the tests on non-x86 platforms and can be dropped on the next release) * Thu Aug 8 2019 Dan Čermák - Add Requires:python-attrs as this is a new dependency this fixes bsc#1144506 * Tue Aug 6 2019 Thomas Bechtold - update to 19.1: * Add the ``packaging.tags`` module. * Correctly handle two-digit versions in ``python_version`` * Sat Mar 9 2019 John Vandenberg - Fix check that egg-info is a directory to work with %%check enabled, and better explain how it works - Remove unnecessary build dependency on base - Re-add test dependency on pyparsing with minimum version defined upstream, and replace inline comment with GitHub issue URL - Add LICENSE.APACHE LICENSE.BSD to %%license - Update to v19.0 * Fix string representation of PEP 508 direct URL requirements with markers. * Better handling of file URLs This allows for using ``file:///absolute/path``, which was previously prevented due to the missing ``netloc`` This allows for all file URLs that ``urlunparse`` turns back into the original URL to be valid - from v18.0 * Improve error messages when invalid requirements are given * Fri Dec 28 2018 Martin Pluskal - Drop pyparsing dependency as its not needed and creates circular dependency on older distributions - Reduce amount of duplicities * Thu Mar 22 2018 toddrme2178@gmail.com - Update to version 17.1 * Fix utils.canonicalize_version when supplying non PEP 440 versions. - Update to version 17.0 * Drop support for python 2.6, 3.2, and 3.3. * Define minimal pyparsing version to 2.0.2 (#91). * Add epoch, release, pre, dev, and post attributes to Version and LegacyVersion (#34). * Add Version().is_devrelease and LegacyVersion().is_devrelease to make it easy to determine if a release is a development release. * Add utils.canonicalize_version to canonicalize version strings or Version instances (#121). * Tue May 2 2017 dmueller@suse.com - fix pyparsing requirement * Thu Feb 23 2017 jmatejek@suse.com - update for single-spec - drop setuptools dependency, as this is itself now a dependency of setuptools - run tests conditionally, to minimize dependency tree - ensure egg-info is a directory (distutils would install it as file) * Fri Dec 2 2016 tbechtold@suse.com - update to 16.8: * Fix markers that utilize ``in`` so that they render correctly. * Fix an erroneous test on Python RC releases. * Wed May 25 2016 tbechtold@suse.com - update to 16.7: * Add support for the deprecated ``python_implementation`` marker which was an undocumented setuptools marker in addition to the newer markers. * Add support for the deprecated, PEP 345 environment markers in addition to the newer markers. * Tue Mar 8 2016 tbechtold@suse.com - update to 16.5: * Fix a regression in parsing requirements with whitespaces between the comma separators. * Fix a regression in parsing requirements like ``foo (==4)``. * Fix a bug where ``packaging.requirements:Requirement`` was overly strict when matching legacy requirements. * Add a function that implements the name canonicalization from PEP 503. * Implement requirement specifiers from PEP 508. * Relicense so that packaging is available under *either* the Apache License, Version 2.0 or a 2 Clause BSD license. * Support installation of packaging when only distutils is available. * Fix ``==`` comparison when there is a prefix and a local version in play. (:issue:`41`). * Implement environment markers from PEP 508. - Adjust Requires according to requires.txt * Tue Aug 11 2015 tbechtold@suse.com - update to 15.3: * Normalize post-release spellings for rev/r prefixes. :issue:`35` * Thu Jun 25 2015 tbechtold@suse.com - update to 15.2: * Fix an error where the arbitary specifier (``===``) was not correctly allowing pre-releases when it was being used. * Expose the specifier and version parts through properties on the ``Specifier`` classes. * Allow iterating over the ``SpecifierSet`` to get access to all of the ``Specifier`` instances. * Allow testing if a version is contained within a specifier via the ``in`` operator. * Thu Apr 23 2015 tbechtold@suse.com - Initial packaging