public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
To: git-commits@fedoraproject.org
Subject: [rpms/fedpkg] 1.48-1: Few patches
Date: Mon, 10 Aug 2026 21:46:10 GMT [thread overview]
Message-ID: <178639837058.1.14353276909599819200.rpms-fedpkg-6b807f9336ce@fedoraproject.org> (raw)
A new commit has been pushed.
Repo : rpms/fedpkg
Branch : 1.48-1
Commit : 6b807f9336ce15551d931252e2c1615f253cce37
Author : Ondřej Nosek <onosek@redhat.com>
Date : 2024-07-08T23:30:30+00:00
Stats : +513/-1 in 10 file(s)
URL : https://src.fedoraproject.org/rpms/fedpkg/c/6b807f9336ce15551d931252e2c1615f253cce37?branch=1.48-1
Log:
Few patches
- Add support for building for epel10
- Don't print the branch name after dash when there is no dash
- Remove mbs.fedoraproject.org scopes from git cred helper
- Fix unittests after creating the project in hatch
Signed-off-by: Ondřej Nosek <onosek@redhat.com>
---
diff --git a/0003-Fix-unittests-after-creating-the-project-in-hatch.patch b/0003-Fix-unittests-after-creating-the-project-in-hatch.patch
new file mode 100644
index 0000000..c9660a7
--- /dev/null
+++ b/0003-Fix-unittests-after-creating-the-project-in-hatch.patch
@@ -0,0 +1,50 @@
+From ea4af44cf9d85de6e994bbd56f8645f32f9cc272 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Ond=C5=99ej=20Nosek?= <onosek@redhat.com>
+Date: Mon, 8 Jul 2024 02:32:37 +0200
+Subject: [PATCH 1/9] Fix unittests after creating the project in hatch
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Python36 unittests failed because they automaticaly installed
+the hatch, but it wasn't available in Python36.
+
+Signed-off-by: Ondřej Nosek <onosek@redhat.com>
+---
+ pyproject.toml | 2 +-
+ tox.ini | 5 +++++
+ 2 files changed, 6 insertions(+), 1 deletion(-)
+
+diff --git a/pyproject.toml b/pyproject.toml
+index e758fc6..4315ea5 100644
+--- a/pyproject.toml
++++ b/pyproject.toml
+@@ -79,7 +79,7 @@ include = [
+
+ [tool.hatch.build.targets.wheel]
+ packages = [
+- "dist/fedpkg"
++ "fedpkg"
+ ]
+
+ [tool.hatch.build.targets.wheel.shared-data]
+diff --git a/tox.ini b/tox.ini
+index 37fe636..ff0124b 100644
+--- a/tox.ini
++++ b/tox.ini
+@@ -20,7 +20,12 @@ commands =
+ setenv=
+ PYCURL_SSL_LIBRARY=openssl
+
++[testenv:py36]
++# do not install hatch, it is not available on py36
++skip_install = True
++
+ [testenv:flake8]
++skip_install = True
+ deps = flake8
+ commands = python -m flake8 fedpkg/ test/
+
+--
+2.45.2
+
diff --git a/0004-Remove-mbs.fedoraproject.org-scopes-from-git-cred-he.patch b/0004-Remove-mbs.fedoraproject.org-scopes-from-git-cred-he.patch
new file mode 100644
index 0000000..35f42a0
--- /dev/null
+++ b/0004-Remove-mbs.fedoraproject.org-scopes-from-git-cred-he.patch
@@ -0,0 +1,62 @@
+From 481ba383c82c914e7ea2db813af8c9d2786b0f75 Mon Sep 17 00:00:00 2001
+From: KJ Tsanaktsidis <kj@kjtsanaktsidis.id.au>
+Date: Tue, 18 Jun 2024 21:47:50 +1000
+Subject: [PATCH 2/9] Remove mbs.fedoraproject.org scopes from git cred helper
+
+The fedpkg git credential helper defaults to asking for the
+https://mbs.fedoraproject.org/oidc/submit-build scope in the
+default config file. It seems that the mbs infrastructure has been torn
+down and this scope is no longer valid:
+
+https://pagure.io/fedora-infrastructure/issue/11990
+
+And attempting to ask for it means that the credential helper fails
+with:
+
+```
+Please visit https://id.fedoraproject.org/openidc/Authorization?scope=openid+https%3A%2F%2Fid.fedoraproject.org%2Fscope%2Fgroups+https%3A%2F%2Fmbs.fedoraproject.org%2Foidc%2Fsubmit-build+https%3A%2F%2Fsrc.fedoraproject.org%2Fpush&response_type=code&client_id=fedpkg&redirect_uri=http%3A%2F%2Flocalhost%3A12345%2F&response_mode=query to grant authorization
+127.0.0.1 - - [14/Jun/2024 21:23:41] "GET /?error=invalid_scope&error_description=unknown+scope+https%3A%2F%2Fmbs.fedoraproject.org%2Foidc%2Fsubmit-build+requested HTTP/1.1" 200 47
+No token received.
+fatal: credential helper '/usr/bin/fedpkg gitcred' told us to quit
+Could not execute push: Failed to execute command.
+```
+
+I'm not sure if the actual code for interfacing with the MBS should be
+deleted out of rpkg or not, but certainly I think the default fedpkg
+config file should work, so let's do this first?
+
+Signed-off-by: KJ Tsanaktsidis <kj@kjtsanaktsidis.id.au>
+---
+ conf/etc/rpkg/fedpkg-stage.conf | 2 +-
+ conf/etc/rpkg/fedpkg.conf | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/conf/etc/rpkg/fedpkg-stage.conf b/conf/etc/rpkg/fedpkg-stage.conf
+index 44ee4f5..144ce76 100644
+--- a/conf/etc/rpkg/fedpkg-stage.conf
++++ b/conf/etc/rpkg/fedpkg-stage.conf
+@@ -32,7 +32,7 @@ kerberos_realms = STG.FEDORAPROJECT.ORG
+ oidc_id_provider = https://id.stg.fedoraproject.org/openidc/
+ oidc_client_id = fedpkg
+ oidc_client_secret = notsecret
+-oidc_scopes = openid,https://id.fedoraproject.org/scope/groups,https://mbs.fedoraproject.org/oidc/submit-build,https://src.fedoraproject.org/push
++oidc_scopes = openid,https://id.fedoraproject.org/scope/groups,https://src.fedoraproject.org/push
+ git_excludes =
+ i386/
+ i686/
+diff --git a/conf/etc/rpkg/fedpkg.conf b/conf/etc/rpkg/fedpkg.conf
+index e73f6ed..c4ab51a 100644
+--- a/conf/etc/rpkg/fedpkg.conf
++++ b/conf/etc/rpkg/fedpkg.conf
+@@ -32,7 +32,7 @@ kerberos_realms = FEDORAPROJECT.ORG
+ oidc_id_provider = https://id.fedoraproject.org/openidc/
+ oidc_client_id = fedpkg
+ oidc_client_secret = notsecret
+-oidc_scopes = openid,https://id.fedoraproject.org/scope/groups,https://mbs.fedoraproject.org/oidc/submit-build,https://src.fedoraproject.org/push
++oidc_scopes = openid,https://id.fedoraproject.org/scope/groups,https://src.fedoraproject.org/push
+ git_excludes =
+ i386/
+ i686/
+--
+2.45.2
+
diff --git a/0005-Don-t-use-hatchling-on-python-3.6.patch b/0005-Don-t-use-hatchling-on-python-3.6.patch
new file mode 100644
index 0000000..7ff9fde
--- /dev/null
+++ b/0005-Don-t-use-hatchling-on-python-3.6.patch
@@ -0,0 +1,40 @@
+From 8cc0f6f0e57da359ecddf5a4f29bf34158def684 Mon Sep 17 00:00:00 2001
+From: Diego Herrera <dherrera@redhat.com>
+Date: Thu, 4 Jul 2024 17:56:30 -0400
+Subject: [PATCH 3/9] Don't use hatchling on python 3.6
+
+Merges: https://pagure.io/fedpkg/pull-request/553
+Signed-off-by: Diego Herrera <dherrera@redhat.com>
+---
+ pyproject.toml | 2 +-
+ tox.ini | 3 +--
+ 2 files changed, 2 insertions(+), 3 deletions(-)
+
+diff --git a/pyproject.toml b/pyproject.toml
+index 4315ea5..1be99b5 100644
+--- a/pyproject.toml
++++ b/pyproject.toml
+@@ -1,5 +1,5 @@
+ [build-system]
+-requires = ["hatchling"]
++requires = ["hatchling; python_version > '3.6'"]
+ build-backend = "hatchling.build"
+
+ [project]
+diff --git a/tox.ini b/tox.ini
+index ff0124b..3498249 100644
+--- a/tox.ini
++++ b/tox.ini
+@@ -21,8 +21,7 @@ setenv=
+ PYCURL_SSL_LIBRARY=openssl
+
+ [testenv:py36]
+-# do not install hatch, it is not available on py36
+-skip_install = True
++package = sdist
+
+ [testenv:flake8]
+ skip_install = True
+--
+2.45.2
+
diff --git a/0006-Don-t-print-the-branch-name-after-dash-when-there-is.patch b/0006-Don-t-print-the-branch-name-after-dash-when-there-is.patch
new file mode 100644
index 0000000..4d729fe
--- /dev/null
+++ b/0006-Don-t-print-the-branch-name-after-dash-when-there-is.patch
@@ -0,0 +1,35 @@
+From 0db445b09c1f556407e29e985a204f9e39cbdaae Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= <miro@hroncok.cz>
+Date: Sun, 7 Jul 2024 14:39:53 +0200
+Subject: [PATCH 4/9] Don't print the branch name after dash when there is no
+ dash
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Fixes https://pagure.io/fedpkg/issue/554
+
+Signed-off-by: Miro Hrončok <miro@hroncok.cz>
+---
+ fedpkg/__init__.py | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/fedpkg/__init__.py b/fedpkg/__init__.py
+index 0e1a007..abb4fb6 100644
+--- a/fedpkg/__init__.py
++++ b/fedpkg/__init__.py
+@@ -151,8 +151,9 @@ class Commands(pyrpkg.Commands):
+ if not self._load_rpmdefines_branch(self.branch_merge, extra_rpmdefines):
+ base = self.branch_merge.split('-', 1)
+ # Allow branches like f38-staging
+- self.log.debug('Retrying with branch {}, feature {}'
+- .format(base[0], base[1]))
++ if len(base) > 1:
++ self.log.debug('Retrying with branch {}, feature {}'
++ .format(base[0], base[1]))
+ if not (len(base) > 1 and base[0].isalnum() and len(base[1]) > 0 and
+ self._load_rpmdefines_branch(base[0], extra_rpmdefines)):
+ msg = ('Could not find release from branch name \'%s\'. '
+--
+2.45.2
+
diff --git a/0007-Test-for-valid-EPEL-branch-names.patch b/0007-Test-for-valid-EPEL-branch-names.patch
new file mode 100644
index 0000000..610c18e
--- /dev/null
+++ b/0007-Test-for-valid-EPEL-branch-names.patch
@@ -0,0 +1,39 @@
+From 242e5b75323086d96cc41f68f4bfa395fe6e1597 Mon Sep 17 00:00:00 2001
+From: Diego Herrera <dherrera@redhat.com>
+Date: Tue, 2 Jul 2024 18:07:16 -0400
+Subject: [PATCH 5/9] Test for valid EPEL branch names
+
+Signed-off-by: Diego Herrera <dherrera@redhat.com>
+---
+ test/test_utils.py | 15 +++++++++++++++
+ 1 file changed, 15 insertions(+)
+
+diff --git a/test/test_utils.py b/test/test_utils.py
+index e8648e4..4d055ec 100644
+--- a/test/test_utils.py
++++ b/test/test_utils.py
+@@ -207,6 +207,21 @@ class TestVerifySLS(unittest.TestCase):
+ )
+
+
++class TestIsEpel(unittest.TestCase):
++ """Test is_epel"""
++
++ def test_valid_epel_branch_names(self):
++ self.assertEqual(utils.is_epel("el6"), True)
++ self.assertEqual(utils.is_epel("epel7"), True)
++ self.assertEqual(utils.is_epel("epel8"), True)
++ self.assertEqual(utils.is_epel("epel8-next"), True)
++ self.assertEqual(utils.is_epel("epel9"), True)
++ self.assertEqual(utils.is_epel("epel9-next"), True)
++
++ self.assertEqual(utils.is_epel("f36"), False)
++ self.assertEqual(utils.is_epel("rawhide"), False)
++
++
+ @patch('requests.get')
+ class TestAssertValidEPELPackage(unittest.TestCase):
+ """Test assert_valid_epel_package"""
+--
+2.45.2
+
diff --git a/0008-Add-EPEL10-branch-name-cases-as-valid.patch b/0008-Add-EPEL10-branch-name-cases-as-valid.patch
new file mode 100644
index 0000000..510c60e
--- /dev/null
+++ b/0008-Add-EPEL10-branch-name-cases-as-valid.patch
@@ -0,0 +1,42 @@
+From d385505ad98b8044fdd8800acd96c5c6a18b1d22 Mon Sep 17 00:00:00 2001
+From: Diego Herrera <dherrera@redhat.com>
+Date: Tue, 2 Jul 2024 18:10:15 -0400
+Subject: [PATCH 6/9] Add EPEL10 branch name cases as valid
+
+Signed-off-by: Diego Herrera <dherrera@redhat.com>
+---
+ fedpkg/utils.py | 2 +-
+ test/test_utils.py | 4 ++++
+ 2 files changed, 5 insertions(+), 1 deletion(-)
+
+diff --git a/fedpkg/utils.py b/fedpkg/utils.py
+index 9e5c5bf..028fba2 100644
+--- a/fedpkg/utils.py
++++ b/fedpkg/utils.py
+@@ -311,7 +311,7 @@ def is_epel(branch):
+ :param branch: a string of the branch name
+ :return: a boolean
+ """
+- return bool(re.match(r'^(?:el|epel)\d+(?:-next)?$', branch))
++ return bool(re.match(r'^(?:el|epel)\d+(?:\.\d+)?(?:-next)?$', branch))
+
+
+ def assert_valid_epel_package(name, branch):
+diff --git a/test/test_utils.py b/test/test_utils.py
+index 4d055ec..6b6050a 100644
+--- a/test/test_utils.py
++++ b/test/test_utils.py
+@@ -217,6 +217,10 @@ class TestIsEpel(unittest.TestCase):
+ self.assertEqual(utils.is_epel("epel8-next"), True)
+ self.assertEqual(utils.is_epel("epel9"), True)
+ self.assertEqual(utils.is_epel("epel9-next"), True)
++ self.assertEqual(utils.is_epel("epel10"), True)
++ self.assertEqual(utils.is_epel("epel10.1"), True)
++ self.assertEqual(utils.is_epel("epel10.10"), True)
++ self.assertEqual(utils.is_epel("epel10.11"), True)
+
+ self.assertEqual(utils.is_epel("f36"), False)
+ self.assertEqual(utils.is_epel("rawhide"), False)
+--
+2.45.2
+
diff --git a/0009-Test-url-usage-in-assert_valid_epel_package.patch b/0009-Test-url-usage-in-assert_valid_epel_package.patch
new file mode 100644
index 0000000..bc07d11
--- /dev/null
+++ b/0009-Test-url-usage-in-assert_valid_epel_package.patch
@@ -0,0 +1,65 @@
+From d669322e730803824ea6113c9d31306df172c989 Mon Sep 17 00:00:00 2001
+From: Diego Herrera <dherrera@redhat.com>
+Date: Tue, 2 Jul 2024 18:12:22 -0400
+Subject: [PATCH 7/9] Test url usage in assert_valid_epel_package
+
+Signed-off-by: Diego Herrera <dherrera@redhat.com>
+---
+ test/test_utils.py | 41 +++++++++++++++++++++++++++++++++++++++++
+ 1 file changed, 41 insertions(+)
+
+diff --git a/test/test_utils.py b/test/test_utils.py
+index 6b6050a..2e66fe6 100644
+--- a/test/test_utils.py
++++ b/test/test_utils.py
+@@ -244,6 +244,47 @@ class TestAssertValidEPELPackage(unittest.TestCase):
+ self, rpkgError, 'The status code was: 404',
+ utils.assert_valid_epel_package, 'pkg', 'epel7')
+
++ def test_correct_url_epel7(self, get):
++ get.return_value = Mock(ok=False, status_code=404)
++
++ six.assertRaisesRegex(
++ self, rpkgError, 'The status code was: 404',
++ utils.assert_valid_epel_package, 'pkg', 'epel7')
++ get.assert_called_once_with(
++ 'https://infrastructure.fedoraproject.org/repo/json/pkg_el7.json',
++ timeout=60)
++
++ def test_correct_url_epel8(self, get):
++ get.return_value = Mock(ok=False, status_code=404)
++
++ six.assertRaisesRegex(
++ self, rpkgError, 'The status code was: 404',
++ utils.assert_valid_epel_package, 'pkg', 'epel8')
++ get.assert_called_once_with(
++ 'https://infrastructure.fedoraproject.org/repo/json/pkg_el8.json',
++ timeout=60)
++
++ def test_correct_url_epel8_next(self, get):
++ get.return_value = Mock(ok=False, status_code=404)
++
++ six.assertRaisesRegex(
++ self, rpkgError, 'The status code was: 404',
++ utils.assert_valid_epel_package, 'pkg', 'epel8-next')
++ get.assert_called_once_with(
++ 'https://infrastructure.fedoraproject.org/repo/json/pkg_el8.json',
++ timeout=60)
++
++ def test_correct_url_epel9(self, get):
++ get.return_value = Mock(ok=False, status_code=404)
++
++ six.assertRaisesRegex(
++ self, rpkgError, 'The status code was: 404',
++ utils.assert_valid_epel_package, 'pkg', 'epel9')
++ get.assert_called_once_with(
++ 'https://composes.stream.centos.org/production/'
++ 'latest-CentOS-Stream/compose/metadata/rpms.json',
++ timeout=60)
++
+ def test_should_not_have_epel_branch_for_el6_pkg(self, get):
+ get.return_value.json.return_value = {
+ 'arches': [
+--
+2.45.2
+
diff --git a/0010-Add-EPEL10-url-pattern-on-assert_valid_epel_package.patch b/0010-Add-EPEL10-url-pattern-on-assert_valid_epel_package.patch
new file mode 100644
index 0000000..0e0ad91
--- /dev/null
+++ b/0010-Add-EPEL10-url-pattern-on-assert_valid_epel_package.patch
@@ -0,0 +1,80 @@
+From 060817ffe8ef6afa76734aca7e836d01f0096cc4 Mon Sep 17 00:00:00 2001
+From: Diego Herrera <dherrera@redhat.com>
+Date: Tue, 2 Jul 2024 18:15:24 -0400
+Subject: [PATCH 8/9] Add EPEL10+ url pattern on assert_valid_epel_package
+
+Signed-off-by: Diego Herrera <dherrera@redhat.com>
+---
+ fedpkg/utils.py | 18 ++++++++++++------
+ test/test_utils.py | 22 ++++++++++++++++++++++
+ 2 files changed, 34 insertions(+), 6 deletions(-)
+
+diff --git a/fedpkg/utils.py b/fedpkg/utils.py
+index 028fba2..6f7d2be 100644
+--- a/fedpkg/utils.py
++++ b/fedpkg/utils.py
+@@ -322,16 +322,22 @@ def assert_valid_epel_package(name, branch):
+ :param branch: a string of the EPEL branch name (e.g. epel7)
+ :return: None or rpkgError
+ """
+- # Extract any digits in the branch name to determine the EL version
+- version = ''.join([i for i in branch if re.match(r'\d', i)])
++ # Extract the major part of the EL version
++ version, _ = re.findall(r'(\d+)(?:\.(\d+))?', branch)[0]
+
+ # Starting with epel9 and epel9-next, check against CentOS compose metadata.
+ if int(version) >= 9:
+- # Currently we only have a latest symlink. In the future we'll need
+- # separate latest symlinks that include the major version.
++ # Currently the stream-9 branch resides in the production address path..
++ # To remove this block, we need for the stream-9 link to point to production
+ # https://bugzilla.redhat.com/show_bug.cgi?id=2005139
+- url = 'https://composes.stream.centos.org/production/' \
+- 'latest-CentOS-Stream/compose/metadata/rpms.json'
++ if int(version) == 9:
++ url = 'https://composes.stream.centos.org/production/' \
++ 'latest-CentOS-Stream/compose/metadata/rpms.json'
++ else:
++ url = ('https://composes.stream.centos.org/stream-{0}/'
++ 'production/latest-CentOS-Stream/compose/metadata/rpms.json'
++ .format(version))
++
+ error_msg = ('The connection to composes.stream.centos.org failed while '
+ 'trying to determine if this is a valid EPEL package.')
+ try:
+diff --git a/test/test_utils.py b/test/test_utils.py
+index 2e66fe6..7a38740 100644
+--- a/test/test_utils.py
++++ b/test/test_utils.py
+@@ -285,6 +285,28 @@ class TestAssertValidEPELPackage(unittest.TestCase):
+ 'latest-CentOS-Stream/compose/metadata/rpms.json',
+ timeout=60)
+
++ def test_correct_url_epel10(self, get):
++ get.return_value = Mock(ok=False, status_code=404)
++
++ six.assertRaisesRegex(
++ self, rpkgError, 'The status code was: 404',
++ utils.assert_valid_epel_package, 'pkg', 'epel10')
++ get.assert_called_once_with(
++ 'https://composes.stream.centos.org/stream-10/production'
++ '/latest-CentOS-Stream/compose/metadata/rpms.json',
++ timeout=60)
++
++ def test_correct_url_epel10_10(self, get):
++ get.return_value = Mock(ok=False, status_code=404)
++
++ six.assertRaisesRegex(
++ self, rpkgError, 'The status code was: 404',
++ utils.assert_valid_epel_package, 'pkg', 'epel10.10')
++ get.assert_called_once_with(
++ 'https://composes.stream.centos.org/stream-10/production'
++ '/latest-CentOS-Stream/compose/metadata/rpms.json',
++ timeout=60)
++
+ def test_should_not_have_epel_branch_for_el6_pkg(self, get):
+ get.return_value.json.return_value = {
+ 'arches': [
+--
+2.45.2
+
diff --git a/0011-Extend-load_rpmdefines-to-work-with-EPEL10.patch b/0011-Extend-load_rpmdefines-to-work-with-EPEL10.patch
new file mode 100644
index 0000000..66221b3
--- /dev/null
+++ b/0011-Extend-load_rpmdefines-to-work-with-EPEL10.patch
@@ -0,0 +1,84 @@
+From a270fc793e483135cb346fba97335a6e994d7dac Mon Sep 17 00:00:00 2001
+From: Diego Herrera <dherrera@redhat.com>
+Date: Tue, 2 Jul 2024 18:22:54 -0400
+Subject: [PATCH 9/9] Extend load_rpmdefines to work with EPEL10+
+
+Merges: https://pagure.io/fedpkg/pull-request/544
+Signed-off-by: Diego Herrera <dherrera@redhat.com>
+---
+ fedpkg/__init__.py | 15 +++++++++------
+ test/test_commands.py | 30 ++++++++++++++++++++++++++++++
+ 2 files changed, 39 insertions(+), 6 deletions(-)
+
+diff --git a/fedpkg/__init__.py b/fedpkg/__init__.py
+index abb4fb6..b3e9b3b 100644
+--- a/fedpkg/__init__.py
++++ b/fedpkg/__init__.py
+@@ -88,14 +88,17 @@ class Commands(pyrpkg.Commands):
+ self.mockconfig = 'fedora-%s-%s' % (self._distval, self.localarch)
+ self.override = 'f%s-override' % self._distval
+ self._distunset = 'rhel'
+- # Works until RHEL 10
+ elif re.match(r'el\d$', branch) or \
+- re.match(r'epel\d$', branch):
+- self._distval = branch.split('el')[1]
++ re.match(r'epel\d+(?:\.\d+)?$', branch):
++ major, minor = re.findall(r'(\d+)(?:\.(\d+))?', branch)[0]
++ self._distval = major
+ self._distvar = 'rhel'
+- self._disttag = 'el%s' % self._distval
+- self.mockconfig = 'epel-%s-%s' % (self._distval, self.localarch)
+- self.override = 'epel%s-override' % self._distval
++ self._disttag = 'el%s' % major if minor == '' \
++ else 'el%s_%s' % (major, minor)
++ self.mockconfig = 'epel-%s-%s' % (major, self.localarch) if minor == '' \
++ else 'epel-%s.%s-%s' % (major, minor, self.localarch)
++ self.override = 'epel%s-override' % self._distval if minor == '' \
++ else 'epel%s.%s-override' % (major, minor)
+ self._distunset = 'fedora'
+ elif re.match(r'epel\d+-next$', branch):
+ self._distval = re.search(r'\d+', branch).group(0)
+diff --git a/test/test_commands.py b/test/test_commands.py
+index fb417ff..a5b5ed5 100644
+--- a/test/test_commands.py
++++ b/test/test_commands.py
+@@ -266,6 +266,36 @@ class TestLoadRpmDefines(CommandTestCase):
+
+ self.assert_rpmdefines()
+
++ @patch('pyrpkg.Commands.branch_merge', new_callable=PropertyMock)
++ def test_load_epel10_dist_tag(self, branch_merge):
++ branch_merge.return_value = 'epel10'
++
++ self.cmd.load_rpmdefines()
++
++ self.assertEqual('10', self.cmd._distval)
++ self.assertEqual('rhel', self.cmd._distvar)
++ self.assertEqual('el10', self.cmd._disttag)
++ self.assertEqual('epel-10-i686', self.cmd.mockconfig)
++ self.assertEqual('epel10-override', self.cmd.override)
++ self.assertTrue(hasattr(self.cmd, '_distunset'))
++
++ self.assert_rpmdefines()
++
++ @patch('pyrpkg.Commands.branch_merge', new_callable=PropertyMock)
++ def test_load_epel10_10_dist_tag(self, branch_merge):
++ branch_merge.return_value = 'epel10.10'
++
++ self.cmd.load_rpmdefines()
++
++ self.assertEqual('10', self.cmd._distval)
++ self.assertEqual('rhel', self.cmd._distvar)
++ self.assertEqual('el10_10', self.cmd._disttag)
++ self.assertEqual('epel-10.10-i686', self.cmd.mockconfig)
++ self.assertEqual('epel10.10-override', self.cmd.override)
++ self.assertTrue(hasattr(self.cmd, '_distunset'))
++
++ self.assert_rpmdefines()
++
+ @patch('pyrpkg.Commands.branch_merge', new_callable=PropertyMock)
+ @patch('fedpkg.Commands._findrawhidebranch')
+ def test_load_rawhide_dist_tag(self, _findrawhidebranch, branch_merge):
+--
+2.45.2
+
diff --git a/fedpkg.spec b/fedpkg.spec
index 1e9bcfe..4a13a7f 100644
--- a/fedpkg.spec
+++ b/fedpkg.spec
@@ -5,7 +5,7 @@
Name: fedpkg
Version: 1.45
-Release: 1%{?dist}
+Release: 2%{?dist}
Summary: Fedora utility for working with dist-git
License: GPLv2+
@@ -15,6 +15,15 @@ Source0: https://pagure.io/releases/fedpkg/%{name}-%{version}.tar.gz
BuildArch: noarch
Patch1: 0001-Do-not-use-pytest-related-dependencies-temporarily.patch
Patch2: 0002-Remove-pytest-coverage-execution.patch
+Patch3: 0003-Fix-unittests-after-creating-the-project-in-hatch.patch
+Patch4: 0004-Remove-mbs.fedoraproject.org-scopes-from-git-cred-he.patch
+Patch5: 0005-Don-t-use-hatchling-on-python-3.6.patch
+Patch6: 0006-Don-t-print-the-branch-name-after-dash-when-there-is.patch
+Patch7: 0007-Test-for-valid-EPEL-branch-names.patch
+Patch8: 0008-Add-EPEL10-branch-name-cases-as-valid.patch
+Patch9: 0009-Test-url-usage-in-assert_valid_epel_package.patch
+Patch10: 0010-Add-EPEL10-url-pattern-on-assert_valid_epel_package.patch
+Patch11: 0011-Extend-load_rpmdefines-to-work-with-EPEL10.patch
BuildRequires: pkgconfig
BuildRequires: bash-completion
@@ -99,6 +108,12 @@ mv %{buildroot}%{compdir}/fedpkg.bash %{buildroot}%{compdir}/fedpkg
%changelog
+* Mon Jul 08 2024 Ondřej Nosek <onosek@redhat.com> - 1.45-2
+- Add support for building for epel10
+- Don't print the branch name after dash when there is no dash
+- Remove mbs.fedoraproject.org scopes from git cred helper
+- Fix unittests after creating the project in hatch
+
* Wed Jun 26 2024 Ondřej Nosek <onosek@redhat.com> - 1.45-1
- Allow package.cfg on rawhide/main branch (sgallagh)
- Fix datetime.utcnow deprecation warning (dherrera)
reply other threads:[~2026-08-10 21:46 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=178639837058.1.14353276909599819200.rpms-fedpkg-6b807f9336ce@fedoraproject.org \
--to=git-commits@fedoraproject.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox