Hello community,
here is the log from the commit of package obs-service-tar_scm for
openSUSE:Factory checked in at 2018-07-07 21:53:08
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/obs-service-tar_scm (Old)
and /work/SRC/openSUSE:Factory/.obs-service-tar_scm.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "obs-service-tar_scm"
Sat Jul 7 21:53:08 2018 rev:48 rq:620565 version:0.9.1.1530616709.1329314
Changes:
--------
--- /work/SRC/openSUSE:Factory/obs-service-tar_scm/obs-service-tar_scm.changes
2018-04-27 15:59:57.318911063 +0200
+++
/work/SRC/openSUSE:Factory/.obs-service-tar_scm.new/obs-service-tar_scm.changes
2018-07-07 21:53:15.907708890 +0200
@@ -1,0 +2,14 @@
+Tue Jul 03 19:31:48 UTC 2018 - [email protected]
+
+- Update to version 0.9.1.1530616709.1329314:
+ * improve handling of corrupt git cache directories
+ * only do git stash save/pop if we have a non-empty working tree (#228)
+ * sort imports
+ * don't allow DEBUG_TAR_SCM to change behaviour (#240)
+ * add stub user docs in lieu of something proper (#238)
+ * [dist] fix build for distros not yet supporting Recommends tag
+ * Remove clone_dir if clone fails
+ * python-unittest2 is only required for the optional make check
+ * move python-unittest2 dep to test suite only part (submission by olh)
+
+-------------------------------------------------------------------
Old:
----
obs-service-tar_scm-0.9.0.1523267117.de861d8.tar.gz
New:
----
obs-service-tar_scm-0.9.1.1530616709.1329314.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ obs-service-tar_scm.spec ++++++
--- /var/tmp/diff_new_pack.A5JTEk/_old 2018-07-07 21:53:16.355708320 +0200
+++ /var/tmp/diff_new_pack.A5JTEk/_new 2018-07-07 21:53:16.355708320 +0200
@@ -19,8 +19,8 @@
%bcond_without obs_scm_testsuite
Name: obs-service-tar_scm
-%define version_unconverted 0.9.0.1523267117.de861d8
-Version: 0.9.0.1523267117.de861d8
+%define version_unconverted 0.9.1.1530616709.1329314
+Version: 0.9.1.1530616709.1329314
Release: 0
Summary: An OBS source service: create tar ball from svn/git/hg
License: GPL-2.0-or-later
@@ -51,13 +51,15 @@
BuildRequires: python-dateutil
BuildRequires: python-lxml
BuildRequires: python-mock
+BuildRequires: python-unittest2
%endif
BuildRequires: python >= 2.6
-BuildRequires: python-unittest2
Requires: git-core
+%if 0%{?suse_version} >= 1315
Recommends: bzr
Recommends: mercurial
Recommends: subversion
+%endif
Requires: obs-service-obs_scm-common = %version-%release
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildArch: noarch
@@ -100,9 +102,11 @@
Group: Development/Tools/Building
Provides: obs-service-tar_scm:/usr/lib/obs/service/obs_scm.service
Requires: git-core
+%if 0%{?suse_version} >= 1315
Recommends: bzr
Recommends: mercurial
Recommends: subversion
+%endif
Requires: obs-service-obs_scm-common = %version-%release
%description -n obs-service-obs_scm
@@ -115,9 +119,11 @@
Summary: Handles source downloads defined in appimage.yml files
Group: Development/Tools/Building
Requires: git-core
+%if 0%{?suse_version} >= 1315
Recommends: bzr
Recommends: mercurial
Recommends: subversion
+%endif
Requires: obs-service-obs_scm-common = %version-%release
%description -n obs-service-appimage
@@ -129,9 +135,11 @@
Group: Development/Tools/Building
Provides: obs-service-tar_scm:/usr/lib/obs/service/snapcraft.service
Requires: git-core
+%if 0%{?suse_version} >= 1315
Recommends: bzr
Recommends: mercurial
Recommends: subversion
+%endif
Requires: obs-service-obs_scm-common = %version-%release
%description -n obs-service-snapcraft
++++++ PKGBUILD ++++++
--- /var/tmp/diff_new_pack.A5JTEk/_old 2018-07-07 21:53:16.383708285 +0200
+++ /var/tmp/diff_new_pack.A5JTEk/_new 2018-07-07 21:53:16.383708285 +0200
@@ -1,5 +1,5 @@
pkgname=obs-service-tar_scm
-pkgver=0.8.0.1507129410.0cb2d44
+pkgver=0.9.0.1523267117.de861d8
pkgrel=0
pkgdesc="Source Service for the OpenSUSE Build Service (OBS)"
arch=('any')
@@ -8,7 +8,7 @@
groups=('base-devel')
makedepends=('python2' 'python2-yaml' 'python2-dateutil' 'python2-lxml'
'python2-mock' 'python2-unittest2' 'bzr' 'git' 'mercurial' 'subversion' )
depends=('python2' 'python2-yaml' 'python2-dateutil' 'python2-argparse' 'cpio'
'git' 'bzr' 'mercurial' 'subversion' )
-source=("obs-service-tar_scm-${pkgver}.tar.gz::https://github.com/openSUSE/obs-service-tar_scm/archive/v${pkgver}.tar.gz")
+source=("obs-service-tar_scm-${pkgver}.tar.gz")
provides=('obs-service-tar')
sha256sums=('SKIP')
++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.A5JTEk/_old 2018-07-07 21:53:16.411708249 +0200
+++ /var/tmp/diff_new_pack.A5JTEk/_new 2018-07-07 21:53:16.411708249 +0200
@@ -5,4 +5,4 @@
<param
name="url">git://github.com/M0ses/obs-service-tar_scm.git</param>
<param
name="changesrevision">b742dfc0e12755cf306a95439494b5bdde7c0c61</param></service><service
name="tar_scm">
<param
name="url">git://github.com/openSUSE/obs-service-tar_scm.git</param>
- <param
name="changesrevision">092ed79e144abbfee97fef9aebf1e93bc40ab3fa</param></service></servicedata>
\ No newline at end of file
+ <param
name="changesrevision">e6cc8b8ac6fdba7cf6fb9671d3ccc4bffb10bb0e</param></service></servicedata>
\ No newline at end of file
++++++ obs-service-tar_scm-0.9.0.1523267117.de861d8.tar.gz ->
obs-service-tar_scm-0.9.1.1530616709.1329314.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/obs-service-tar_scm-0.9.0.1523267117.de861d8/README.md
new/obs-service-tar_scm-0.9.1.1530616709.1329314/README.md
--- old/obs-service-tar_scm-0.9.0.1523267117.de861d8/README.md 2018-04-09
11:45:17.000000000 +0200
+++ new/obs-service-tar_scm-0.9.1.1530616709.1329314/README.md 2018-07-03
13:18:29.000000000 +0200
@@ -158,6 +158,23 @@
make install
+## User documentation
+
+There isn't yet any comprehensive user documentation (see [issue
+#238](https://github.com/openSUSE/obs-service-tar_scm/issues/238)),
+but in the meantime, in addition to the information in this README,
+the following resources may be helpful:
+
+- The XML `.service` files which document the parameters for
+ each source service:
+ - the [`tar_scm.service.in`
template](https://github.com/openSUSE/obs-service-tar_scm/blob/master/tar_scm.service.in)
+ which is used to generate `tar_scm.service` and `obs_scm.service`
+ -
[`appimage.service`](https://github.com/openSUSE/obs-service-tar_scm/blob/master/appimage.service)
+ -
[`snapcraft.service`](https://github.com/openSUSE/obs-service-tar_scm/blob/master/snapcraft.service)
+ -
[`tar.service`](https://github.com/openSUSE/obs-service-tar_scm/blob/master/tar.service)
+- The ["Using Source Services"
chapter](https://openbuildservice.org/help/manuals/obs-user-guide/cha.obs.source_service.html)
+ of [the OBS User
Guide](https://openbuildservice.org/help/manuals/obs-user-guide/)
+
## Test suite
See the [TESTING.md](TESTING.md) file.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/obs-service-tar_scm-0.9.0.1523267117.de861d8/TarSCM/cli.py
new/obs-service-tar_scm-0.9.1.1530616709.1329314/TarSCM/cli.py
--- old/obs-service-tar_scm-0.9.0.1523267117.de861d8/TarSCM/cli.py
2018-04-09 11:45:17.000000000 +0200
+++ new/obs-service-tar_scm-0.9.1.1530616709.1329314/TarSCM/cli.py
2018-07-03 13:18:29.000000000 +0200
@@ -140,7 +140,8 @@
args.sslverify = bool(args.sslverify != 'disable')
args.use_obs_scm = bool(args.use_obs_scm)
- # force verbose mode in test-mode
+ # Allow forcing verbose mode from the environment; this
+ # allows debugging when running "osc service disabledrun" etc.
args.verbose = bool(os.getenv('DEBUG_TAR_SCM'))
for attr in args.__dict__.keys():
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/obs-service-tar_scm-0.9.0.1523267117.de861d8/TarSCM/config.py
new/obs-service-tar_scm-0.9.1.1530616709.1329314/TarSCM/config.py
--- old/obs-service-tar_scm-0.9.0.1523267117.de861d8/TarSCM/config.py
2018-04-09 11:45:17.000000000 +0200
+++ new/obs-service-tar_scm-0.9.1.1530616709.1329314/TarSCM/config.py
2018-07-03 13:18:29.000000000 +0200
@@ -34,7 +34,7 @@
self.default_section = 'tar_scm'
# We're in test-mode, so don't let any local site-wide
# or per-user config impact the test suite.
- if os.getenv('DEBUG_TAR_SCM'):
+ if os.getenv('TAR_SCM_CLEAN_ENV'):
logging.info("Ignoring config files: test-mode detected")
# fake a section header for configuration files
@@ -80,7 +80,7 @@
value = None
# We're in test-mode, so don't let any local site-wide
# or per-user config impact the test suite.
- if os.getenv('DEBUG_TAR_SCM'):
+ if os.getenv('TAR_SCM_CLEAN_ENV'):
return value
if section is None and self.fakeheader:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/obs-service-tar_scm-0.9.0.1523267117.de861d8/TarSCM/scm/git.py
new/obs-service-tar_scm-0.9.1.1530616709.1329314/TarSCM/scm/git.py
--- old/obs-service-tar_scm-0.9.0.1523267117.de861d8/TarSCM/scm/git.py
2018-04-09 11:45:17.000000000 +0200
+++ new/obs-service-tar_scm-0.9.1.1530616709.1329314/TarSCM/scm/git.py
2018-07-03 13:18:29.000000000 +0200
@@ -1,7 +1,8 @@
-import sys
-import os
import logging
+import os
import re
+import sys
+
from TarSCM.scm.base import Scm
@@ -16,11 +17,11 @@
# is needed here
scmcmd = ['git']
if self.httpproxy:
- scmcmd += ['-c', 'http.proxy=' +
- self.httpproxy]
+ scmcmd += ['-c', 'http.proxy=' +
+ self.httpproxy]
if self.httpsproxy:
- scmcmd += ['-c', 'https.proxy=' +
- self.httpsproxy]
+ scmcmd += ['-c', 'https.proxy=' +
+ self.httpsproxy]
return scmcmd
def switch_revision(self):
@@ -43,7 +44,8 @@
for rev in revs:
if self._ref_exists(rev):
found_revision = True
- if os.getenv('OSC_VERSION'):
+ if os.getenv('OSC_VERSION') and \
+ len(os.listdir(self.clone_dir)) > 1:
stash_text = self.helpers.safe_run(
self._get_scm_cmd() +
['stash'],
@@ -85,8 +87,12 @@
if self.repocachedir:
command.insert(2, '--mirror')
wdir = os.path.abspath(os.path.join(self.repodir, os.pardir))
- self.helpers.safe_run(
- command, cwd=wdir, interactive=sys.stdout.isatty())
+ try:
+ self.helpers.safe_run(
+ command, cwd=wdir, interactive=sys.stdout.isatty())
+ except SystemExit as exc:
+ os.removedirs(os.path.join(wdir, self.clone_dir))
+ raise exc
self.fetch_specific_revision()
@@ -123,24 +129,37 @@
def update_cache(self):
"""Update sources via git."""
# Force origin to the wanted URL in case it switched
- self.helpers.safe_run(
- self._get_scm_cmd() + ['config', 'remote.origin.url', self.url],
- cwd=self.clone_dir,
- interactive=sys.stdout.isatty()
- )
-
- self.helpers.safe_run(
- self._get_scm_cmd() + ['fetch', '--tags'],
- cwd=self.clone_dir,
- interactive=sys.stdout.isatty()
- )
- self.helpers.safe_run(
- self._get_scm_cmd() + ['fetch'],
- cwd=self.clone_dir,
- interactive=sys.stdout.isatty()
- )
+ try:
+ self.helpers.safe_run(
+ self._get_scm_cmd() + ['config', 'remote.origin.url',
+ self.url],
+ cwd=self.clone_dir,
+ interactive=sys.stdout.isatty()
+ )
- self.fetch_specific_revision()
+ self.helpers.safe_run(
+ self._get_scm_cmd() + ['fetch', '--tags'],
+ cwd=self.clone_dir,
+ interactive=sys.stdout.isatty()
+ )
+ self.helpers.safe_run(
+ self._get_scm_cmd() + ['fetch'],
+ cwd=self.clone_dir,
+ interactive=sys.stdout.isatty()
+ )
+
+ self.fetch_specific_revision()
+ except SystemExit as exc:
+ logging.error("Corrupt clone_dir '%s' detected.", self.clone_dir)
+ obs_service_daemon = os.getenv('OBS_SERVICE_DAEMON')
+ osc_version = os.getenv('OSC_VERSION')
+ if (obs_service_daemon and not osc_version):
+ logging.info("Removing corrupt cache!")
+ os.removedirs(self.clone_dir)
+ self.fetch_upstream_scm()
+ else:
+ logging.info("Please fix corrupt cache directory!")
+ raise exc
def detect_version(self, args):
"""
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/obs-service-tar_scm-0.9.0.1523267117.de861d8/dist/obs-service-tar_scm.spec
new/obs-service-tar_scm-0.9.1.1530616709.1329314/dist/obs-service-tar_scm.spec
---
old/obs-service-tar_scm-0.9.0.1523267117.de861d8/dist/obs-service-tar_scm.spec
2018-04-09 11:45:17.000000000 +0200
+++
new/obs-service-tar_scm-0.9.1.1530616709.1329314/dist/obs-service-tar_scm.spec
2018-07-03 13:18:29.000000000 +0200
@@ -1,7 +1,7 @@
#
# spec file for package obs-service-tar_scm
#
-# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -19,11 +19,11 @@
%bcond_without obs_scm_testsuite
Name: obs-service-tar_scm
-%define version_unconverted 0.8.0.1498846582.8799787
-Version: 0.8.0.1498846582.8799787
+%define version_unconverted 0.9.0.1523267117.de861d8
+Version: 0.9.0.1523267117.de861d8
Release: 0
Summary: An OBS source service: create tar ball from svn/git/hg
-License: GPL-2.0+
+License: GPL-2.0-or-later
Group: Development/Tools/Building
Url: https://github.com/openSUSE/obs-service-tar_scm
Source: %{name}-%{version}.tar.gz
@@ -31,8 +31,8 @@
# based distributions
#Patch0: 0001-Debianization-disable-running-mercurial-tests.patch
%if %{with obs_scm_testsuite}
-BuildRequires: git-core
BuildRequires: bzr
+BuildRequires: git-core
BuildRequires: mercurial
BuildRequires: subversion
%if 0%{?fedora_version} || 0%{?rhel_version} || 0%{?centos_version}
@@ -51,13 +51,15 @@
BuildRequires: python-dateutil
BuildRequires: python-lxml
BuildRequires: python-mock
+BuildRequires: python-unittest2
%endif
BuildRequires: python >= 2.6
-BuildRequires: python-unittest2
Requires: git-core
+%if 0%{?suse_version} >= 1315
Recommends: bzr
Recommends: mercurial
Recommends: subversion
+%endif
Requires: obs-service-obs_scm-common = %version-%release
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildArch: noarch
@@ -100,9 +102,11 @@
Group: Development/Tools/Building
Provides: obs-service-tar_scm:/usr/lib/obs/service/obs_scm.service
Requires: git-core
+%if 0%{?suse_version} >= 1315
Recommends: bzr
Recommends: mercurial
Recommends: subversion
+%endif
Requires: obs-service-obs_scm-common = %version-%release
%description -n obs-service-obs_scm
@@ -115,9 +119,11 @@
Summary: Handles source downloads defined in appimage.yml files
Group: Development/Tools/Building
Requires: git-core
+%if 0%{?suse_version} >= 1315
Recommends: bzr
Recommends: mercurial
Recommends: subversion
+%endif
Requires: obs-service-obs_scm-common = %version-%release
%description -n obs-service-appimage
@@ -129,9 +135,11 @@
Group: Development/Tools/Building
Provides: obs-service-tar_scm:/usr/lib/obs/service/snapcraft.service
Requires: git-core
+%if 0%{?suse_version} >= 1315
Recommends: bzr
Recommends: mercurial
Recommends: subversion
+%endif
Requires: obs-service-obs_scm-common = %version-%release
%description -n obs-service-snapcraft
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/obs-service-tar_scm-0.9.0.1523267117.de861d8/tests/testenv.py
new/obs-service-tar_scm-0.9.1.1530616709.1329314/tests/testenv.py
--- old/obs-service-tar_scm-0.9.0.1523267117.de861d8/tests/testenv.py
2018-04-09 11:45:17.000000000 +0200
+++ new/obs-service-tar_scm-0.9.1.1530616709.1329314/tests/testenv.py
2018-07-03 13:18:29.000000000 +0200
@@ -44,8 +44,8 @@
return
print("--v-v-- begin setupClass for %s --v-v--" % cls.__name__)
ScmInvocationLogs.setup_bin_wrapper(cls.scm, cls.tmp_dir)
- os.putenv('DEBUG_TAR_SCM', 'yes')
- os.environ['DEBUG_TAR_SCM'] = 'yes'
+ os.putenv('TAR_SCM_CLEAN_ENV', 'yes')
+ os.environ['TAR_SCM_CLEAN_ENV'] = 'yes'
cls.is_setup = True
print("--^-^-- end setupClass for %s --^-^--" % cls.__name__)
print
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/obs-service-tar_scm-0.9.0.1523267117.de861d8/tests/unittestcases.py
new/obs-service-tar_scm-0.9.1.1530616709.1329314/tests/unittestcases.py
--- old/obs-service-tar_scm-0.9.0.1523267117.de861d8/tests/unittestcases.py
2018-04-09 11:45:17.000000000 +0200
+++ new/obs-service-tar_scm-0.9.1.1530616709.1329314/tests/unittestcases.py
2018-07-03 13:18:29.000000000 +0200
@@ -109,21 +109,21 @@
tc_name = inspect.stack()[0][3]
try:
- tmp = os.environ['DEBUG_TAR_SCM']
+ tmp = os.environ['TAR_SCM_CLEAN_ENV']
except KeyError:
tmp = None
- os.environ['DEBUG_TAR_SCM'] = "1"
+ os.environ['TAR_SCM_CLEAN_ENV'] = "1"
files = [[os.path.join(self.fixtures_dir, tc_name, 'test.rc'), True]]
var = Config(files).get(None, 'var')
self.assertEqual(var, None)
if tmp:
- os.environ['DEBUG_TAR_SCM'] = tmp
+ os.environ['TAR_SCM_CLEAN_ENV'] = tmp
else:
- os.environ['DEBUG_TAR_SCM'] = ''
- os.unsetenv('DEBUG_TAR_SCM')
+ os.environ['TAR_SCM_CLEAN_ENV'] = ''
+ os.unsetenv('TAR_SCM_CLEAN_ENV')
def test_changes_get_chga_args(self):
'''Test if getting changesauthor from cli args works'''