public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
To: git-commits@fedoraproject.org
Subject: [rpms/rpkg] 1.70-1: Orphaned for 6+ weeks
Date: Mon, 10 Aug 2026 21:44:34 GMT [thread overview]
Message-ID: <178639827466.1.8905971386229574170.rpms-rpkg-59f256885f14@fedoraproject.org> (raw)
A new commit has been pushed.
Repo : rpms/rpkg
Branch : 1.70-1
Commit : 59f256885f143673ec8addff2f6d0bb0a5d676c0
Author : Ondřej Nosek <onosek@redhat.com>
Date : 2023-04-25T18:28:42+00:00
Stats : +1/-3055 in 25 file(s)
URL : https://src.fedoraproject.org/rpms/rpkg/c/59f256885f143673ec8addff2f6d0bb0a5d676c0?branch=1.70-1
Log:
Orphaned for 6+ weeks
---
diff --git a/.gitignore b/.gitignore
deleted file mode 100644
index a29257e..0000000
--- a/.gitignore
+++ /dev/null
@@ -1,64 +0,0 @@
-/rpkg-1.1.tar.gz
-/rpkg-1.2.tar.gz
-/rpkg-1.3.tar.gz
-/rpkg-1.4.tar.gz
-/rpkg-1.5.tar.gz
-/rpkg-1.6.tar.gz
-/rpkg-1.7.tar.gz
-/rpkg-1.8.tar.gz
-/rpkg-1.9.tar.gz
-/rpkg-1.10.tar.gz
-/rpkg-1.11.tar.gz
-/rpkg-1.12.tar.gz
-/rpkg-1.13.tar.gz
-/rpkg-1.14.tar.gz
-/rpkg-1.15.tar.gz
-/rpkg-1.16.tar.gz
-/rpkg-1.17.tar.gz
-/rpkg-1.18.tar.gz
-/rpkg-1.19.tar.gz
-/rpkg-1.20.tar.gz
-/rpkg-1.21.tar.gz
-/rpkg-1.24.tar.gz
-/rpkg-1.25.tar.gz
-/rpkg-1.26.tar.gz
-/rpkg-1.27.tar.gz
-/rpkg-1.28.tar.gz
-/rpkg-1.30.tar.gz
-/rpkg-1.31.tar.gz
-/rpkg-1.32.tar.gz
-/rpkg-1.33.tar.gz
-/rpkg-1.34.tar.gz
-/rpkg-1.35.tar.gz
-/rpkg-1.36.tar.gz
-/rpkg-1.37.tar.gz
-/rpkg-1.38.tar.gz
-/rpkg-1.39.tar.gz
-/rpkg-1.40.tar.gz
-/rpkg-1.41.tar.gz
-/rpkg-1.42.tar.gz
-/rpkg-1.43.tar.gz
-/rpkg-1.44.tar.gz
-/rpkg-1.45.tar.bz2
-/rpkg-1.45.tar.gz
-/rpkg-1.46.tar.gz
-/rpkg-1.47.tar.gz
-/rpkg-1.48.tar.gz
-/rpkg-1.49.tar.gz
-/rpkg-1.50.tar.gz
-/rpkg-1.51.tar.gz
-/rpkg-1.52.tar.gz
-/rpkg-1.53.tar.gz
-/rpkg-1.54.tar.gz
-/rpkg-1.55.tar.gz
-/rpkg-1.56.tar.gz
-/rpkg-1.57.tar.gz
-/rpkg-1.58.tar.gz
-/rpkg-1.59.tar.gz
-/rpkg-1.60.tar.gz
-/rpkg-1.61.tar.gz
-/rpkg-1.62.tar.gz
-/rpkg-1.63.tar.gz
-/rpkg-1.64.tar.gz
-/rpkg-1.65.tar.gz
-/rpkg-1.66.tar.gz
diff --git a/0001-Do-not-use-pytest-related-dependencies-temporarily.patch b/0001-Do-not-use-pytest-related-dependencies-temporarily.patch
deleted file mode 100644
index 70d12b0..0000000
--- a/0001-Do-not-use-pytest-related-dependencies-temporarily.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From 50caf547ff288d8146ea5e277ab7bfcf7e8b095c Mon Sep 17 00:00:00 2001
-From: Dominik Rumian <drumian@redhat.com>
-Date: Tue, 24 Aug 2021 16:24:47 +0200
-Subject: [PATCH] [PATCH] Do not use pytest-related dependencies temporarily
-
-Signed-off-by: Dominik Rumian <drumian@redhat.com>
----
- setup.py | 1 -
- 1 file changed, 1 deletion(-)
-
-diff --git a/setup.py b/setup.py
-index 9c6d881..557cf5f 100755
---- a/setup.py
-+++ b/setup.py
-@@ -49,7 +49,6 @@ setup(
- license="GPLv2+",
- url="https://pagure.io/rpkg",
- packages=find_packages(),
-- setup_requires=['setuptools_scm', 'pytest-runner'],
- install_requires=install_requires,
- tests_require=tests_require,
- dependency_links=dep_links,
---
-2.31.1
-
diff --git a/0002-Remove-pytest-coverage-execution.patch b/0002-Remove-pytest-coverage-execution.patch
deleted file mode 100644
index fbc9cb7..0000000
--- a/0002-Remove-pytest-coverage-execution.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From 8bf7c3b1336738ed5938f679fc4d450c3f8f0a62 Mon Sep 17 00:00:00 2001
-From: Ondrej Nosek <onosek@redhat.com>
-Date: Wed, 7 Sep 2022 00:11:56 +0200
-Subject: [PATCH] Remove pytest coverage execution
-
-Signed-off-by: Ondrej Nosek <onosek@redhat.com>
----
- setup.cfg | 1 -
- 1 file changed, 1 deletion(-)
-
-diff --git a/setup.cfg b/setup.cfg
-index 5e29c2f..4fe73fa 100644
---- a/setup.cfg
-+++ b/setup.cfg
-@@ -5,7 +5,6 @@ test = pytest
- max-line-length = 100
-
- [tool:pytest]
--addopts = --cov=pyrpkg
- testpaths = tests
-
- [egg_info]
---
-2.37.2
-
diff --git a/0003-Remove-Environment-Markers-syntax.patch b/0003-Remove-Environment-Markers-syntax.patch
deleted file mode 100644
index f596ce9..0000000
--- a/0003-Remove-Environment-Markers-syntax.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-From ac1c2995d17b106bbfd0ab6c84ab022da8b18e3d Mon Sep 17 00:00:00 2001
-From: Ondrej Nosek <onosek@redhat.com>
-Date: Mon, 7 Feb 2022 03:01:11 +0100
-Subject: [PATCH] Remove "Environment Markers" syntax
-
-Signed-off-by: Ondrej Nosek <onosek@redhat.com>
----
- requirements/test-pypi.txt | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/requirements/test-pypi.txt b/requirements/test-pypi.txt
-index 830d8c3..b732dcb 100644
---- a/requirements/test-pypi.txt
-+++ b/requirements/test-pypi.txt
-@@ -1,5 +1,5 @@
- coverage
--mock == 1.0.1;python_version<"3.3"
-+mock == 1.0.1
- flake8
- pytest
- pytest-cov
---
-2.34.1
-
diff --git a/0004-Process-source-URLs-with-fragment-in-pre-push-hook.patch b/0004-Process-source-URLs-with-fragment-in-pre-push-hook.patch
deleted file mode 100644
index e252038..0000000
--- a/0004-Process-source-URLs-with-fragment-in-pre-push-hook.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-From 6d813d40aff91345b171323512b3ae641a168d45 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Lubom=C3=ADr=20Sedl=C3=A1=C5=99?= <lsedlar@redhat.com>
-Date: Mon, 27 Feb 2023 08:36:20 +0100
-Subject: [PATCH] Process source URLs with fragment in pre-push hook
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Some download services do not have the actual filename in the URL.
-Packagers work around that by adding a fragment to the URL. This is then
-ignored by any server, but tricks RPM into getting the correct filename.
-
-Example:
-
- Source0: https://crates.io/api/v1/crates/actix/0.13.0/download#/actix-0.13.0.crate
-
-The filename is obviously `actix-0.13.0.crate`, but rpkg without this
-patch will come up with `download`.
-
-Signed-off-by: Lubomír Sedlář <lsedlar@redhat.com>
----
- pyrpkg/__init__.py | 4 +++-
- 1 file changed, 3 insertions(+), 1 deletion(-)
-
-diff --git a/pyrpkg/__init__.py b/pyrpkg/__init__.py
-index 6a0e9eb..c650851 100644
---- a/pyrpkg/__init__.py
-+++ b/pyrpkg/__init__.py
-@@ -4464,7 +4464,9 @@ class Commands(object):
- # find out the format of the source file path. From URL use just the file name.
- # We want to keep hierarchy of the files if possible
- res = urllib.parse.urlparse(file_location)
-- if res.scheme and res.netloc:
-+ if res.scheme and res.fragment:
-+ source_files.append(os.path.basename(res.fragment))
-+ elif res.scheme and res.netloc:
- source_files.append(os.path.basename(res.path))
- else:
- source_files.append(file_location)
---
-2.39.2
-
diff --git a/0005-container-build-update-signing-intent-help-for-OSBS-.patch b/0005-container-build-update-signing-intent-help-for-OSBS-.patch
deleted file mode 100644
index 4ead6a3..0000000
--- a/0005-container-build-update-signing-intent-help-for-OSBS-.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From e38cfe4b688b600c411a9745922b77ebb9c14122 Mon Sep 17 00:00:00 2001
-From: Ken Dreyer <kdreyer@redhat.com>
-Date: Tue, 28 Feb 2023 16:17:03 -0500
-Subject: [PATCH] container-build: update --signing-intent help for OSBS 2
-
-OSBS 2 logs the reactor configuration in a slightly different way.
-Update the --help text for --signing-intent to point users at the new
-location.
-
-Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
----
- pyrpkg/cli.py | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/pyrpkg/cli.py b/pyrpkg/cli.py
-index 41c4354..c3672b3 100644
---- a/pyrpkg/cli.py
-+++ b/pyrpkg/cli.py
-@@ -1724,7 +1724,7 @@ class cliClient(object):
- " server. If unspecified, the server will use the signing intent"
- " of the compose_ids you specify, or the server's"
- " default_signing_intent. To view the full list of possible"
-- " names, see REACTOR_CONFIG in orchestrator.log.")
-+ " names, see atomic_reactor.config in osbs-build.log.")
-
- parser.add_argument(
- '--skip-remote-rules-validation',
---
-2.39.2
-
diff --git a/0006-Do-not-generate-pre-push-hook-script-in-some-cases.patch b/0006-Do-not-generate-pre-push-hook-script-in-some-cases.patch
deleted file mode 100644
index 3369959..0000000
--- a/0006-Do-not-generate-pre-push-hook-script-in-some-cases.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From 30f189736137a50da4b740acf775ff6675a15a70 Mon Sep 17 00:00:00 2001
-From: Ondrej Nosek <onosek@redhat.com>
-Date: Wed, 8 Mar 2023 16:39:16 +0100
-Subject: [PATCH] Do not generate pre-push hook script in some cases
-
-Some rpkg users don't use fedpkg or similar tool for cloning
-and therefore there is no tool to execute the pre-push-check
-function. Do not generate the hook script in this case.
-
-Fixes: #665
-JIRA: RHELCMP-11392
-Signed-off-by: Ondrej Nosek <onosek@redhat.com>
----
- pyrpkg/__init__.py | 7 +++++++
- 1 file changed, 7 insertions(+)
-
-diff --git a/pyrpkg/__init__.py b/pyrpkg/__init__.py
-index acdad22..776cb21 100644
---- a/pyrpkg/__init__.py
-+++ b/pyrpkg/__init__.py
-@@ -1795,6 +1795,13 @@ class Commands(object):
- for possible user mistakes.
- """
- tool_name = os.path.basename(sys.argv[0]) # rhpkg|fedpkg|...
-+ if not tool_name:
-+ # empty argv - this functionality is not executed from x-pkg tool
-+ # and therefore there isn't a program that can run pre-push-check.
-+ # Example: the COPR team executes 'clone' by their own script.
-+ self.log.debug('Pre-push hook script was NOT added - missing '
-+ 'the packaging tool like fedpkg, rhpkg, ...')
-+ return
- hook_content = textwrap.dedent("""
- #!/bin/bash
-
---
-2.39.2
-
diff --git a/0007-More-robust-spec-file-presence-checking.patch b/0007-More-robust-spec-file-presence-checking.patch
deleted file mode 100644
index a1dde64..0000000
--- a/0007-More-robust-spec-file-presence-checking.patch
+++ /dev/null
@@ -1,292 +0,0 @@
-From 1108810bdefd0d880517b274acd6a3bd0d4156e0 Mon Sep 17 00:00:00 2001
-From: Ondrej Nosek <onosek@redhat.com>
-Date: Tue, 21 Mar 2023 02:44:04 +0100
-Subject: [PATCH 07/12] More robust spec file presence checking
-
-Some commands (verrel, sources, prep, import, ...) need to check
-whether the dist-git repository is in the correct state. It means
-at least the presence of the specfile.
-In the beginning, rpkg detects layouts. Layouts determine the file
-structure of the repository. For example, most commands can't
-be executed for the RetiredLayout (there is no specfile).
-When the repository directory exists, some layout can be always
-detected. Therefore '--path' argument is now checked for
-a valid directory.
-The timeout change in the request fixes the new bandit's finding.
-
-Fixes: #663
-JIRA: RHELCMP-11387
-
-Signed-off-by: Ondrej Nosek <onosek@redhat.com>
----
- pyrpkg/__init__.py | 9 ++++---
- pyrpkg/cli.py | 8 +++---
- pyrpkg/layout/__init__.py | 4 +--
- pyrpkg/utils.py | 14 ++++++++++
- tests/commands/test_push.py | 54 +++++++++++++++++++------------------
- tests/test_cli.py | 12 ++++++---
- 6 files changed, 63 insertions(+), 38 deletions(-)
-
-diff --git a/pyrpkg/__init__.py b/pyrpkg/__init__.py
-index 776cb21..028d195 100644
---- a/pyrpkg/__init__.py
-+++ b/pyrpkg/__init__.py
-@@ -923,9 +923,8 @@ class Commands(object):
- def load_spec(self):
- """This sets the spec attribute"""
-
-- if self.layout is None:
-+ if self.layout is None or isinstance(self.layout, layout.IncompleteLayout):
- raise rpkgError('Spec file is not available')
--
- if self.is_retired():
- raise rpkgError('This package or module is retired. The action has stopped.')
-
-@@ -1166,8 +1165,10 @@ class Commands(object):
-
- @property
- def sources_filename(self):
-- if self.layout is None:
-- return os.path.join(self.path, 'sources')
-+ if self.layout is None or isinstance(self.layout, layout.IncompleteLayout):
-+ raise rpkgError('Spec file is not available')
-+ if self.is_retired():
-+ raise rpkgError('This package or module is retired. The action has stopped.')
- return os.path.join(
- self.path, self.layout.sources_file_template.replace("{0.repo_name}", self.repo_name))
-
-diff --git a/pyrpkg/cli.py b/pyrpkg/cli.py
-index c3672b3..1bcf6e4 100644
---- a/pyrpkg/cli.py
-+++ b/pyrpkg/cli.py
-@@ -386,7 +386,7 @@ class cliClient(object):
- help='Run Koji commands as a different user')
- # Let the user define a path to work in rather than cwd
- self.parser.add_argument('--path', default=None,
-- type=utils.u,
-+ type=utils.validate_path,
- help='Define the directory to work in '
- '(defaults to cwd)')
- # Verbosity
-@@ -911,8 +911,9 @@ class cliClient(object):
- if 'path' in args:
- # Without "path", we can't really test...
- url = '%(protocol)s://%(host)s/%(path)s/info/refs?service=git-receive-pack' % args
-- resp = requests.head(url, auth=HTTPBasicAuth(args['username'],
-- args['password']))
-+ resp = requests.head(url,
-+ auth=HTTPBasicAuth(args['username'], args['password']),
-+ timeout=15)
- if resp.status_code == 401:
- return self.oidc_client.report_token_issue()
-
-@@ -2363,6 +2364,7 @@ class cliClient(object):
-
- def import_srpm(self):
- uploadfiles = self.cmd.import_srpm(self.args.srpm)
-+ self.load_cmd() # to reload layouts - because a specfile could appear during import
- if uploadfiles:
- try:
- self.cmd.upload(uploadfiles, replace=True, offline=self.args.offline)
-diff --git a/pyrpkg/layout/__init__.py b/pyrpkg/layout/__init__.py
-index 762af0d..850ddc2 100644
---- a/pyrpkg/layout/__init__.py
-+++ b/pyrpkg/layout/__init__.py
-@@ -12,8 +12,8 @@
- from pyrpkg.errors import LayoutError
-
- from .base import MetaLayout
--from .layouts import (DistGitLayout, IncompleteLayout, # noqa: F401
-- RetiredLayout, SRPMLayout)
-+from .layouts import (DistGitLayout, DistGitResultsDirLayout, # noqa: F401
-+ IncompleteLayout, RetiredLayout, SRPMLayout)
-
-
- def build(path, hint=None):
-diff --git a/pyrpkg/utils.py b/pyrpkg/utils.py
-index ceb4906..3337bdb 100644
---- a/pyrpkg/utils.py
-+++ b/pyrpkg/utils.py
-@@ -26,11 +26,25 @@ if six.PY3:
- def u(s):
- return s
-
-+ def validate_path(s):
-+ abspath = os.path.abspath(s)
-+ if os.path.exists(abspath):
-+ return s
-+ else:
-+ raise argparse.ArgumentTypeError('given path \'{0}\' doesn\'t exist'.format(abspath))
-+
- getcwd = os.getcwd
- else:
- def u(s):
- return s.decode('utf-8')
-
-+ def validate_path(s):
-+ abspath = os.path.abspath(s.decode('utf-8'))
-+ if os.path.exists(abspath):
-+ return s.decode('utf-8')
-+ else:
-+ raise argparse.ArgumentTypeError('given path \'{0}\' doesn\'t exist'.format(abspath))
-+
- getcwd = os.getcwdu
-
-
-diff --git a/tests/commands/test_push.py b/tests/commands/test_push.py
-index ef8057a..79c3a8b 100644
---- a/tests/commands/test_push.py
-+++ b/tests/commands/test_push.py
-@@ -1,9 +1,13 @@
- # -*- coding: utf-8 -*-
-
- import os
-+import subprocess
-
- import git
-
-+import pyrpkg
-+from pyrpkg.sources import SourcesFile
-+
- from . import CommandTestCase
-
- SPECFILE_TEMPLATE = """Name: test
-@@ -22,11 +26,6 @@ Test
- %%install
- rm -f $RPM_BUILD_ROOT%%{_sysconfdir}/"""
-
--CLONE_CONFIG = '''
-- bz.default-component %(module)s
-- sendemail.to %(module)s-owner@fedoraproject.org
--'''
--
-
- class CommandPushTestCase(CommandTestCase):
-
-@@ -45,28 +44,30 @@ class CommandPushTestCase(CommandTestCase):
-
- self.make_new_git(self.module)
-
-- import pyrpkg
-- cmd = pyrpkg.Commands(self.path, self.lookaside,
-- self.lookasidehash,
-- self.lookaside_cgi, self.gitbaseurl,
-- self.anongiturl, self.branchre, self.kojiprofile,
-- self.build_client, self.user, self.dist,
-- self.target, self.quiet)
-- cmd.clone_config_rpms = CLONE_CONFIG
-- cmd.clone(self.module, anon=True)
-- cmd.path = os.path.join(self.path, self.module)
-- os.chdir(os.path.join(self.path, self.module))
-+ moduledir = os.path.join(self.gitroot, self.module)
-+ subprocess.check_call(['git', 'clone', 'file://%s' % moduledir],
-+ cwd=self.path, stdout=subprocess.PIPE,
-+ stderr=subprocess.PIPE)
-+
-+ self.cloned_dir = os.path.join(self.path, self.module)
-+ self.cmd = pyrpkg.Commands(self.cloned_dir, self.lookaside,
-+ self.lookasidehash,
-+ self.lookaside_cgi, self.gitbaseurl,
-+ self.anongiturl, self.branchre, self.kojiprofile,
-+ self.build_client, self.user, self.dist,
-+ self.target, self.quiet)
-+ os.chdir(self.cloned_dir)
-
- spec_file = 'module.spec'
- with open(spec_file, 'w') as f:
- f.write(SPECFILE_TEMPLATE % '')
-
-- cmd.repo.index.add([spec_file])
-- cmd.repo.index.commit("add SPEC")
-+ self.cmd.repo.index.add([spec_file])
-+ self.cmd.repo.index.commit("add SPEC")
-
- # Now, change directory to parent and test the push
- os.chdir(self.path)
-- cmd.push(no_verify=True)
-+ self.cmd.push(no_verify=True)
-
-
- class TestPushWithPatches(CommandTestCase):
-@@ -76,18 +77,20 @@ class TestPushWithPatches(CommandTestCase):
-
- self.make_new_git(self.module)
-
-- import pyrpkg
-- self.cmd = pyrpkg.Commands(self.path, self.lookaside,
-+ moduledir = os.path.join(self.gitroot, self.module)
-+ subprocess.check_call(['git', 'clone', 'file://%s' % moduledir],
-+ cwd=self.path, stdout=subprocess.PIPE,
-+ stderr=subprocess.PIPE)
-+
-+ self.cloned_dir = os.path.join(self.path, self.module)
-+ self.cmd = pyrpkg.Commands(self.cloned_dir, self.lookaside,
- self.lookasidehash,
- self.lookaside_cgi, self.gitbaseurl,
- self.anongiturl, self.branchre,
- self.kojiprofile,
- self.build_client, self.user, self.dist,
- self.target, self.quiet)
-- self.cmd.clone_config_rpms = CLONE_CONFIG
-- self.cmd.clone(self.module, anon=True)
-- self.cmd.path = os.path.join(self.path, self.module)
-- os.chdir(os.path.join(self.path, self.module))
-+ os.chdir(self.cloned_dir)
-
- # Track SPEC and a.patch in git
- spec_file = 'module.spec'
-@@ -103,7 +106,6 @@ Patch3: d.path
- f.write(patch_file)
-
- # Track c.patch in sources
-- from pyrpkg.sources import SourcesFile
- sources_file = SourcesFile(self.cmd.sources_filename,
- self.cmd.source_entry_type)
- file_hash = self.cmd.lookasidecache.hash_file('c.patch')
-diff --git a/tests/test_cli.py b/tests/test_cli.py
-index df053aa..868ad1f 100644
---- a/tests/test_cli.py
-+++ b/tests/test_cli.py
-@@ -1841,9 +1841,11 @@ class TestMockbuild(CliTestCase):
- @patch('pyrpkg.Commands._config_dir_basic')
- @patch('pyrpkg.Commands._config_dir_other')
- @patch('os.path.exists', return_value=False)
-+ @patch('pyrpkg.utils.validate_path')
- def test_use_mock_config_got_from_koji(
-- self, exists, config_dir_other, config_dir_basic):
-+ self, validate_path, exists, config_dir_other, config_dir_basic):
- mock_layout = layout.DistGitLayout(root_dir=self.cloned_repo_path)
-+ validate_path.return_value = self.cloned_repo_path
- with patch('pyrpkg.layout.build', return_value=mock_layout):
- config_dir_basic.return_value = '/path/to/config-dir'
-
-@@ -1859,9 +1861,11 @@ class TestMockbuild(CliTestCase):
-
- @patch('pyrpkg.Commands._config_dir_basic')
- @patch('os.path.exists', return_value=False)
-+ @patch('pyrpkg.utils.validate_path')
- def test_fail_to_store_mock_config_in_created_config_dir(
-- self, exists, config_dir_basic):
-+ self, validate_path, exists, config_dir_basic):
- config_dir_basic.side_effect = rpkgError
-+ validate_path.return_value = self.cloned_repo_path
-
- cli_cmd = ['rpkg', '--path', self.cloned_repo_path,
- '--release', 'rhel-7', 'mockbuild']
-@@ -1870,10 +1874,12 @@ class TestMockbuild(CliTestCase):
- @patch('pyrpkg.Commands._config_dir_basic')
- @patch('pyrpkg.Commands._config_dir_other')
- @patch('os.path.exists', return_value=False)
-+ @patch('pyrpkg.utils.validate_path')
- def test_fail_to_populate_mock_config(
-- self, exists, config_dir_other, config_dir_basic):
-+ self, validate_path, exists, config_dir_other, config_dir_basic):
- config_dir_basic.return_value = '/path/to/config-dir'
- config_dir_other.side_effect = rpkgError
-+ validate_path.return_value = self.cloned_repo_path
-
- cli_cmd = ['rpkg', '--path', self.cloned_repo_path,
- '--release', 'rhel-7', 'mockbuild']
---
-2.39.2
-
diff --git a/0008-Update-to-spec-file-presence-checking.patch b/0008-Update-to-spec-file-presence-checking.patch
deleted file mode 100644
index 723415f..0000000
--- a/0008-Update-to-spec-file-presence-checking.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From 791fd03b4de1324508583ab53c89cc67459db355 Mon Sep 17 00:00:00 2001
-From: Ondrej Nosek <onosek@redhat.com>
-Date: Tue, 21 Mar 2023 13:44:38 +0100
-Subject: [PATCH 08/12] Update to spec file presence checking
-
-Using a different approach to checking the layout. Older way prevented
-`retire` function working correctly. Layouts are detected at the
-beginning of the run and the result stays the same, unlike the direct
-checking files like dead.package in function `is_retired`.
-
-Fixes: #663
-JIRA: RHELCMP-11387
-
-Signed-off-by: Ondrej Nosek <onosek@redhat.com>
----
- pyrpkg/__init__.py | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/pyrpkg/__init__.py b/pyrpkg/__init__.py
-index 028d195..e8f4886 100644
---- a/pyrpkg/__init__.py
-+++ b/pyrpkg/__init__.py
-@@ -925,7 +925,7 @@ class Commands(object):
-
- if self.layout is None or isinstance(self.layout, layout.IncompleteLayout):
- raise rpkgError('Spec file is not available')
-- if self.is_retired():
-+ if isinstance(self.layout, layout.RetiredLayout):
- raise rpkgError('This package or module is retired. The action has stopped.')
-
- # Get a list of ".spec" files in the path we're looking at
-@@ -1167,7 +1167,7 @@ class Commands(object):
- def sources_filename(self):
- if self.layout is None or isinstance(self.layout, layout.IncompleteLayout):
- raise rpkgError('Spec file is not available')
-- if self.is_retired():
-+ if isinstance(self.layout, layout.RetiredLayout):
- raise rpkgError('This package or module is retired. The action has stopped.')
- return os.path.join(
- self.path, self.layout.sources_file_template.replace("{0.repo_name}", self.repo_name))
---
-2.39.2
-
diff --git a/0009-Add-more-information-about-pre-push-hook.patch b/0009-Add-more-information-about-pre-push-hook.patch
deleted file mode 100644
index 60bad27..0000000
--- a/0009-Add-more-information-about-pre-push-hook.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-From 0393dc39bf450cf20df9db63bac135c078f64a14 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Lubom=C3=ADr=20Sedl=C3=A1=C5=99?= <lsedlar@redhat.com>
-Date: Tue, 28 Mar 2023 08:53:30 +0200
-Subject: [PATCH 09/12] Add more information about pre-push hook
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-It's not obvious to many users where the check is coming from, and they
-have the power to edit the script or delete it completely. Let's try to
-improve that a bit.
-
-Signed-off-by: Lubomír Sedlář <lsedlar@redhat.com>
----
- pyrpkg/__init__.py | 6 +++++-
- 1 file changed, 5 insertions(+), 1 deletion(-)
-
-diff --git a/pyrpkg/__init__.py b/pyrpkg/__init__.py
-index e8f4886..7a3c9c6 100644
---- a/pyrpkg/__init__.py
-+++ b/pyrpkg/__init__.py
-@@ -1806,6 +1806,10 @@ class Commands(object):
- hook_content = textwrap.dedent("""
- #!/bin/bash
-
-+ # This file was generated by {0} when cloning the repository.
-+ # You can edit it to your liking or delete completely. It will not
-+ # be recreated.
-+
- _remote="$1"
- _url="$2"
-
-@@ -4429,7 +4433,7 @@ class Commands(object):
- return self._repo_name, version, release
-
- def pre_push_check(self, ref):
-- show_hint = ('Hint: this check (pre-push hook script) can be bypassed by adding '
-+ show_hint = ('Hint: this check (.git/hooks/pre-push script) can be bypassed by adding '
- 'the argument \'--no-verify\' argument to the push command.')
- try:
- commit = self.repo.commit(ref)
---
-2.39.2
-
diff --git a/0010-pre-push-check-have-to-use-spectool-with-define.patch b/0010-pre-push-check-have-to-use-spectool-with-define.patch
deleted file mode 100644
index bfe7094..0000000
--- a/0010-pre-push-check-have-to-use-spectool-with-define.patch
+++ /dev/null
@@ -1,146 +0,0 @@
-From d5be51eec99108c3809551b615064d0c5cbe628a Mon Sep 17 00:00:00 2001
-From: Ondrej Nosek <onosek@redhat.com>
-Date: Tue, 28 Mar 2023 19:58:06 +0200
-Subject: [PATCH 10/12] `pre-push-check` have to use spectool with --define
-
-To get all defined source files and patches from the specfile,
-the 'spectool' utility needs '--define' argument(s) to set specific
-paths for the repository.
-
-JIRA: RHELCMP-11466
-Fixes: #672
-
-Signed-off-by: Ondrej Nosek <onosek@redhat.com>
----
- pyrpkg/__init__.py | 57 +++++++++++++++------------
- tests/commands/test_pre_push_check.py | 3 +-
- 2 files changed, 33 insertions(+), 27 deletions(-)
-
-diff --git a/pyrpkg/__init__.py b/pyrpkg/__init__.py
-index 7a3c9c6..584c141 100644
---- a/pyrpkg/__init__.py
-+++ b/pyrpkg/__init__.py
-@@ -4442,30 +4442,41 @@ class Commands(object):
- sys.exit(1)
-
- try:
-+ clone_dir = tempfile.mkdtemp(prefix="pre_push_hook_")
-+ for cmd in [
-+ ('git', 'clone', self.path, clone_dir),
-+ ('git', 'checkout', ref),
-+ ]:
-+ ret, _, _ = self._run_command(cmd, cwd=clone_dir,
-+ # suppress unwanted printing of command line messages
-+ return_stdout=True, return_stderr=True)
-+ if ret != 0:
-+ self.log.error('Command \'{0}\' failed. Push operation '
-+ 'was cancelled.'.format(' '.join(cmd)))
-+ self.log.warning(show_hint)
-+ sys.exit(2)
-+
-+ # get all source files from the specfile (including patches)
- # Assume, that specfile names are same in the active branch
- # and in the pushed branch (git checkout f37 && git push origin rawhide)
- # in this case 'f37' is active branch and 'rawhide' is pushed branch.
- specfile_path_absolute = os.path.join(self.layout.specdir, self.spec)
- # convert to relative path
- specfile_path = os.path.relpath(specfile_path_absolute, start=self.path)
-- spec_content = self.repo.git.cat_file("-p", "{0}:{1}".format(ref, specfile_path))
-- except Exception:
-- # It might be the case of an empty commit
-- self.log.warning('Specfile doesn\'t exist. Push operation continues.')
-- return
--
-- # load specfile content from pushed branch and save it into a temporary file
-- with tempfile.NamedTemporaryFile(mode="w+") as temporary_spec:
-- temporary_spec.write(spec_content)
-- temporary_spec.flush()
-- # get all source files from the specfile (including patches)
-- cmd = ('spectool', '-l', temporary_spec.name)
-- ret, stdout, _ = self._run_command(cmd, return_text=True, return_stdout=True)
-+ cmd = ['spectool', '-l', os.path.join(clone_dir, specfile_path)]
-+ # extract just '--define' arguments from rpmdefines
-+ for opt, val in zip(self.rpmdefines[0::2], self.rpmdefines[1::2]):
-+ if opt == '--define':
-+ cmd.extend((opt, val))
-+ ret, stdout, _ = self._run_command(cmd, cwd=clone_dir,
-+ return_text=True, return_stdout=True)
- if ret != 0:
- self.log.error('Command \'{0}\' failed. Push operation '
- 'was cancelled.'.format(' '.join(cmd)))
- self.log.warning(show_hint)
-- sys.exit(2)
-+ sys.exit(3)
-+ finally:
-+ self._cleanup_tmp_dir(clone_dir)
-
- source_files = []
- # extract source files from the spectool's output
-@@ -4490,22 +4501,16 @@ class Commands(object):
- sources_file_path_absolute = self.sources_filename
- # convert to relative path
- sources_file_path = os.path.relpath(sources_file_path_absolute, start=self.path)
-- sources_file_content = self.repo.git.cat_file(
-- '-p', '{0}:{1}'.format(ref, sources_file_path))
-+
-+ # parse 'sources' files content
-+ sourcesf = SourcesFile(sources_file_path, self.source_entry_type)
-+ sourcesf_entries = set(item.file for item in sourcesf.entries)
- except Exception:
- self.log.warning('\'sources\' file doesn\'t exist. Push operation continues.')
- # NOTE: check doesn't fail when 'sources' file doesn't exist. Just skips the rest.
- # it might be the case of the push without 'sources' = retiring the repository
- return
-
-- # load 'sources' file content from pushed branch and save it into a temporary file
-- with tempfile.NamedTemporaryFile(mode="w+") as temporary_sources_file:
-- temporary_sources_file.write(sources_file_content)
-- temporary_sources_file.flush()
-- # parse 'sources' files content
-- sourcesf = SourcesFile(temporary_sources_file.name, self.source_entry_type)
-- sourcesf_entries = set(item.file for item in sourcesf.entries)
--
- # list of all files (their relative paths) in the commit
- repo_entries = set(item.path for item in commit.tree.traverse() if item.type != "tree")
-
-@@ -4518,7 +4523,7 @@ class Commands(object):
- 'nor tracked in git. '
- 'Push operation was cancelled'.format(source_file))
- self.log.warning(show_hint)
-- sys.exit(3)
-+ sys.exit(4)
-
- # verify all file entries in 'sources' were uploaded to the lookaside cache
- for entry in sourcesf.entries:
-@@ -4532,6 +4537,6 @@ class Commands(object):
- self.log.error('Source file (or tarball) \'{}\' wasn\'t uploaded to the lookaside '
- 'cache. Push operation was cancelled.'.format(filename))
- self.log.warning(show_hint)
-- sys.exit(4)
-+ sys.exit(5)
-
- return 0 # The push operation continues
-diff --git a/tests/commands/test_pre_push_check.py b/tests/commands/test_pre_push_check.py
-index 5e314b9..ee151c1 100644
---- a/tests/commands/test_pre_push_check.py
-+++ b/tests/commands/test_pre_push_check.py
-@@ -37,6 +37,7 @@ class TestPrePushCheck(CommandTestCase):
- def setUp(self):
- super(TestPrePushCheck, self).setUp()
-
-+ self.dist = "rhel-8"
- self.make_new_git(self.module)
-
- moduledir = os.path.join(self.gitroot, self.module)
-@@ -87,7 +88,7 @@ Patch3: d.patch
- with self.assertRaises(SystemExit) as exc:
- self.cmd.pre_push_check("HEAD")
-
-- self.assertEqual(exc.exception.code, 3)
-+ self.assertEqual(exc.exception.code, 4)
- log_error.assert_called_once_with("Source file 'b.patch' was neither listed in the "
- "'sources' file nor tracked in git. Push operation "
- "was cancelled")
---
-2.39.2
-
diff --git a/0011-A-HEAD-query-into-a-lookaside-cache.patch b/0011-A-HEAD-query-into-a-lookaside-cache.patch
deleted file mode 100644
index a3281b2..0000000
--- a/0011-A-HEAD-query-into-a-lookaside-cache.patch
+++ /dev/null
@@ -1,97 +0,0 @@
-From 77cd608e596af94811c22a16ff58a265d9c7381e Mon Sep 17 00:00:00 2001
-From: Ondrej Nosek <onosek@redhat.com>
-Date: Fri, 31 Mar 2023 14:09:09 +0200
-Subject: [PATCH 11/12] A HEAD query into a lookaside cache
-
-A query about whether some file is present in the lookaside cache was
-under authentication and it prevented using command `pre-push-check`
-for those without the 'packager' permission.
-Added another method (based on HTTP HEAD), that allows the same check
-without authentication.
-
-JIRA: RHELCMP-11485
-Fixes: https://pagure.io/fedpkg/issue/513
-
-Signed-off-by: Ondrej Nosek <onosek@redhat.com>
----
- pyrpkg/__init__.py | 2 +-
- pyrpkg/lookaside.py | 36 ++++++++++++++++++++++++++++++++++--
- 2 files changed, 35 insertions(+), 3 deletions(-)
-
-diff --git a/pyrpkg/__init__.py b/pyrpkg/__init__.py
-index 584c141..15203b7 100644
---- a/pyrpkg/__init__.py
-+++ b/pyrpkg/__init__.py
-@@ -4529,7 +4529,7 @@ class Commands(object):
- for entry in sourcesf.entries:
- filename = entry.file
- hash = entry.hash
-- file_exists_in_lookaside = self.lookasidecache.remote_file_exists(
-+ file_exists_in_lookaside = self.lookasidecache.remote_file_exists_head(
- self.ns_repo_name if self.lookaside_namespaced else self.repo_name,
- filename,
- hash)
-diff --git a/pyrpkg/lookaside.py b/pyrpkg/lookaside.py
-index 90f0f1e..ecbf12b 100644
---- a/pyrpkg/lookaside.py
-+++ b/pyrpkg/lookaside.py
-@@ -22,7 +22,7 @@ import sys
-
- import pycurl
- import six
--from six.moves import http_client
-+from six.moves import http_client, urllib
-
- from .errors import (AlreadyUploadedError, DownloadError, InvalidHashType,
- UploadError)
-@@ -157,7 +157,7 @@ class CGILookasideCache(object):
- return
-
- self.log.info("Downloading %s", filename)
-- urled_file = filename.replace(' ', '%20')
-+ urled_file = urllib.parse.quote(filename)
- url = self.get_download_url(name, urled_file, hash, hashtype, **kwargs)
- if isinstance(url, six.text_type):
- url = url.encode('utf-8')
-@@ -200,6 +200,38 @@ class CGILookasideCache(object):
- if not self.file_is_valid(outfile, hash, hashtype=hashtype):
- raise DownloadError('%s failed checksum' % filename)
-
-+ def remote_file_exists_head(self, name, filename, hash):
-+ """Verify whether a file exists on the lookaside cache.
-+ Uses a HTTP HEAD request and doesn't require authentication.
-+
-+ :param str name: The name of the module. (usually the name of the
-+ SRPM). This can include the namespace as well (depending on what
-+ the server side expects).
-+ :param str filename: The name of the file to check for.
-+ :param str hash: The known good hash of the file.
-+ """
-+
-+ urled_file = urllib.parse.quote(filename)
-+ url = self.get_download_url(name, urled_file, hash, self.hashtype)
-+
-+ c = pycurl.Curl()
-+ c.setopt(pycurl.URL, url)
-+ c.setopt(pycurl.NOBODY, True)
-+ c.setopt(pycurl.FOLLOWLOCATION, 1)
-+
-+ try:
-+ c.perform()
-+ status = c.getinfo(pycurl.RESPONSE_CODE)
-+ except Exception as e:
-+ raise DownloadError(e)
-+ finally:
-+ c.close()
-+
-+ if status != 200:
-+ self.log.debug('Unavailable file \'%s\' at %s' % (filename, url))
-+ return False
-+ return True
-+
- def remote_file_exists(self, name, filename, hash):
- """Verify whether a file exists on the lookaside cache
-
---
-2.39.2
-
diff --git a/0012-pre-push-hook-script-contains-a-user-s-config.patch b/0012-pre-push-hook-script-contains-a-user-s-config.patch
deleted file mode 100644
index ff2676d..0000000
--- a/0012-pre-push-hook-script-contains-a-user-s-config.patch
+++ /dev/null
@@ -1,197 +0,0 @@
-From 1f03eb9102f765c36cc201a499d815732e67dd39 Mon Sep 17 00:00:00 2001
-From: Ondrej Nosek <onosek@redhat.com>
-Date: Mon, 27 Mar 2023 23:34:12 +0200
-Subject: [PATCH 12/12] pre-push hook script contains a user's config
-
-When the `clone` command is called with an argument
--C|--config <config_file>
-this argument is placed to the generated pre-push script.
-
-Fixes: #667
-JIRA: RHELCMP-11394
-
-Signed-off-by: Ondrej Nosek <onosek@redhat.com>
----
- pyrpkg/__init__.py | 23 ++++++++++++-------
- pyrpkg/cli.py | 6 +++--
- tests/commands/test_clone.py | 44 ++++++++++++++++++++++++++++++++++++
- 3 files changed, 63 insertions(+), 10 deletions(-)
-
-diff --git a/pyrpkg/__init__.py b/pyrpkg/__init__.py
-index 15203b7..9996402 100644
---- a/pyrpkg/__init__.py
-+++ b/pyrpkg/__init__.py
-@@ -1566,7 +1566,8 @@ class Commands(object):
- return
-
- def clone(self, repo, path=None, branch=None, bare_dir=None,
-- anon=False, target=None, depth=None, extra_args=None):
-+ anon=False, target=None, depth=None, extra_args=None,
-+ config_path=None):
- """Clone a repo, optionally check out a specific branch.
-
- :param str repo: the name of the repository to clone.
-@@ -1583,6 +1584,7 @@ class Commands(object):
- to the specified number of commits.
- :param list extra_args: additional arguments that are passed to
- the clone command.
-+ :param str config_path: path to the global config file
- """
-
- if not path:
-@@ -1638,7 +1640,7 @@ class Commands(object):
-
- if not bare_dir:
- self._add_git_excludes(os.path.join(path, git_dir))
-- self._add_git_pre_push_hook(os.path.join(path, git_dir))
-+ self._add_git_pre_push_hook(os.path.join(path, git_dir), config_path)
-
- return
-
-@@ -1654,7 +1656,7 @@ class Commands(object):
- return repo
-
- def clone_with_dirs(self, repo, anon=False, target=None, depth=None,
-- extra_args=None):
-+ extra_args=None, config_path=None):
- """Clone a repo old style with subdirs for each branch.
-
- :param str repo: name of the repository to clone.
-@@ -1666,6 +1668,7 @@ class Commands(object):
- to the specified number of commits.
- :param list extra_args: additional arguments that are passed to
- the clone command.
-+ :param str config_path: path to the global config file
- """
-
- self._push_url = None
-@@ -1724,7 +1727,7 @@ class Commands(object):
-
- # Add excludes
- self._add_git_excludes(branch_path)
-- self._add_git_pre_push_hook(branch_path)
-+ self._add_git_pre_push_hook(branch_path, config_path)
- except (git.GitCommandError, OSError) as e:
- raise rpkgError('Could not locally clone %s from %s: %s'
- % (branch, repo_path, e))
-@@ -1787,7 +1790,7 @@ class Commands(object):
- git_excludes.write()
- self.log.debug('Git-excludes patterns were added into %s' % git_excludes_path)
-
-- def _add_git_pre_push_hook(self, conf_dir):
-+ def _add_git_pre_push_hook(self, repo_dir, config_path=None):
- """
- Create pre-push hook script and write it in the location:
- <repository_directory>/.git/hooks/pre-push
-@@ -1803,6 +1806,10 @@ class Commands(object):
- self.log.debug('Pre-push hook script was NOT added - missing '
- 'the packaging tool like fedpkg, rhpkg, ...')
- return
-+
-+ # in case the clone command run with 'x-pkg -C <config_path> clone <repo_name>'
-+ config_arg = ' -C "{0}"'.format(os.path.realpath(config_path)) if config_path else ""
-+
- hook_content = textwrap.dedent("""
- #!/bin/bash
-
-@@ -1818,7 +1825,7 @@ class Commands(object):
- do
- command -v {0} >/dev/null 2>&1 || {{ echo >&2 "Warning: '{0}' is missing, \\
- pre-push check is omitted. See .git/hooks/pre-push"; exit 0; }}
-- {0} pre-push-check "$local_sha"
-+ {0}{1} pre-push-check "$local_sha"
- ret_code=$?
- if [ $ret_code -ne 0 ] && [ $exit_code -eq 0 ]; then
- exit_code=$ret_code
-@@ -1826,8 +1833,8 @@ class Commands(object):
- done
-
- exit $exit_code
-- """).strip().format(tool_name)
-- git_pre_push_hook_path = os.path.join(conf_dir, '.git/hooks/pre-push')
-+ """).strip().format(tool_name, config_arg)
-+ git_pre_push_hook_path = os.path.join(repo_dir, '.git/hooks/pre-push')
- if not os.path.exists(os.path.dirname(git_pre_push_hook_path)):
- # prepare ".git/hooks" directory if it is missing
- os.makedirs(os.path.dirname(git_pre_push_hook_path))
-diff --git a/pyrpkg/cli.py b/pyrpkg/cli.py
-index 1bcf6e4..3d8ce33 100644
---- a/pyrpkg/cli.py
-+++ b/pyrpkg/cli.py
-@@ -2182,14 +2182,16 @@ class cliClient(object):
- anon=self.args.anonymous,
- target=self.args.clone_target,
- depth=self.args.depth,
-- extra_args=self.extra_args)
-+ extra_args=self.extra_args,
-+ config_path=self.args.config)
- else:
- self.cmd.clone(self.args.repo[0],
- branch=self.args.branch,
- anon=self.args.anonymous,
- target=self.args.clone_target,
- depth=self.args.depth,
-- extra_args=self.extra_args)
-+ extra_args=self.extra_args,
-+ config_path=self.args.config)
-
- def commit(self):
- if self.args.with_changelog and not self.args.message:
-diff --git a/tests/commands/test_clone.py b/tests/commands/test_clone.py
-index f741864..6ef1300 100644
---- a/tests/commands/test_clone.py
-+++ b/tests/commands/test_clone.py
-@@ -95,6 +95,50 @@ class CommandCloneTestCase(CommandTestCase):
-
- shutil.rmtree(altpath)
-
-+ def test_clone_anonymous_pre_push_hook(self):
-+ self.make_new_git(self.module)
-+
-+ altpath = tempfile.mkdtemp(prefix='rpkg-tests.')
-+
-+ cmd = pyrpkg.Commands(self.path, self.lookaside, self.lookasidehash,
-+ self.lookaside_cgi, self.gitbaseurl,
-+ self.anongiturl, self.branchre, self.kojiprofile,
-+ self.build_client, self.user, self.dist,
-+ self.target, self.quiet)
-+ cmd.clone(self.module, anon=True, config_path=None)
-+
-+ moduledir = os.path.join(self.path, self.module)
-+ self.assertTrue(os.path.isfile(os.path.join(moduledir, '.git/hooks/pre-push')))
-+
-+ with open(os.path.join(moduledir, '.git/hooks/pre-push')) as git_hook_script:
-+ content = git_hook_script.read()
-+ pattern = '__main__.py pre-push-check "$local_sha"'
-+ self.assertIn(pattern, content)
-+
-+ shutil.rmtree(altpath)
-+
-+ def test_clone_anonymous_pre_push_hook_config(self):
-+ self.make_new_git(self.module)
-+
-+ altpath = tempfile.mkdtemp(prefix='rpkg-tests.')
-+
-+ cmd = pyrpkg.Commands(self.path, self.lookaside, self.lookasidehash,
-+ self.lookaside_cgi, self.gitbaseurl,
-+ self.anongiturl, self.branchre, self.kojiprofile,
-+ self.build_client, self.user, self.dist,
-+ self.target, self.quiet)
-+ cmd.clone(self.module, anon=True, config_path="/home/conf/rhpkg.conf")
-+
-+ moduledir = os.path.join(self.path, self.module)
-+ self.assertTrue(os.path.isfile(os.path.join(moduledir, '.git/hooks/pre-push')))
-+
-+ with open(os.path.join(moduledir, '.git/hooks/pre-push')) as git_hook_script:
-+ content = git_hook_script.read()
-+ pattern = '__main__.py -C "/home/conf/rhpkg.conf" pre-push-check "$local_sha"'
-+ self.assertIn(pattern, content)
-+
-+ shutil.rmtree(altpath)
-+
- def test_clone_anonymous_with_branch(self):
- self.make_new_git(self.module,
- branches=['rpkg-tests-1', 'rpkg-tests-2'])
---
-2.39.2
-
diff --git a/0013-Fix-unittests-for-clone-and-pre-push-hook-script.patch b/0013-Fix-unittests-for-clone-and-pre-push-hook-script.patch
deleted file mode 100644
index 991fb22..0000000
--- a/0013-Fix-unittests-for-clone-and-pre-push-hook-script.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-From 1d82b7eaf98e695689a7dc10bd308030e3c13eea Mon Sep 17 00:00:00 2001
-From: Ondrej Nosek <onosek@redhat.com>
-Date: Sat, 1 Apr 2023 01:34:34 +0200
-Subject: [PATCH] Fix unittests for `clone` and pre-push hook script
-
-Signed-off-by: Ondrej Nosek <onosek@redhat.com>
----
- tests/commands/test_clone.py | 8 ++++++--
- 1 file changed, 6 insertions(+), 2 deletions(-)
-
-diff --git a/tests/commands/test_clone.py b/tests/commands/test_clone.py
-index 6ef1300..85fdfd1 100644
---- a/tests/commands/test_clone.py
-+++ b/tests/commands/test_clone.py
-@@ -1,5 +1,6 @@
- import os
- import shutil
-+import sys
- import tempfile
-
- import git
-@@ -110,9 +111,10 @@ class CommandCloneTestCase(CommandTestCase):
- moduledir = os.path.join(self.path, self.module)
- self.assertTrue(os.path.isfile(os.path.join(moduledir, '.git/hooks/pre-push')))
-
-+ clonned_by = os.path.basename(sys.argv[0])
- with open(os.path.join(moduledir, '.git/hooks/pre-push')) as git_hook_script:
- content = git_hook_script.read()
-- pattern = '__main__.py pre-push-check "$local_sha"'
-+ pattern = '{0} pre-push-check "$local_sha"'.format(clonned_by)
- self.assertIn(pattern, content)
-
- shutil.rmtree(altpath)
-@@ -132,9 +134,11 @@ class CommandCloneTestCase(CommandTestCase):
- moduledir = os.path.join(self.path, self.module)
- self.assertTrue(os.path.isfile(os.path.join(moduledir, '.git/hooks/pre-push')))
-
-+ clonned_by = os.path.basename(sys.argv[0])
- with open(os.path.join(moduledir, '.git/hooks/pre-push')) as git_hook_script:
- content = git_hook_script.read()
-- pattern = '__main__.py -C "/home/conf/rhpkg.conf" pre-push-check "$local_sha"'
-+ pattern = '{0} -C "/home/conf/rhpkg.conf" pre-push-check ' \
-+ '"$local_sha"'.format(clonned_by)
- self.assertIn(pattern, content)
-
- shutil.rmtree(altpath)
---
-2.39.2
-
diff --git a/0014-import_srpm-allow-pre-generated-srpms.patch b/0014-import_srpm-allow-pre-generated-srpms.patch
deleted file mode 100644
index f596265..0000000
--- a/0014-import_srpm-allow-pre-generated-srpms.patch
+++ /dev/null
@@ -1,105 +0,0 @@
-From d87cb37fa2fea2ed535b9085a1f4c607083e1c2e Mon Sep 17 00:00:00 2001
-From: Ondrej Nosek <onosek@redhat.com>
-Date: Tue, 4 Apr 2023 01:40:23 +0200
-Subject: [PATCH 1/6] import_srpm: allow pre-generated srpms
-
-When active, do not care specfile in the srpm is processed by
-rpmautospec. Can be activated only directly via pyrpkg 'Commands'
-object.
-
-Relates: https://github.com/fedora-copr/copr/issues/2317
-Fixes: #655
-RHELCMP-11085
-
-Signed-off-by: Ondrej Nosek <onosek@redhat.com>
----
- pyrpkg/__init__.py | 6 +++++-
- tests/test_cli.py | 41 +++++++++++++++++++++++++++++++++++++++++
- 2 files changed, 46 insertions(+), 1 deletion(-)
-
-diff --git a/pyrpkg/__init__.py b/pyrpkg/__init__.py
-index 9996402..ecb99c9 100644
---- a/pyrpkg/__init__.py
-+++ b/pyrpkg/__init__.py
-@@ -110,7 +110,7 @@ class Commands(object):
- build_client, user=None,
- dist=None, target=None, quiet=False,
- distgit_namespaced=False, realms=None, lookaside_namespaced=False,
-- git_excludes=None, results_dir='root'):
-+ git_excludes=None, results_dir='root', allow_pre_generated_srpm=False):
- """Init the object and some configuration details."""
-
- # Path to operate on, most often pwd
-@@ -239,6 +239,9 @@ class Commands(object):
- # Layout setup
- self.layout = layout.build(self.path,
- 'resultsdir' if self.results_dir == 'subdir' else None)
-+ # A Configuration value used in 'import_srpm' command (comes from the Copr team)
-+ # If pre-generated srpms are allowed, don't care specfile is processed by rpmautospec
-+ self.allow_pre_generated_srpm = allow_pre_generated_srpm
-
- # Define properties here
- # Properties allow us to "lazy load" various attributes, which also means
-@@ -1471,6 +1474,7 @@ class Commands(object):
- # the dist-git repo without any specfiles - right after initialization) we are
- # not able determine which the main specfile is.
- if file.endswith('.spec') and not file.startswith('.') \
-+ and not self.allow_pre_generated_srpm \
- and spec_file_processed_by_rpmautospec(file, target_dir):
- raise rpkgError('SRPM was processed by rpmautospec '
- '(specfile "{}" was analyzed)'.format(file))
-diff --git a/tests/test_cli.py b/tests/test_cli.py
-index 868ad1f..02620ef 100644
---- a/tests/test_cli.py
-+++ b/tests/test_cli.py
-@@ -1784,6 +1784,47 @@ class TestImportSrpm(LookasideCacheMock, CliTestCase):
- self.assertFilesExist(['package.rpmlintrc'], search_dir=self.chaos_repo)
- self.assertFilesNotExist(['the_file_is_not_in_reserved.yaml'], search_dir=self.chaos_repo)
-
-+ @patch('pyrpkg.spec_file_processed_by_rpmautospec')
-+ def test_import_srpm_not_processed_by_rpmautospec(self, rpmautospec_processed):
-+ cli_cmd = ['rpkg', '--path', self.chaos_repo, '--name', 'docpkg',
-+ 'import', '--skip-diffs', self.srpm_file]
-+
-+ rpmautospec_processed.return_value = False
-+ with patch('sys.argv', new=cli_cmd):
-+ cli = self.new_cli()
-+ with patch('pyrpkg.lookaside.CGILookasideCache.upload', self.lookasidecache_upload):
-+ cli.import_srpm() # no exception should be raised
-+ rpmautospec_processed.assert_called_once()
-+
-+ @patch('pyrpkg.spec_file_processed_by_rpmautospec')
-+ def test_import_srpm_processed_by_rpmautospec(self, rpmautospec_processed):
-+ cli_cmd = ['rpkg', '--path', self.chaos_repo, '--name', 'docpkg',
-+ 'import', '--skip-diffs', self.srpm_file]
-+
-+ rpmautospec_processed.return_value = True
-+ with patch('sys.argv', new=cli_cmd):
-+ cli = self.new_cli()
-+ with patch('pyrpkg.lookaside.CGILookasideCache.upload', self.lookasidecache_upload):
-+ six.assertRaisesRegex(
-+ self,
-+ rpkgError,
-+ 'SRPM was processed by rpmautospec',
-+ cli.import_srpm)
-+ rpmautospec_processed.assert_called_once()
-+
-+ @patch('pyrpkg.spec_file_processed_by_rpmautospec')
-+ def test_import_srpm_processed_by_rpmautospec_allowed(self, rpmautospec_processed):
-+ cli_cmd = ['rpkg', '--path', self.chaos_repo, '--name', 'docpkg',
-+ 'import', '--skip-diffs', self.srpm_file]
-+
-+ rpmautospec_processed.return_value = True
-+ with patch('sys.argv', new=cli_cmd):
-+ cli = self.new_cli()
-+ cli.cmd.allow_pre_generated_srpm = True
-+ with patch('pyrpkg.lookaside.CGILookasideCache.upload', self.lookasidecache_upload):
-+ cli.import_srpm() # no exception should be raised
-+ rpmautospec_processed.assert_not_called()
-+
-
- class TestMockbuild(CliTestCase):
- """Test mockbuild command"""
---
-2.39.2
-
diff --git a/0015-Ignore-missing-spec-file-in-pre-push-hook.patch b/0015-Ignore-missing-spec-file-in-pre-push-hook.patch
deleted file mode 100644
index b32833c..0000000
--- a/0015-Ignore-missing-spec-file-in-pre-push-hook.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From 3ebfeae20c74de0ca4b26b22135e1996265ea4ce Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Lubom=C3=ADr=20Sedl=C3=A1=C5=99?= <lsedlar@redhat.com>
-Date: Wed, 5 Apr 2023 11:41:23 +0200
-Subject: [PATCH 2/6] Ignore missing spec file in pre-push hook
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-For modules or containers there will be no spec file, and there is
-nothing to block the push on.
-
-Signed-off-by: Lubomír Sedlář <lsedlar@redhat.com>
----
- pyrpkg/__init__.py | 7 ++++++-
- 1 file changed, 6 insertions(+), 1 deletion(-)
-
-diff --git a/pyrpkg/__init__.py b/pyrpkg/__init__.py
-index ecb99c9..d3a7a1c 100644
---- a/pyrpkg/__init__.py
-+++ b/pyrpkg/__init__.py
-@@ -4471,7 +4471,12 @@ class Commands(object):
- # Assume, that specfile names are same in the active branch
- # and in the pushed branch (git checkout f37 && git push origin rawhide)
- # in this case 'f37' is active branch and 'rawhide' is pushed branch.
-- specfile_path_absolute = os.path.join(self.layout.specdir, self.spec)
-+ try:
-+ specfile_path_absolute = os.path.join(self.layout.specdir, self.spec)
-+ except rpkgError:
-+ # No specfile found, nothing to check
-+ return
-+
- # convert to relative path
- specfile_path = os.path.relpath(specfile_path_absolute, start=self.path)
- cmd = ['spectool', '-l', os.path.join(clone_dir, specfile_path)]
---
-2.39.2
-
diff --git a/0016-Check-remote-file-with-correct-hash.patch b/0016-Check-remote-file-with-correct-hash.patch
deleted file mode 100644
index 9bf9eac..0000000
--- a/0016-Check-remote-file-with-correct-hash.patch
+++ /dev/null
@@ -1,61 +0,0 @@
-From 4bd4ab1823a7d4bc218b8057b7f00808fabf7648 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Lubom=C3=ADr=20Sedl=C3=A1=C5=99?= <lsedlar@redhat.com>
-Date: Wed, 5 Apr 2023 09:34:33 +0200
-Subject: [PATCH 3/6] Check remote file with correct hash
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-The configured hashtype doesn't have to actually be used. There can be
-old repos that still use md5.
-
-JIRA: RHELCMP-11508
-Signed-off-by: Lubomír Sedlář <lsedlar@redhat.com>
----
- pyrpkg/__init__.py | 3 ++-
- pyrpkg/lookaside.py | 5 +++--
- 2 files changed, 5 insertions(+), 3 deletions(-)
-
-diff --git a/pyrpkg/__init__.py b/pyrpkg/__init__.py
-index d3a7a1c..0b9a869 100644
---- a/pyrpkg/__init__.py
-+++ b/pyrpkg/__init__.py
-@@ -4548,7 +4548,8 @@ class Commands(object):
- file_exists_in_lookaside = self.lookasidecache.remote_file_exists_head(
- self.ns_repo_name if self.lookaside_namespaced else self.repo_name,
- filename,
-- hash)
-+ hash,
-+ hashtype=entry.hashtype)
- if not file_exists_in_lookaside:
- self.log.error('Source file (or tarball) \'{}\' wasn\'t uploaded to the lookaside '
- 'cache. Push operation was cancelled.'.format(filename))
-diff --git a/pyrpkg/lookaside.py b/pyrpkg/lookaside.py
-index ecbf12b..3efcd88 100644
---- a/pyrpkg/lookaside.py
-+++ b/pyrpkg/lookaside.py
-@@ -200,7 +200,7 @@ class CGILookasideCache(object):
- if not self.file_is_valid(outfile, hash, hashtype=hashtype):
- raise DownloadError('%s failed checksum' % filename)
-
-- def remote_file_exists_head(self, name, filename, hash):
-+ def remote_file_exists_head(self, name, filename, hash, hashtype):
- """Verify whether a file exists on the lookaside cache.
- Uses a HTTP HEAD request and doesn't require authentication.
-
-@@ -209,10 +209,11 @@ class CGILookasideCache(object):
- the server side expects).
- :param str filename: The name of the file to check for.
- :param str hash: The known good hash of the file.
-+ :param str hashtype: The type of hash
- """
-
- urled_file = urllib.parse.quote(filename)
-- url = self.get_download_url(name, urled_file, hash, self.hashtype)
-+ url = self.get_download_url(name, urled_file, hash, hashtype or self.hashtype)
-
- c = pycurl.Curl()
- c.setopt(pycurl.URL, url)
---
-2.39.2
-
diff --git a/0017-Allow-empty-commits-when-uses_rpmautospec.patch b/0017-Allow-empty-commits-when-uses_rpmautospec.patch
deleted file mode 100644
index 448cbc9..0000000
--- a/0017-Allow-empty-commits-when-uses_rpmautospec.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From d2c63c32306732695b7fe5f9dda3deecb7899f4f Mon Sep 17 00:00:00 2001
-From: Jiri Kyjovsky <j1.kyjovsky@gmail.com>
-Date: Sat, 15 Apr 2023 13:46:21 +0200
-Subject: [PATCH 4/6] Allow empty commits when `uses_rpmautospec`
-
-To avoid situations where the command `commit` by default does
-commit when no change in repo is present.
-
-Fixes: #677
-JIRA: RHELCMP-11489
-Merges: https://pagure.io/rpkg/pull-request/688
-
-Signed-off-by: Jiri Kyjovsky <j1.kyjovsky@gmail.com>
----
- pyrpkg/__init__.py | 4 +++-
- 1 file changed, 3 insertions(+), 1 deletion(-)
-
-diff --git a/pyrpkg/__init__.py b/pyrpkg/__init__.py
-index 0b9a869..187796e 100644
---- a/pyrpkg/__init__.py
-+++ b/pyrpkg/__init__.py
-@@ -1867,7 +1867,9 @@ class Commands(object):
-
- # construct the git command
- # We do this via subprocess because the git module is terrible.
-- cmd = ['git', 'commit', '--allow-empty']
-+ cmd = ['git', 'commit']
-+ if not self.is_retired() and self.uses_rpmautospec:
-+ cmd.append('--allow-empty')
- if signoff:
- cmd.append('-s')
- if self.quiet:
---
-2.39.2
-
diff --git a/0018-Config-file-option-to-skip-the-hook-script-creation.patch b/0018-Config-file-option-to-skip-the-hook-script-creation.patch
deleted file mode 100644
index fa9aa01..0000000
--- a/0018-Config-file-option-to-skip-the-hook-script-creation.patch
+++ /dev/null
@@ -1,126 +0,0 @@
-From b48eb502d330ec7a543805d7f185ea270df75b90 Mon Sep 17 00:00:00 2001
-From: Ondrej Nosek <onosek@redhat.com>
-Date: Wed, 12 Apr 2023 00:42:04 +0200
-Subject: [PATCH 5/6] Config file option to skip the hook script creation
-
-A new option named "skip_hooks" can be added to the config file
-(into the main section). It accepts boolean values and when
-the option is present and set, it prevents creating the pre-push
-hook script during cloning a dist-git repository.
-
-Fixes: https://pagure.io/fedpkg/issue/515
-JIRA: RHELCMP-11491
-
-Signed-off-by: Ondrej Nosek <onosek@redhat.com>
----
- pyrpkg/__init__.py | 14 ++++++++++----
- pyrpkg/cli.py | 13 +++++++++++--
- 2 files changed, 21 insertions(+), 6 deletions(-)
-
-diff --git a/pyrpkg/__init__.py b/pyrpkg/__init__.py
-index 187796e..7fddff7 100644
---- a/pyrpkg/__init__.py
-+++ b/pyrpkg/__init__.py
-@@ -1571,7 +1571,7 @@ class Commands(object):
-
- def clone(self, repo, path=None, branch=None, bare_dir=None,
- anon=False, target=None, depth=None, extra_args=None,
-- config_path=None):
-+ config_path=None, skip_hooks=None):
- """Clone a repo, optionally check out a specific branch.
-
- :param str repo: the name of the repository to clone.
-@@ -1589,6 +1589,7 @@ class Commands(object):
- :param list extra_args: additional arguments that are passed to
- the clone command.
- :param str config_path: path to the global config file
-+ :param bool skip_hooks: skip creation pre-push hook script
- """
-
- if not path:
-@@ -1644,7 +1645,8 @@ class Commands(object):
-
- if not bare_dir:
- self._add_git_excludes(os.path.join(path, git_dir))
-- self._add_git_pre_push_hook(os.path.join(path, git_dir), config_path)
-+ if not skip_hooks:
-+ self._add_git_pre_push_hook(os.path.join(path, git_dir), config_path)
-
- return
-
-@@ -1660,7 +1662,7 @@ class Commands(object):
- return repo
-
- def clone_with_dirs(self, repo, anon=False, target=None, depth=None,
-- extra_args=None, config_path=None):
-+ extra_args=None, config_path=None, skip_hooks=None):
- """Clone a repo old style with subdirs for each branch.
-
- :param str repo: name of the repository to clone.
-@@ -1673,6 +1675,7 @@ class Commands(object):
- :param list extra_args: additional arguments that are passed to
- the clone command.
- :param str config_path: path to the global config file
-+ :param bool skip_hooks: skip creation pre-push hook script
- """
-
- self._push_url = None
-@@ -1731,7 +1734,8 @@ class Commands(object):
-
- # Add excludes
- self._add_git_excludes(branch_path)
-- self._add_git_pre_push_hook(branch_path, config_path)
-+ if not skip_hooks:
-+ self._add_git_pre_push_hook(branch_path, config_path)
- except (git.GitCommandError, OSError) as e:
- raise rpkgError('Could not locally clone %s from %s: %s'
- % (branch, repo_path, e))
-@@ -1820,6 +1824,8 @@ class Commands(object):
- # This file was generated by {0} when cloning the repository.
- # You can edit it to your liking or delete completely. It will not
- # be recreated.
-+ # Creating this file can be also prevented by adding an option
-+ # "skip_hooks = True" into the {0}'s config file; [{0}] section.
-
- _remote="$1"
- _url="$2"
-diff --git a/pyrpkg/cli.py b/pyrpkg/cli.py
-index 3d8ce33..a1f3f44 100644
---- a/pyrpkg/cli.py
-+++ b/pyrpkg/cli.py
-@@ -2177,13 +2177,21 @@ class cliClient(object):
- self.log.warning("Repo name should't contain '.git' suffix. "
- "Correcting the repo name: '%s'" % repo)
-
-+ skip_hooks = None
-+ if self.config.has_option(self.name, "skip_hooks"):
-+ try:
-+ skip_hooks = self.config.getboolean(self.name, "skip_hooks")
-+ except ValueError:
-+ self.log.error("Error: config file option 'skip_hooks'")
-+ raise
- if self.args.branches:
- self.cmd.clone_with_dirs(self.args.repo[0],
- anon=self.args.anonymous,
- target=self.args.clone_target,
- depth=self.args.depth,
- extra_args=self.extra_args,
-- config_path=self.args.config)
-+ config_path=self.args.config,
-+ skip_hooks=skip_hooks)
- else:
- self.cmd.clone(self.args.repo[0],
- branch=self.args.branch,
-@@ -2191,7 +2199,8 @@ class cliClient(object):
- target=self.args.clone_target,
- depth=self.args.depth,
- extra_args=self.extra_args,
-- config_path=self.args.config)
-+ config_path=self.args.config,
-+ skip_hooks=skip_hooks)
-
- def commit(self):
- if self.args.with_changelog and not self.args.message:
---
-2.39.2
-
diff --git a/0019-Pre-push-hook-won-t-check-private-branches.patch b/0019-Pre-push-hook-won-t-check-private-branches.patch
deleted file mode 100644
index 37a7c52..0000000
--- a/0019-Pre-push-hook-won-t-check-private-branches.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-From 4553da364d7d8a974ab0c08834ee0a54320da2cb Mon Sep 17 00:00:00 2001
-From: Ondrej Nosek <onosek@redhat.com>
-Date: Tue, 18 Apr 2023 16:06:43 +0200
-Subject: [PATCH 6/6] Pre-push hook won't check private branches
-
-The pre-push hook script was failing the when user tried to push
-a private branch. It required using the --release argument with
-the pre-push-check command and passing additional arguments into
-the hook script. That was found unreliable and private branches
-won't be checked.
-
-Fixes: #683
-JIRA: RHELCMP-11528
-
-Signed-off-by: Ondrej Nosek <onosek@redhat.com>
----
- pyrpkg/__init__.py | 12 +++++++++---
- 1 file changed, 9 insertions(+), 3 deletions(-)
-
-diff --git a/pyrpkg/__init__.py b/pyrpkg/__init__.py
-index 7fddff7..3f934d3 100644
---- a/pyrpkg/__init__.py
-+++ b/pyrpkg/__init__.py
-@@ -4489,9 +4489,15 @@ class Commands(object):
- specfile_path = os.path.relpath(specfile_path_absolute, start=self.path)
- cmd = ['spectool', '-l', os.path.join(clone_dir, specfile_path)]
- # extract just '--define' arguments from rpmdefines
-- for opt, val in zip(self.rpmdefines[0::2], self.rpmdefines[1::2]):
-- if opt == '--define':
-- cmd.extend((opt, val))
-+ try:
-+ for opt, val in zip(self.rpmdefines[0::2], self.rpmdefines[1::2]):
-+ if opt == '--define':
-+ cmd.extend((opt, val))
-+ except rpkgError:
-+ # this exception was caused probably by using a private branch
-+ self.log.warning('The pre-push script can\'t check private branches. '
-+ 'Push operation continues.')
-+ return
- ret, stdout, _ = self._run_command(cmd, cwd=clone_dir,
- return_text=True, return_stdout=True)
- if ret != 0:
---
-2.39.2
-
diff --git a/dead.package b/dead.package
new file mode 100644
index 0000000..5204a84
--- /dev/null
+++ b/dead.package
@@ -0,0 +1 @@
+Orphaned for 6+ weeks
diff --git a/remove-koji-and-rpm-py-installer-from-requires.patch b/remove-koji-and-rpm-py-installer-from-requires.patch
deleted file mode 100644
index 90adee0..0000000
--- a/remove-koji-and-rpm-py-installer-from-requires.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From ec0c8b368fd560b319c6603f35dda803fe4b2e99 Mon Sep 17 00:00:00 2001
-From: Dominik Rumian <drumian@redhat.com>
-Date: Tue, 24 Aug 2021 12:51:17 +0200
-Subject: [PATCH] [PATCH] remove koji and rpm-py-installer from requires
-
-Signed-off-by: Dominik Rumian <drumian@redhat.com>
----
- setup.py | 5 +++++
- 1 file changed, 5 insertions(+)
-
-diff --git a/setup.py b/setup.py
-index 9c6d881..8c92aae 100755
---- a/setup.py
-+++ b/setup.py
-@@ -34,6 +34,11 @@ install_requires, dep_links = read_requirements(pypi_txt)
- tests_require, test_dep_links = read_requirements(test_pypi_txt)
- dep_links += test_dep_links
-
-+install_requires = [
-+ item for item in install_requires
-+ if not item.startswith('koji') and not item.startswith('rpm-py-installer')
-+]
-+
- readme_rst = os.path.join(setup_py_path, 'README.rst')
- with open(readme_rst, 'r') as readme:
- long_description = readme.read().rstrip()
---
-2.31.1
-
diff --git a/rpkg.rpmlintrc b/rpkg.rpmlintrc
deleted file mode 100644
index db34bbe..0000000
--- a/rpkg.rpmlintrc
+++ /dev/null
@@ -1,3 +0,0 @@
-from Config import *
-
-addFilter('/usr/share/rpkg/examples/cli/')
diff --git a/rpkg.spec b/rpkg.spec
deleted file mode 100644
index 60d99d1..0000000
--- a/rpkg.spec
+++ /dev/null
@@ -1,1498 +0,0 @@
-Name: rpkg
-Version: 1.66
-Release: 6%{?dist}
-
-Summary: Python library for interacting with rpm+git
-License: GPLv2+ and LGPLv2
-URL: https://pagure.io/rpkg
-BuildArch: noarch
-Source0: https://pagure.io/releases/rpkg/%{name}-%{version}.tar.gz
-
-# RHEL7 is currently the only release that is built for Python 2.
-%if 0%{?rhel} == 7
-%global with_python2 1
-%global with_python3 0
-# sitelib for noarch packages, sitearch for others (remove the unneeded one)
-%{!?__python2: %global __python2 %{__python}}
-%{!?python2_sitelib: %global python2_sitelib %(%{__python2} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())")}
-%else
-# Disable python2 build by default
-%global with_python2 0
-# Enable python3 build by default
-%global with_python3 1
-%endif
-
-
-# Fix for bug 1579367
-# Due to https://pagure.io/koji/issue/912, python[23]-koji package does not
-# have egginfo.
-# rpm-py-installer is required as a proxy to install RPM python binding
-# library, so rpm is the actual requirement that must be present in the
-# requires.txt. But, rpkg has to work in all active Fedora and EPEL releases,
-# and there is only old rpm-python package in EL6 and 7, so just simply to
-# remove rpm-py-installer for now.
-Patch0: remove-koji-and-rpm-py-installer-from-requires.patch
-Patch1: 0001-Do-not-use-pytest-related-dependencies-temporarily.patch
-Patch2: 0002-Remove-pytest-coverage-execution.patch
-%if 0%{?with_python2}
-Patch3: 0003-Remove-Environment-Markers-syntax.patch
-%endif
-Patch4: 0004-Process-source-URLs-with-fragment-in-pre-push-hook.patch
-Patch5: 0005-container-build-update-signing-intent-help-for-OSBS-.patch
-Patch6: 0006-Do-not-generate-pre-push-hook-script-in-some-cases.patch
-Patch7: 0007-More-robust-spec-file-presence-checking.patch
-Patch8: 0008-Update-to-spec-file-presence-checking.patch
-Patch9: 0009-Add-more-information-about-pre-push-hook.patch
-Patch10: 0010-pre-push-check-have-to-use-spectool-with-define.patch
-Patch11: 0011-A-HEAD-query-into-a-lookaside-cache.patch
-Patch12: 0012-pre-push-hook-script-contains-a-user-s-config.patch
-Patch13: 0013-Fix-unittests-for-clone-and-pre-push-hook-script.patch
-Patch14: 0014-import_srpm-allow-pre-generated-srpms.patch
-Patch15: 0015-Ignore-missing-spec-file-in-pre-push-hook.patch
-Patch16: 0016-Check-remote-file-with-correct-hash.patch
-Patch17: 0017-Allow-empty-commits-when-uses_rpmautospec.patch
-Patch18: 0018-Config-file-option-to-skip-the-hook-script-creation.patch
-Patch19: 0019-Pre-push-hook-won-t-check-private-branches.patch
-
-%description
-Python library for interacting with rpm+git
-
-
-%if 0%{?with_python2}
-%package -n python2-%{name}
-Summary: %{summary}
-%{?python_provide:%python_provide python2-%{name}}
-
-BuildRequires: python2-devel
-
-# We br these things for man page generation due to imports
-BuildRequires: rpmlint
-BuildRequires: rpmdevtools
-BuildRequires: python2-koji >= 1.21
-BuildRequires: python2-cccolutils
-BuildRequires: PyYAML
-BuildRequires: GitPython
-BuildRequires: python-pycurl
-BuildRequires: python-requests
-BuildRequires: python-requests-kerberos
-BuildRequires: python-six >= 1.9.0
-BuildRequires: python2-argcomplete
-BuildRequires: python2-mock
-BuildRequires: python2-nose
-BuildRequires: python2-setuptools
-
-Requires: mock
-Requires: redhat-rpm-config
-Requires: rpm-build
-Requires: rpmlint
-Requires: rpmdevtools
-Requires: python2-argcomplete
-Requires: python2-cccolutils
-Requires: python2-koji >= 1.21
-Requires: PyYAML
-Requires: GitPython >= 0.2.0
-Requires: python-pycurl
-Requires: python-requests
-Requires: python-requests-kerberos
-Requires: python-six >= 1.9.0
-Requires: rpm-python
-
-Requires: %{name}-common = %{version}-%{release}
-
-Conflicts: fedpkg < 1.26
-
-# Backward compatibility with capability pyrpkg
-Provides: pyrpkg = %{version}-%{release}
-# All old versions before 1.49-1 should not be used anymore
-Obsoletes: pyrpkg < 1.49-2
-
-
-%description -n python2-%{name}
-A python library for managing RPM package sources in a git repository.
-%endif
-# end of python2 section
-
-
-%if 0%{?with_python3}
-%package -n python3-%{name}
-Summary: %{summary}
-%{?python_provide:%python_provide python3-%{name}}
-# Obsolete python2-rpkg (remove after Fedora29)
-%if 0%{?with_python2} == 0
-Obsoletes: python2-rpkg < %{version}-%{release}
-%endif
-
-BuildRequires: python3-devel
-BuildRequires: python3-GitPython
-BuildRequires: python3-koji >= 1.24
-%if 0%{?rhel}
-BuildRequires: python3-gobject-base
-BuildRequires: libmodulemd
-BuildRequires: python3-requests-kerberos
-%else
-BuildRequires: python3-libmodulemd
-%endif
-BuildRequires: python3-argcomplete
-BuildRequires: python3-cccolutils
-BuildRequires: python3-openidc-client
-BuildRequires: python3-pycurl
-BuildRequires: python3-six >= 1.9.0
-BuildRequires: python3-requests
-BuildRequires: python3-setuptools
-BuildRequires: python3-pytest
-BuildRequires: python3-PyYAML
-BuildRequires: rpmlint
-BuildRequires: rpmdevtools
-
-Requires: mock
-Requires: redhat-rpm-config
-Requires: rpm-build
-Requires: rpmlint
-Requires: rpmdevtools
-
-Requires: python3-argcomplete
-Requires: python3-GitPython >= 0.2.0
-Requires: python3-cccolutils
-Requires: python3-koji >= 1.24
-%if 0%{?rhel}
-Requires: python3-gobject-base
-Requires: libmodulemd
-Requires: python3-requests-kerberos
-%else
-Requires: python3-libmodulemd
-Requires: python3-rpmautospec
-%endif
-Requires: python3-rpm
-Requires: python3-pycurl
-Requires: python3-six >= 1.9.0
-Requires: python3-PyYAML
-
-Requires: %{name}-common = %{version}-%{release}
-
-Conflicts: fedpkg < 1.26
-
-%description -n python3-%{name}
-A python library for managing RPM package sources in a git repository.
-%endif
-# end of python3 section
-
-
-%package common
-Summary: Common files for %{name}
-
-# Files were moved from python2-rpkg in that version
-Conflicts: python2-rpkg < 1.52-2
-Conflicts: pyrpkg < 1.52-2
-
-%description common
-Common files for python2-%{name} and python3-%{name}.
-
-
-%prep
-%autosetup -p1
-
-# Removes section from setup.py that is relevant only for pip and
-# is not compatible with in RHEL-6 tools
-sed -i -n '/extras_require/,/}/!p' setup.py
-
-%build
-%if 0%{?with_python2}
-%{__python2} setup.py build
-%endif
-
-%if 0%{?with_python3}
-%py3_build
-%endif
-
-
-%install
-%if 0%{?with_python2}
-%{__python2} setup.py install -O1 --skip-build --root $RPM_BUILD_ROOT
-%endif
-
-%if 0%{?with_python3}
-%py3_install
-%endif
-
-
-# Create configuration directory to holding downstream clients config files
-# that are built on top of rpkg
-%{__install} -d $RPM_BUILD_ROOT%{_sysconfdir}/rpkg
-
-example_cli_dir=$RPM_BUILD_ROOT%{_datadir}/%{name}/examples/cli
-%{__install} -d $example_cli_dir
-
-# Install example CLI to rpkg own data directory
-%{__install} -d ${example_cli_dir}%{_bindir}
-%{__install} -d ${example_cli_dir}%{_sysconfdir}/bash_completion.d
-%{__install} -d ${example_cli_dir}%{_sysconfdir}/rpkg
-
-%{__install} -p -m 0644 bin/rpkg ${example_cli_dir}%{_bindir}
-%{__install} -p -m 0644 etc/bash_completion.d/rpkg.bash ${example_cli_dir}%{_sysconfdir}/bash_completion.d
-%{__install} -p -m 0644 etc/rpkg/rpkg.conf ${example_cli_dir}%{_sysconfdir}/rpkg
-
-
-%check
-%if 0%{?with_python2}
-%{__python2} -m nose tests
-%endif
-
-%if 0%{?with_python3}
-%pytest
-%endif
-
-
-%if 0%{?with_python2}
-%files -n python2-%{name}
-%doc README.rst CHANGELOG.rst
-%if 0%{?rhel} && 0%{?rhel} < 7
-%doc COPYING COPYING-koji LGPL
-%else
-%license COPYING COPYING-koji LGPL
-%endif
-# For noarch packages: sitelib
-%{python2_sitelib}/pyrpkg
-%{python2_sitelib}/%{name}-%{version}-py*.egg-info
-%endif
-
-%if 0%{?with_python3}
-%files -n python3-%{name}
-%doc README.rst CHANGELOG.rst
-%license COPYING COPYING-koji LGPL
-%{python3_sitelib}/pyrpkg
-%{python3_sitelib}/%{name}-%{version}-py*.egg-info
-%endif
-
-%files common
-%{_datadir}/%{name}
-%{_sysconfdir}/rpkg
-
-
-%changelog
-* Tue Apr 18 2023 Ondřej Nosek <onosek@redhat.com> - 1.66-6
-- Patch: Pre-push hook won't check private branches
-- Patch: Config file option to skip the hook script creation
-- Patch: Allow empty commits when `uses_rpmautospec`
-- Patch: Check remote file with correct hash
-- Patch: Ignore missing spec file in pre-push hook
-- Patch: import_srpm: allow pre-generated srpms
-
-* Sat Apr 1 2023 Ondřej Nosek <onosek@redhat.com> - 1.66-5
-- Patch: Fix unittests for `clone` and pre-push hook script
-- Patch: pre-push hook script contains a user's config
-- Patch: A HEAD query into a lookaside cache
-- Patch: `pre-push-check` have to use spectool with --define
-- Patch: Add more information about pre-push hook
-- Patch: Update to spec file presence checking
-- Patch: More robust spec file presence checking
-
-* Fri Mar 10 2023 Ondřej Nosek <onosek@redhat.com> - 1.66-4
-- Patch: Do not generate pre-push hook script in some cases
-
-* Wed Mar 1 2023 Ondřej Nosek <onosek@redhat.com> - 1.66-3
-- Patch: Process source URLs with fragment in pre-push hook
-- Patch: container-build: update --signing-intent help for OSBS 2
-
-* Tue Feb 21 2023 Ondřej Nosek <onosek@redhat.com> - 1.66-2
-- rebuild for unification of all branches
-
-* Mon Feb 20 2023 Ondřej Nosek <onosek@redhat.com> - 1.66-1
-- container-build: document --compose-ids overrides any new composes (kdreyer)
-- Use srpm when scratch-building from dirty repo - #652 (otto.liljalaakso)
-- Code cleanup in tests/test_cli.py (otto.liljalaakso)
-- Reduce indentation in assert_build helper (otto.liljalaakso)
-- Allow empty commits - 494 (msuchy)
-- Allow forcing download of all sources - #650 (otto.liljalaakso)
-- Add test case for not downloading unused sources (otto.liljalaakso)
-- Support 'results_dir=subdir' when building from srpm - #648
- (otto.liljalaakso)
-- Use local branch name as release when there is no remote (otto.liljalaakso)
-- Allow downstreams to define a default release (otto.liljalaakso)
-- Switch load_branch_merge to use multiple return (otto.liljalaakso)
-- Unittests for 'git push' hook script (onosek)
-- Checking a repo configuration before 'git push' with a git hook script - 491
- (onosek)
-- Fix skipping NVR check with autorelease (nils)
-- pyrpkg.spec.SpecFile: More lenient parser for Source/Patch lines (fweimer)
-- Fix URL in CHANGELOG.rst (tmz)
-- Add Jenkinsfile for CI (onosek)
-- mockbuild: escape rpm command under mock - rhbz#2130349 (onosek)
-- Fixes for exploded SRPM layouts - #633 (tdawson)
-- `fedpkg local` does not show rpmbuild output - rhbz#2124809 (onosek)
-
-* Mon Oct 10 2022 Ondřej Nosek <onosek@redhat.com> - 1.65-3
-- Patch: Fixes for exploded SRPM layouts
-- Patch: mockbuild: escape rpm command under mock
-
-* Wed Sep 7 2022 Ondřej Nosek <onosek@redhat.com> - 1.65-2
-- Patch: `fedpkg local` does not show rpmbuild output
-
-* Wed Sep 7 2022 Ondřej Nosek <onosek@redhat.com> - 1.65-1
-- Extra arguments now use shell-escaping - revert (onosek
-- Remove pytest warnings (onosek)
-- Refuse import of packages processed by rpmautospec (zbyszek)
-- follow redirects for lookaside (tkopecek)
-- Repair flake8 complaints (onosek)
-- Fix high level bandit findings (onosek)
-- container-build: improve help text for --compose-ids argument (kdreyer)
-- CONTRIBUTING.md fix links (onosek)
-- Improve change management process documentation (onosek)
-- Removing bandit issues from cli.py (drumian)
-- Extract source RPMs with rpm2archive if possible (praiskup)
-- Set up bandit scanner for rpkg (onosek)
-- Refuse to "commit -c" when using %autochangelog - 454 (drumian)
-- Refactoring loading rpmautospec feature (onosek)
-- add --background option for container-build which allows to create build with
- lower priority (rcerven)
-- 'clean --dry-run' deprecation warning (drumian)
-- Better exit code for connection error (drumian)
-- Fix generation of optional parameters in man page (mspacek)
-- Use absolute path for mock results in `lint` (onosek)
-- contaner-build does not check for existence of kojisession.buildContainer -
- 532 (drumian)
-- Fix: 'lint' subcommand should not invoke rpmlint on debuginfo packages -
- rhbz#2052451 (drumian)
-- Add `--custom-user-metadata` to build command (onosek)
-- Fix: 'lint -i/--info' does not work - rhbz#2016616 (drumian)
-- Fix: AlreadyUploadedError when package has no sources - 604 (drumian)
-- Fix: Extra arguments now use shell-escaping - 587 (drumian)
-
-* Fri Aug 19 2022 Ondřej Nosek <onosek@redhat.com> - 1.64-9
-- Patch: Extract source RPMs with rpm2archive if possible
-
-* Thu Aug 18 2022 Ondřej Nosek <onosek@redhat.com> - 1.64-8
-- Patch: Repair flake8 complaints
-- Patch: follow redirects for lookaside
-
-* Sat Jul 23 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.64-7
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
-
-* Tue Jun 14 2022 Python Maint <python-maint@redhat.com> - 1.64-6
-- Rebuilt for Python 3.11
-
-* Mon Apr 18 2022 Ondřej Nosek <onosek@redhat.com> - 1.64-5
-- Patch: add --background option for container-build which allows
- to create build
-
-* Tue Apr 05 2022 Ondřej Nosek <onosek@redhat.com> - 1.64-4
-- Patch: Better exit code for connection error
-
-* Fri Mar 18 2022 Ondřej Nosek <onosek@redhat.com> - 1.64-3
-- Patch: Add `--custom-user-metadata` to build command
-
-* Tue Feb 08 2022 Ondřej Nosek <onosek@redhat.com> - 1.64-2
-- Upload correct tarball
-
-* Tue Jan 25 2022 Ondřej Nosek <onosek@redhat.com> - 1.64-1
-- Fix: *pkg now takes into account --path parameter while building SRPM - 580
- (drumian)
-- 'lint' can run with different 'rpmlint' versions - rhbz#1967821 (onosek)
-- Support building SRPMs in target mock - #495 (onosek)
-- Use unittest.mock on Python 3 (miro)
-- Add support for mockbuild in lint command (oturpe)
-- Fix srpm and binary rpm lookup in lint subcommand - #586 (oturpe)
-- mockbuild: allow enforcing local mock config in fedpkg (praiskup)
-- list-side-tags - fix unavailable username (sergio)
-- Accept also ~/.config/mock/<chroot>.cfg files (praiskup)
-- improve srpm --help description (kdreyer)
-- Improve how the .spec file is selected (mads)
-- Include `fmf` config in the list of reserved files - 452 (psplicha)
-- Fix flake8 syntax (onosek)
-- Continue execution if specfile parsing fails - #583 (oturpe)
-- Consider Patch tags in specfile parser - rhbz#2010518 (oturpe)
-- Support for custom completers (onosek)
-- Fixes import fail with sources already imported - #573 (drumian)
-- Also document Python 3.10 support in the README (miro)
-- Test and support Python 3.10 (miro)
-- Print SpecFile parsing debug info - rhbz#2000556 (onosek)
-- Pass sourcedir to rpmspec when specfile is parsed - #559 (oturpe)
-- Fix unittests to be Python 2 compatible (drumian)
-- Changing escaping of dash in docs - older releases (onosek)
-- Changing escaping of dash in docs. (drumian)
-
-* Fri Jan 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.63-7
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
-
-* Tue Dec 14 2021 Ondřej Nosek <onosek@redhat.com> - 1.63-6
-- drop nosetests for Python3
-- disable pytest coverage during build
-
-* Wed Dec 01 2021 Ondřej Nosek <onosek@redhat.com> - 1.63-5
-- Patch: Continue execution if specfile parsing fails
-- Patch: Consider Patch tags in specfile parser
-
-* Mon Nov 29 2021 Ondřej Nosek <onosek@redhat.com> - 1.63-4
-- Patch: Fixes import fail with sources already imported
-
-* Mon Sep 13 2021 Ondřej Nosek <onosek@redhat.com> - 1.63-3
-- Add python-requests-kerberos as a new dependency for RHEL packages
-- Patch: Print SpecFile parsing debug info
-
-* Wed Sep 01 2021 Ondřej Nosek <onosek@redhat.com> - 1.63-2
-- Patch: Pass sourcedir to rpmspec when specfile is parsed
-
-* Tue Aug 24 2021 Dominik Rumian <drumian@redhat.com> - 1.63-1
-- Do not download unused sources during command 'sources' - #559 (oturpe)
-- Added 'x-pkg verrel' for containers - #547 (jkunstle)
-- container-build: improve help text for --signing-intent argument (kdreyer)
-- Make sure all commits have a proper subject (sgallagh)
-- Fix unittest for previous commit (onosek)
-- better new-sources output when all sources already exist Fixes: #533 JIRA:
- RHELCMP-5529 (drumian)
-- Added 'remote' to rpkg from rhpkg - 439 (jkunstle)
-- Add --offline cli argument for new-sources (oturpe)
-- Tests: Fix setting branch name with old git (nils)
-- Add and augment tests for rpmautospec (nils)
-- Reflect %autorelease when parsing spec files (nils)
-- Preprocess spec files using rpmautospec features (nils)
-- Detect generic use of rpmautospec features (nils)
-- Fix remaining Python3 SafeConfigParser warnings (nils)
-- Tests: specify branch name on `git init` (nils)
-- Remove leftover deprecated arguments (abisoi)
-- Remove deprecated arguments --dist and --module-name (abisoi)
-- Skip NVR check if the %autorelease macro is used - 109 (nils)
-- Don't access unset variable (nils)
-- Improve help in fedpkg clone command - #367 (abisoi)
-- Fix rpkg container-build ignoring values when same argument is specified
- multiple times - #537 (abisoi)
-- list-side-tags: show creator of the tag - 358 (onosek)
-- Drop Python 2.6 support (onosek)
-- Enable flatpak tests that require libmodulemd (onosek)
-- Added <package name>.rpmlintrc to the list of files ignored by fedpkg import
- - rhbz#1946688 (abisoi)
-- Jenkins unittests run in docker container (onosek)
-- Add support for side tag suffix (lsedlar)
-- Check whether sources file is not a directory - #541 (onosek)
-- Add config option for writing dist-git build results to a subdirectory
- (oturpe)
-- ca cert was removed on koji-1.24.0 (sergio)
-- Improve automatic test suite (oturpe)
-- Better hint when running 'prep' on detached branch - rhbz#1907964 (onosek)
-- Update description of the clean command - rhbz#1909461 (onosek)
-- Add --skip-nvr-check to the scratch-build command - rhbz#1671012 (onosek)
-
-* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.62-7
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
-
-* Thu Jul 08 2021 Ondřej Nosek <onosek@redhat.com> - 1.62-6
-- Patch: Preprocess spec files using rpmautospec features and use %%autorelease when parsing spec files
-- Patch: Skip NVR check if the %%autorelease macro is used
-
-* Fri Jun 04 2021 Python Maint <python-maint@redhat.com> - 1.62-5
-- Rebuilt for Python 3.10
-
-* Fri Apr 02 2021 Ondřej Nosek <onosek@redhat.com> - 1.62-4
-- Patch: Add support for side tag suffix
-
-* Wed Feb 24 2021 Ondřej Nosek <onosek@redhat.com> - 1.62-3
-- Patch: ca cert was removed on koji-1.24.0
-
-* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.62-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
-
-* Wed Dec 02 2020 Ondřej Nosek <onosek@redhat.com> - 1.62-1
-- Allow skipping nvr checking for chain-build - rhbz#1890701 (onosek)
-- Code-style improvement - imports are sorted (onosek)
-- Fix Jenkinks tests (onosek)
-- Avoid blank lines in log files for lookaside (contyk)
-- container-build: fix help text for --isolated argument (kdreyer)
-- Add --signing-intent and --repo-url to 'flatpak-build' (otaylor)
-- Add hashtype to lookaside download path - #521 (turivniy)
-- Add new layout for packages that missing specfile - rhbz#1885771 (onosek)
-
-* Mon Sep 07 2020 Ondřej Nosek <onosek@redhat.com> - 1.61-1
-- Pytest update and MANIFEST.in prune (onosek)
-- Re-enable clog tests (onosek)
-- Skip directories inside of imported srpm file - rhbz#1866297 (onosek)
-- Skip 'sources' file when it is missing - rhbz#1867440 (onosek)
-- New layout for retired packages - rhbz#1867822 (onosek)
-- added a extendable layout module to deal with different package layouts
- within the CLI (2183506+odra)
-- Add (onosek)
-- Pytest replaces nosetests - #501 (onosek)
-- Disable some test for 'clog' functionality (onosek)
-- Suggest a way to track remote branch - update (onosek)
-- Suggest a way to track remote branch in the error log (cqi)
-- Remove deprecated support for kojiconfig (onosek)
-- Switch from krb_login to gssapi_login - rhbz#1830430 (onosek)
-- Disable test method's docstring in nosetests list (onosek)
-- Check repo name for correct format (onosek)
-- Unittests for passing additional arguments (onosek)
-- Passing additional arguments to underlaying commands - #432 (onosek)
-- Updated supported plaforms in documentation (onosek)
-- Repair compatible formatting for Python 2.6 (onosek)
-- Repair downloading sources into external directory (onosek)
-
-* Mon Aug 31 2020 Ondřej Nosek <onosek@redhat.com> - 1.60-8
-- Patch: Skip 'sources' file when it is missing
-
-* Fri Aug 07 2020 Ondřej Nosek <onosek@redhat.com> - 1.60-7
-- Patch: added layout module to deal with different package layouts
-- Patch: clog tests workaround
-
-* Sat Aug 01 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.60-6
-- Second attempt - Rebuilt for
- https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
-
-* Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.60-5
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
-
-* Mon May 25 2020 Miro Hrončok <mhroncok@redhat.com> - 1.60-4
-- Rebuilt for Python 3.9
-
-* Tue May 19 2020 Ondřej Nosek <onosek@redhat.com> - 1.60-3
-- Patch: Switch from krb_login to gssapi_login
-
-* Mon May 11 2020 Ondřej Nosek <onosek@redhat.com> - 1.60-2
-- Releasing the epel8 version
-
-* Fri Mar 20 2020 Ondřej Nosek <onosek@redhat.com> - 1.60-1
-- More transparent check of retired package (onosek)
-- Run newer version of sphinx-build tool (onosek)
-- Lookaside cache upload is not based on an extension - #484 (onosek)
-- container-build: additional warning when using --release (mlangsdo)
-- allow compose-id with repo-url for container_build (rcerven)
-- Clone config customization for namespaces - 231 (onosek)
-- Repair Jenkins tests (onosek)
-- (new-)sources should fail with git tracked files - 241 (onosek)
-- Handle new cachito dependency replacement argument (athoscr)
-- module-build optional key help - 280 (onosek)
-- Modify watch-cancel message (sgallagh)
-- Create stats for module builds in 'init' state (csomh)
-- RPM 4.15 changed header returns from type 'bytes' to 'string'. Handle either
- by converting to 'string' if necessary. (mmathesi)
-- Don't expect module build tasks to have "rpms" (mulaieva)
-- Propagate module_hotfixes to getMockConfig - rhbz#1780228 (lsedlar)
-- Add check for wrong repo name format during clone - 353 (onosek)
-- Simplify methods for getting namespace giturl (onosek)
-- Use a single thread pool while watching module builds (csomh)
-- Also capture stderr in logfile (orion)
-- Line up descriptions for better code readability (onosek)
-- Isolated container-build should allow arches override (rcerven)
-- container-build: add --koji-parent-build argument (kdreyer)
-- tests: add container-build --isolated test (kdreyer)
-- container-build: add --isolated argument (kdreyer)
-- Pass skip_build option to buildContainer (rcerven)
-- Reuse koji_cli.lib.unique_path (cqi)
-
-* Thu Jan 30 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.59-6
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
-
-* Thu Jan 02 2020 Ondřej Nosek <onosek@redhat.com> - 1.59-5
-- Some patches:
-- Propagate module_hotfixes to getMockConfig
-- Don't expect module build tasks to have "rpms"
-- RPM 4.15 changed header - type conversion
-- Create stats for module builds in 'init' state
-
-* Tue Dec 03 2019 Ondřej Nosek <onosek@redhat.com> - 1.59-4
-- Patch: limited thread pool for watching module builds
-
-* Thu Nov 14 2019 Ondřej Nosek <onosek@redhat.com> - 1.59-3
-- Backport: Isolated container-build should allow arches override
-
-* Fri Oct 25 2019 Ondrej Nosek <onosek@redhat.com> - 1.59-2
-- Backport: container-build: add --isolated and --koji-parent-build arguments
-- Backport: Pass skip_build option to buildContainer
-- Backport: Reuse koji_cli.lib.unique_path
-
-* Mon Sep 16 2019 Ondřej Nosek <onosek@redhat.com> - 1.59-1
-- Add argument to skip build option for container-build (rcerven)
-- Sorting imports (onosek)
-- Ignore error when adding exclude patterns - 1733862 (onosek)
-- Path to lookaside repo fix (onosek)
-- Add commands for interacting with Koji side-tag plugin - 329 (lsedlar)
-- Do not delete files related to gating on import (onosek)
-- Support integer values in the optional module-build arguments (mprahl)
-- container-build: add --build-release argument (kdreyer)
-- Allow some arguments for container-build together (onosek)
-- git-changelog: Fix running on Python 3 - 3 (onosek)
-- Port to libmodulemd 2 API (lsedlar)
-- Module-overview allows filtering by owner - 325 (onosek)
-- Different import --offline command behavior - #445 (onosek)
-- Show nvr in container-build (onosek)
-- Custom handler for koji watch_tasks (onosek)
-- Unittests for clone command (onosek)
-- Fix clone --branches - rhbz#1707223 (tmz)
-- Make gitbuildhash work for windows builds (lsedlar)
-
-* Mon Sep 16 2019 Ondřej Nosek <onosek@redhat.com> - 1.58-10
-- Update koji dependency
-
-* Sat Aug 17 2019 Miro Hrončok <mhroncok@redhat.com> - 1.58-9
-- Rebuilt for Python 3.8
-
-* Thu Aug 01 2019 Ondřej Nosek <onosek@redhat.com> - 1.58-8
-- Obsoletes python2-rpkg after upgrade to Fedora30
-
-* Wed Jul 31 2019 Stephen Gallagher <sgallagh@redhat.com> - 1.58-7
-- Fix libmodulemd requirements
-
-* Fri Jul 26 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.58-6
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
-
-* Mon Jun 10 2019 Ondřej Nosek <onosek@redhat.com> - 1.58-5
-- Now again, libmodulemd is required instead of python3-libmodulemd because
- it was causing troubles with upgrades.
-
-* Mon Jun 10 2019 Ondřej Nosek <onosek@redhat.com> - 1.58-4
-- Modify required version of koji package
-
-* Mon May 27 2019 Ondřej Nosek <onosek@redhat.com> - 1.58-3
-- Backport: Custom handler for koji watch_tasks
-- Backport: Show nvr in container-build
-- Backport: Different import --offline command behavior
-
-* Thu May 09 2019 Ondrej Nosek <onosek@redhat.com> - 1.58-2
-- Backport: fixed 'clone --branch' command
-
-* Mon Apr 29 2019 Ondřej Nosek <onosek@redhat.com> - 1.58-1
-- Ignore files in a cloned repository - #355 (onosek)
-- Handle data from python RPM binding as UTF-8 string (zebob.m)
-- srpm_import: be compatible with rhbz#1693751 (praiskup)
-- Pass --enable-network to mock - 314 (onosek)
-- Enhance 'module-overview' sub-command to show scratch status of modules.
- (mmathesi)
-- Remove the ability to parse a module's branch automatically to determine the
- base module stream override (mprahl)
-- Improvements for scratch module builds (mmathesi)
-- Updates to support scratch module builds (mmathesi)
-- Refactor fake Koji credential handling from TestBuildPackage class into new
- FakeKojiCreds class so it can be shared with TestModulesCli class. (mmathesi)
-- Make Koji upload methods more generic so they can be reused. (mmathesi)
-- Allow passing --offline and -r to mbs-manager build_module_locally. (jkaluza)
-- Depth param for clone - tuning (onosek)
-- Depth param for clone - #363 (onosek)
-- Pass --disablerepo and --enablerepo to mock - 313 (onosek)
-- Import srpm without uploading sources - rhbz#1175262 (onosek)
-- Ignore any specified profile when finding the Flatpak build target (otaylor)
-- Show module build links in output from command module-build (cqi)
-- Add 'retire' command supporting both packages and modules (mmathesi)
-- Fix "push --force" (tim)
-- Container-build returns its status to command-line - #415 (onosek)
-- Upload .crate files to lookaside cache - 312 (onosek)
-- Restrict version of PyYAML on Python 2.6 (lsedlar)
-- Simplify srpm method (onosek)
-- Permit setting arbitrary rpm macros during build (riehecky)
-- Add the ability to configure multiple regex expressions for
- base_module_stream_regex_from_branch (mprahl)
-- Do not require PyGObject in setup.py - rhbz#1679365 (onosek)
-- Fixing failing Jenkins tests (onosek)
-- Unify update-docs script with fedpkg version (onosek)
-- README: add links (onosek)
-- Watch multiple module builds (cqi)
-- Added update-docs script (onosek)
-
-* Thu Apr 25 2019 Ondřej Nosek <onosek@redhat.com> - 1.57-9
-- yet another compat fix with RPM after rhbz#1693751
-
-* Fri Apr 19 2019 Pavel Raiskup <praiskup@redhat.com> - 1.57-8
-- compat fix with RPM after rhbz#1693751
-
-* Wed Mar 20 2019 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 1.57-7
-- Backport patch for uploading *.crate into lookaside
-
-* Thu Feb 07 2019 Ondřej Nosek <onosek@redhat.com> - 1.57-6
-- Revert previous change.
- Now python-gobject-base & libmodulemd are removed from epel7 and RHEL7
-
-* Tue Feb 05 2019 Ondřej Nosek <onosek@redhat.com> - 1.57-5
-- python-gobject-base & libmodulemd also for epel7 and RHEL7
-
-* Mon Feb 04 2019 Lubomír Sedlář <lsedlar@redhat.com> - 1.57-4
-- Disable Py2 package on F30+
-
-* Sat Feb 02 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.57-3
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
-
-* Thu Jan 03 2019 Ondřej Nosek <onosek@redhat.com> - 1.57-2
-- Merge changes of the .spec files for Fedora and RHEL
-
-* Thu Dec 13 2018 Ondřej Nosek <onosek@redhat.com> - 1.57-1
-- Use idna 2.7 for Python 2.6 (lsedlar)
-- Imports are sorted (onosek)
-- libmodulemd is missing on el7 - #402 (onosek)
-- Initialize bash autocompletion (onosek)
-- Set configuration in case of "clone --branches" as well (tim)
-- Fix fake spec file for clog tests (cqi)
-- Move argparse fix from fedpkg - #398 (onosek)
-- Send source mtime to dist-git - 220 (lsedlar)
-- Fix tests for mock package manager (lsedlar)
-- Specify package manager for mock-config (lsedlar)
-- Add contributing guide (onosek)
-- Validate the module build optional argument when parsing the argument
- (mprahl)
-- Add config options to parse the base module (e.g. platform) stream from the
- dist-git branch and apply a buildrequire override (mprahl)
-- Add the ability to pass in buildrequire and require overrides on a module
- build (mprahl)
-- Raise an error if the module build command receives optional arguments that
- conflict (mprahl)
-- Silence Python3 SafeConfigParser warnings (mmathesi)
-- Allow to pass posargs to tox from make (cqi)
-- Specify dependent packages in one place (cqi)
-- Don't registry flatpak-build command on Python-2.6 (otaylor)
-- Add flatpak-build subcommand (otaylor)
-- Don't pass the MBS API URL around as a parameter (otaylor)
-- TestContainerBuildWithKoji: tear down the mock appropriately (otaylor)
-- Refine test runner for py26 (cqi)
-
-* Thu Nov 15 2018 Ondřej Nosek <onosek@redhat.com> - 1.56-4
-- Allow build for RHEL-8 (onosek)
-
-* Wed Nov 14 2018 Ondřej Nosek <onosek@redhat.com> - 1.56-3
-- No mock warning (onosek)
-
-* Fri Sep 7 2018 Owen Taylor <otaylor@redhat.com> - 1.56-2
-- Add patch from upstream pull-request to add a flatpak-build subcommand
-- Add PyYAML dependencies so that the spec file at least builds on epel6/epel7
-
-* Tue Aug 21 2018 Chenxiong Qi <cqi@redhat.com> - 1.56-1
-- Validate greenwave policy early in Commands.build (cqi)
-- Refine error message for failure gating.yaml validation (cqi)
-- explain mbs-manager exception handling (nils)
-- test for missing mbs-manager with errno set (nils)
-- catch errno == ENOENT if mbs-manager is missing (nils)
-- add missing method docstring (nils)
-- Show full error from MBS (lsedlar)
-- Fix tests for greenwave policy validation (cqi)
-- Add testenv for building docs (cqi)
-- New option --buildrootdir - rhbz#1583822 (cqi)
-- Add --shell option to mockbuild - rhbz#1438685 (cqi)
-- Validate gating.yaml file for Greenwave gating (gnaponie)
-- Update README (cqi)
-- Reduce the number of repo creation for tests (cqi)
-- Fix flake8 error (cqi)
-- Drop rpm-py-installer from requires - #357 (cqi)
-- Allow _run_command to capture and return output to stdout or stderr (cqi)
-- Claim Python 3.7 in README and package classifiers (cqi)
-- Fix a bad test teardown (otaylor)
-- Refactor build command (cqi)
-- Remove rpmfluff package (cqi)
-- Set PYCURL_SSL_LIBRARY directly for installing pycurl (cqi)
-- Add py37 testenv (cqi)
-
-* Thu Jul 26 2018 Chenxiong Qi <cqi@redhat.com> - 1.55-2
-- Remove dependency python-rpmfluff
-
-* Mon Jul 23 2018 Chenxiong Qi <cqi@redhat.com> - 1.55-1
-- Fix installing pycurl for running tests (cqi)
-- Replace extra module_name with repo_name (cqi)
-- Replace name module with repo in tests/fixtures/rpkg*.conf (cqi)
-- Add --fail-fast functionality - #331 (tibbs)
-- Fix fake spec for build in rawhide (cqi)
-- Avoid to upload a file with different checksum - #204 (cqi)
-- Give more information when sources has invalid content - #227 (cqi)
-- Reserve README.md while import srpm - #149 (cqi)
-- Set to repo_name property when --name is specified (cqi)
-- Do not restrict argparse version (cqi)
-- Check old format args only if there is clone config (cqi)
-- Fix typo and reword option help and deprecation message (cqi)
-- Massive replacement of module (cqi)
-- Deprecate module_name inside rpkg internal (cqi)
-- Add new option --name and --namespace - #301 (cqi)
-- Man generator indent workaround (onosek)
-- Fixing imports in unittests (onosek)
-- Minor fixes to doc build (cqi)
-- Fix mistakes during rebase (cqi)
-- Run document generator script in Py3 explictly (cqi)
-- Remove warning of nonexisting source/_static/ during doc build (cqi)
-- Do not generate document for sample rpkg app (cqi)
-- Exclude subcommand which does not have help (cqi)
-- Ensure to clean files for generating HTML documents (cqi)
-- Fix rebase error: add module_build_watch back (cqi)
-- Fix MANIFEST.in to list files for building doc (cqi)
-- Rename generate_man_pages.py (cqi)
-- Generate HTML document and manpage for sample rpkg (cqi)
-- Simplify doc Makefile (cqi)
-- Generate commands HTML and man pages (cqi)
-- Update existing docstrings (cqi)
-- Generate documents by sphinx - #50 (cqi)
-- README: new code should be py3 compatible (ktdreyer)
-- Provide base_module to clone_config templates - #326 (tmz)
-- Refactor man generator to be reusable (puiterwijk)
-- Make sure gitcred doesn't land in man (puiterwijk)
-- Don't inject the credential helper to push if OIDC is unconfigured
- (puiterwijk)
-- Add docblocks to gitcred methods and don't quit if OpenIDC is unconfigured
- (puiterwijk)
-- Also inject the credential helper with rpkg push (puiterwijk)
-- Create a "gitcred" command that functions as an OIDC git-credential helper
- (puiterwijk)
-
-* Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.54-4
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
-
-* Tue Jun 19 2018 Miro Hrončok <mhroncok@redhat.com> - 1.54-3
-- Rebuilt for Python 3.7
-
-* Mon May 21 2018 Chenxiong Qi <cqi@redhat.com> - 1.54-2
-- Remove koji and rpm-py-installer Python package requires
-- Fix argparse version for el6
-
-* Fri May 11 2018 Chenxiong Qi <cqi@redhat.com> - 1.54-1
-- Pass the -s/--set-default-stream to mbs-manager for module local builds.
- (jkaluza)
-- Write mock config correctly when run in Py 3 (cqi)
-- Add --with and --without options to 'local' - rhbz#1533416 (tmz)
-- Add a test for 3f93433 (cqi)
-- Raise error if rpm command returns non-zero (cqi)
-- Use getpass.getuser() instead of pwd.getpwuid(os.getuid())[0] (jpopelka)
-- Allow setting custom MBS config file and config section in rpkg.conf.
- (jkaluza)
-- Remove py35 testenv (cqi)
-- Ignore .env and tags (cqi)
-- Remove question mark from giturl (cqi)
-- Added custom ArgumentParser (supports allow_abbrev) (jkucera)
-- Grab the correct first line in case of rpm output (zebob.m)
-
-* Mon Apr 16 2018 Chenxiong Qi <cqi@redhat.com> - 1.53-2
-- Require python2-koji 1.15 as the minimum version
-- Refine BuildRequires
-
-* Tue Apr 10 2018 Chenxiong Qi <cqi@redhat.com> - 1.53-1
-- Use NSVs and not build IDs with module-build-local --add-local-build (mprahl)
-- Fix docstring of test_module_build_local_with_skiptests (mprahl)
-- Add long_description to package (cqi)
-- Support local module builds when there are uncommitted changes (mprahl)
-- Fix clarifying error that occurs when mbs-manager is not installed (mprahl)
-- Add support for Module Stream Expansion (MBS API v2) (mprahl)
-- Show errors when a module build fails (mprahl)
-- Move full download url construction to separate method (frostyx)
-- Fix compose related params for container-build (lucarval)
-- Avoid calling /usr/bin/python in tests (miro)
-- Change default rpmlint configuration file (athoscr)
-- Use koji.grab_session_options() rather than opencoding it (cfergeau)
-
-* Mon Mar 05 2018 Miro Hrončok <mhroncok@redhat.com> - 1.52-2
-- Introduce python3 subpackage
-
-* Thu Feb 22 2018 Chenxiong Qi <cqi@redhat.com> - 1.52-1
-- Mock ThreadPool in test_module_overview (cqi)
-- Drop rpmfluff in test (cqi)
-- Fix hardcoded directory name in test (lsedlar)
-- Improve testenv for py26 (cqi)
-- Run tests with old GitPython in py26 testenv (cqi)
-- Compile pycurl with openssl after F27 (cqi)
-- Ignore .egg/ from git (cqi)
-- Add py26 to testenv (cqi)
-- Install koji from PyPI (cqi)
-- Make compose-id and repo-url to take one or more values (csomh)
-- Let git ignore more directories (cqi)
-- Exclude pyc and __pycache__ globally in sdist (cqi)
-- Handle nonexisting mbs-manager (cqi)
-- Add dependent packages for Python 2.6 in setup.py (cqi)
-- Updated module cli API (mcurlej)
-- Declare Python versions rpkg can work with - #278 (cqi)
-- Fix flake8 errors (cqi)
-- Fix tests that do not work with Python 3 (cqi)
-- Fix tests: not impact by dict.items call (cqi)
-- Add py36 to testenv - #274 (cqi)
-- Run tox to run tests and check code styles - #276 (cqi)
-- Use flake8 3.5.0 (cqi)
-- Add files under requirements/ to sdist package (cqi)
-- Install Koji shared library via setuptools (cqi)
-- Set install and tests requires in setup.py (cqi)
-- Split pypi requirements and refine versions (cqi)
-- Change type of compose id from string to int (bfontecc)
-- Install RPM Python binding from PyPI (cqi)
-- Fix test test_lint_each_file_once (cqi)
-- Add compose-id and signing-intent arguments (bfontecc)
-- Use env's python (lucarval)
-- Use progress callback and TaskWatcher from koji_cli.lib (cqi)
-- Get buildhash from git+https:// url (lsedlar)
-- lint: Avoid checking rpm's multiple times (tmz)
-- Fix giturl as well by calling construct_build_url (cqi)
-- Fix construct anongiturl for chain-build (cqi)
-- Fix mock openidc_client (cqi)
-
-* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.51-4
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
-
-* Tue Jan 23 2018 Chenxiong Qi <cqi@redhat.com> - 1.51-3
-- Backport: Add compose-id and signing-intent arguments
-- Backport: Change type of compose id from string to int
-
-* Wed Nov 08 2017 Chenxiong Qi <cqi@redhat.com> - 1.51-2
-- Backport: Fix construct anongiturl for chain-build
-- Backport: Fix giturl as well by calling construct_build_url
-
-* Fri Oct 20 2017 Chenxiong Qi <cqi@redhat.com> - 1.51-1
-- Ignore TestModulesCli if openidc-client is unavailable (cqi)
-- Port mbs-build to rpkg (mprahl)
-- Add .vscode to .gitignore (mprahl)
-- Fix TestPatch.test_rediff in order to run with old version of mock (cqi)
-- Allow to specify alternative Copr config file - #184 (cqi)
-- Tests for patch command (cqi)
-- More Tests for mockbuild command (cqi)
-- More tests for getting spec file (cqi)
-- Tests for container-build-setup command (cqi)
-- Test for container-build to use custom config (cqi)
-- Suppress output from git command within setUp (cqi)
-- Skip test if rpmfluff is not available (lsedlar)
-- Allow to override build URL (cqi)
-- Test for mock-config command (cqi)
-- Tests for copr-build command (cqi)
-- Fix arch-override for container-build (lucarval)
-- Remove unsupported osbs for container-build (lucarval)
-- cli: add --arches support for koji_cointainerbuild (mlangsdo)
-- Strip refs/heads/ from branch only once (lsedlar)
-- Don't install bin and config files (cqi)
-- Fix kojiprofile selection in cliClient.container_build_koji (cqi)
-- Avoid branch detection for 'rpkg sources' (praiskup)
-- Fix encoding in new command (cqi)
-- Minor wording improvement in help (pgier)
-- Fix indentation (pviktori)
-- Add --with and --without options to mockbuild (pviktori)
-
-* Thu Aug 31 2017 Chenxiong Qi <cqi@redhat.com> - 1.50-2
-- Backport: Fix kojiprofile selection in cliClient.container_build_koji (cqi)
-
-* Thu Aug 10 2017 Chenxiong Qi <cqi@redhat.com> - 1.50-1
-- Fix PEP8 error (cqi)
-- Spelling fixes (ville.skytta)
-- Reword help and description of new-sources and upload commands - rhbz#1248737
- (cqi)
-- Set autorebuild enabled by default (bfontecc)
-- Add commands to whitelist_externals (cqi)
-- Declare Python 3 versions to support in setup.py (cqi)
-- Replace unicode with six.text_type (cqi)
-- Run tests in both Python 2 and 3 with tox (cqi)
-- Make tests and covered code compatible with Py3 (cqi)
-- Add requirements files (cqi)
-- Do not build srpm in test (cqi)
-- Do not actually run git-diff in tests (cqi)
-- Remove deprecated modules used in koji (cqi)
-- Non-zero exit when rpmbuild fails in local command (cqi)
-- Report deprecation of config via logger (lsedlar)
-- Print --dist deprecation warning explicitly (lsedlar)
-- utils: Avoid DeprecationWarning for messages for users (lsedlar)
-- Supply namespace to lookaside (if enabled) (lsedlar)
-- Support reading koji config from profile - #187 (cqi)
-- Remove kitchen (cqi)
-- Fix string format (cqi)
-- Recommend --release instead of --dist in mockbuild --help (tmz)
-- Allow overriding container build target by downstream (lsedlar)
-- Add a separate property for namespace (lsedlar)
-- Allow container builds from any namespace (maxamillion)
-- Make osbs support optional (cqi)
-- make osbs dependency optional (pavlix)
-- Allow explicit namespaces with slashes (lsedlar)
-- Do not hang indefinitely when lookaside cache server stops sending data
- (jkaluza)
-- Make --module-name work with namespaces - #216 (lsedlar)
-- Include README.rst in dist package (cqi)
-- More document in README - #189 (cqi)
-- Make new command be able to print unicode - #205 (cqi)
-- Allow to specify custom info to a dummy commit (cqi)
-- Load module name correctly even if push url ends in slash - #192 (cqi)
-- Replace fedorahosted.org with pagure.io - #202 (cqi)
-- Fix rpm command to get changelog from SPEC - rhbz#1412224 (cqi)
-- Rewrite tests to avoid running rpmbuild and rpmlint (cqi)
-- Use fake value to make Command in test (cqi)
-- Python 3.6 invalid escape sequence deprecation fixes (ville.skytta)
-
-* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.49-7
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
-
-* Mon Jul 10 2017 Chenxiong Qi <cqi@redhat.com> - 1.49-6
-- Rename koji to python2-koji
-
-* Thu Jun 29 2017 Lubomír Sedlář <lsedlar@redhat.com> - 1.49-5
-- Allow using namespace in --module-name attribute
-
-* Thu Jun 22 2017 Chenxiong Qi <cqi@redhat.com> - 1.49-4
-- Remove python-osbs-client
-
-* Fri Jun 16 2017 Chenxiong Qi <cqi@redhat.com> - 1.49-3
-- Backport to make osbs optional
-
-* Mon Mar 27 2017 Chenxiong Qi <cqi@redhat.com> - 1.49-2
-- Rebuilt to rename pyrpkg to python2-rpkg
-
-* Wed Feb 22 2017 Chenxiong Qi <cqi@redhat.com> - 1.49-1
-- More upload PyCURL fixes for EL 7 (merlin)
-- Move tag inheritance check into a separate method (cqi)
-
-* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.48-3
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
-
-* Wed Feb 1 2017 Lubomír Sedlář <lsedlar@redhat.com> - 1.48-2
-- Backport patch to move tag inheritance check to separate method
-
-* Thu Dec 22 2016 Chenxiong Qi <cqi@redhat.com> - 1.48-1
-- Better message when fail to authenticate via Kerberos - #180 (cqi)
-
-* Mon Dec 19 2016 Chenxiong Qi <cqi@redhat.com> - 1.47-7
-- Refactor Commands._srpmdetails (cqi)
-
-* Thu Dec 15 2016 Chenxiong Qi <cqi@redhat.com> - 1.47-6
-- Add missing import koji.ssl.SSLCommon - BZ#1404102 (cqi)
-- Fix upload with old PyCURL - BZ#1241059 (lsedlar)
-
-* Mon Dec 12 2016 Lubomír Sedlář <lsedlar@redhat.com> - 1.47-5
-- Fix default value for krb_rdns options
-
-* Mon Dec 12 2016 Lubomír Sedlář <lsedlar@redhat.com> - 1.47-4
-- Add krb_rdns koji config
-
-* Thu Dec 08 2016 Lubomír Sedlář <lsedlar@redhat.com> - 1.47-3
-- Conflict with too old fedpkg
-
-* Wed Dec 07 2016 Chenxiong Qi <cqi@redhat.com> - 1.47-2
-- Fix test that fails on a Koji ARM builder
-
-* Fri Dec 02 2016 Chenxiong Qi <cqi@redhat.com> - 1.47-1
-- New upstream release 1.47
-
-* Tue Oct 25 2016 Lubomír Sedlář <lsedlar@redhat.com> - 1.46-5
-- Allow using gssapi for lookaside caches
-
-* Tue Sep 06 2016 Lubomír Sedlář <lsedlar@redhat.com> - 1.46-4
-- Update dependencies for python-argparse and python-hashlib
-
-* Thu Aug 25 2016 Chenxiong Qi <cqi@redhat.com> - 1.46-3
-- python-six-1.9.0 is the minimum version rpkg depends
-
-* Tue Jul 19 2016 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.46-2
-- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages
-
-* Fri Jul 15 2016 Chenxiong Qi <cqi@redhat.com> - 1.46-1
-- Warning untracked patches when push (cqi)
-- handle correct spec path when push from outside the repo (cqi)
-- Remove support for BuildContainer release task opt (lucarval)
-
-* Mon Jun 27 2016 Chenxiong Qi <cqi@redhat.com> - 1.45-2
-- Depend on python-six to be compatible with Python 3
-
-* Mon Jun 27 2016 Chenxiong Qi <cqi@redhat.com> - 1.45-1
-- add missing git-config in the git repo for testing (cqi)
-- Don't print download/upload progress outside of TTY (lsedlar)
-- Merge #58 `Rebase of #28 with conflict resolved` (cqi)
-- Get correct login without TTY (vgologuz)
-- Merge #63 `More Python 3 compatibility fixes` (lubomir.sedlar)
-- fix broken when non-ASCII in path (cqi)
-- More Python 3 compatibility fixes (ville.skytta)
-- Fix push called without argument (lsedlar)
-- Use logging.warning instead of deprecated logging.warn (ville.skytta)
-- Use assertEqual instead of deprecated assertEquals (ville.skytta)
-- Spelling fixes (ville.skytta)
-- Add missing dependencies to setup.py (ville.skytta)
-- Add tests for cloning with a namespace (lsedlar)
-- Fix cloning with -B and namespaced module (lsedlar)
-- Adjust figuring out the path of the git repo cloned (pingou)
-- Only clone into the bare_dir if no target was specified (pingou)
-- Add to the CLI the possibility to specify a target folder for the clone
- (pingou)
-- Add unit-tests for cloning into a specified directory (pingou)
-- Let rpkg support cloning into a specified directory (pingou)
-- Python 3 fixes (ville.skytta)
-- rewrite test_commands.setup_module using git (cqi)
-- Merge #40 `push: check for missing patches` (lubomir.sedlar)
-
-* Thu Jun 02 2016 Lubomír Sedlář <lsedlar@redhat.com> - 1.44-1
-- Log container-build task results (lucarval)
-- Add support for BuildContainer release task opt (lucarval)
-- handle exception from getTaskInfo correctly (cqi)
-- fix failure of test_load_spec_where_path_contains_space on RHEL (cqi)
-- allow space appearing in path to cloned repo (cqi)
-- fix docstring of Commands.compile (cqi)
-- Make 'Failed to get ns_module_name from Git url or pushurl' message a warning
- (issue #42) (orion)
-- pyrpkg: use git remote get-url --push (mathstuf)
-
-* Wed Mar 23 2016 Lubomír Sedlář <lubomir.sedlar@gmail.com> - 1.43-1
-- Print warning when using old git configuration (lsedlar)
-- Add rpms namespace for checkouts without namespace (lsedlar)
-
-* Wed Mar 16 2016 Lubomír Sedlář <lubomir.sedlar@gmail.com> - 1.42-1
-- Fix problems with namespacing (maxamillion)
-
-* Mon Mar 14 2016 Lubomír Sedlář <lubomir.sedlar@gmail.com> - 1.41-2
-- Depend on python-osbs directly to avoid python3
-
-* Mon Mar 14 2016 Lubomír Sedlář <lubomir.sedlar@gmail.com> - 1.41-1
-- Update upstream URL (lsedlar)
-- Fixes based on lsedlar's feedback (maxamillion)
-- add distgit namespacing for non-rpm content (docker, xdg-app, etc) (maxamillion)
-- Container-build: dont't allow to build with unpushed changes (araszka)
-- Suggest --dist option when can't get OS ver from branch (araszka)
-- fix: print all tags without filter (araszka)
-- Fix lookaside upload when --path is specified (araszka)
-- Lookaside: encoding repo name to UTF-8 (araszka)
-- Fix errors on Python 2.6 (lsedlar)
-- Add test and docstring to byte offset convertor (araszka)
-- Decode .spec file with UTF-8 (araszka)
-- 1271741 - add copr command (Recommends: copr-cli) (msuchy)
-- Suggest --target option when unknown target (araszka)
-
-* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 1.40-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
-
-* Fri Oct 23 2015 Pavol Babincak <pbabinca@redhat.com> - 1.40-1
-- don't use assertRaises (ttomecek)
-- refactor test_clone: set clone config in the same test file (pbabinca)
-- Fix clone test to not use constructor to set clone_config (pbabinca)
-- Fix test clone test (pbabinca)
-- Make use of clone_config attribute backwards compatible (pbabinca)
-
-* Thu Oct 22 2015 Pavol Babincak <pbabinca@redhat.com> - 1.39-1
-- Replace deprecated BaseException.message with str(BaseException) (pbabinca)
-- Don't print exception message during check repo tests (pbabinca)
-- Add support for setting post-clone git config (ville.skytta)
-
-* Wed Oct 21 2015 Pavol Babincak <pbabinca@redhat.com> - 1.38-1
-- Fix parse error (pbabinca)
-
-* Wed Oct 21 2015 Pavol Babincak <pbabinca@redhat.com> - 1.37-1
-- Add support for --nocheck (orion)
-- container-build: check repo (ttomecek)
-- move repo checking to a method (ttomecek)
-- Add 'oxt' and 'xpi' extensions to UPLOADEXTS (dsilakov)
-- Switch-branch: give more info about error (araszka)
-- Recognize binary files with .oxt and .xpi extensions (dsilakov)
-- Container-build: add --nowait option (araszka)
-- bash autocompletion: support for command container-build-config (pbabinca)
-- Implement getter for autorebuild value, use 'true' and 'false' for values
- (bkabrda)
-- Add a command and option to change container build setup (bkabrda)
-- Edit tests for python2.6 - EL6 (araszka)
-- tests: Don't use assertNotIn (araszka)
-- tests: Don't use assertRaises as context manager (araszka)
-- tests: Don't use check_output (araszka)
-- Typo in import --help descriptions (araszka)
-- change the url for rpkg (dennis)
-
-* Wed Jul 15 2015 Pavol Babincak <pbabinca@redhat.com> - 1.36-1
-- container-build: support yum repos with --build-with=koji (pbabinca)
-- container-build: move --scratch option to koji group (pbabinca)
-- Print task info for container-build (pbabinca)
-
-* Thu Jun 18 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.35-3
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
-
-* Tue May 26 2015 Dennis Gilmore <dennis@ausil.us> - 1.35-2
-- pyrpkg Requires python-osbs
-
-* Tue May 26 2015 Pavol Babincak <pbabinca@redhat.com> - 1.35-1
-- Test for scratch opt in the actual argument of container_build_koji
- (pbabinca)
-- Move the GitIgnore class to its own module (bochecha)
-- Modernize the gitignore-handling code (bochecha)
-- gitignore: Properly handle adding matching lines (bochecha)
-- Refactor: remove unnecessary code (pbabinca)
-- Move custom UnknownTargetError to errors module (pbabinca)
-- New command: container-build (jluza)
-- lookaside: Take over file uploads (bochecha)
-- Remove unnecessary log message (bochecha)
-- Stop making source files read-only (bochecha)
-- Drop some useless comments (bochecha)
-- Only report we're uploading when we actually are (bochecha)
-- lookaside: Check if a file already was uploaded (bochecha)
-- lookaside: Allow client-side and custom CA certificates (bochecha)
-- lookaside: Be more flexible when building the download URL (bochecha)
-- lookaside: Use the hashtype for the URL interpolation (bochecha)
-- lookaside: Add a progress callback (bochecha)
-- lookaside: Handle downloading of source files (bochecha)
-- lookaside: Move handling of file verification (bochecha)
-- lookaside: Move handling of file hashing (bochecha)
-- utils: Add a new warn_deprecated helper (bochecha)
-- Add a new lookaside module (bochecha)
-- Add a new utils module (bochecha)
-- Properly set the logger (bochecha)
-- Move our custom errors to their own module (bochecha)
-- Don't assume MD5 for the lookaside cache (bochecha)
-- Remove dead code (bochecha)
-- Use the proper exception syntax (bochecha)
-
-* Thu Apr 16 2015 Pavol Babincak <pbabinca@redhat.com> - 1.34-1
-- tests: Don't use assertIsNone (bochecha)
-- tests: Don't use assertRaises as a context manager (bochecha)
-- Add long --verbose option to -v, new --debug and -d option (pbabinca)
-
-* Mon Apr 13 2015 Pavol Babincak <pbabinca@redhat.com> - 1.33-1
-- New mockbuild options: --no-clean --no-cleanup-after (jskarvad)
-- Catch ssl auth problems and print more helpful messages (pbabinca)
-- New exception - rpkgAuthError to allow clients detect auth problems
- (pbabinca)
-
-* Mon Mar 23 2015 Pavol Babincak <pbabinca@redhat.com> - 1.32-1
-- tests: Properly open/close the file (bochecha)
-- sources: Support writing in either the old or new format (bochecha)
-- sources: Reindent code (bochecha)
-
-* Fri Mar 06 2015 Pavol Babincak <pbabinca@redhat.com> - 1.31-1
-- Refactor: remove unused imports from test_sources (pbabinca)
-- Don't do several times the same thing (bochecha)
-- sources: Forbid mixing hash types (bochecha)
-- sources: Move to the new file format (bochecha)
-- Rewrite the sources module (bochecha)
-
-* Wed Dec 03 2014 Pavol Babincak <pbabinca@redhat.com> - 1.30-2
-- Use %%{__python} instead of %%{__python2} as it might be not defined
-
-* Wed Oct 08 2014 Pavol Babincak <pbabinca@redhat.com> - 1.30-1
-- add python-nose as BuildRequires as run tests in check section (pbabinca)
-- pass extra data to the Commands object via properties instead of __init__()
- (mikeb)
-- clean up Koji login, and properly support password auth (mikeb)
-- add --runas option (mikeb)
-- run os.path.expanduser on the kojiconfig attribute in case the path is in the
- user's home directory (bstinson)
-- Override GIT_EDITOR in tests (pbabinca)
-- Massive Flake8 fix (bochecha)
-- Fix some more Flake8 issues (bochecha)
-- Fix some flake8 issues (bochecha)
-- Simplify some code (bochecha)
-- Fix typo (bochecha)
-- tests: Ensure functioning of Commands.list_tag (bochecha)
-- list_tags: Stop executing a command (bochecha)
-- list_tags: Fix the docstring (bochecha)
-- delete_tag: Stop executing a command (bochecha)
-- tests: Ensure functioning of Commands.delete_tag (bochecha)
-- add_tag: Run the tag command in the right directory (bochecha)
-- tests: Ensure proper functioning of Commands.add_tag (bochecha)
-- tests: Factor out some code (bochecha)
-- tests: Ensure functioning of Commands.clone (bochecha)
-- gitignore: Make sure each line ends with a \n (bochecha)
-- gitignore: We're not modified any more after we wrote to disk (bochecha)
-- tests: Ensure proper functioning of GitIgnore (bochecha)
-- tests: Use nose (bochecha)
-- Remove unused import (bochecha)
-- Some more PEP8 (bochecha)
-- Add classifiers to setup.py (pbabinca)
-- Add new sources file parser even with unit tests (pbabinca)
-- If source file doesn't exist continue without downloading files (pbabinca)
-- Reformat setup.py to be compliant with PEP 8 (pbabinca)
-
-* Tue Sep 30 2014 Pavol Babincak <pbabinca@redhat.com> - 1.28-1
-- Compare fuller remote branch name with local branch before build
-
-* Fri Sep 26 2014 Pavol Babincak <pbabinca@redhat.com> - 1.27-1
-- Explicitly define pyrpkg's client name for man pages (pbabinca)
-- Refactor mock results dir to property (pbabinca)
-- Add skip-diffs option for import_srpms (lars)
-- Properly remove possible .py when creating man pages (lars)
-- Process srpm imports to empty repositories more explicitly (pbabinca)
-- Make UPLOADEXTS a class variable that can be extended (lars)
-- Introduce self.default_branch_remote for fresh clones (pbabinca)
-- On self.path change reset properties which could used old value (pbabinca)
-- Remove empty entry from git ls-files to not confuse following code (pbabinca)
-- Remove file names during srpm import in more extensible way (pbabinca)
-- Fix issue causing all current local builds via fedpkg to use md5 rather than
- sha256 (spot)
-- License replaced with official GPL 2.0 license from gnu.org (pbabinca)
-- Allow "rpkg commit -s" (pjones)
-
-* Tue Jul 29 2014 Pavol Babincak <pbabinca@redhat.com> - 1.26-1
-- rpkg doesn't have a python module so use pyrpkg instead (pbabinca)
-
-* Tue Jul 29 2014 Pavol Babincak <pbabinca@redhat.com> - 1.25-1
-- 1.25 release (pbabinca)
-- Note to do_imports() doc. (pbabinca)
-- Change default option for switch-branch from --no-fetch to --fetch (pbabinca)
-- Allow default name of the library to be set by subclasses (pbabinca)
-- Use name attribute of cliClient to get configuration (pbabinca)
-- Make setup.py executable (pbabinca)
-- Use direct git call for fetches (pbabinca)
-- Print reason for failed switch-branch (pbabinca)
-- Match whole branch with remote name when switching branch (pbabinca)
-- Refactor: deduplicate remote & branch_merge (pbabinca)
-- De-hardcode 'origin' as the remote name (bochecha)
-- Fallback the remote on 'origin' (bochecha)
-
-* Mon Jun 09 2014 Pavol Babincak <pbabinca@redhat.com> - 1.24-1
-- 1.24 release (pbabinca)
-- Work around signed srpms (Till Maas)
-- Properly raise the error (bochecha)
-- Ability to skip NVR construction altogether for builds (pbabinca)
-- If we failed to parse NVRE from rpm output use better error message
- (pbabinca)
-- If command to get NVRE printed anything to stderr log that command (pbabinca)
-- Refactor: correctly split string on multi lines (pbabinca)
-- Use nvr_check as an optional argument for build (pbabinca)
-- 1.23 release (pbabinca)
-- Use module_name setter instead of constructor parameter (pbabinca)
-- Set pushurl & branch_remote by default (pbabinca)
-- 1.22 release (pbabinca)
-- Define module name from command line, git url and lastly from spec (pbabinca)
-- Revert "Define module name from command line, git url and lastly from spec"
- (pbabinca)
-
-* Sun Jun 08 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.21-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
-
-* Mon Mar 24 2014 Pavol Babincak <pbabinca@redhat.com> - 1.21-1
-- Refactor: split strings on multi lines without spaces from indentation
- (pbabinca)
-- Refactor: remove spaces at the end of lines (pbabinca)
-- Define module name from command line, git url and lastly from spec (pbabinca)
-- Option to skip NVR existence check in build system before build (pbabinca)
-- Add an 'epoch' property to pyrpkg.Commands (bochecha)
-- Fetch remotes before switch-branch by default (pbabinca)
-- Protect rhpkg's --arches argument (pbabinca)
-
-* Tue Feb 18 2014 Dennis Gilmore <dennis@ausil.us> - 1.20-1
-- read krbservice from the koji config file (dennis)
-- We can assume that rpkg is installed if the (ville.skytta)
-- clog: Don't require empty line between changelog entries. (ville.skytta)
-- Spelling fixes. (ville.skytta)
-- expand %%{name} and %%{verion} macros when checking for unused_patches check
- for .patch and .diff files as patches (dennis)
-- clean up some language ambiguities (dennis)
-- clog: Support %%changelog tag written in non-lowercase. (ville.skytta)
-- add spkg as a binary file extention rhbz#972903 (dennis)
-- Fixed version to 1.19 (pbabinca)
-- Don't track spec file here (pbabinca)
-- 1.20 (pbabinca)
-- Mock config temp dir in the form $(target)-$(localarch).$(mktemp)mockconfig
- (pbabinca)
-
-* Sun Aug 04 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.19-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
-
-* Mon Apr 08 2013 Pavol Babincak <pbabinca@redhat.com> - 1.19-1
-- Generate mock-config for mockbuild if needed (rhbz#856928) (pbabinca)
-
-* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.18-4
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
-
-* Fri Aug 10 2012 Robert Scheck <robert@fedoraproject.org> - 1.18-3
-- Require %%{version}-%%{release} rather %%{name}-%%{version}
-
-* Sat Jul 21 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.18-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
-
-* Mon Apr 16 2012 Jesse Keating <jkeating@redhat.com> - 1.18-1
-- Use rpmdefines when querying for package name
-
-* Mon Apr 09 2012 Jesse Keating <jkeating@redhat.com> - 1.17-1
-- Don't assume master branch for chain builds (jkeating)
-
-* Mon Mar 26 2012 Jesse Keating <jkeating@redhat.com> - 1.16-1
-- Only read from .koji/config (jkeating)
-
-* Wed Mar 21 2012 Jesse Keating <jkeating@redhat.com> - 1.15-1
-- Fix branch push warning (jkeating)
-- Handle CVS based builds when getting build hash (jkeating)
-
-* Mon Mar 12 2012 Jesse Keating <jkeating@redhat.com> - 1.14-1
-- Warn if the checked out branch cannot be pushed (jkeating)
-- Warn if commit or tag fails and we don't push (#21) (jkeating)
-- Honor ~/.koji/config (rhbz#785776) (jkeating)
-- Update help output for switch-branch (rhbz#741742) (jkeating)
-
-* Thu Mar 01 2012 Jesse Keating <jkeating@redhat.com> - 1.13-1
-- Return proper exit code from builds (#20) (jkeating)
-- Fix md5 option in the build parser (jkeating)
-- More completion fixes (jkeating)
-- Add mock-config and mockbuild completion (jkeating)
-- Simplify test for rpkg availability. (ville.skytta)
-- Fix ~/... path completion. (ville.skytta (jkeating)
-- Add a --raw option to clog (#15) (jkeating)
-- Make things quiet when possible (jkeating)
-- Fix up figuring out srpm hash type (jkeating)
-- Allow defining an alternative builddir (jkeating)
-- Conflict with older fedpkg (jkeating)
-- Attempt to automatically set the md5 flag (jkeating)
-- Use -C not -c for config. (#752411) (jkeating)
-- Don't check gpg sigs when importing srpms (ticket #16) (jkeating)
-- Enable md5 option in mockbuild (twaugh) (jkeating)
-
-* Tue Jan 24 2012 Jesse Keating <jkeating@redhat.com> - 1.12-1
-- Fix mock-config (ticket #13) (jkeating)
-- Make md5 a common build argument (jkeating)
-- Move arches to be a common build argument (ticket #3) (jkeating)
-- Find remote branch to track better (jkeating)
-
-* Fri Jan 13 2012 Jesse Keating <jkeating@redhat.com> - 1.11-1
-- Change clog output to be more git-like (sochotnicky)
-- Fix mockconfig property (bochecha)
-- Use only new-style classes everywhere. (bochecha)
-- Testing for access before opening a file is unsafe (bochecha)
-- Add a gitbuildhash command (jkeating)
-- Always make sure you have a absolute path (aj) (jkeating)
-- don't try to import brew, just do koji (jkeating)
-
-* Mon Nov 21 2011 Jesse Keating <jkeating@redhat.com> - 1.10-1
-- Use -C for --config shortcut (jkeating)
-- Don't leave a directory on failure (#754082) (jkeating)
-- Fix chain build (#754189) (jkeating)
-- Don't hardcode brew here (jkeating)
-
-* Mon Nov 07 2011 Jesse Keating <jkeating@redhat.com> - 1.9-1
-- Don't upload if there is nothing to upload. (jkeating)
-- --branch option for import is not supported yet (jkeating)
-- Add epilog about mock-config generation (jkeating)
-- Don't assume we can create a folder named after the module. (bochecha)
-- Fix passing the optional mock root to mockbuild (bochecha)
-- Add missing registration for mockbuild target (bochecha)
-- Make the clean target work with --path. (bochecha)
-- Fix typo in a comment. (bochecha)
-- Fix syntax error in main script. (bochecha)
-- Fix typo. (bochecha)
-
-* Fri Oct 28 2011 Jesse Keating <jkeating@redhat.com> - 1.8-1
-- Get more detailed error output from lookaside (jkeating)
-- Move the curl call out to it's own function (jkeating)
-- Hide build_common from help/usage (jkeating)
-- Fix the help command (jkeating)
-
-* Tue Oct 25 2011 Jesse Keating <jkeating@redhat.com> - 1.7-1
-- Support a manually specified mock root (jkeating)
-- Add a mock-config subcommand (jkeating)
-- Fix a traceback on error. (jkeating)
-- Remove debugging code (jkeating)
-- More git api updates (jkeating)
-- Add topurl as a koji config and property (jkeating)
-- Add a mockconfig property (jkeating)
-- Turn the latest commit into a property (jkeating)
-
-* Tue Sep 20 2011 Jesse Keating <jkeating@redhat.com> - 1.6-1
-- Allow name property to load by itself (jkeating)
-
-* Mon Sep 19 2011 Jesse Keating <jkeating@redhat.com> - 1.5-1
-- Fix tag listing (#717528) (jkeating)
-- Revamp n-v-r property loading (#721389) (jkeating)
-- Don't use os.getlogin (jkeating)
-- Code style changes (jkeating)
-- Allow fedpkg lint to be configurable and to check spec file. (pingou)
-- Handle non-scratch srpm builds better (jkeating)
-
-* Wed Aug 17 2011 Jesse Keating <jkeating@redhat.com> - 1.4-1
-- Be more generic when no spec file is found (jkeating)
-- Hint about use of git status when dirty (jkeating)
-- Don't use print when we can log.info it (jkeating)
-- Don't exit from a library (jkeating)
-- Do the rpm query in our module path (jkeating)
-- Use git's native ability to checkout a branch (jkeating)
-- Use keyword arg with clone (jkeating)
-- Allow the on-demand generation of an srpm (jkeating)
-- Fix up exit codes (jkeating)
-
-* Mon Aug 01 2011 Jesse Keating <jkeating@redhat.com> - 1.3-1
-- Fix a debug string (jkeating)
-- Set the right property (jkeating)
-- Make sure we have a default hashtype (jkeating)
-- Use underscore for the dist tag (jkeating)
-- Fix the kojiweburl property (jkeating)
-
-* Wed Jul 20 2011 Jesse Keating <jkeating@redhat.com> - 1.2-1
-- Fill out the krb_creds function (jkeating)
-- Fix the log message (jkeating)
-- site_setup is no longer needed (jkeating)
-- Remove some rhtisms (jkeating)
-- Wire up the patch command in client code (jkeating)
-- Add a patch command (jkeating)
-
-* Fri Jun 17 2011 Jesse Keating <jkeating@redhat.com> - 1.1-2
-- Use version macro in files
-
-* Fri Jun 17 2011 Jesse Keating <jkeating@redhat.com> - 1.1-1
-- New tarball release with correct license files
-
-* Fri Jun 17 2011 Jesse Keating <jkeating@redhat.com> - 1.0-2
-- Fix up things found in review
-
-* Tue Jun 14 2011 Jesse Keating <jkeating@redhat.com> - 1.0-1
-- Initial package
diff --git a/sources b/sources
deleted file mode 100644
index d98b3f9..0000000
--- a/sources
+++ /dev/null
@@ -1 +0,0 @@
-SHA512 (rpkg-1.66.tar.gz) = 14a6947146cd5a8f9baa2d3fba0a37bb0d7ab5bd69e29c04282c882e1f249831c8faf443d4dd94adfe1bf385f6525cefef84b10d44a3949d815fd293d5f5fccc
next reply other threads:[~2026-08-10 21:44 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-10 21:44 [this message]
2026-08-10 21:44 [rpms/rpkg] 1.70-1: Orphaned for 6+ weeks
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=178639827466.1.8905971386229574170.rpms-rpkg-59f256885f14@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