Hello community,

here is the log from the commit of package openSUSE-release-tools for 
openSUSE:Factory checked in at 2017-10-19 19:33:16
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/openSUSE-release-tools (Old)
 and      /work/SRC/openSUSE:Factory/.openSUSE-release-tools.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "openSUSE-release-tools"

Thu Oct 19 19:33:16 2017 rev:8 rq:535066 version:20171018.44e44a6

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/openSUSE-release-tools/openSUSE-release-tools.changes
    2017-10-18 10:52:16.331834191 +0200
+++ 
/work/SRC/openSUSE:Factory/.openSUSE-release-tools.new/openSUSE-release-tools.changes
       2017-10-19 19:33:18.085606882 +0200
@@ -1,0 +2,22 @@
+Thu Oct 19 01:59:09 UTC 2017 - opensuse-releaset...@opensuse.org
+
+- Update to version 20171018.44e44a6:
+  * Python 2.6+ / 3.x style except clauses
+  * osclib/request_splitter: provide splitter-special-packages config variable.
+  * osclib/request_splitter: reduce default list of special packages.
+  * Rename checknewer to checknewer.py and fix Flake8 fallout
+
+-------------------------------------------------------------------
+Tue Oct 17 14:26:19 UTC 2017 - opensuse-releaset...@opensuse.org
+
+- Update to version 20171017.53f281e:
+  * osc-staging: select -i: include remaining requests in comment.
+  * osc-staging: select -i: s/merged/mergeable/ in stat comment.
+
+-------------------------------------------------------------------
+Tue Oct 17 09:24:18 UTC 2017 - opensuse-releaset...@opensuse.org
+
+- Update to version 20171017.1168d47:
+  * Fix undefined variables 'release'
+
+-------------------------------------------------------------------

Old:
----
  openSUSE-release-tools-20171017.7058f07.obscpio

New:
----
  openSUSE-release-tools-20171018.44e44a6.obscpio

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

Other differences:
------------------
++++++ openSUSE-release-tools.spec ++++++
--- /var/tmp/diff_new_pack.8xDVFO/_old  2017-10-19 19:33:19.245552611 +0200
+++ /var/tmp/diff_new_pack.8xDVFO/_new  2017-10-19 19:33:19.245552611 +0200
@@ -20,7 +20,7 @@
 %define source_dir osc-plugin-factory
 %define announcer_filename factory-package-news
 Name:           openSUSE-release-tools
-Version:        20171017.7058f07
+Version:        20171018.44e44a6
 Release:        0
 Summary:        Tools to aid in staging and release work for openSUSE/SUSE
 License:        GPL-2.0+ and MIT

++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.8xDVFO/_old  2017-10-19 19:33:19.297550178 +0200
+++ /var/tmp/diff_new_pack.8xDVFO/_new  2017-10-19 19:33:19.297550178 +0200
@@ -1,6 +1,6 @@
 <servicedata>
   <service name="tar_scm">
     <param 
name="url">https://github.com/openSUSE/osc-plugin-factory.git</param>
-    <param 
name="changesrevision">7058f07d7102fd938d4d60126fbae515cdcf9737</param>
+    <param 
name="changesrevision">44e44a64f0e266c42e524ee3554f3b45729ac4cc</param>
   </service>
 </servicedata>

++++++ openSUSE-release-tools-20171017.7058f07.obscpio -> 
openSUSE-release-tools-20171018.44e44a6.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openSUSE-release-tools-20171017.7058f07/README.asciidoc 
new/openSUSE-release-tools-20171018.44e44a6/README.asciidoc
--- old/openSUSE-release-tools-20171017.7058f07/README.asciidoc 2017-10-17 
09:30:58.000000000 +0200
+++ new/openSUSE-release-tools-20171018.44e44a6/README.asciidoc 2017-10-19 
03:59:09.000000000 +0200
@@ -32,7 +32,7 @@
 * *link:docs/maintbot.asciidoc[maintbot].* script that checks maintenance
   incidents to make sure the Factory maintainer submitted the package.
 
-* *link:checknewer[checknewer].* script compares version numbers in repos to
+* *link:checknewer.py[checknewer.py].* script compares version numbers in 
repos to
   make sure all packages e.g. in a new distro are newer
 
 Installation
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/openSUSE-release-tools-20171017.7058f07/ReviewBot.py 
new/openSUSE-release-tools-20171018.44e44a6/ReviewBot.py
--- old/openSUSE-release-tools-20171017.7058f07/ReviewBot.py    2017-10-17 
09:30:58.000000000 +0200
+++ new/openSUSE-release-tools-20171018.44e44a6/ReviewBot.py    2017-10-19 
03:59:09.000000000 +0200
@@ -367,7 +367,7 @@
             node = ET.fromstring(''.join(m)).find('devel')
             if node is not None:
                 return node.get('project'), node.get('package', None)
-        except urllib2.HTTPError, e:
+        except urllib2.HTTPError as e:
             if e.code != 404:
                 raise e
         return None, None
@@ -387,7 +387,7 @@
             else:
                 return False
             states = set([review.get('state') for review in 
root.findall('review') if review.get(by_what) == reviewer])
-        except urllib2.HTTPError, e:
+        except urllib2.HTTPError as e:
             print('ERROR in URL %s [%s]' % (url, e))
         if not states:
             return None
@@ -644,7 +644,7 @@
         while True:
             try:
                 workfunc()
-            except Exception, e:
+            except Exception as e:
                 self.logger.exception(e)
 
             if interval:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/openSUSE-release-tools-20171017.7058f07/ToolBase.py 
new/openSUSE-release-tools-20171018.44e44a6/ToolBase.py
--- old/openSUSE-release-tools-20171017.7058f07/ToolBase.py     2017-10-17 
09:30:58.000000000 +0200
+++ new/openSUSE-release-tools-20171018.44e44a6/ToolBase.py     2017-10-19 
03:59:09.000000000 +0200
@@ -67,7 +67,7 @@
     def retried_GET(self, url):
         try:
             return http_GET(url)
-        except urllib2.HTTPError, e:
+        except urllib2.HTTPError as e:
             if 500 <= e.code <= 599:
                 print 'Retrying {}'.format(url)
                 time.sleep(1)
@@ -195,7 +195,7 @@
         while True:
             try:
                 workfunc()
-            except Exception, e:
+            except Exception as e:
                 logger.exception(e)
 
             if interval:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openSUSE-release-tools-20171017.7058f07/abichecker/abichecker.py 
new/openSUSE-release-tools-20171018.44e44a6/abichecker/abichecker.py
--- old/openSUSE-release-tools-20171017.7058f07/abichecker/abichecker.py        
2017-10-17 09:30:58.000000000 +0200
+++ new/openSUSE-release-tools-20171018.44e44a6/abichecker/abichecker.py        
2017-10-19 03:59:09.000000000 +0200
@@ -237,16 +237,16 @@
         try:
             # compute list of common repos to find out what to compare
             myrepos = self.findrepos(src_project, src_srcinfo, dst_project, 
dst_srcinfo)
-        except NoBuildSuccess, e:
+        except NoBuildSuccess as e:
             self.logger.info(e)
             self.text_summary += "**Error**: %s\n"%e
             self.reports.append(report)
             return False
-        except NotReadyYet, e:
+        except NotReadyYet as e:
             self.logger.info(e)
             self.reports.append(report)
             return None
-        except SourceBroken, e:
+        except SourceBroken as e:
             self.logger.error(e)
             self.text_summary += "**Error**: %s\n"%e
             self.reports.append(report)
@@ -271,21 +271,21 @@
                 dst_srcinfo = origin_srcinfo
             if new_repo_map is not None:
                 myrepos = new_repo_map
-        except MaintenanceError, e:
+        except MaintenanceError as e:
             self.text_summary += "**Error**: %s\n\n"%e
             self.logger.error('%s', e)
             self.reports.append(report)
             return False
-        except NoBuildSuccess, e:
+        except NoBuildSuccess as e:
             self.logger.info(e)
             self.text_summary += "**Error**: %s\n"%e
             self.reports.append(report)
             return False
-        except NotReadyYet, e:
+        except NotReadyYet as e:
             self.logger.info(e)
             self.reports.append(report)
             return None
-        except SourceBroken, e:
+        except SourceBroken as e:
             self.logger.error(e)
             self.text_summary += "**Error**: %s\n"%e
             self.reports.append(report)
@@ -304,16 +304,16 @@
                 # nothing to fetch, so no libs
                 if dst_libs is None:
                     continue
-            except DistUrlMismatch, e:
+            except DistUrlMismatch as e:
                 self.logger.error("%s/%s %s/%s: %s"%(dst_project, dst_package, 
mr.dstrepo, mr.arch, e))
                 if ret == True: # need to check again
                     ret = None
                 continue
-            except MissingDebugInfo, e:
+            except MissingDebugInfo as e:
                 missing_debuginfo.append(str(e))
                 ret = False
                 continue
-            except FetchError, e:
+            except FetchError as e:
                 self.logger.error(e)
                 if ret == True: # need to check again
                     ret = None
@@ -325,16 +325,16 @@
                     if dst_libs:
                         self.text_summary += "*Warning*: the submission does 
not contain any libs anymore\n\n"
                     continue
-            except DistUrlMismatch, e:
+            except DistUrlMismatch as e:
                 self.logger.error("%s/%s %s/%s: %s"%(src_project, src_package, 
mr.srcrepo, mr.arch, e))
                 if ret == True: # need to check again
                     ret = None
                 continue
-            except MissingDebugInfo, e:
+            except MissingDebugInfo as e:
                 missing_debuginfo.append(str(e))
                 ret = False
                 continue
-            except FetchError, e:
+            except FetchError as e:
                 self.logger.error(e)
                 if ret == True: # need to check again
                     ret = None
@@ -530,7 +530,7 @@
         self.text_summary = ''
         try:
             ret = ReviewBot.ReviewBot.check_one_request(self, req)
-        except Exception, e:
+        except Exception as e:
             import traceback
             self.logger.error("unhandled exception in ABI checker")
             self.logger.error(traceback.format_exc())
@@ -572,7 +572,7 @@
             request = self.session.query(DB.Request).filter(DB.Request.id == 
reqid).one()
             if request.state == 'done':
                 return True
-        except sqlalchemy.orm.exc.NoResultFound, e:
+        except sqlalchemy.orm.exc.NoResultFound as e:
             pass
 
         return False
@@ -586,7 +586,7 @@
             self.session.flush()
             request.state = state
             request.result = result
-        except sqlalchemy.orm.exc.NoResultFound, e:
+        except sqlalchemy.orm.exc.NoResultFound as e:
             request = DB.Request(id = req.reqid,
                     state = state,
                     result = result,
@@ -771,7 +771,7 @@
         h = None
         try:
             h = self.ts.hdrFromFdno(fd)
-        except rpm.error, e:
+        except rpm.error as e:
             if str(e) == "public key not available":
                 print str(e)
             if str(e) == "public key not trusted":
@@ -786,7 +786,7 @@
             [ 'view=cpioheaders' ])
         try:
             r = osc.core.http_GET(u)
-        except urllib2.HTTPError, e:
+        except urllib2.HTTPError as e:
             raise FetchError('failed to fetch header information: %s'%e)
         tmpfile = NamedTemporaryFile(prefix="cpio-", delete=False)
         for chunk in r:
@@ -831,7 +831,7 @@
                     'srcmd5' : rev }
             url = osc.core.makeurl(self.apiurl, ('build', src_project, 
'_result'), query)
             return ET.parse(osc.core.http_GET(url)).getroot()
-        except urllib2.HTTPError, e:
+        except urllib2.HTTPError as e:
             if e.code != 404:
                 self.logger.error('ERROR in URL %s [%s]' % (url, e))
                 raise
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openSUSE-release-tools-20171017.7058f07/abichecker/abichecker_common.py 
new/openSUSE-release-tools-20171018.44e44a6/abichecker/abichecker_common.py
--- old/openSUSE-release-tools-20171017.7058f07/abichecker/abichecker_common.py 
2017-10-17 09:30:58.000000000 +0200
+++ new/openSUSE-release-tools-20171018.44e44a6/abichecker/abichecker_common.py 
2017-10-19 03:59:09.000000000 +0200
@@ -37,7 +37,7 @@
         try:
             entry = self.session.query(DB.Config).filter(DB.Config.key == 
key).one()
             entry.value = value
-        except sqlalchemy.orm.exc.NoResultFound, e:
+        except sqlalchemy.orm.exc.NoResultFound as e:
             entry = DB.Config(key=key, value=value)
         self.session.add(entry)
         self.session.commit()
@@ -46,7 +46,7 @@
         try:
             entry = self.session.query(DB.Config).filter(DB.Config.key == 
key).one()
             return entry.value
-        except sqlalchemy.orm.exc.NoResultFound, e:
+        except sqlalchemy.orm.exc.NoResultFound as e:
             pass
         return default
 
@@ -56,7 +56,7 @@
             self.session.delete(entry)
             self.session.commit()
             return True
-        except sqlalchemy.orm.exc.NoResultFound, e:
+        except sqlalchemy.orm.exc.NoResultFound as e:
             pass
         return False
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openSUSE-release-tools-20171017.7058f07/biarchtool.py 
new/openSUSE-release-tools-20171018.44e44a6/biarchtool.py
--- old/openSUSE-release-tools-20171017.7058f07/biarchtool.py   2017-10-17 
09:30:58.000000000 +0200
+++ new/openSUSE-release-tools-20171018.44e44a6/biarchtool.py   2017-10-19 
03:59:09.000000000 +0200
@@ -147,7 +147,7 @@
             try:
                 x = ET.fromstring(self.cached_GET(self.makeurl(['source', 
self.project, pkg, '_history'], {'rev':'1'})))
             # catch deleted packages
-            except urllib2.HTTPError, e:
+            except urllib2.HTTPError as e:
                 if e.code == 404:
                     continue
                 raise e
@@ -188,7 +188,7 @@
                     self.http_PUT(pkgmetaurl, data=ET.tostring(pkgmeta))
                     if self.caching:
                         self._invalidate__cached_GET(pkgmetaurl)
-                except urllib2.HTTPError, e:
+                except urllib2.HTTPError as e:
                     logger.error('failed to update %s: %s', pkg, e)
 
     def add_explicit_disable(self, wipebinaries=False):
@@ -225,7 +225,7 @@
                             'cmd' : 'wipe',
                             'arch': self.arch,
                             'package' : pkg }))
-                except urllib2.HTTPError, e:
+                except urllib2.HTTPError as e:
                     logger.error('failed to update %s: %s', pkg, e)
 
 
@@ -236,7 +236,7 @@
             pkgmetaurl = self.makeurl(['source', self.project, pkg, '_meta'])
             try:
                 pkgmeta = ET.fromstring(self.cached_GET(pkgmetaurl))
-            except urllib2.HTTPError, e:
+            except urllib2.HTTPError as e:
                 # catch deleted packages
                 if e.code == 404:
                     continue
@@ -303,7 +303,7 @@
                             'cmd' : 'wipe',
                             'arch': self.arch,
                             'package' : pkg }))
-                except urllib2.HTTPError, e:
+                except urllib2.HTTPError as e:
                     logger.error('failed to update %s: %s', pkg, e)
 
 class CommandLineInterface(ToolBase.CommandLineInterface):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openSUSE-release-tools-20171017.7058f07/check_source.py 
new/openSUSE-release-tools-20171018.44e44a6/check_source.py
--- old/openSUSE-release-tools-20171017.7058f07/check_source.py 2017-10-17 
09:30:58.000000000 +0200
+++ new/openSUSE-release-tools-20171018.44e44a6/check_source.py 2017-10-19 
03:59:09.000000000 +0200
@@ -139,7 +139,7 @@
     def staging_group(self, project):
         try:
             return self.staging_api(project).cstaging_group
-        except urllib2.HTTPError, e:
+        except urllib2.HTTPError as e:
             if e.code != 404:
                 raise e
 
@@ -176,7 +176,7 @@
 
         try:
             xml = ET.parse(osc.core.http_GET(url)).getroot()
-        except urllib2.HTTPError, e:
+        except urllib2.HTTPError as e:
             self.logger.error('ERROR in URL %s [%s]' % (url, e))
             return ret
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openSUSE-release-tools-20171017.7058f07/check_source_in_factory.py 
new/openSUSE-release-tools-20171018.44e44a6/check_source_in_factory.py
--- old/openSUSE-release-tools-20171017.7058f07/check_source_in_factory.py      
2017-10-17 09:30:58.000000000 +0200
+++ new/openSUSE-release-tools-20171018.44e44a6/check_source_in_factory.py      
2017-10-19 03:59:09.000000000 +0200
@@ -123,7 +123,7 @@
         u = osc.core.makeurl(self.apiurl, [ 'source', project, package, 
'_history' ], { 'limit': self.history_limit })
         try:
             r = osc.core.http_GET(u)
-        except urllib2.HTTPError, e:
+        except urllib2.HTTPError as e:
             self.logger.debug("package has no history!?")
             return None
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/openSUSE-release-tools-20171017.7058f07/checknewer 
new/openSUSE-release-tools-20171018.44e44a6/checknewer
--- old/openSUSE-release-tools-20171017.7058f07/checknewer      2017-10-17 
09:30:58.000000000 +0200
+++ new/openSUSE-release-tools-20171018.44e44a6/checknewer      1970-01-01 
01:00:00.000000000 +0100
@@ -1,77 +0,0 @@
-#!/usr/bin/python
-# Copyright (c) 2016 SUSE LLC
-#
-# Permission is hereby granted, free of charge, to any person obtaining a copy
-# of this software and associated documentation files (the "Software"), to deal
-# in the Software without restriction, including without limitation the rights
-# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-# copies of the Software, and to permit persons to whom the Software is
-# furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included in
-# all copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-# SOFTWARE.
-
-# check if all packages in a repo are newer than all other repos
-
-import sys
-import os
-import re
-import solv
-
-pool = solv.Pool()
-args = sys.argv[1:]
-if len(args) < 2:
-   print("usage: checknewer NEWREPO OLDREPO1 [OLDREPO2...]")
-   sys.exit(1)
-
-firstrepo = None
-for arg in args:
-   argf = solv.xfopen(arg)
-   repo = pool.add_repo(arg)
-   if not firstrepo:
-      firstrepo = repo
-   if re.search(r'solv$', arg):
-        repo.add_solv(argf)
-   elif re.search(r'primary\.xml', arg):
-        repo.add_rpmmd(argf, None)
-   elif re.search(r'packages', arg):
-        repo.add_susetags(argf, 0, None)
-   else:
-       print("%s: unknown repo type" % (arg))
-       sys.exit(1)
-
-# we only want self-provides
-for p in pool.solvables:
-    if p.archid == solv.ARCH_SRC or p.archid == solv.ARCH_NOSRC:
-        continue
-    selfprovides = pool.rel2id(p.nameid, p.evrid, solv.REL_EQ)
-    p.unset(solv.SOLVABLE_PROVIDES)
-    p.add_deparray(solv.SOLVABLE_PROVIDES, selfprovides)
-
-pool.createwhatprovides()
-
-for p in firstrepo.solvables:
-    newerdep = pool.rel2id(p.nameid, p.evrid, solv.REL_GT | solv.REL_EQ)
-    for pp in pool.whatprovides(newerdep):
-        if pp.repo == firstrepo:
-            continue
-        if p.nameid != pp.nameid:
-            continue
-        if p.identical(pp):
-            continue
-       if p.archid != pp.archid and p.archid != solv.ARCH_NOARCH and pp.archid 
!= solv.ARCH_NOARCH:
-            continue
-        src = p.name
-        if not p.lookup_void(solv.SOLVABLE_SOURCENAME):
-            src = p.lookup_str(solv.SOLVABLE_SOURCENAME)
-        if src is None:
-            src = "?"
-        print("%s: %s is older than %s from %s" % (src, p, pp, pp.repo))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openSUSE-release-tools-20171017.7058f07/checknewer.py 
new/openSUSE-release-tools-20171018.44e44a6/checknewer.py
--- old/openSUSE-release-tools-20171017.7058f07/checknewer.py   1970-01-01 
01:00:00.000000000 +0100
+++ new/openSUSE-release-tools-20171018.44e44a6/checknewer.py   2017-10-19 
03:59:09.000000000 +0200
@@ -0,0 +1,77 @@
+#!/usr/bin/python2
+# Copyright (c) 2016 SUSE LLC
+#
+# Permission is hereby granted, free of charge, to any person obtaining a copy
+# of this software and associated documentation files (the "Software"), to deal
+# in the Software without restriction, including without limitation the rights
+# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+# copies of the Software, and to permit persons to whom the Software is
+# furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice shall be included in
+# all copies or substantial portions of the Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+# SOFTWARE.
+
+# check if all packages in a repo are newer than all other repos
+
+import sys
+import os
+import re
+import solv
+
+pool = solv.Pool()
+args = sys.argv[1:]
+if len(args) < 2:
+    print("usage: checknewer NEWREPO OLDREPO1 [OLDREPO2...]")
+    sys.exit(1)
+
+firstrepo = None
+for arg in args:
+    argf = solv.xfopen(arg)
+    repo = pool.add_repo(arg)
+    if not firstrepo:
+        firstrepo = repo
+    if re.search(r'solv$', arg):
+        repo.add_solv(argf)
+    elif re.search(r'primary\.xml', arg):
+        repo.add_rpmmd(argf, None)
+    elif re.search(r'packages', arg):
+        repo.add_susetags(argf, 0, None)
+    else:
+        print("%s: unknown repo type" % (arg))
+        sys.exit(1)
+
+# we only want self-provides
+for p in pool.solvables:
+    if p.archid == solv.ARCH_SRC or p.archid == solv.ARCH_NOSRC:
+        continue
+    selfprovides = pool.rel2id(p.nameid, p.evrid, solv.REL_EQ)
+    p.unset(solv.SOLVABLE_PROVIDES)
+    p.add_deparray(solv.SOLVABLE_PROVIDES, selfprovides)
+
+pool.createwhatprovides()
+
+for p in firstrepo.solvables:
+    newerdep = pool.rel2id(p.nameid, p.evrid, solv.REL_GT | solv.REL_EQ)
+    for pp in pool.whatprovides(newerdep):
+        if pp.repo == firstrepo:
+            continue
+        if p.nameid != pp.nameid:
+            continue
+        if p.identical(pp):
+            continue
+        if p.archid != pp.archid and p.archid != solv.ARCH_NOARCH and 
pp.archid != solv.ARCH_NOARCH:
+            continue
+        src = p.name
+        if not p.lookup_void(solv.SOLVABLE_SOURCENAME):
+            src = p.lookup_str(solv.SOLVABLE_SOURCENAME)
+        if src is None:
+            src = "?"
+        print("%s: %s is older than %s from %s" % (src, p, pp, pp.repo))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openSUSE-release-tools-20171017.7058f07/devel-project.py 
new/openSUSE-release-tools-20171018.44e44a6/devel-project.py
--- old/openSUSE-release-tools-20171017.7058f07/devel-project.py        
2017-10-17 09:30:58.000000000 +0200
+++ new/openSUSE-release-tools-20171018.44e44a6/devel-project.py        
2017-10-19 03:59:09.000000000 +0200
@@ -199,7 +199,7 @@
         # Repeat notification so remove old comment.
         try:
             comment_api.delete(comment['id'])
-        except HTTPError, e:
+        except HTTPError as e:
             if e.code == 403:
                 # Gracefully skip when previous reminder was by another user.
                 print('  unable to remove previous reminder')
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openSUSE-release-tools-20171017.7058f07/fcc_submitter.py 
new/openSUSE-release-tools-20171018.44e44a6/fcc_submitter.py
--- old/openSUSE-release-tools-20171017.7058f07/fcc_submitter.py        
2017-10-17 09:30:58.000000000 +0200
+++ new/openSUSE-release-tools-20171018.44e44a6/fcc_submitter.py        
2017-10-19 03:59:09.000000000 +0200
@@ -128,7 +128,7 @@
         l = ET.tostring(flink)
         try:
             http_PUT(url, data=l)
-        except urllib2.HTTPError, e:
+        except urllib2.HTTPError as e:
             raise e
 
 class FccSubmitter(object):
@@ -225,7 +225,7 @@
     def check_multiple_specfiles(self, project, package):
         try:
             url = makeurl(self.apiurl, ['source', project, package], { 
'expand': '1' } )
-        except urllib2.HTTPError, e:
+        except urllib2.HTTPError as e:
             if e.code == 404:
                 return None
             raise e
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openSUSE-release-tools-20171017.7058f07/issue-diff.py 
new/openSUSE-release-tools-20171018.44e44a6/issue-diff.py
--- old/openSUSE-release-tools-20171017.7058f07/issue-diff.py   2017-10-17 
09:30:58.000000000 +0200
+++ new/openSUSE-release-tools-20171018.44e44a6/issue-diff.py   2017-10-19 
03:59:09.000000000 +0200
@@ -79,7 +79,7 @@
 def bug_meta_get(bugzilla_api, bug_id):
     try:
         bug = bugzilla_api.getbug(bug_id)
-    except Fault, e:
+    except Fault as e:
         print('bug_meta_get(): ' + str(e))
         return None
     return bug.component
@@ -382,7 +382,7 @@
                 try:
                     bug_id = bug_create(bugzilla_api, meta, owner, cc, 
summary, message)
                     break
-                except Fault, e:
+                except Fault as e:
                     if 'There is no component named' in e.faultString:
                         print('Invalid component {}, fallback to 
default'.format(meta[1]))
                         meta = (meta[0], bugzilla_defaults[1], meta[2])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/openSUSE-release-tools-20171017.7058f07/leaper.py 
new/openSUSE-release-tools-20171018.44e44a6/leaper.py
--- old/openSUSE-release-tools-20171017.7058f07/leaper.py       2017-10-17 
09:30:58.000000000 +0200
+++ new/openSUSE-release-tools-20171018.44e44a6/leaper.py       2017-10-19 
03:59:09.000000000 +0200
@@ -93,7 +93,7 @@
             root = 
ET.parse(osc.core.http_GET(osc.core.makeurl(self.apiurl,['source', project],
                                      query=query))).getroot()
             packages = [i.get('name') for i in root.findall('entry')]
-        except urllib2.HTTPError, e:
+        except urllib2.HTTPError as e:
             # in case the project doesn't exist yet (like sle update)
             if e.code != 404:
                 raise e
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openSUSE-release-tools-20171017.7058f07/manager_42.py 
new/openSUSE-release-tools-20171018.44e44a6/manager_42.py
--- old/openSUSE-release-tools-20171017.7058f07/manager_42.py   2017-10-17 
09:30:58.000000000 +0200
+++ new/openSUSE-release-tools-20171018.44e44a6/manager_42.py   2017-10-19 
03:59:09.000000000 +0200
@@ -87,7 +87,7 @@
         self.lookup = {}
         try:
             self.lookup = yaml.safe_load(self._load_lookup_file(project))
-        except urllib2.HTTPError, e:
+        except urllib2.HTTPError as e:
             if e.code != 404:
                 raise
 
@@ -119,7 +119,7 @@
     def retried_GET(self, url):
         try:
             return http_GET(url)
-        except urllib2.HTTPError, e:
+        except urllib2.HTTPError as e:
             if 500 <= e.code <= 599:
                 logger.warn('Retrying {}'.format(url))
                 time.sleep(1)
@@ -136,7 +136,7 @@
                                  query=query)))
             packages = [i.get('name') for i in root.findall('entry')]
 
-        except urllib2.HTTPError, e:
+        except urllib2.HTTPError as e:
             if e.code == 404:
                 logger.error("{}: {}".format(project, e))
                 packages = []
@@ -161,7 +161,7 @@
         for package in sorted(packages):
             try:
                 self.check_one_package(package)
-            except urllib2.HTTPError, e:
+            except urllib2.HTTPError as e:
                 logger.error("Failed to check {}: {}".format(package, e))
                 pass
 
@@ -179,7 +179,7 @@
                 query['deleted'] = 1
             return self.cached_GET(makeurl(self.apiurl,
                                    ['source', project, package, '_history'], 
query))
-        except urllib2.HTTPError, e:
+        except urllib2.HTTPError as e:
             if e.code == 404:
                 return None
             raise
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openSUSE-release-tools-20171017.7058f07/osc-staging.py 
new/openSUSE-release-tools-20171018.44e44a6/osc-staging.py
--- old/openSUSE-release-tools-20171017.7058f07/osc-staging.py  2017-10-17 
09:30:58.000000000 +0200
+++ new/openSUSE-release-tools-20171018.44e44a6/osc-staging.py  2017-10-19 
03:59:09.000000000 +0200
@@ -573,12 +573,20 @@
                 if opts.interactive:
                     with tempfile.NamedTemporaryFile(suffix='.yml') as temp:
                         temp.write(yaml.safe_dump(splitter.proposal, 
default_flow_style=False) + '\n\n')
+
+                        if len(splitter.requests):
+                            temp.write('# remaining requests:\n')
+                            for request in splitter.requests:
+                                temp.write('#    {}: {}\n'.format(
+                                    request.get('id'), 
request.find('action/target').get('package')))
+                            temp.write('\n')
+
                         temp.write('# move requests between stagings or 
comment/remove them\n')
                         temp.write('# change the target staging for a group\n')
                         temp.write('# remove the group, requests, staging, or 
strategy to skip\n')
                         temp.write('# stagings\n')
                         if opts.merge:
-                            temp.write('# - merged: {}\n'
+                            temp.write('# - mergeable: {}\n'
                                        .format(', 
'.join(sorted(splitter.stagings_mergeable +
                                                                 
splitter.stagings_mergeable_none))))
                         temp.write('# - considered: {}\n'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openSUSE-release-tools-20171017.7058f07/osclib/accept_command.py 
new/openSUSE-release-tools-20171018.44e44a6/osclib/accept_command.py
--- old/openSUSE-release-tools-20171017.7058f07/osclib/accept_command.py        
2017-10-17 09:30:58.000000000 +0200
+++ new/openSUSE-release-tools-20171018.44e44a6/osclib/accept_command.py        
2017-10-19 03:59:09.000000000 +0200
@@ -177,7 +177,7 @@
                     url = self.api.makeurl(['build', project], query)
                     try:
                         http_POST(url)
-                    except urllib2.HTTPError, err:
+                    except urllib2.HTTPError as err:
                         # failed to wipe isos but we can just continue
                         pass
 
@@ -229,7 +229,7 @@
             print "Deleting package %s from project %s" % (spec[:-5], project)
             try:
                 http_DELETE(url)
-            except urllib2.HTTPError, err:
+            except urllib2.HTTPError as err:
                 if err.code == 404:
                     # the package link was not yet created, which was likely a 
mistake from earlier
                     pass
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openSUSE-release-tools-20171017.7058f07/osclib/adi_command.py 
new/openSUSE-release-tools-20171018.44e44a6/osclib/adi_command.py
--- old/openSUSE-release-tools-20171017.7058f07/osclib/adi_command.py   
2017-10-17 09:30:58.000000000 +0200
+++ new/openSUSE-release-tools-20171018.44e44a6/osclib/adi_command.py   
2017-10-19 03:59:09.000000000 +0200
@@ -54,8 +54,8 @@
             self.api.accept_status_comment(project, packages)
             try:
                 delete_project(self.api.apiurl, project, force=True)
-            except urllib2.HTTPError, e:
-                print e
+            except urllib2.HTTPError as e:
+                print(e)
                 pass
         else:
             print query_project, Fore.GREEN + 'ready:', ', 
'.join(['{}[{}]'.format(
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openSUSE-release-tools-20171017.7058f07/osclib/cycle.py 
new/openSUSE-release-tools-20171018.44e44a6/osclib/cycle.py
--- old/openSUSE-release-tools-20171017.7058f07/osclib/cycle.py 2017-10-17 
09:30:58.000000000 +0200
+++ new/openSUSE-release-tools-20171018.44e44a6/osclib/cycle.py 2017-10-19 
03:59:09.000000000 +0200
@@ -157,7 +157,7 @@
             # print('Generating _builddepinfo for (%s, %s, %s)' % (project, 
repository, arch))
             url = makeurl(self.api.apiurl, ['build/%s/%s/%s/_builddepinfo' % 
(project, repository, arch)])
             root = http_GET(url).read()
-        except urllib2.HTTPError, e:
+        except urllib2.HTTPError as e:
             print('ERROR in URL %s [%s]' % (url, e))
         return root
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openSUSE-release-tools-20171017.7058f07/osclib/prio_command.py 
new/openSUSE-release-tools-20171018.44e44a6/osclib/prio_command.py
--- old/openSUSE-release-tools-20171017.7058f07/osclib/prio_command.py  
2017-10-17 09:30:58.000000000 +0200
+++ new/openSUSE-release-tools-20171018.44e44a6/osclib/prio_command.py  
2017-10-19 03:59:09.000000000 +0200
@@ -44,7 +44,7 @@
                 try:
                     osc.core.http_POST(url, data=message)
                     print reqid, r['by'], priority
-                except urllib2.HTTPError, e:
+                except urllib2.HTTPError as e:
                     print e
 
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openSUSE-release-tools-20171017.7058f07/osclib/repair_command.py 
new/openSUSE-release-tools-20171018.44e44a6/osclib/repair_command.py
--- old/openSUSE-release-tools-20171017.7058f07/osclib/repair_command.py        
2017-10-17 09:30:58.000000000 +0200
+++ new/openSUSE-release-tools-20171018.44e44a6/osclib/repair_command.py        
2017-10-19 03:59:09.000000000 +0200
@@ -37,7 +37,7 @@
         staging_project = reviews[0]
         try:
             data = self.api.get_prj_pseudometa(staging_project)
-        except urllib2.HTTPError, e:
+        except urllib2.HTTPError as e:
             if e.code == 404:
                 data = None
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openSUSE-release-tools-20171017.7058f07/osclib/request_splitter.py 
new/openSUSE-release-tools-20171018.44e44a6/osclib/request_splitter.py
--- old/openSUSE-release-tools-20171017.7058f07/osclib/request_splitter.py      
2017-10-17 09:30:58.000000000 +0200
+++ new/openSUSE-release-tools-20171018.44e44a6/osclib/request_splitter.py      
2017-10-19 03:59:09.000000000 +0200
@@ -15,6 +15,9 @@
         # 55 minutes to avoid two staging bot loops of 30 minutes
         self.request_age_threshold = 
int(self.config.get('splitter-request-age-threshold', 55 * 60))
         self.staging_age_max = int(self.config.get('splitter-staging-age-max', 
8 * 60 * 60))
+        special_packages= self.config.get('splitter-special-packages')
+        if special_packages:
+            StrategySpecial.PACKAGES = special_packages.split(' ')
 
         self.requests_ignored = self.api.get_ignored_requests()
 
@@ -487,13 +490,10 @@
 
 class StrategySpecial(StrategyNone):
     PACKAGES = [
-        'boost',
         'gcc',
-        'gcc6',
         'gcc7',
         'glibc',
         'kernel-source',
-        'util-linux',
     ]
 
     def apply(self, splitter):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openSUSE-release-tools-20171017.7058f07/osclib/stagingapi.py 
new/openSUSE-release-tools-20171018.44e44a6/osclib/stagingapi.py
--- old/openSUSE-release-tools-20171017.7058f07/osclib/stagingapi.py    
2017-10-17 09:30:58.000000000 +0200
+++ new/openSUSE-release-tools-20171018.44e44a6/osclib/stagingapi.py    
2017-10-19 03:59:09.000000000 +0200
@@ -152,7 +152,7 @@
                 if data is not None:
                     return func(url, data=data)
                 return func(url)
-            except urllib2.HTTPError, e:
+            except urllib2.HTTPError as e:
                 if 500 <= e.code <= 599:
                     print 'Error {}, retrying {} in {}s'.format(e.code, url, 
retry_sleep_seconds)
                     time.sleep(retry_sleep_seconds)
@@ -290,7 +290,7 @@
             content = http_GET(url)
             for entry in ET.parse(content).getroot().findall('entry'):
                 filelist.append(entry.attrib['name'])
-        except urllib2.HTTPError, err:
+        except urllib2.HTTPError as err:
             if err.code == 404:
                 # The package we were supposed to query does not exist
                 # we can pass this up and return the empty filelist
@@ -394,7 +394,7 @@
         try:
             url = self.makeurl(['source', prj, '_project', '_frozenlinks'], 
{'meta': '1'})
             root = ET.parse(http_GET(url)).getroot()
-        except urllib2.HTTPError, e:
+        except urllib2.HTTPError as e:
             if e.code == 404:
                 return None
         packages = root.findall('./frozenlink/package')
@@ -1468,7 +1468,7 @@
         url = self.makeurl(['build', project, repository, arch, '_repository', 
"%s?view=fileinfo" % rpm])
         try:
             return ET.parse(http_GET(url)).getroot().find('version').text
-        except urllib2.HTTPError, e:
+        except urllib2.HTTPError as e:
             if e.code == 404:
                 return None
             raise
@@ -1764,7 +1764,7 @@
             node = ET.fromstring(''.join(m)).find('devel')
             if node is not None:
                 return node.get('project')
-        except urllib2.HTTPError, e:
+        except urllib2.HTTPError as e:
             if e.code == 404:
                 pass
         return None
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openSUSE-release-tools-20171017.7058f07/suppkg_rebuild.py 
new/openSUSE-release-tools-20171018.44e44a6/suppkg_rebuild.py
--- old/openSUSE-release-tools-20171017.7058f07/suppkg_rebuild.py       
2017-10-17 09:30:58.000000000 +0200
+++ new/openSUSE-release-tools-20171018.44e44a6/suppkg_rebuild.py       
2017-10-19 03:59:09.000000000 +0200
@@ -100,7 +100,7 @@
             url = makeurl(self.apiurl, ['source', project, pkg], query=query)
             try:
                 root = ET.parse(http_GET(url)).getroot()
-            except urllib2.HTTPError, e:
+            except urllib2.HTTPError as e:
                 if e.code == 404:
                     continue
                 raise
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openSUSE-release-tools-20171017.7058f07/tests/__init__.py 
new/openSUSE-release-tools-20171018.44e44a6/tests/__init__.py
--- old/openSUSE-release-tools-20171017.7058f07/tests/__init__.py       
2017-10-17 09:30:58.000000000 +0200
+++ new/openSUSE-release-tools-20171018.44e44a6/tests/__init__.py       
2017-10-19 03:59:09.000000000 +0200
@@ -1,4 +1,3 @@
-#!/usr/bin/env python
 # -*- coding: utf-8 -*-
 #
 # (C) 2014 tchva...@suse.cz, openSUSE.org
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openSUSE-release-tools-20171017.7058f07/totest-manager.py 
new/openSUSE-release-tools-20171018.44e44a6/totest-manager.py
--- old/openSUSE-release-tools-20171017.7058f07/totest-manager.py       
2017-10-17 09:30:58.000000000 +0200
+++ new/openSUSE-release-tools-20171018.44e44a6/totest-manager.py       
2017-10-19 03:59:09.000000000 +0200
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/python2
 # -*- coding: utf-8 -*-
 #
 # (C) 2014 mhruse...@suse.cz, openSUSE.org
@@ -19,7 +19,6 @@
 import time
 
 from xml.etree import cElementTree as ET
-from pprint import pprint
 from openqa_client.client import OpenQA_Client
 
 import osc
@@ -417,11 +416,11 @@
 
         for cd in self.livecd_products:
             self._release_package('openSUSE:%s:Live' %
-                                  self.project, cd, set_release=release)
+                                  self.project, cd, set_release=set_release)
 
         for cd in self.main_products:
             self._release_package('openSUSE:%s' %
-                                  self.project, cd, set_release=release)
+                                  self.project, cd, set_release=set_release)
 
     def update_totest(self, snapshot=None):
         release = 'Snapshot%s' % snapshot if snapshot else None
@@ -430,7 +429,7 @@
             self.api.switch_flag_in_prj(
                 'openSUSE:%s:ToTest' % self.project, flag='publish', 
state='disable')
 
-        self._release(set_release=snapshot)
+        self._release(set_release=release)
 
     def publish_factory_totest(self):
         logger.info('Publish ToTest')
@@ -458,7 +457,7 @@
     def totest(self):
         try:
             current_snapshot = self.get_current_snapshot()
-        except NotFoundException, e:
+        except NotFoundException as e:
             # nothing in :ToTest (yet)
             logger.warn(e)
             current_snapshot = None
@@ -543,7 +542,7 @@
         # XXX still legacy
         for cd in self.livecd_products:
             self._release_package('openSUSE:%s:Live' %
-                                  self.project, cd, set_release=release)
+                                  self.project, cd, set_release=set_release)
 
     def release_version(self):
         url = self.api.makeurl(['build', 'openSUSE:%s' % self.project, 
'standard', self.arch(),
@@ -770,7 +769,7 @@
             try:
                 totest = self._setup_totest(project)
                 totest.totest()
-            except Exception, e:
+            except Exception as e:
                 logger.error(e)
 
             if opts.interval:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openSUSE-release-tools-20171017.7058f07/update_crawler.py 
new/openSUSE-release-tools-20171018.44e44a6/update_crawler.py
--- old/openSUSE-release-tools-20171017.7058f07/update_crawler.py       
2017-10-17 09:30:58.000000000 +0200
+++ new/openSUSE-release-tools-20171018.44e44a6/update_crawler.py       
2017-10-19 03:59:09.000000000 +0200
@@ -99,7 +99,7 @@
     def retried_GET(self, url):
         try:
             return http_GET(url)
-        except urllib2.HTTPError, e:
+        except urllib2.HTTPError as e:
             if 500 <= e.code <= 599:
                 print 'Retrying {}'.format(url)
                 time.sleep(1)
@@ -211,7 +211,7 @@
                 )))
             if root.get('project') is None and root.get('cicount'):
                 return True
-        except urllib2.HTTPError, err:
+        except urllib2.HTTPError as err:
             # if there is no link, it can't be a link
             if err.code == 404:
                 return False

++++++ openSUSE-release-tools.obsinfo ++++++
--- /var/tmp/diff_new_pack.8xDVFO/_old  2017-10-19 19:33:19.821525662 +0200
+++ /var/tmp/diff_new_pack.8xDVFO/_new  2017-10-19 19:33:19.821525662 +0200
@@ -1,5 +1,5 @@
 name: openSUSE-release-tools
-version: 20171017.7058f07
-mtime: 1508225006
-commit: 7058f07d7102fd938d4d60126fbae515cdcf9737
+version: 20171018.44e44a6
+mtime: 1508378195
+commit: 44e44a64f0e266c42e524ee3554f3b45729ac4cc
 


Reply via email to