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-01-14 23:12:46
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/obs-service-tar_scm (Old)
 and      /work/SRC/openSUSE:Factory/.obs-service-tar_scm.new.1892 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "obs-service-tar_scm"

Fri Jan 14 23:12:46 2022 rev:71 rq:945843 version:0.10.30.1641990734.bdad8f9

Changes:
--------
--- /work/SRC/openSUSE:Factory/obs-service-tar_scm/obs-service-tar_scm.changes  
2021-12-31 13:44:29.537267832 +0100
+++ 
/work/SRC/openSUSE:Factory/.obs-service-tar_scm.new.1892/obs-service-tar_scm.changes
        2022-01-14 23:13:23.302637505 +0100
@@ -1,0 +2,15 @@
+Wed Jan 12 12:45:18 UTC 2022 - fschrei...@suse.com
+
+- Update to version 0.10.30.1641990734.bdad8f9:
+  * fixes for python2.7 compatibility
+  * fix test cases
+  * fix various linter problems with pylint 2.11.1
+  * disable consider-using-f-string in pylint
+  * added TC for _stash_pop_required
+  * assertTarIsDeeply now more verbose in case of failure
+  * remove tearDown/Trace from testenv.py
+  * fix regression to keep local changes when running in osc
+  * various fixes to make linter happy
+  * fix tests for python 2.7
+
+-------------------------------------------------------------------

Old:
----
  obs-service-tar_scm-0.10.29.1634038025.85bfc3f.tar.gz

New:
----
  obs-service-tar_scm-0.10.30.1641990734.bdad8f9.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ obs-service-tar_scm.spec ++++++
--- /var/tmp/diff_new_pack.DsKg7K/_old  2022-01-14 23:13:24.826638487 +0100
+++ /var/tmp/diff_new_pack.DsKg7K/_new  2022-01-14 23:13:24.830638490 +0100
@@ -1,7 +1,7 @@
 #
 # spec file
 #
-# Copyright (c) 2021 SUSE LLC
+# Copyright (c) 2022 SUSE LLC
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -119,8 +119,8 @@
 
 %define pkg_name obs-service-tar_scm
 Name:           %{pkg_name}%{nsuffix}
-%define version_unconverted 0.10.29.1634038025.85bfc3f
-Version:        0.10.29.1634038025.85bfc3f
+%define version_unconverted 0.10.30.1641990734.bdad8f9
+Version:        0.10.30.1641990734.bdad8f9
 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.DsKg7K/_old  2022-01-14 23:13:24.858638508 +0100
+++ /var/tmp/diff_new_pack.DsKg7K/_new  2022-01-14 23:13:24.862638510 +0100
@@ -1,5 +1,5 @@
 pkgname=obs-service-tar_scm
-pkgver=0.10.29.1634038025.85bfc3f
+pkgver=0.10.30.1641990734.bdad8f9
 pkgrel=0
 pkgdesc="Source Service for the OpenSUSE Build Service (OBS)"
 arch=('any')

++++++ _service ++++++
--- /var/tmp/diff_new_pack.DsKg7K/_old  2022-01-14 23:13:24.890638528 +0100
+++ /var/tmp/diff_new_pack.DsKg7K/_new  2022-01-14 23:13:24.890638528 +0100
@@ -1,6 +1,6 @@
 <services>
   <service name="tar_scm" mode="disabled">
-    <param name="url">git://github.com/openSUSE/obs-service-tar_scm.git</param>
+    <param 
name="url">https://github.com/openSUSE/obs-service-tar_scm.git</param>
     <param name="scm">git</param>
     <param name="exclude">.git</param>
     <param name="version">git-master</param>

++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.DsKg7K/_old  2022-01-14 23:13:24.910638541 +0100
+++ /var/tmp/diff_new_pack.DsKg7K/_new  2022-01-14 23:13:24.914638544 +0100
@@ -7,6 +7,8 @@
           <param 
name="changesrevision">9e8b88b088778c44db56781e6a908a0e82e27cf2</param></service>
 <service name="tar_scm">
                 <param 
name="url">git://github.com/openSUSE/obs-service-tar_scm.git</param>
-              <param 
name="changesrevision">85bfc3fabb06212b49a389afb3310bfbf2996913</param></service></servicedata>
+              <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">bdad8f941c0455ea30970aaee53b9e47ba26c93c</param></service></servicedata>
 (No newline at EOF)
 

++++++ debian.dsc ++++++
--- /var/tmp/diff_new_pack.DsKg7K/_old  2022-01-14 23:13:24.930638554 +0100
+++ /var/tmp/diff_new_pack.DsKg7K/_new  2022-01-14 23:13:24.934638557 +0100
@@ -1,6 +1,6 @@
 Format: 1.0
 Source: obs-service-tar-scm
-Version: 0.10.29.1634038025.85bfc3f
+Version: 0.10.30.1641990734.bdad8f9
 Provides: obs-service-obs_scm, obs-service-tar
 Binary: obs-service-tar_scm
 Maintainer: Adrian Schroeter <adr...@suse.de>

++++++ obs-service-tar_scm-0.10.29.1634038025.85bfc3f.tar.gz -> 
obs-service-tar_scm-0.10.30.1641990734.bdad8f9.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/obs-service-tar_scm-0.10.29.1634038025.85bfc3f/.pylinttestsrc 
new/obs-service-tar_scm-0.10.30.1641990734.bdad8f9/.pylinttestsrc
--- old/obs-service-tar_scm-0.10.29.1634038025.85bfc3f/.pylinttestsrc   
2021-10-12 13:27:05.000000000 +0200
+++ new/obs-service-tar_scm-0.10.30.1641990734.bdad8f9/.pylinttestsrc   
2022-01-12 13:32:14.000000000 +0100
@@ -84,7 +84,7 @@
 #       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
+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
 
 
 [REPORTS]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/obs-service-tar_scm-0.10.29.1634038025.85bfc3f/KankuFile 
new/obs-service-tar_scm-0.10.30.1641990734.bdad8f9/KankuFile
--- old/obs-service-tar_scm-0.10.29.1634038025.85bfc3f/KankuFile        
2021-10-12 13:27:05.000000000 +0200
+++ new/obs-service-tar_scm-0.10.30.1641990734.bdad8f9/KankuFile        
2022-01-12 13:32:14.000000000 +0100
@@ -57,4 +57,4 @@
         # test python3
         - make -C /tmp/kanku clean check3
         # test python2
-        - make -C /tmp/kanku clean check2
+        - make -C /tmp/kanku clean test2
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/obs-service-tar_scm-0.10.29.1634038025.85bfc3f/TarSCM/helpers.py 
new/obs-service-tar_scm-0.10.30.1641990734.bdad8f9/TarSCM/helpers.py
--- old/obs-service-tar_scm-0.10.29.1634038025.85bfc3f/TarSCM/helpers.py        
2021-10-12 13:27:05.000000000 +0200
+++ new/obs-service-tar_scm-0.10.30.1641990734.bdad8f9/TarSCM/helpers.py        
2022-01-12 13:32:14.000000000 +0100
@@ -4,6 +4,7 @@
 import os
 import logging
 import subprocess
+import io
 
 # python3 renaming of StringIO
 try:
@@ -12,6 +13,17 @@
     from io import StringIO
 
 
+def file_write_legacy(fname, string, *args):
+    '''function to write string to file python 2/3 compatible'''
+    mode = 'w'
+    if args:
+        mode = args[0]
+
+    with io.open(fname, mode, encoding='utf-8') as outfile:
+        # 'str().encode().decode()' is required for pyhton 2/3 compatibility
+        outfile.write(str(string).encode('UTF-8').decode('UTF-8'))
+
+
 class Helpers():
     def run_cmd(self, cmd, cwd, interactive=False, raisesysexit=False):
         """
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/obs-service-tar_scm-0.10.29.1634038025.85bfc3f/TarSCM/tasks.py 
new/obs-service-tar_scm-0.10.30.1641990734.bdad8f9/TarSCM/tasks.py
--- old/obs-service-tar_scm-0.10.29.1634038025.85bfc3f/TarSCM/tasks.py  
2021-10-12 13:27:05.000000000 +0200
+++ new/obs-service-tar_scm-0.10.30.1641990734.bdad8f9/TarSCM/tasks.py  
2022-01-12 13:32:14.000000000 +0100
@@ -13,11 +13,12 @@
 import re
 import locale
 import json
+import io
 import yaml
 
 import TarSCM.scm
 import TarSCM.archive
-from TarSCM.helpers import Helpers
+from TarSCM.helpers import Helpers, file_write_legacy
 from TarSCM.changes import Changes
 from TarSCM.exceptions import OptionsError
 
@@ -67,7 +68,7 @@
 
         if args.appimage:
             # we read the SCM config from appimage.yml
-            with open('appimage.yml', encoding='utf-8') as filehandle:
+            with io.open('appimage.yml', encoding='utf-8') as filehandle:
                 self.data_map = yaml.safe_load(filehandle)
             args.use_obs_scm = True
             build_scms = ()
@@ -87,7 +88,7 @@
         elif args.snapcraft:
             # we read the SCM config from snapcraft.yaml instead
             # getting it via parameters
-            with open('snapcraft.yaml', encoding='utf-8') as filehandle:
+            with io.open('snapcraft.yaml', encoding='utf-8') as filehandle:
                 self.data_map = yaml.safe_load(filehandle)
             args.use_obs_scm = True
             # run for each part an own task
@@ -126,9 +127,8 @@
             # we prefix our own here to be sure to not overwrite user files,
             # if he is using us in "disabled" mode
             new_file = args.outdir + '/_service:snapcraft:snapcraft.yaml'
-            with open(new_file, 'w', encoding='utf-8') as outfile:
-                outfile.write(yaml.dump(self.data_map,
-                                        default_flow_style=False))
+            yml_str = yaml.dump(self.data_map, default_flow_style=False)
+            file_write_legacy(new_file, yml_str)
 
         # execute also download_files for downloading single sources
         if args.snapcraft or args.appimage:
@@ -150,7 +150,7 @@
             return args
 
         # is it a branch request?
-        with open("_branch_request", "r", encoding='utf-8') as ofh:
+        with io.open("_branch_request", "r", encoding='utf-8') as ofh:
             dat = json.load(ofh)
         if dat.get('object_kind') == 'merge_request':
             # gitlab merge request
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/obs-service-tar_scm-0.10.29.1634038025.85bfc3f/tests/archiveobscpiotestcases.py
 
new/obs-service-tar_scm-0.10.30.1641990734.bdad8f9/tests/archiveobscpiotestcases.py
--- 
old/obs-service-tar_scm-0.10.29.1634038025.85bfc3f/tests/archiveobscpiotestcases.py
 2021-10-12 13:27:05.000000000 +0200
+++ 
new/obs-service-tar_scm-0.10.30.1641990734.bdad8f9/tests/archiveobscpiotestcases.py
 2022-01-12 13:32:14.000000000 +0100
@@ -6,6 +6,7 @@
 import inspect
 import shutil
 import unittest
+import io
 import six
 import yaml
 
@@ -62,7 +63,7 @@
         infofile = os.path.join(outdir, bname + ".obsinfo")
         self.assertTrue(os.path.isfile(cpiofile))
         self.assertTrue(os.path.isfile(infofile))
-        with open(infofile, 'r', encoding='UTF-8') as fhl:
+        with io.open(infofile, 'r', encoding='UTF-8') as fhl:
             data = yaml.safe_load(fhl)
         self.assertDictEqual(
             data, {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/obs-service-tar_scm-0.10.29.1634038025.85bfc3f/tests/fake_classes.py 
new/obs-service-tar_scm-0.10.30.1641990734.bdad8f9/tests/fake_classes.py
--- old/obs-service-tar_scm-0.10.29.1634038025.85bfc3f/tests/fake_classes.py    
2021-10-12 13:27:05.000000000 +0200
+++ new/obs-service-tar_scm-0.10.30.1641990734.bdad8f9/tests/fake_classes.py    
2022-01-12 13:32:14.000000000 +0100
@@ -8,7 +8,7 @@
     keyring_passphrase = ''
     maintainers_asc = None
     def __init__(self, match_tag=False):
-        super(FakeCli, self).__init__()  # pylint: disable=R1725
+        super(FakeCli, self).__init__()
         self.match_tag          = match_tag
 
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/obs-service-tar_scm-0.10.29.1634038025.85bfc3f/tests/fixtures.py 
new/obs-service-tar_scm-0.10.30.1641990734.bdad8f9/tests/fixtures.py
--- old/obs-service-tar_scm-0.10.29.1634038025.85bfc3f/tests/fixtures.py        
2021-10-12 13:27:05.000000000 +0200
+++ new/obs-service-tar_scm-0.10.30.1641990734.bdad8f9/tests/fixtures.py        
2022-01-12 13:32:14.000000000 +0100
@@ -3,7 +3,9 @@
 
 import os
 import shutil
+import io
 
+from utils import file_write_legacy
 
 class Fixtures:
 
@@ -118,8 +120,7 @@
             newly_created.append(subdir)
 
         for fname in ('a', subdir + '/b'):
-            with open(fname, 'w', encoding="UTF-8") as fhn:
-                fhn.write(str(new_rev))
+            file_write_legacy(fname, new_rev)
             self.scmlogs.annotate("Wrote %s to %s" % (new_rev, fname))
 
         # we never commit through symlink 'c' but instead see the updated
@@ -155,8 +156,7 @@
 
         new_rev = self.next_commit_rev(wdir)
         fname = 'd'
-        with open(fname, 'w', encoding='UTF-8') as cfh:
-            cfh.write(str(new_rev))
+        file_write_legacy(fname, new_rev)
         self.scmlogs.annotate("Wrote %s to %s" % (new_rev, fname))
         self.safe_run('add .')
         date = self.get_committer_date()
@@ -166,7 +166,7 @@
 
     def touch(self, fname, times=None):
         fpath = os.path.join(self.wdir, fname)
-        with open(fpath, 'a', encoding='UTF-8'):
+        with io.open(fpath, 'a', encoding='UTF-8'):
             os.utime(fname, times)
 
     def remove(self, fname):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/obs-service-tar_scm-0.10.29.1634038025.85bfc3f/tests/gittests.py 
new/obs-service-tar_scm-0.10.30.1641990734.bdad8f9/tests/gittests.py
--- old/obs-service-tar_scm-0.10.29.1634038025.85bfc3f/tests/gittests.py        
2021-10-12 13:27:05.000000000 +0200
+++ new/obs-service-tar_scm-0.10.30.1641990734.bdad8f9/tests/gittests.py        
2022-01-12 13:32:14.000000000 +0100
@@ -6,8 +6,11 @@
 import re
 import tarfile
 import shutil
+import io
 import mock
 
+from utils import file_write_legacy
+
 from tests.githgtests   import GitHgTests
 from tests.gitsvntests  import GitSvnTests
 from tests.gitfixtures  import GitFixtures
@@ -205,7 +208,7 @@
         self.assertTrue('_servicedata' in dirents,
                         '_servicedata in %s' % repr(dirents))
         sdf = os.path.join(self.outdir, '_servicedata')
-        with open(sdf, 'r', encoding='UTF-8') as sdatf:
+        with io.open(sdf, 'r', encoding='UTF-8') as sdatf:
             sdat = sdatf.read()
         expected = (
             r"\s*<servicedata>"
@@ -369,8 +372,7 @@
         repo_path = fix.repo_path
         os.chdir(repo_path)
         os.mkdir("test")
-        with open("test/myfile.txt", 'w', encoding="UTF-8") as file:
-            file.write("just for testing")
+        file_write_legacy("test/myfile.txt", "just for testing")
         fix.safe_run('add test')
         fix.safe_run('commit -m "added tests"')
         fix.safe_run('tag test')
@@ -395,8 +397,7 @@
         test_txt = os.path.join(repo_dir, 'test.txt')
         fix.touch(test_txt)
         file4 = os.path.join(repo_dir, 'file.4')
-        with open(file4, 'a', encoding='UTF-8') as fh4:
-            fh4.write("just for testing")
+        file_write_legacy(file4, "just for testing")
 
         # disable cachedirectory (would not be used with osc by default)
         os.environ['CACHEDIRECTORY'] = ""
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/obs-service-tar_scm-0.10.29.1634038025.85bfc3f/tests/hgfixtures.py 
new/obs-service-tar_scm-0.10.30.1641990734.bdad8f9/tests/hgfixtures.py
--- old/obs-service-tar_scm-0.10.29.1634038025.85bfc3f/tests/hgfixtures.py      
2021-10-12 13:27:05.000000000 +0200
+++ new/obs-service-tar_scm-0.10.30.1641990734.bdad8f9/tests/hgfixtures.py      
2022-01-12 13:32:14.000000000 +0100
@@ -3,7 +3,7 @@
 import os
 
 from fixtures import Fixtures
-from utils    import run_hg
+from utils    import run_hg, file_write_legacy
 
 
 class HgFixtures(Fixtures):
@@ -29,8 +29,8 @@
         os.makedirs(self.repo_path)
         os.chdir(self.repo_path)
         self.safe_run('init')
-        with open('.hg/hgrc', 'w', encoding='UTF-8') as rcf:
-            rcf.write("[ui]\nusername = %s\n" % self.name_and_email)
+        out = "[ui]\nusername = %s\n" % self.name_and_email
+        file_write_legacy('.hg/hgrc', out)
 
         self.wdir = self.repo_path
         print("created repo %s" % self.repo_path)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/obs-service-tar_scm-0.10.29.1634038025.85bfc3f/tests/scmlogs.py 
new/obs-service-tar_scm-0.10.30.1641990734.bdad8f9/tests/scmlogs.py
--- old/obs-service-tar_scm-0.10.29.1634038025.85bfc3f/tests/scmlogs.py 
2021-10-12 13:27:05.000000000 +0200
+++ new/obs-service-tar_scm-0.10.30.1641990734.bdad8f9/tests/scmlogs.py 
2022-01-12 13:32:14.000000000 +0100
@@ -3,6 +3,9 @@
 import glob
 import os
 import tempfile
+import io
+
+from utils import file_write_legacy
 
 
 class ScmInvocationLogs:
@@ -76,12 +79,11 @@
 
     def annotate(self, msg):
         print(msg)
-        with open(self.current_log_path, 'a', encoding="UTF-8") as log:
-            log.write('# ' + msg + "\n")
+        file_write_legacy(self.current_log_path, '# ' + msg + "\n", 'a')
 
     def read(self):
         if not os.path.exists(self.current_log_path):
             return '<no %s log>' % self.scm
-        with open(self.current_log_path, 'r', encoding="UTF-8") as log:
+        with io.open(self.current_log_path, 'r', encoding="UTF-8") as log:
             loglines = log.readlines()
         return loglines
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/obs-service-tar_scm-0.10.29.1634038025.85bfc3f/tests/svnfixtures.py 
new/obs-service-tar_scm-0.10.30.1641990734.bdad8f9/tests/svnfixtures.py
--- old/obs-service-tar_scm-0.10.29.1634038025.85bfc3f/tests/svnfixtures.py     
2021-10-12 13:27:05.000000000 +0200
+++ new/obs-service-tar_scm-0.10.30.1641990734.bdad8f9/tests/svnfixtures.py     
2022-01-12 13:32:14.000000000 +0100
@@ -4,7 +4,7 @@
 import stat
 from datetime import datetime
 
-from utils    import mkfreshdir, quietrun, run_svn
+from utils    import mkfreshdir, quietrun, run_svn, file_write_legacy
 from fixtures import Fixtures
 
 
@@ -37,8 +37,7 @@
         quietrun('svnadmin create ' + self.repo_path)
         # allow revprop changes to explicitly set svn:date
         hook = self.repo_path + '/hooks/pre-revprop-change'
-        with open(hook, 'w', encoding='UTF-8') as cfh:
-            cfh.write("#!/bin/sh\nexit 0;\n")
+        file_write_legacy(hook, "#!/bin/sh\nexit 0;\n")
 
         sta = os.stat(hook)
         os.chmod(hook, sta.st_mode | stat.S_IEXEC)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/obs-service-tar_scm-0.10.29.1634038025.85bfc3f/tests/svntests.py 
new/obs-service-tar_scm-0.10.30.1641990734.bdad8f9/tests/svntests.py
--- old/obs-service-tar_scm-0.10.29.1634038025.85bfc3f/tests/svntests.py        
2021-10-12 13:27:05.000000000 +0200
+++ new/obs-service-tar_scm-0.10.30.1641990734.bdad8f9/tests/svntests.py        
2022-01-12 13:32:14.000000000 +0100
@@ -2,6 +2,7 @@
 
 import os
 import re
+import io
 
 from gitsvntests import GitSvnTests
 from svnfixtures import SvnFixtures
@@ -56,7 +57,8 @@
         dirents = self.assertNumDirents(self.outdir, expected_dirents)
         self.assertTrue('_servicedata' in dirents,
                         '_servicedata in %s' % repr(dirents))
-        with open(os.path.join(self.outdir, '_servicedata')) as sdata:
+        infile = os.path.join(self.outdir, '_servicedata')
+        with io.open(infile, 'r', encoding='UTF-8') as sdata:
             sdat = sdata.read()
         expected = (
             r"<servicedata>"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/obs-service-tar_scm-0.10.29.1634038025.85bfc3f/tests/tartests.py 
new/obs-service-tar_scm-0.10.30.1641990734.bdad8f9/tests/tartests.py
--- old/obs-service-tar_scm-0.10.29.1634038025.85bfc3f/tests/tartests.py        
2021-10-12 13:27:05.000000000 +0200
+++ new/obs-service-tar_scm-0.10.30.1641990734.bdad8f9/tests/tartests.py        
2022-01-12 13:32:14.000000000 +0100
@@ -3,6 +3,8 @@
 
 import os
 
+from utils import file_write_legacy
+
 from tests.tarfixtures    import TarFixtures
 from tests.testenv        import TestEnvironment
 from tests.testassertions import TestAssertions
@@ -26,13 +28,12 @@
         info = os.path.join(wdir, "test.obsinfo")
         print("INFOFILE: '%s'" % info)
         os.chdir(self.pkgdir)
-        with open(info, 'w', encoding='UTF-8') as obsinfo:
-            obsinfo.write(
-                "name: pkgname\n" +
-                "version: 0.1.1\n" +
-                "mtime: 1476683264\n" +
-                "commit: fea6eb5f43841d57424843c591b6c8791367a9e5\n"
-            )
+        out_str = "name: pkgname\n" \
+                  "version: 0.1.1\n" \
+                  "mtime: 1476683264\n" \
+                  "commit: fea6eb5f43841d57424843c591b6c8791367a9e5\n"
+        file_write_legacy(info, out_str)
+
         src_dir = os.path.join(wdir, "pkgname")
         os.mkdir(src_dir)
         self.tar_scm_std()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/obs-service-tar_scm-0.10.29.1634038025.85bfc3f/tests/tasks.py 
new/obs-service-tar_scm-0.10.30.1641990734.bdad8f9/tests/tasks.py
--- old/obs-service-tar_scm-0.10.29.1634038025.85bfc3f/tests/tasks.py   
2021-10-12 13:27:05.000000000 +0200
+++ new/obs-service-tar_scm-0.10.30.1641990734.bdad8f9/tests/tasks.py   
2022-01-12 13:32:14.000000000 +0100
@@ -4,6 +4,8 @@
 import inspect
 import shutil
 import unittest
+import io
+
 from mock import MagicMock
 
 from tar_scm import TarSCM
@@ -32,10 +34,13 @@
         self.cli.parse_args(['--outdir', self.outdir, '--scm', 'git'])
         self.cli.snapcraft  = True
 
-    def _cd_fixtures_dir(self):
+    def _cd_fixtures_dir(self, *args):
         self.cur_dir = os.getcwd()
         cl_name = self.__class__.__name__
         fn_name = inspect.stack()[1][3]
+        if args:
+            fn_name = args[0]
+
         try:
             os.chdir(os.path.join(self.basedir, 'fixtures', cl_name, fn_name))
         except OSError:
@@ -50,19 +55,22 @@
                   os.getcwd())
             raise
 
+    def _generate_tl_common(self, expected, func):
+        self._cd_fixtures_dir(func)
+        tasks = TarSCM.Tasks(self.cli)
+        tasks.generate_list()
+        self._restore_cwd()
+        for key, val in expected.items():
+            self.assertEqual(tasks.task_list[0].__dict__[key], val)
+        self.assertEqual(len(tasks.task_list), 1)
+
     def test_generate_tl_single_task(self):
         expected = {
             'scm': 'bzr', 'clone_prefix': '_obs_', 'snapcraft': True,
             'revision': None, 'url': 'lp:~mterry/libpipeline/printf',
             'filename': 'libpipeline', 'use_obs_scm': True,
             'outdir': self.cli.outdir, 'changesgenerate': False}
-        self._cd_fixtures_dir()
-        tasks = TarSCM.Tasks(self.cli)
-        tasks.generate_list()
-        self._restore_cwd()
-        for k in expected:  # pylint: disable=C0206
-            self.assertEqual(tasks.task_list[0].__dict__[k], expected[k])
-        self.assertEqual(len(tasks.task_list), 1)
+        self._generate_tl_common(expected, 'test_generate_tl_single_task')
 
     def test_generate_tl_st_appimage(self):
         '''Test generates task list with single task from appimage.yml'''
@@ -76,13 +84,7 @@
             'outdir': self.cli.outdir,
             'changesgenerate': False
         }
-        self._cd_fixtures_dir()
-        tasks = TarSCM.Tasks(self.cli)
-        tasks.generate_list()
-        self._restore_cwd()
-        for k in expected:  # pylint: disable=C0206
-            self.assertEqual(tasks.task_list[0].__dict__[k], expected[k])
-        self.assertEqual(len(tasks.task_list), 1)
+        self._generate_tl_common(expected, 'test_generate_tl_st_appimage')
 
     def test_appimage_empty_build(self):
         self.cli.snapcraft = False
@@ -164,7 +166,7 @@
         tasks.finalize()
         self._restore_cwd()
         snf = os.path.join(self.cli.outdir,'_service:snapcraft:snapcraft.yaml')
-        with open(snf, 'r', encoding='utf-8') as scf:
+        with io.open(snf, 'r', encoding='utf-8') as scf:
             got = scf.read()
         self.assertEqual(got, expected)
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/obs-service-tar_scm-0.10.29.1634038025.85bfc3f/tests/unittestcases.py 
new/obs-service-tar_scm-0.10.30.1641990734.bdad8f9/tests/unittestcases.py
--- old/obs-service-tar_scm-0.10.29.1634038025.85bfc3f/tests/unittestcases.py   
2021-10-12 13:27:05.000000000 +0200
+++ new/obs-service-tar_scm-0.10.30.1641990734.bdad8f9/tests/unittestcases.py   
2022-01-12 13:32:14.000000000 +0100
@@ -7,8 +7,11 @@
 import copy
 import unittest
 import six
+
 from mock import patch
 
+from utils import file_write_legacy
+
 import TarSCM
 
 from TarSCM.helpers import Helpers
@@ -287,13 +290,11 @@
         print("INFOFILE: '%s'" % info)
 
         # check for slash in name
-        with open(info, 'w', encoding='UTF-8') as f_h:
-            f_h.write(
-                "name: test/test\n" +
-                "version: 0.1.1\n" +
-                "mtime: 1476683264\n" +
-                "commit: fea6eb5f43841d57424843c591b6c8791367a9e5\n"
-            )
+        string = "name: test/test\n" \
+                 "version: 0.1.1\n" \
+                 "mtime: 1476683264\n" \
+                 "commit: fea6eb5f43841d57424843c591b6c8791367a9e5\n"
+        file_write_legacy(info, string)
         os.chdir(wdir)
         six.assertRaisesRegex(
             self,
@@ -303,13 +304,11 @@
         )
 
         # check for slash in version
-        with open(info, 'w', encoding='UTF-8') as f_h:
-            f_h.write(
-                "name: test\n" +
-                "version: a/0.1.1\n" +
-                "mtime: 1476683264\n" +
-                "commit: fea6eb5f43841d57424843c591b6c8791367a9e5\n"
-            )
+        string = "name: test\n" \
+                 "version: a/0.1.1\n" \
+                 "mtime: 1476683264\n" \
+                 "commit: fea6eb5f43841d57424843c591b6c8791367a9e5\n"
+        file_write_legacy(info, string)
         os.chdir(wdir)
         six.assertRaisesRegex(
             self,
@@ -319,13 +318,11 @@
         )
 
         # check for .. in version
-        with open(info, 'w', encoding='UTF-8') as f_h:
-            f_h.write(
-                "name: test\n" +
-                "version: ..0.1.1\n" +
-                "mtime: 1476683264\n" +
-                "commit: fea6eb5f43841d57424843c591b6c8791367a9e5\n"
-            )
+        string = "name: test\n" \
+                 "version: ..0.1.1\n" \
+                 "mtime: 1476683264\n" \
+                 "commit: fea6eb5f43841d57424843c591b6c8791367a9e5\n"
+        file_write_legacy(info, string)
         os.chdir(wdir)
         six.assertRaisesRegex(
             self,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/obs-service-tar_scm-0.10.29.1634038025.85bfc3f/tests/utils.py 
new/obs-service-tar_scm-0.10.30.1641990734.bdad8f9/tests/utils.py
--- old/obs-service-tar_scm-0.10.29.1634038025.85bfc3f/tests/utils.py   
2021-10-12 13:27:05.000000000 +0200
+++ new/obs-service-tar_scm-0.10.30.1641990734.bdad8f9/tests/utils.py   
2022-01-12 13:32:14.000000000 +0100
@@ -5,6 +5,7 @@
 
 import os
 import re
+import io
 import shutil
 import subprocess
 import six
@@ -70,3 +71,13 @@
 
 def run_bzr(repo, args):
     return run_scm('bzr', repo, args)
+
+def file_write_legacy(fname, string, *args):
+    '''function to write string to file python 2/3 compatible'''
+    mode = 'w'
+    if args:
+        mode = args[0]
+
+    with io.open(fname, mode, encoding='utf-8') as outfile:
+        # 'str().encode().decode()' is required for pyhton 2/3 compatibility
+        outfile.write(str(string).encode('UTF-8').decode('UTF-8'))

Reply via email to