Hello community,
here is the log from the commit of package openSUSE-release-tools for
openSUSE:Factory checked in at 2017-11-15 17:03:32
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/openSUSE-release-tools (Old)
and /work/SRC/openSUSE:Factory/.openSUSE-release-tools.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "openSUSE-release-tools"
Wed Nov 15 17:03:32 2017 rev:20 rq:541959 version:20171115.6140695
Changes:
--------
---
/work/SRC/openSUSE:Factory/openSUSE-release-tools/openSUSE-release-tools.changes
2017-11-12 18:11:07.341641991 +0100
+++
/work/SRC/openSUSE:Factory/.openSUSE-release-tools.new/openSUSE-release-tools.changes
2017-11-15 17:03:34.507345222 +0100
@@ -1,0 +2,7 @@
+Wed Nov 15 07:34:36 UTC 2017 - [email protected]
+
+- Update to version 20171115.6140695:
+ * compare_pkglist: displays deleted package
+ * compare_pkglist: misc improvements
+
+-------------------------------------------------------------------
Old:
----
openSUSE-release-tools-20171112.b690943.obscpio
New:
----
openSUSE-release-tools-20171115.6140695.obscpio
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ openSUSE-release-tools.spec ++++++
--- /var/tmp/diff_new_pack.OT79yc/_old 2017-11-15 17:03:36.163284589 +0100
+++ /var/tmp/diff_new_pack.OT79yc/_new 2017-11-15 17:03:36.163284589 +0100
@@ -20,7 +20,7 @@
%define source_dir osc-plugin-factory
%define announcer_filename factory-package-news
Name: openSUSE-release-tools
-Version: 20171112.b690943
+Version: 20171115.6140695
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.OT79yc/_old 2017-11-15 17:03:36.203283124 +0100
+++ /var/tmp/diff_new_pack.OT79yc/_new 2017-11-15 17:03:36.207282978 +0100
@@ -1,6 +1,6 @@
<servicedata>
<service name="tar_scm">
<param
name="url">https://github.com/openSUSE/osc-plugin-factory.git</param>
- <param
name="changesrevision">b6909435e9c6f4da1d1209378797b0ae78769473</param>
+ <param
name="changesrevision">6140695f1d908bccc9be129dc8487ae2b0d2923b</param>
</service>
</servicedata>
++++++ openSUSE-release-tools-20171112.b690943.obscpio ->
openSUSE-release-tools-20171115.6140695.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/openSUSE-release-tools-20171112.b690943/compare_pkglist.py
new/openSUSE-release-tools-20171115.6140695/compare_pkglist.py
--- old/openSUSE-release-tools-20171112.b690943/compare_pkglist.py
2017-11-12 11:59:03.000000000 +0100
+++ new/openSUSE-release-tools-20171115.6140695/compare_pkglist.py
2017-11-15 08:28:36.000000000 +0100
@@ -40,10 +40,12 @@
http_POST = osc.core.http_POST
class CompareList(object):
- def __init__(self, old_prj, new_prj, verbose):
+ def __init__(self, old_prj, new_prj, verbose, newonly, removedonly):
self.new_prj = new_prj
self.old_prj = old_prj
self.verbose = verbose
+ self.newonly = newonly
+ self.removedonly = removedonly
self.apiurl = osc.conf.config['apiurl']
self.debug = osc.conf.config['debug']
@@ -56,6 +58,19 @@
return packages
+ def removed_pkglist(self, project):
+ if project.startswith('SUSE:'):
+ apiurl = 'https://api.suse.de'
+ else:
+ apiurl = self.apiurl
+ query =
"match=state/@name='accepted'+and+(action/target/@project='{}'+and+action/@type='delete')".format(project)
+ url = makeurl(apiurl, ['search', 'request'], query)
+ f = http_GET(url)
+ root = ET.parse(f).getroot()
+ packages = [t.get('package') for t in
root.findall('./request/action/target')]
+
+ return packages
+
def is_linked_package(self, project, package):
u = makeurl(self.apiurl, ['source', project, package])
root = ET.parse(http_GET(u)).getroot()
@@ -86,31 +101,41 @@
"""Main method"""
# get souce packages from target
print 'Gathering the package list from %s' % self.old_prj
- old_packages = self.get_source_packages(self.old_prj)
+ source = self.get_source_packages(self.old_prj)
print 'Gathering the package list from %s' % self.new_prj
- new_packages = self.get_source_packages(self.new_prj)
+ target = self.get_source_packages(self.new_prj)
+ removed_packages = self.removed_pkglist(self.old_prj)
- for pkg in old_packages:
- if pkg not in new_packages:
- logging.info('%s is not in %s' % (pkg, self.new_prj))
- else:
- # ignore the second specfile package
- linked = self.is_linked_package(self.old_prj, pkg)
- if linked is not None:
+ if not self.removedonly:
+ for pkg in source:
+ if pkg.startswith('000'):
continue
- diff = self.check_diff(pkg, self.old_prj, self.new_prj)
- if diff is not False:
- print '%s/%s has different source than %s' %
(self.new_prj, pkg, self.old_prj)
- if self.verbose:
- print diff
+ if pkg not in target:
+ # ignore the second specfile package
+ linked = self.is_linked_package(self.old_prj, pkg)
+ if linked is not None:
+ continue
+
+ print("New package than {:<8} - {}".format(self.new_prj,
pkg))
+ elif not self.newonly:
+ diff = self.check_diff(pkg, self.old_prj, self.new_prj)
+ if diff:
+ print("Different source in {:<8} -
{}".format(self.new_prj, pkg))
+ if self.verbose:
+ print("=== Diff ===\n{}".format(diff))
+
+ for pkg in removed_packages:
+ if pkg in target:
+ print("Deleted package in {:<8} - {}".format(self.old_prj,
pkg))
def main(args):
# Configure OSC
osc.conf.get_config(override_apiurl=args.apiurl)
osc.conf.config['debug'] = args.debug
- uc = CompareList(args.old_prj, args.new_prj, args.verbose)
+ uc = CompareList(args.old_prj, args.new_prj, args.verbose, args.newonly,
+ args.removedonly)
uc.crawl()
if __name__ == '__main__':
@@ -127,6 +152,10 @@
default=OPENSUSE)
parser.add_argument('-v', '--verbose', action='store_true',
help='show the diff')
+ parser.add_argument('--newonly', action='store_true',
+ help='show new package only')
+ parser.add_argument('--removedonly', action='store_true',
+ help='show removed package but exists in target')
args = parser.parse_args()
++++++ openSUSE-release-tools.obsinfo ++++++
--- /var/tmp/diff_new_pack.OT79yc/_old 2017-11-15 17:03:36.843259692 +0100
+++ /var/tmp/diff_new_pack.OT79yc/_new 2017-11-15 17:03:36.847259545 +0100
@@ -1,5 +1,5 @@
name: openSUSE-release-tools
-version: 20171112.b690943
-mtime: 1510484343
-commit: b6909435e9c6f4da1d1209378797b0ae78769473
+version: 20171115.6140695
+mtime: 1510730916
+commit: 6140695f1d908bccc9be129dc8487ae2b0d2923b