Hello community, here is the log from the commit of package openSUSE-release-tools for openSUSE:Factory checked in at 2018-02-22 15:02:46 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 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 Feb 22 15:02:46 2018 rev:60 rq:578905 version:20180222.009712a Changes: -------- --- /work/SRC/openSUSE:Factory/openSUSE-release-tools/openSUSE-release-tools.changes 2018-02-21 14:13:23.310047263 +0100 +++ /work/SRC/openSUSE:Factory/.openSUSE-release-tools.new/openSUSE-release-tools.changes 2018-02-22 15:02:50.377154370 +0100 @@ -1,0 +2,22 @@ +Thu Feb 22 08:31:28 UTC 2018 - opensuse-releaseteam@opensuse.org + +- Update to version 20180222.009712a: + * ttm: Follow package name changes of Tumbleweed live media + +------------------------------------------------------------------- +Wed Feb 21 09:46:51 UTC 2018 - opensuse-releaseteam@opensuse.org + +- Update to version 20180221.355c0b4: + * Revert "staging: add exceptions for new 000* product files" + +------------------------------------------------------------------- +Wed Feb 21 02:54:26 UTC 2018 - opensuse-releaseteam@opensuse.org + +- Update to version 20180220.f56ccb8: + * pkglistgen: solv_cache_update(): support update repo and 4 way merge. + * pkglistgen: do_dump_solv(): support update repos. + * pkglistgen: solv_merge(): allow array of solv files to merge. + * pkglistgen: solv_merge(): skip when inputs are older than merged. + * osclib/conf: leap: set download-baseurl-update. + +------------------------------------------------------------------- Old: ---- openSUSE-release-tools-20180220.945bf4f.obscpio New: ---- openSUSE-release-tools-20180222.009712a.obscpio ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ openSUSE-release-tools.spec ++++++ --- /var/tmp/diff_new_pack.4QvFFb/_old 2018-02-22 15:02:52.321084441 +0100 +++ /var/tmp/diff_new_pack.4QvFFb/_new 2018-02-22 15:02:52.325084297 +0100 @@ -20,7 +20,7 @@ %define source_dir osc-plugin-factory %define announcer_filename factory-package-news Name: openSUSE-release-tools -Version: 20180220.945bf4f +Version: 20180222.009712a 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.4QvFFb/_old 2018-02-22 15:02:52.361083002 +0100 +++ /var/tmp/diff_new_pack.4QvFFb/_new 2018-02-22 15:02:52.365082858 +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">945bf4f58ff7c66e006cb5d756e252a59bc2ede8</param> + <param name="changesrevision">009712aa8ac50cefc009fe2ead726dd87d8292f4</param> </service> </servicedata> ++++++ openSUSE-release-tools-20180220.945bf4f.obscpio -> openSUSE-release-tools-20180222.009712a.obscpio ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/openSUSE-release-tools-20180220.945bf4f/osclib/conf.py new/openSUSE-release-tools-20180222.009712a/osclib/conf.py --- old/openSUSE-release-tools-20180220.945bf4f/osclib/conf.py 2018-02-20 21:54:36.000000000 +0100 +++ new/openSUSE-release-tools-20180222.009712a/osclib/conf.py 2018-02-22 09:24:37.000000000 +0100 @@ -70,6 +70,7 @@ 'delreq-review': None, 'main-repo': 'standard', 'download-baseurl': 'http://download.opensuse.org/distribution/leap/%(version)s/', + 'download-baseurl-update': 'http://download.opensuse.org/update/leap/%(version)s/', # check_source.py # review-team optionally added by leaper.py. 'repo-checker': 'repo-checker', diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/openSUSE-release-tools-20180220.945bf4f/osclib/freeze_command.py new/openSUSE-release-tools-20180222.009712a/osclib/freeze_command.py --- old/openSUSE-release-tools-20180220.945bf4f/osclib/freeze_command.py 2018-02-20 21:54:36.000000000 +0100 +++ new/openSUSE-release-tools-20180222.009712a/osclib/freeze_command.py 2018-02-22 09:24:37.000000000 +0100 @@ -257,8 +257,6 @@ # If the package is an internal one (e.g _product) if package.startswith('_'): return None - if package.startswith('000'): - return None # Ignore packages with an origing (i.e. with an origin # different from the current project) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/openSUSE-release-tools-20180220.945bf4f/osclib/stagingapi.py new/openSUSE-release-tools-20180222.009712a/osclib/stagingapi.py --- old/openSUSE-release-tools-20180220.945bf4f/osclib/stagingapi.py 2018-02-20 21:54:36.000000000 +0100 +++ new/openSUSE-release-tools-20180222.009712a/osclib/stagingapi.py 2018-02-22 09:24:37.000000000 +0100 @@ -198,7 +198,7 @@ for si in ET.parse(root).getroot().findall('sourceinfo'): pkg = si.get('package') # XXX TODO - Test-DVD-x86_64 is hardcoded here - if pkg in ret and not pkg.startswith('Test-DVD-') and not pkg.startswith('000'): + if pkg in ret and not pkg.startswith('Test-DVD-'): msg = '{} is defined in two projects ({} and {})' if checklinks and pkg in except_pkgs and prj == except_pkgs[pkg]: msg = '' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/openSUSE-release-tools-20180220.945bf4f/pkglistgen.py new/openSUSE-release-tools-20180222.009712a/pkglistgen.py --- old/openSUSE-release-tools-20180220.945bf4f/pkglistgen.py 2018-02-20 21:54:36.000000000 +0100 +++ new/openSUSE-release-tools-20180222.009712a/pkglistgen.py 2018-02-22 09:24:37.000000000 +0100 @@ -31,6 +31,7 @@ import cmdln import logging import urllib2 +import filecmp from osc.core import checkout_package from osc.core import http_GET from osc.core import makeurl @@ -769,11 +770,20 @@ solv_file_nonfree = os.path.join( CACHEDIR, 'repo-{}-{}-{}.solv'.format(nonfree, repo, arch)) - self.solv_merge(solv_file, solv_file_nonfree, solv_file_merged) + self.solv_merge(solv_file_merged, solv_file, solv_file_nonfree) + + def solv_merge(self, solv_merged, *solvs): + solvs = list(solvs) # From tuple. + + if os.path.exists(solv_merged): + modified = map(os.path.getmtime, [solv_merged] + solvs) + if max(modified) <= modified[0]: + # The two inputs were modified before or at the same as merged. + logger.debug('merge skipped for {}'.format(solv_merged)) + return - def solv_merge(self, solv1, solv2, solv_merged): with open(solv_merged, 'w') as handle: - p = subprocess.Popen(['mergesolv', solv1, solv2], stdout=handle) + p = subprocess.Popen(['mergesolv'] + solvs, stdout=handle) p.communicate() if p.returncode: @@ -868,7 +878,8 @@ if self.options.output_dir: build, repo_style = self.dump_solv_build(baseurl) name = '{}/{}.solv'.format(self.options.output_dir, build) - if not opts.overwrite and os.path.exists(name): + # For update repo name never changes so always update. + if not opts.overwrite and repo_style != 'update' and os.path.exists(name): logger.info("%s exists", name) return name ofh = open(name + '.new', 'w') @@ -899,11 +910,21 @@ repo.write(ofh) if name is not None: - os.rename(name + '.new', name) + # Only update file if overwrite or different. + ofh.flush() # Ensure entirely written before comparing. + if not opts.overwrite and os.path.exists(name) and filecmp.cmp(name + '.new', name, shallow=False): + logger.debug('file identical, skip dumping') + os.remove(name + '.new') + else: + os.rename(name + '.new', name) return name def dump_solv_build(self, baseurl): """Determine repo format and build string from remote repository.""" + if 'update' in baseurl: + # Could look at .repo file or repomd.xml, but larger change. + return 'update-' + os.path.basename(os.path.normpath(baseurl)), 'update' + url = urlparse.urljoin(baseurl, 'media.1/media') with requests.get(url) as media: for i, line in enumerate(media.iter_lines()): @@ -1225,18 +1246,26 @@ project_config = conf.config[project] baseurl = project_config.get('download-baseurl') + baseurl_update = project_config.get('download-baseurl-update') if not baseurl: logger.warning('no baseurl configured for {}'.format(project)) continue urls = [urlparse.urljoin(baseurl, 'repo/oss/')] + if baseurl_update: + urls.append(urlparse.urljoin(baseurl_update, 'oss/')) if project_config.get('nonfree'): urls.append(urlparse.urljoin(baseurl, 'repo/non-oss/')) + if baseurl_update: + urls.append(urlparse.urljoin(baseurl_update, 'non-oss/')) names = [] for url in urls: + project_display = project + if 'update' in url: + project_display += ':Update' print('-> do_dump_solv for {}/{}'.format( - project, os.path.basename(os.path.normpath(url)))) + project_display, os.path.basename(os.path.normpath(url)))) logger.debug(url) self.options.output_dir = os.path.join(cache_dir_solv, project) @@ -1252,8 +1281,8 @@ # Merge nonfree solv with free solv or copy free solv as merged. merged = names[0].replace('.solv', '.merged.solv') - if len(names) == 2: - self.solv_merge(names[0], names[1], merged) + if len(names) >= 2: + self.solv_merge(merged, *names) else: shutil.copyfile(names[0], merged) prior.add(merged) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/openSUSE-release-tools-20180220.945bf4f/totest-manager.py new/openSUSE-release-tools-20180222.009712a/totest-manager.py --- old/openSUSE-release-tools-20180220.945bf4f/totest-manager.py 2018-02-20 21:54:36.000000000 +0100 +++ new/openSUSE-release-tools-20180222.009712a/totest-manager.py 2018-02-22 09:24:37.000000000 +0100 @@ -618,9 +618,9 @@ ftp_products = ['_product:openSUSE-ftp-ftp-i586_x86_64', '_product:openSUSE-Addon-NonOss-ftp-ftp-i586_x86_64'] - livecd_products = ['livecd-kde', - 'livecd-gnome', - 'livecd-x11'] + livecd_products = ['livecd-tumbleweed-kde', + 'livecd-tumbleweed-gnome', + 'livecd-tumbleweed-x11'] def __init__(self, *args, **kwargs): ToTestBase.__init__(self, *args, **kwargs) ++++++ openSUSE-release-tools.obsinfo ++++++ --- /var/tmp/diff_new_pack.4QvFFb/_old 2018-02-22 15:02:53.021059261 +0100 +++ /var/tmp/diff_new_pack.4QvFFb/_new 2018-02-22 15:02:53.021059261 +0100 @@ -1,5 +1,5 @@ name: openSUSE-release-tools -version: 20180220.945bf4f -mtime: 1519160076 -commit: 945bf4f58ff7c66e006cb5d756e252a59bc2ede8 +version: 20180222.009712a +mtime: 1519287877 +commit: 009712aa8ac50cefc009fe2ead726dd87d8292f4