Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package obs-service-tar_scm for
openSUSE:Factory checked in at 2022-11-11 14:36:14
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/obs-service-tar_scm (Old)
and /work/SRC/openSUSE:Factory/.obs-service-tar_scm.new.1597 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "obs-service-tar_scm"
Fri Nov 11 14:36:14 2022 rev:74 rq:1035037 version:0.10.34.1667392550.026bf0e
Changes:
--------
--- /work/SRC/openSUSE:Factory/obs-service-tar_scm/obs-service-tar_scm.changes
2022-10-10 18:44:20.430839981 +0200
+++
/work/SRC/openSUSE:Factory/.obs-service-tar_scm.new.1597/obs-service-tar_scm.changes
2022-11-11 14:36:17.830226250 +0100
@@ -1,0 +2,8 @@
+Thu Nov 03 09:09:46 UTC 2022 - [email protected]
+
+- Update to version 0.10.34.1667392550.026bf0e:
+ * Fix testing in GH actions
+ * make linters happy again
+ * new find_latest_signed_commit algorithm
+
+-------------------------------------------------------------------
Old:
----
obs-service-tar_scm-0.10.33.1664344889.48d1960.tar.gz
New:
----
_maintainers
obs-service-tar_scm-0.10.34.1667392550.026bf0e.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ obs-service-tar_scm.spec ++++++
--- /var/tmp/diff_new_pack.M0ZREq/_old 2022-11-11 14:36:18.498230108 +0100
+++ /var/tmp/diff_new_pack.M0ZREq/_new 2022-11-11 14:36:18.502230130 +0100
@@ -119,8 +119,8 @@
%define pkg_name obs-service-tar_scm
Name: %{pkg_name}%{nsuffix}
-%define version_unconverted 0.10.33.1664344889.48d1960
-Version: 0.10.33.1664344889.48d1960
+%define version_unconverted 0.10.34.1667392550.026bf0e
+Version: 0.10.34.1667392550.026bf0e
Release: 0
Summary: An OBS source service: create tar ball from svn/git/hg
License: GPL-2.0-or-later
++++++ PKGBUILD ++++++
--- /var/tmp/diff_new_pack.M0ZREq/_old 2022-11-11 14:36:18.538230338 +0100
+++ /var/tmp/diff_new_pack.M0ZREq/_new 2022-11-11 14:36:18.546230385 +0100
@@ -1,5 +1,5 @@
pkgname=obs-service-tar_scm
-pkgver=0.10.33.1664344889.48d1960
+pkgver=0.10.34.1667392550.026bf0e
pkgrel=0
pkgdesc="Source Service for the OpenSUSE Build Service (OBS)"
arch=('any')
++++++ _service ++++++
--- /var/tmp/diff_new_pack.M0ZREq/_old 2022-11-11 14:36:18.586230615 +0100
+++ /var/tmp/diff_new_pack.M0ZREq/_new 2022-11-11 14:36:18.594230662 +0100
@@ -9,6 +9,8 @@
<param name="extract">dist/obs-service-tar_scm.spec</param>
<param name="versionrewrite-pattern">v(.*)</param>
<param name="revision">master</param>
+ <param name="latest-signed-tag">true</param>
+ <param name="maintainers-asc">_maintainers</param>
</service>
<service name="set_version" mode="disabled">
<param name="basename">obs-service-tar_scm</param>
++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.M0ZREq/_old 2022-11-11 14:36:18.618230800 +0100
+++ /var/tmp/diff_new_pack.M0ZREq/_new 2022-11-11 14:36:18.618230800 +0100
@@ -9,6 +9,6 @@
<param
name="url">git://github.com/openSUSE/obs-service-tar_scm.git</param>
<param
name="changesrevision">85bfc3fabb06212b49a389afb3310bfbf2996913</param></service><service
name="tar_scm">
<param
name="url">https://github.com/openSUSE/obs-service-tar_scm.git</param>
- <param
name="changesrevision">48d1960591bf0d1a45b77da659399a9395427d28</param></service></servicedata>
+ <param
name="changesrevision">026bf0e08d904f092e7dbdb893bd204efc7f59c9</param></service></servicedata>
(No newline at EOF)
++++++ debian.dsc ++++++
--- /var/tmp/diff_new_pack.M0ZREq/_old 2022-11-11 14:36:18.634230893 +0100
+++ /var/tmp/diff_new_pack.M0ZREq/_new 2022-11-11 14:36:18.638230916 +0100
@@ -1,6 +1,6 @@
Format: 1.0
Source: obs-service-tar-scm
-Version: 0.10.33.1664344889.48d1960
+Version: 0.10.34.1667392550.026bf0e
Provides: obs-service-obs_scm, obs-service-tar
Binary: obs-service-tar_scm
Maintainer: Adrian Schroeter <[email protected]>
++++++ obs-service-tar_scm-0.10.33.1664344889.48d1960.tar.gz ->
obs-service-tar_scm-0.10.34.1667392550.026bf0e.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/obs-service-tar_scm-0.10.33.1664344889.48d1960/.github/workflows/main.yml
new/obs-service-tar_scm-0.10.34.1667392550.026bf0e/.github/workflows/main.yml
---
old/obs-service-tar_scm-0.10.33.1664344889.48d1960/.github/workflows/main.yml
2022-09-28 08:01:29.000000000 +0200
+++
new/obs-service-tar_scm-0.10.34.1667392550.026bf0e/.github/workflows/main.yml
2022-11-02 13:35:50.000000000 +0100
@@ -25,14 +25,14 @@
# Steps represent a sequence of tasks that will be executed as part of the
job
steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can
access it
- - uses: actions/checkout@v2
+ - uses: actions/checkout@v3
- name: Install required dpkg packages
run: sudo apt-get install libxslt1-dev bzr subversion mercurial
- name: Generate default locales
run: |
- sudo locale-gen "en_US.UTF-8"
+ sudo apt-get update && sudo apt-get install tzdata locales -y &&
sudo locale-gen "en_US.UTF-8"
sudo dpkg-reconfigure locales
sudo update-locale "LANG=en_US.UTF-8"
sudo update-locale "LC_ALL=en_US.UTF-8"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/obs-service-tar_scm-0.10.33.1664344889.48d1960/.pylintrc
new/obs-service-tar_scm-0.10.34.1667392550.026bf0e/.pylintrc
--- old/obs-service-tar_scm-0.10.33.1664344889.48d1960/.pylintrc
2022-09-28 08:01:29.000000000 +0200
+++ new/obs-service-tar_scm-0.10.34.1667392550.026bf0e/.pylintrc
2022-11-02 13:35:50.000000000 +0100
@@ -84,7 +84,16 @@
# a feature request to improve pylint in this respect:
# https://github.com/PyCQA/pylint/issues/246
-disable=import-star-module-level,old-octal-literal,oct-method,print-statement,unpacking-in-except,parameter-unpacking,backtick,old-raise-syntax,old-ne-operator,long-suffix,dict-view-method,dict-iter-method,metaclass-assignment,next-method-called,raising-string,indexing-exception,raw_input-builtin,long-builtin,file-builtin,execfile-builtin,coerce-builtin,cmp-builtin,buffer-builtin,basestring-builtin,apply-builtin,filter-builtin-not-iterating,using-cmp-argument,useless-suppression,range-builtin-not-iterating,suppressed-message,no-absolute-import,old-division,cmp-method,reload-builtin,zip-builtin-not-iterating,intern-builtin,unichr-builtin,reduce-builtin,standarderror-builtin,unicode-builtin,xrange-builtin,coerce-method,delslice-method,getslice-method,setslice-method,input-builtin,round-builtin,hex-method,nonzero-method,map-builtin-not-iterating,missing-docstring,old-style-class,bad-whitespace,consider-using-with,consider-using-f-string,duplicate-code
+# The following disables habe been activated to make most combinations
+# of pylint/python versions working again.
+#
+# * E0012 - bad-option-value
+# * R0022 - useless-option-value
+# * W0012 - unknown-option-value
+# * E0015 - unrecognized-option
+
+
+disable=import-star-module-level,old-octal-literal,oct-method,print-statement,unpacking-in-except,parameter-unpacking,backtick,old-raise-syntax,old-ne-operator,long-suffix,dict-view-method,dict-iter-method,metaclass-assignment,next-method-called,raising-string,indexing-exception,raw_input-builtin,long-builtin,file-builtin,execfile-builtin,coerce-builtin,cmp-builtin,buffer-builtin,basestring-builtin,apply-builtin,filter-builtin-not-iterating,using-cmp-argument,useless-suppression,range-builtin-not-iterating,suppressed-message,no-absolute-import,old-division,cmp-method,reload-builtin,zip-builtin-not-iterating,intern-builtin,unichr-builtin,reduce-builtin,standarderror-builtin,unicode-builtin,xrange-builtin,coerce-method,delslice-method,getslice-method,setslice-method,input-builtin,round-builtin,hex-method,nonzero-method,map-builtin-not-iterating,missing-docstring,old-style-class,bad-whitespace,consider-using-with,consider-using-f-string,duplicate-code,R0022,W0012,E0012,E0015
[REPORTS]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/obs-service-tar_scm-0.10.33.1664344889.48d1960/.pylinttestsrc
new/obs-service-tar_scm-0.10.34.1667392550.026bf0e/.pylinttestsrc
--- old/obs-service-tar_scm-0.10.33.1664344889.48d1960/.pylinttestsrc
2022-09-28 08:01:29.000000000 +0200
+++ new/obs-service-tar_scm-0.10.34.1667392550.026bf0e/.pylinttestsrc
2022-11-02 13:35:50.000000000 +0100
@@ -84,7 +84,15 @@
# a feature request to improve pylint in this respect:
# https://github.com/PyCQA/pylint/issues/246
-disable=import-star-module-level,old-octal-literal,oct-method,print-statement,unpacking-in-except,parameter-unpacking,backtick,old-raise-syntax,old-ne-operator,long-suffix,dict-view-method,dict-iter-method,metaclass-assignment,next-method-called,raising-string,indexing-exception,raw_input-builtin,long-builtin,file-builtin,execfile-builtin,coerce-builtin,cmp-builtin,buffer-builtin,basestring-builtin,apply-builtin,filter-builtin-not-iterating,using-cmp-argument,useless-suppression,range-builtin-not-iterating,suppressed-message,no-absolute-import,old-division,cmp-method,reload-builtin,zip-builtin-not-iterating,intern-builtin,unichr-builtin,reduce-builtin,standarderror-builtin,unicode-builtin,xrange-builtin,coerce-method,delslice-method,getslice-method,setslice-method,input-builtin,round-builtin,hex-method,nonzero-method,map-builtin-not-iterating,missing-docstring,old-style-class,bad-whitespace,duplicate-code,too-many-public-methods,protected-access,too-many-locals,consider-using-with,c
onsider-using-f-string,super-with-arguments
+# The following disables habe been activated to make most combinations
+# of pylint/python versions working again.
+#
+# * E0012 - bad-option-value
+# * R0022 - useless-option-value
+# * W0012 - unknown-option-value
+# * E0015 - unrecognized-option
+
+disable=import-star-module-level,old-octal-literal,oct-method,print-statement,unpacking-in-except,parameter-unpacking,backtick,old-raise-syntax,old-ne-operator,long-suffix,dict-view-method,dict-iter-method,metaclass-assignment,next-method-called,raising-string,indexing-exception,raw_input-builtin,long-builtin,file-builtin,execfile-builtin,coerce-builtin,cmp-builtin,buffer-builtin,basestring-builtin,apply-builtin,filter-builtin-not-iterating,using-cmp-argument,useless-suppression,range-builtin-not-iterating,suppressed-message,no-absolute-import,old-division,cmp-method,reload-builtin,zip-builtin-not-iterating,intern-builtin,unichr-builtin,reduce-builtin,standarderror-builtin,unicode-builtin,xrange-builtin,coerce-method,delslice-method,getslice-method,setslice-method,input-builtin,round-builtin,hex-method,nonzero-method,map-builtin-not-iterating,missing-docstring,old-style-class,bad-whitespace,duplicate-code,too-many-public-methods,protected-access,too-many-locals,consider-using-with,c
onsider-using-f-string,super-with-arguments,E0012,R0022,W0012,E0015
[REPORTS]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/obs-service-tar_scm-0.10.33.1664344889.48d1960/TarSCM/helpers.py
new/obs-service-tar_scm-0.10.34.1667392550.026bf0e/TarSCM/helpers.py
--- old/obs-service-tar_scm-0.10.33.1664344889.48d1960/TarSCM/helpers.py
2022-09-28 08:01:29.000000000 +0200
+++ new/obs-service-tar_scm-0.10.34.1667392550.026bf0e/TarSCM/helpers.py
2022-11-02 13:35:50.000000000 +0100
@@ -65,8 +65,9 @@
return (proc.returncode, output)
def safe_run(self, cmd, cwd, interactive=False):
- """Execute the command cmd in the working directory cwd and check
return
- value. If the command returns non-zero raise a SystemExit exception.
+ """Execute the command cmd in the working directory cwd and check
+ return value. If the command returns non-zero raise a SystemExit
+ exception.
"""
result = self.run_cmd(cmd, cwd, interactive, raisesysexit=True)
return result
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/obs-service-tar_scm-0.10.33.1664344889.48d1960/TarSCM/scm/git.py
new/obs-service-tar_scm-0.10.34.1667392550.026bf0e/TarSCM/scm/git.py
--- old/obs-service-tar_scm-0.10.33.1664344889.48d1960/TarSCM/scm/git.py
2022-09-28 08:01:29.000000000 +0200
+++ new/obs-service-tar_scm-0.10.34.1667392550.026bf0e/TarSCM/scm/git.py
2022-11-02 13:35:50.000000000 +0100
@@ -60,7 +60,7 @@
"\033[0m")
if self.args.latest_signed_commit:
- self.revision = self.find_latest_signed_commit()
+ self.revision = self.find_latest_signed_commit('HEAD')
if not self.revision:
sys.exit("\033[31mNo signed commit found!"
"\033[0m")
@@ -505,42 +505,90 @@
# Deny by default, might be local path
return False
- def find_latest_signed_commit(self):
- result = self.helpers.safe_run(
- ['git', 'log', '--pretty=format:%H %G? %h %D', "--topo-order"],
- cwd=self.clone_dir)
-
- revision = None
-
- lines = result[1].split("\n")
- while lines:
- line = lines.pop(0)
- commit = line.split(" ", 3)
- logging.debug("Commit: %s - %s", commit[0], commit[1])
- if re.match("^(G|U)$", commit[1]):
- revision = commit[0]
- logging.debug("Found signed commit: %r", commit)
- lines[:0] = line
-
- while not self._parent_tag and lines:
- tline = lines.pop(0)
- commit = tline.split(" ", 3)
- if len(commit) > 3:
- ptg = search_tags(commit[3], 1)
- if ptg:
- self._parent_tag = ptg[0]
-
- if self._parent_tag:
- logging.debug("Found parent tag: %s", self._parent_tag)
+ def find_latest_signed_commit(self, commit):
+ if not commit:
+ commit = 'HEAD'
+ cmd = ['git', 'rev-list', '-n1', commit]
+ result = self.helpers.safe_run(cmd, cwd=self.clone_dir)
+ commit = result[1].rstrip()
+
+ while commit:
+ parents = self.get_parents(commit)
+ (commit, c_ok) = self.check_commit(commit, parents)
+ if c_ok:
+ return commit
+ return None
+
+ def check_commit(self, current_commit, parents):
+ # pylint: disable=R0911,R0912
+ left_parent = None
+ if parents:
+ left_parent = parents[0]
+ right_parent = None
+ if len(parents) > 1:
+ right_parent = parents[1]
+ # skip octopus merges and proceed with left parent
+ if len(parents) > 2:
+ return (left_parent, 0)
+ if not current_commit:
+ return ('', 0)
+
+ cmd = ['git', 'verify-commit', current_commit]
+ result = self.helpers.run_cmd(cmd, cwd=self.clone_dir)
+ if not result[0]:
+ return (current_commit, 1)
+
+ if right_parent:
+ c_ok = self.check_commit(
+ current_commit,
+ [right_parent])
+ if c_ok[1]:
+ parents = self.get_parents(left_parent)
+ if len(parents) > 1:
+ mie = self.merge_is_empty(current_commit)
+ if mie:
+ c_ok = self.check_commit(
+ current_commit,
+ [left_parent])
+ return (current_commit, c_ok[1])
else:
- logging.debug("No parent tag found")
-
- break
-
- if not revision:
- logging.debug("No signed commit found")
-
- return revision
+ c_ok = self.check_commit(
+ current_commit,
+ [left_parent])
+ if c_ok[1]:
+ return (current_commit, 1)
+ elif left_parent:
+ parents = self.get_parents(left_parent)
+ if len(parents) > 1:
+ c_ok = self.check_commit(current_commit, parents)
+ if c_ok[1]:
+ return (left_parent, 1)
+ else:
+ cmd = ['git', 'verify-commit', left_parent]
+ result = self.helpers.run_cmd(cmd, cwd=self.clone_dir)
+ if not result[0]:
+ return (left_parent, 1)
+
+ return (left_parent, 0)
+
+ def merge_is_empty(self, sha1):
+ cmd = ['git', 'diff-tree', '--cc', sha1]
+ result = self.helpers.safe_run(cmd, cwd=self.clone_dir)
+ lines = result[1].split("\n")
+ if lines[1]:
+ return 0
+ return 1
+
+ def get_parents(self, sha1):
+ cmd = ['git', 'rev-list', '--parents', '-n', '1', sha1]
+ result = self.helpers.safe_run(cmd, cwd=self.clone_dir)
+ parents = result[1].rstrip().split(" ")
+ fcm = parents.pop(0)
+ if fcm != sha1:
+ raise Exception("First commit %s no equal sha1 %s" % (fcm, sha1))
+ if parents:
+ return parents
+ return []
def find_latest_signed_tag(self):
revision = None
Binary files
old/obs-service-tar_scm-0.10.33.1664344889.48d1960/tests/fixtures/GitTests/test_find_valid_commit/fixtures.tar
and
new/obs-service-tar_scm-0.10.34.1667392550.026bf0e/tests/fixtures/GitTests/test_find_valid_commit/fixtures.tar
differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/obs-service-tar_scm-0.10.33.1664344889.48d1960/tests/gitfixtures.py
new/obs-service-tar_scm-0.10.34.1667392550.026bf0e/tests/gitfixtures.py
--- old/obs-service-tar_scm-0.10.33.1664344889.48d1960/tests/gitfixtures.py
2022-09-28 08:01:29.000000000 +0200
+++ new/obs-service-tar_scm-0.10.34.1667392550.026bf0e/tests/gitfixtures.py
2022-11-02 13:35:50.000000000 +0100
@@ -16,6 +16,14 @@
def init(self):
self.user_name = 'test'
self.user_email = '[email protected]'
+
+ tmpdir = os.path.join(os.path.dirname(
+ os.path.abspath(__file__)), 'tmp')
+ gitconfig = os.path.join(tmpdir, '.gitconfig')
+ os.environ["GIT_CONFIG_GLOBAL"] = gitconfig
+ self.safe_run('config --global protocol.file.allow always')
+ self.safe_run('config --global commit.gpgsign false')
+
self.create_repo(self.repo_path)
self.wdir = self.repo_path
self.submodules_path = self.container_dir + '/submodules'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/obs-service-tar_scm-0.10.33.1664344889.48d1960/tests/gittests.py
new/obs-service-tar_scm-0.10.34.1667392550.026bf0e/tests/gittests.py
--- old/obs-service-tar_scm-0.10.33.1664344889.48d1960/tests/gittests.py
2022-09-28 08:01:29.000000000 +0200
+++ new/obs-service-tar_scm-0.10.34.1667392550.026bf0e/tests/gittests.py
2022-11-02 13:35:50.000000000 +0100
@@ -7,6 +7,7 @@
import tarfile
import shutil
import io
+import inspect
try:
from unittest import mock
@@ -430,3 +431,133 @@
status = fix.safe_run('status -s')
os.chdir(cwd)
self.assertTrue(status[0] == b' M file.4\n?? test.txt\n')
+
+ def test_find_valid_commit(self):
+ cln = self.__class__.__name__
+ fnn = inspect.stack()[0][3]
+ basedir = os.path.abspath(os.path.dirname(__file__))
+ tar_path = os.path.join(basedir, 'fixtures', cln, fnn, 'fixtures.tar')
+ if not os.path.isfile(tar_path):
+ raise AssertionError("File does not exist: %s" % tar_path)
+ basedir = os.path.abspath(os.path.join(os.getcwd(),'..'))
+ org_gnupghome = os.getenv('GNUPGHOME')
+ os.environ["GNUPGHOME"] = os.path.join(basedir, '.gnupg')
+ with tarfile.open(tar_path, "r") as tar:
+ tar.extractall(basedir)
+
+ # prepare test
+ f_args = FakeCli()
+ f_tasks = FakeTasks()
+ git = Git(f_args, f_tasks)
+
+ self.assertEqual(git.merge_is_empty('181fb87'), 0)
+ self.assertEqual(git.merge_is_empty('62368a6'), 1)
+ self.assertEqual(git.merge_is_empty('79880ce'), 1)
+ self.assertEqual(git.merge_is_empty('d4d309f'), 1)
+ self.assertEqual(git.merge_is_empty('2169a75'), 1)
+ self.assertEqual(git.merge_is_empty('b678c16'), 1)
+
+ expected = [
+ [
+ '',
+ '62368a6718a739b89d1d3831cb1305bfc0792a81'
+ ],
+ [
+ '62368a6718a739b89d1d3831cb1305bfc0792a81',
+ '62368a6718a739b89d1d3831cb1305bfc0792a81'
+ ],
+ [
+ '1c2319e4a1e631fbe8b5903eb8df3c9edbd38ac7',
+ '1c2319e4a1e631fbe8b5903eb8df3c9edbd38ac7'
+ ],
+ [
+ '79880ce4f6726d95c6efafced72d997ee712136a',
+ '79880ce4f6726d95c6efafced72d997ee712136a'
+ ],
+ [
+ 'f72f7bf1612102aa0cbb37a8d2feb85279b76cfa',
+ 'f72f7bf1612102aa0cbb37a8d2feb85279b76cfa'
+ ],
+ [
+ 'da3cd3b114c995a53fd5eb41a4366c6a1f067b53',
+ 'da3cd3b114c995a53fd5eb41a4366c6a1f067b53'
+ ],
+ [
+ 'fb54afb594a0e27dc4047da8ddf2adbe8af60bb5',
+ '2169a7524bb39ba9e0e619ec41f50132c1075a5c'
+ ],
+ [
+ 'd4d309f876b927e9816ee0fce439c082d316c6aa',
+ '2169a7524bb39ba9e0e619ec41f50132c1075a5c'
+ ],
+ [
+ '12756203831dcf056b7bc907e516b3ab4b2eae87',
+ '12756203831dcf056b7bc907e516b3ab4b2eae87'
+ ],
+ [
+ '8ae3f352b1e1a08a3e5c696891014b11379c4567',
+ '8ae3f352b1e1a08a3e5c696891014b11379c4567'
+ ],
+ [
+ '82d3064bce8b38956956bbe3130495bd33502cb5',
+ '2169a7524bb39ba9e0e619ec41f50132c1075a5c'
+ ],
+ [
+ '2169a7524bb39ba9e0e619ec41f50132c1075a5c',
+ '2169a7524bb39ba9e0e619ec41f50132c1075a5c'
+ ],
+ [
+ '4d1b74ff1c753843a86310ebb7a14692b30892ad',
+ '4d1b74ff1c753843a86310ebb7a14692b30892ad'
+ ],
+ [
+ '29305458b0dd532c1465cd6bec86aec5f62bd8bb',
+ '29305458b0dd532c1465cd6bec86aec5f62bd8bb'
+ ],
+ [
+ 'd1e4164d1bd155bec8ed9370698c8faa40531d68',
+ 'd1e4164d1bd155bec8ed9370698c8faa40531d68'
+ ],
+ [
+ '05e017515ae51d6102908399b08a62b69c007002',
+ '05e017515ae51d6102908399b08a62b69c007002'
+ ],
+ [
+ 'b678c1654d9fb3e918e4a2147e7b7eb027176910',
+ None
+ ],
+ [
+ 'd4e47fe91df3e70621ee17e79c103c25ac9bdd57',
+ None
+ ],
+ [
+ 'd0d8815d51145d29b0dc7967e203df804f18f904',
+ None
+ ],
+ [
+ '7627d9029be2f115c2a34af9e0d5e16698e090ca',
+ None
+ ],
+ [
+ 'a1a8e5a26e69b31b53dc74f7bdf37e20dc9e0167',
+ None
+ ],
+ [
+ '68cfb194866c2034fa41eb8a1d329e3bc1dc5037',
+ None
+ ],
+ [
+ '6640eafee928cb9bb44065953ffcfb8355e3c88e',
+ None
+ ],
+ ]
+
+ for case in expected:
+ rev = git.find_latest_signed_commit(case[0])
+ self.assertEqual(rev, case[1])
+
+ empty=git.merge_is_empty('181fb87')
+ self.assertEqual(empty, 0)
+
+ if org_gnupghome:
+ os.environ["GNUPGHOME"] = org_gnupghome
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/obs-service-tar_scm-0.10.33.1664344889.48d1960/tests/tasks.py
new/obs-service-tar_scm-0.10.34.1667392550.026bf0e/tests/tasks.py
--- old/obs-service-tar_scm-0.10.33.1664344889.48d1960/tests/tasks.py
2022-09-28 08:01:29.000000000 +0200
+++ new/obs-service-tar_scm-0.10.34.1667392550.026bf0e/tests/tasks.py
2022-11-02 13:35:50.000000000 +0100
@@ -7,6 +7,7 @@
import io
try:
+ # pylint: disable=ungrouped-imports
from unittest.mock import MagicMock
except ImportError:
from mock import MagicMock
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/obs-service-tar_scm-0.10.33.1664344889.48d1960/tests/test.py
new/obs-service-tar_scm-0.10.34.1667392550.026bf0e/tests/test.py
--- old/obs-service-tar_scm-0.10.33.1664344889.48d1960/tests/test.py
2022-09-28 08:01:29.000000000 +0200
+++ new/obs-service-tar_scm-0.10.34.1667392550.026bf0e/tests/test.py
2022-11-02 13:35:50.000000000 +0100
@@ -70,6 +70,7 @@
to_run = {}
for arg in sys.argv[1:]:
rmatch = re.match('^/(.+)/$', arg)
+ # pylint: disable=unnecessary-lambda-assignment
if rmatch:
# regexp mode
regexp = rmatch.group(1)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/obs-service-tar_scm-0.10.33.1664344889.48d1960/tests/utils.py
new/obs-service-tar_scm-0.10.34.1667392550.026bf0e/tests/utils.py
--- old/obs-service-tar_scm-0.10.33.1664344889.48d1960/tests/utils.py
2022-09-28 08:01:29.000000000 +0200
+++ new/obs-service-tar_scm-0.10.34.1667392550.026bf0e/tests/utils.py
2022-11-02 13:35:50.000000000 +0100
@@ -8,6 +8,7 @@
import io
import shutil
import subprocess
+import sys
import six
@@ -22,12 +23,32 @@
os.makedirs(path)
os.chdir(cwd)
+def check_locale(loc):
+ try:
+ aloc_tmp = subprocess.check_output(['locale', '-a'])
+ except AttributeError:
+ aloc_tmp, _ = subprocess.Popen(['locale', '-a'],
+ stdout=subprocess.PIPE,
+ stderr=subprocess.STDOUT).communicate()
+ aloc = {}
+
+ for tloc in aloc_tmp.split(b'\n'):
+ aloc[tloc] = 1
+
+ for tloc in loc:
+ print("Checking .... %s"%tloc, file=sys.stderr)
+ try:
+ if aloc[tloc.encode()]:
+ return tloc
+ except KeyError:
+ pass
+
+ return 'C'
def run_cmd(cmd):
- os.putenv('LANG', 'C.utf-8')
- os.putenv('LC_ALL', 'C.utf-8')
- os.environ['LANG'] = 'C.utf-8'
- os.environ['LC_ALL'] = 'C.utf-8'
+ use_locale = check_locale(["en_US.utf8", 'C.utf8'])
+ os.environ['LANG'] = use_locale
+ os.environ['LC_ALL'] = use_locale
if six.PY3:
cmd = cmd.encode('UTF-8')
proc = subprocess.Popen(