Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package python-specfile for openSUSE:Factory checked in at 2023-10-17 20:24:52 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-specfile (Old) and /work/SRC/openSUSE:Factory/.python-specfile.new.20540 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-specfile" Tue Oct 17 20:24:52 2023 rev:15 rq:1118218 version:0.22.1 Changes: -------- --- /work/SRC/openSUSE:Factory/python-specfile/python-specfile.changes 2023-09-04 22:54:13.145118236 +0200 +++ /work/SRC/openSUSE:Factory/.python-specfile.new.20540/python-specfile.changes 2023-10-17 20:25:05.427475492 +0200 @@ -1,0 +2,6 @@ +Tue Oct 17 07:30:54 UTC 2023 - David Anes <david.a...@suse.com> + +- Update to 0.22.1: + - Removed dependency on setuptools-scm-git-archive + +------------------------------------------------------------------- Old: ---- specfile-0.22.0.tar.gz New: ---- specfile-0.22.1.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-specfile.spec ++++++ --- /var/tmp/diff_new_pack.nV3kFn/_old 2023-10-17 20:25:06.055497477 +0200 +++ /var/tmp/diff_new_pack.nV3kFn/_new 2023-10-17 20:25:06.059497617 +0200 @@ -17,7 +17,7 @@ Name: python-specfile -Version: 0.22.0 +Version: 0.22.1 Release: 0 Summary: A library for parsing and manipulating RPM spec files License: MIT ++++++ specfile-0.22.0.tar.gz -> specfile-0.22.1.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/specfile-0.22.0/.git_archival.txt new/specfile-0.22.1/.git_archival.txt --- old/specfile-0.22.0/.git_archival.txt 2023-09-01 15:36:23.000000000 +0200 +++ new/specfile-0.22.1/.git_archival.txt 2023-10-06 15:07:44.000000000 +0200 @@ -1 +1,4 @@ +node: $Format:%H$ +node-date: $Format:%cI$ +describe-name: $Format:%(describe:tags=true)$ ref-names: $Format:%D$ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/specfile-0.22.0/.gitattributes new/specfile-0.22.1/.gitattributes --- old/specfile-0.22.0/.gitattributes 2023-09-01 15:36:23.000000000 +0200 +++ new/specfile-0.22.1/.gitattributes 2023-10-06 15:07:44.000000000 +0200 @@ -1,2 +1,2 @@ -# Needed for setuptools-scm-git-archive +# Needed for setuptools-scm .git_archival.txt export-subst diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/specfile-0.22.0/.pre-commit-config.yaml new/specfile-0.22.1/.pre-commit-config.yaml --- old/specfile-0.22.0/.pre-commit-config.yaml 2023-09-01 15:36:23.000000000 +0200 +++ new/specfile-0.22.1/.pre-commit-config.yaml 2023-10-06 15:07:44.000000000 +0200 @@ -4,15 +4,15 @@ repos: - repo: https://github.com/asottile/pyupgrade - rev: v3.10.1 + rev: v3.11.0 hooks: - id: pyupgrade - repo: https://github.com/psf/black - rev: 23.7.0 + rev: 23.9.1 hooks: - id: black - repo: https://github.com/pre-commit/mirrors-prettier - rev: v3.0.1 + rev: v3.0.3 hooks: - id: prettier - repo: https://github.com/pre-commit/pre-commit-hooks @@ -44,12 +44,16 @@ - id: isort args: [--profile, black] - repo: https://github.com/pre-commit/mirrors-mypy - rev: v1.4.1 + rev: v1.5.1 hooks: - id: mypy args: [--show-error-codes, --ignore-missing-imports] additional_dependencies: [types-pkg_resources, types-requests, types-python-dateutil] + - repo: https://github.com/teemtee/tmt.git + rev: 1.27.0 + hooks: + - id: tmt-lint - repo: https://github.com/packit/pre-commit-hooks rev: v1.2.0 hooks: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/specfile-0.22.0/CHANGELOG.md new/specfile-0.22.1/CHANGELOG.md --- old/specfile-0.22.0/CHANGELOG.md 2023-09-01 15:36:23.000000000 +0200 +++ new/specfile-0.22.1/CHANGELOG.md 2023-10-06 15:07:44.000000000 +0200 @@ -1,3 +1,7 @@ +# 0.22.1 + +- Removed dependency on setuptools-scm-git-archive. (#290) + # 0.22.0 - Macro definitions and tags gained a new `valid` attribute. A macro definition/tag is considered valid if it doesn't appear in a false branch of any condition appearing in the spec file. (#276) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/specfile-0.22.0/PKG-INFO new/specfile-0.22.1/PKG-INFO --- old/specfile-0.22.0/PKG-INFO 2023-09-01 15:36:31.085094200 +0200 +++ new/specfile-0.22.1/PKG-INFO 2023-10-06 15:07:52.815003400 +0200 @@ -1,6 +1,6 @@ Metadata-Version: 2.1 Name: specfile -Version: 0.22.0 +Version: 0.22.1 Summary: A library for parsing and manipulating RPM spec files. Home-page: https://github.com/packit/specfile Author: Red Hat @@ -26,8 +26,14 @@ Classifier: Topic :: Utilities Requires-Python: >=3.6 Description-Content-Type: text/markdown -Provides-Extra: testing License-File: LICENSE +Requires-Dist: importlib-metadata; python_version < "3.8" +Requires-Dist: dataclasses; python_version < "3.7" +Requires-Dist: rpm +Requires-Dist: typing-extensions +Provides-Extra: testing +Requires-Dist: pytest; extra == "testing" +Requires-Dist: flexmock; extra == "testing" # specfile diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/specfile-0.22.0/epel8/python-specfile.spec new/specfile-0.22.1/epel8/python-specfile.spec --- old/specfile-0.22.0/epel8/python-specfile.spec 2023-09-01 15:36:23.000000000 +0200 +++ new/specfile-0.22.1/epel8/python-specfile.spec 2023-10-06 15:07:44.000000000 +0200 @@ -5,7 +5,7 @@ Name: python-specfile -Version: 0.22.0 +Version: 0.22.1 Release: 1%{?dist} Summary: A library for parsing and manipulating RPM spec files @@ -17,7 +17,7 @@ BuildArch: noarch BuildRequires: python%{python3_pkgversion}-devel -BuildRequires: %{py3_dist setuptools setuptools-scm setuptools-scm-git-archive} +BuildRequires: %{py3_dist setuptools setuptools-scm} BuildRequires: %{py3_dist importlib-metadata dataclasses rpm typing-extensions} BuildRequires: %{py3_dist flexmock pytest} BuildRequires: git-core @@ -37,8 +37,6 @@ %prep %autosetup -p1 -n specfile-%{version} -# Use packaged RPM python bindings downstream -sed -i 's/rpm-py-installer/rpm/' setup.cfg # Remove bundled egg-info rm -rf specfile.egg-info @@ -63,6 +61,9 @@ %changelog +* Fri Oct 06 2023 Packit Team <he...@packit.dev> - 0.22.1-1 +- New upstream release 0.22.1 + * Fri Sep 01 2023 Packit Team <he...@packit.dev> - 0.22.0-1 - New upstream release 0.22.0 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/specfile-0.22.0/fedora/python-specfile.spec new/specfile-0.22.1/fedora/python-specfile.spec --- old/specfile-0.22.0/fedora/python-specfile.spec 2023-09-01 15:36:23.000000000 +0200 +++ new/specfile-0.22.1/fedora/python-specfile.spec 2023-10-06 15:07:44.000000000 +0200 @@ -1,9 +1,4 @@ -%if 0%{?rhel} == 9 -# RHEL 9 is missing python-flexmock -%bcond_with tests -%else %bcond_without tests -%endif %global desc %{expand: @@ -13,7 +8,7 @@ Name: python-specfile -Version: 0.22.0 +Version: 0.22.1 Release: 1%{?dist} Summary: A library for parsing and manipulating RPM spec files @@ -46,6 +41,10 @@ %prep %autosetup -p1 -n specfile-%{version} +# since we are building from PyPI source, we don't need git-archive +# support in setuptools_scm +sed -i 's/setuptools_scm\[toml\]>=7/setuptools_scm[toml]/' pyproject.toml + %generate_buildrequires %pyproject_buildrequires %{?with_tests: -x testing} @@ -71,6 +70,9 @@ %changelog +* Fri Oct 06 2023 Packit Team <he...@packit.dev> - 0.22.1-1 +- New upstream release 0.22.1 + * Fri Sep 01 2023 Packit Team <he...@packit.dev> - 0.22.0-1 - New upstream release 0.22.0 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/specfile-0.22.0/files/tasks/rpm-test-deps.yaml new/specfile-0.22.1/files/tasks/rpm-test-deps.yaml --- old/specfile-0.22.0/files/tasks/rpm-test-deps.yaml 2023-09-01 15:36:23.000000000 +0200 +++ new/specfile-0.22.1/files/tasks/rpm-test-deps.yaml 2023-10-06 15:07:44.000000000 +0200 @@ -4,8 +4,5 @@ name: - python3-pytest - python3-pytest-cov + - python3-flexmock become: true -- name: Pip install test dependencies - ansible.builtin.pip: - name: - - flexmock # RHBZ#2120251 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/specfile-0.22.0/plans/full.fmf new/specfile-0.22.1/plans/full.fmf --- old/specfile-0.22.0/plans/full.fmf 2023-09-01 15:36:23.000000000 +0200 +++ new/specfile-0.22.1/plans/full.fmf 2023-10-06 15:07:44.000000000 +0200 @@ -2,11 +2,3 @@ Unit & integration tests discover+: filter: tier:1 -adjust: - - when: "distro == rhel-9 or distro == centos-9 or distro == centos-stream-9" - because: "flexmock is not in EPEL 9: https://bugzilla.redhat.com/show_bug.cgi?id=2120251" - prepare: - - how: install - package: python3-pip - - how: shell - script: pip3 install flexmock diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/specfile-0.22.0/plans/packit-integration.fmf new/specfile-0.22.1/plans/packit-integration.fmf --- old/specfile-0.22.0/plans/packit-integration.fmf 2023-09-01 15:36:23.000000000 +0200 +++ new/specfile-0.22.1/plans/packit-integration.fmf 2023-10-06 15:07:44.000000000 +0200 @@ -19,14 +19,12 @@ directory: noarch/ - when: "distro == rhel-9 or distro == centos-9 or distro == centos-stream-9" - because: "flexmock and deepdiff are not in EPEL 9: https://bugzilla.redhat.com/show_bug.cgi?id=2120251" + because: "build and deepdiff are not in EPEL 9: https://bugzilla.redhat.com/show_bug.cgi?id=2120251" prepare+: - how: install package: python3-pip - how: shell - # the version lock on deepdiff can be removed once this is resolved: - # https://github.com/seperman/deepdiff/issues/416 - script: pip3 install flexmock deepdiff==6.3.1 + script: pip3 install build deepdiff - when: "distro == rhel-8 or distro == centos-8 or distro == centos-stream-8" because: "packit doesn't support EL 8" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/specfile-0.22.0/pyproject.toml new/specfile-0.22.1/pyproject.toml --- old/specfile-0.22.0/pyproject.toml 2023-09-01 15:36:23.000000000 +0200 +++ new/specfile-0.22.1/pyproject.toml 2023-10-06 15:07:44.000000000 +0200 @@ -1,10 +1,17 @@ [build-system] requires = [ "setuptools>=45", - "setuptools_scm[toml]", - "setuptools_scm_git_archive", + # setuptools_scm added git-archive support in version 7 + "setuptools_scm[toml]>=7", ] build-backend = "setuptools.build_meta" [tool.setuptools_scm] -version_scheme = "post-release" +# we can't use pre-release-based version scheme because it generates versions +# that are sorted higher than the last stable release by RPM +# for example: +# - pre-release (guess-next-dev): +# 0.20.1.dev1+g0abcdef.d20230921 > 0.20.1 +# - post-release (no-guess-dev): +# 0.20.0.post1.dev1+g0abcdef < 0.20.1 +version_scheme = "no-guess-dev" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/specfile-0.22.0/setup.cfg new/specfile-0.22.1/setup.cfg --- old/specfile-0.22.0/setup.cfg 2023-09-01 15:36:31.085094200 +0200 +++ new/specfile-0.22.1/setup.cfg 2023-10-06 15:07:52.815003400 +0200 @@ -55,6 +55,11 @@ [options.package_data] * = py.typed +[tool:pytest] +testpaths = + tests/unit + tests/integration + [egg_info] tag_build = tag_date = 0 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/specfile-0.22.0/setup.py new/specfile-0.22.1/setup.py --- old/specfile-0.22.0/setup.py 2023-09-01 15:36:23.000000000 +0200 +++ new/specfile-0.22.1/setup.py 2023-10-06 15:07:44.000000000 +0200 @@ -5,4 +5,11 @@ from setuptools import setup -setup(use_scm_version={"version_scheme": "post-release"}) +# we can't use pre-release-based version scheme because it generates versions +# that are sorted higher than the last stable release by RPM +# for example: +# - pre-release (guess-next-dev): +# 0.20.1.dev1+g0abcdef.d20230921 > 0.20.1 +# - post-release (no-guess-dev): +# 0.20.0.post1.dev1+g0abcdef < 0.20.1 +setup(use_scm_version={"version_scheme": "no-guess-dev"}) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/specfile-0.22.0/specfile/value_parser.py new/specfile-0.22.1/specfile/value_parser.py --- old/specfile-0.22.0/specfile/value_parser.py 2023-09-01 15:36:23.000000000 +0200 +++ new/specfile-0.22.1/specfile/value_parser.py 2023-10-06 15:07:44.000000000 +0200 @@ -425,7 +425,7 @@ # this group name already exists, make a backreference regex += f"(?P={group})" else: - regex += f"(?P<{group}>.+?)" + regex += f"(?P<{group}>.+)" named_groups.append(group) template += escape(token[2]) elif token[0] == "v": diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/specfile-0.22.0/specfile.egg-info/PKG-INFO new/specfile-0.22.1/specfile.egg-info/PKG-INFO --- old/specfile-0.22.0/specfile.egg-info/PKG-INFO 2023-09-01 15:36:31.000000000 +0200 +++ new/specfile-0.22.1/specfile.egg-info/PKG-INFO 2023-10-06 15:07:52.000000000 +0200 @@ -1,6 +1,6 @@ Metadata-Version: 2.1 Name: specfile -Version: 0.22.0 +Version: 0.22.1 Summary: A library for parsing and manipulating RPM spec files. Home-page: https://github.com/packit/specfile Author: Red Hat @@ -26,8 +26,14 @@ Classifier: Topic :: Utilities Requires-Python: >=3.6 Description-Content-Type: text/markdown -Provides-Extra: testing License-File: LICENSE +Requires-Dist: importlib-metadata; python_version < "3.8" +Requires-Dist: dataclasses; python_version < "3.7" +Requires-Dist: rpm +Requires-Dist: typing-extensions +Provides-Extra: testing +Requires-Dist: pytest; extra == "testing" +Requires-Dist: flexmock; extra == "testing" # specfile diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/specfile-0.22.0/tests/full.fmf new/specfile-0.22.1/tests/full.fmf --- old/specfile-0.22.0/tests/full.fmf 2023-09-01 15:36:23.000000000 +0200 +++ new/specfile-0.22.1/tests/full.fmf 2023-10-06 15:07:44.000000000 +0200 @@ -6,11 +6,6 @@ - python3-pytest - python3-pytest-cov - python3-specfile -adjust: - - when: "distro == rhel-9 or distro == centos-9 or distro == centos-stream-9" - because: "flexmock is not in EPEL 9: https://bugzilla.redhat.com/show_bug.cgi?id=2120251" - require-: - - python3-flexmock tag: - basic tier: 1 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/specfile-0.22.0/tests/integration/test_specfile.py new/specfile-0.22.1/tests/integration/test_specfile.py --- old/specfile-0.22.0/tests/integration/test_specfile.py 2023-09-01 15:36:23.000000000 +0200 +++ new/specfile-0.22.1/tests/integration/test_specfile.py 2023-10-06 15:07:44.000000000 +0200 @@ -439,6 +439,15 @@ assert md.get("package_version", 13).body == "%{mainver}%{?prever:~%{prever}}" assert md.get("package_version", 15).body == "3.2.1" assert spec.version == "%{package_version}" + spec = Specfile(spec_macros) + spec.update_tag("Version", "1.2.3.4~rc5") + with spec.macro_definitions() as md: + assert md.majorver.body == "1.2" + assert md.minorver.body == "3" + assert md.patchver.body == "4" + assert md.mainver.body == "%{majorver}.%{minorver}.%{patchver}" + assert md.prever.body == "rc5" + assert spec.version == "%{package_version}" def test_multiple_instances(spec_minimal, spec_autosetup): diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/specfile-0.22.0/tests/unit/test_value_parser.py new/specfile-0.22.1/tests/unit/test_value_parser.py --- old/specfile-0.22.0/tests/unit/test_value_parser.py 2023-09-01 15:36:23.000000000 +0200 +++ new/specfile-0.22.1/tests/unit/test_value_parser.py 2023-10-06 15:07:44.000000000 +0200 @@ -76,14 +76,14 @@ "%version", {"%version": "1.0"}, ["version"], - "^(?P<version>.+?)$", + "^(?P<version>.+)$", "%version", ), ( "%?version", {"%?version": "1.0"}, ["version"], - "^(?P<version>.+?)$", + "^(?P<version>.+)$", "%?version", ), ( @@ -115,7 +115,7 @@ "%{mainrel}": "2", }, ["prever", "prerpmver", "mainrel"], - "^(?P<sub_0>.+?)\\.(?P<mainrel>.+?)\\.(?P<prerpmver>.+?)$", + "^(?P<sub_0>.+?)\\.(?P<mainrel>.+)\\.(?P<prerpmver>.+)$", "%{?prever:${sub_0}.}%{mainrel}%{?prever:.%{prerpmver}}", ), (