Hello community, here is the log from the commit of package spec-cleaner for openSUSE:Factory checked in at 2018-01-24 15:30:49 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/spec-cleaner (Old) and /work/SRC/openSUSE:Factory/.spec-cleaner.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "spec-cleaner" Wed Jan 24 15:30:49 2018 rev:47 rq:568515 version:1.0.2 Changes: -------- --- /work/SRC/openSUSE:Factory/spec-cleaner/spec-cleaner.changes 2017-12-08 12:59:41.416696323 +0100 +++ /work/SRC/openSUSE:Factory/.spec-cleaner.new/spec-cleaner.changes 2018-01-24 15:30:51.905349990 +0100 @@ -1,0 +2,9 @@ +Tue Jan 23 10:01:37 UTC 2018 - [email protected] + +- Version update to 1.0.2 bsc#1077177: + * Allow changelog-year specification via cmdline + * Switch to pytest + * Add groups for rust + * Fix bug in otherprovides removal + +------------------------------------------------------------------- Old: ---- spec-cleaner-1.0.1.tar.gz New: ---- spec-cleaner-1.0.2.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ spec-cleaner.spec ++++++ --- /var/tmp/diff_new_pack.cEnbl2/_old 2018-01-24 15:30:52.885304158 +0100 +++ /var/tmp/diff_new_pack.cEnbl2/_new 2018-01-24 15:30:52.889303971 +0100 @@ -1,7 +1,7 @@ # # spec file for package spec-cleaner # -# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany. # Copyright (c) 2012 Vincent Untz <[email protected]> # # All modifications and additions to the file contributed by third parties @@ -20,7 +20,7 @@ # This is used for Fedora, we need to sync this %{!?py3_ver: %define py3_ver %{python3_version}} Name: spec-cleaner -Version: 1.0.1 +Version: 1.0.2 Release: 0 Summary: .spec file cleaner License: BSD-3-Clause @@ -33,8 +33,9 @@ Source4: debian.rules Source5: %{name}.dsc BuildRequires: python3-devel -BuildRequires: python3-mock -BuildRequires: python3-nose +BuildRequires: python3-pytest +BuildRequires: python3-pytest-cov +BuildRequires: python3-pytest-runner BuildRequires: python3-setuptools # For the pkg_resources used in the binary loader Requires: python3-setuptools ++++++ spec-cleaner-1.0.1.tar.gz -> spec-cleaner-1.0.2.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-1.0.1/.gitignore new/spec-cleaner-spec-cleaner-1.0.2/.gitignore --- old/spec-cleaner-spec-cleaner-1.0.1/.gitignore 2017-12-06 16:42:43.000000000 +0100 +++ new/spec-cleaner-spec-cleaner-1.0.2/.gitignore 2018-01-23 10:50:09.000000000 +0100 @@ -4,6 +4,7 @@ *.egg-info/ *.pyc .*.swp +.cache .coverage .coveralls.yml .tox diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-1.0.1/.travis.yml new/spec-cleaner-spec-cleaner-1.0.2/.travis.yml --- old/spec-cleaner-spec-cleaner-1.0.1/.travis.yml 2017-12-06 16:42:43.000000000 +0100 +++ new/spec-cleaner-spec-cleaner-1.0.2/.travis.yml 2018-01-23 10:50:09.000000000 +0100 @@ -4,22 +4,17 @@ packages: - rpm language: python -matrix: - include: - - python: 2.7 - env: TOX_ENV=py27 - - python: 3.3 - env: TOX_ENV=py33 - - python: 3.4 - env: TOX_ENV=py34 - - python: 3.5 - env: TOX_ENV=py35 - - python: 3.6 - env: TOX_ENV=py36 +python: + - "2.7" + - "3.4" + - "3.5" + - "3.6" install: -- pip install tox + - pip install tox tox-travis coveralls script: -- tox -e $TOX_ENV + - tox +after_success: + - coveralls deploy: provider: pypi user: suse diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-1.0.1/data/allowed_groups.txt new/spec-cleaner-spec-cleaner-1.0.2/data/allowed_groups.txt --- old/spec-cleaner-spec-cleaner-1.0.1/data/allowed_groups.txt 2017-12-06 16:42:43.000000000 +0100 +++ new/spec-cleaner-spec-cleaner-1.0.2/data/allowed_groups.txt 2018-01-23 10:50:09.000000000 +0100 @@ -36,6 +36,7 @@ Development/Languages/PHP Development/Languages/Python Development/Languages/Ruby +Development/Languages/Rust Development/Languages/Scheme Development/Languages/Tcl Development/Libraries/C and C++ @@ -49,6 +50,7 @@ Development/Libraries/Perl Development/Libraries/PHP Development/Libraries/Python +Development/Libraries/Rust Development/Libraries/Tcl Development/Libraries/X11 Development/Libraries/YaST diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-1.0.1/pytest.ini new/spec-cleaner-spec-cleaner-1.0.2/pytest.ini --- old/spec-cleaner-spec-cleaner-1.0.1/pytest.ini 1970-01-01 01:00:00.000000000 +0100 +++ new/spec-cleaner-spec-cleaner-1.0.2/pytest.ini 2018-01-23 10:50:09.000000000 +0100 @@ -0,0 +1,4 @@ +[pytest] +addopts = -v --cov=spec_cleaner +python_files = *-tests.py +testpaths = tests diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-1.0.1/setup.cfg new/spec-cleaner-spec-cleaner-1.0.2/setup.cfg --- old/spec-cleaner-spec-cleaner-1.0.1/setup.cfg 1970-01-01 01:00:00.000000000 +0100 +++ new/spec-cleaner-spec-cleaner-1.0.2/setup.cfg 2018-01-23 10:50:09.000000000 +0100 @@ -0,0 +1,2 @@ +[aliases] +test=pytest diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-1.0.1/setup.py new/spec-cleaner-spec-cleaner-1.0.2/setup.py --- old/spec-cleaner-spec-cleaner-1.0.1/setup.py 2017-12-06 16:42:43.000000000 +0100 +++ new/spec-cleaner-spec-cleaner-1.0.2/setup.py 2018-01-23 10:50:09.000000000 +0100 @@ -26,9 +26,8 @@ platforms=['Linux'], keywords=['SUSE', 'RPM', '.spec', 'cleaner'], - tests_require=['mock', 'nose'], - - test_suite="nose.collector", + setup_requires=['pytest-runner'], + tests_require=['pytest', 'pytest-cov'], packages=['spec_cleaner'], diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-1.0.1/spec_cleaner/__init__.py new/spec-cleaner-spec-cleaner-1.0.2/spec_cleaner/__init__.py --- old/spec-cleaner-spec-cleaner-1.0.1/spec_cleaner/__init__.py 2017-12-06 16:42:43.000000000 +0100 +++ new/spec-cleaner-spec-cleaner-1.0.2/spec_cleaner/__init__.py 2018-01-23 10:50:09.000000000 +0100 @@ -7,12 +7,13 @@ import os import sys import argparse +from datetime import datetime from .rpmexception import RpmWrongArgs, RpmException from .rpmcleaner import RpmSpecCleaner -__version__ = '1.0.1' +__version__ = '1.0.2' def process_args(argv): @@ -46,6 +47,8 @@ help='do not convert variables bracketing (%%{macro}) and keep it as it was on the input') parser.add_argument('--no-copyright', action='store_true', help='do not include official SUSE copyright hear and just keep what is present') + parser.add_argument('--copyright-year', metavar='YYYY', type=int, default=datetime.now().year, + help='year to insert into the copyright header when re-generating it') output_group.add_argument('-o', '--output', default='', help='specify the output file for the cleaned spec content.') parser.add_argument('-p', '--pkgconfig', action='store_true', @@ -88,6 +91,7 @@ 'minimal': options.minimal, 'no_curlification': options.no_curlification, 'no_copyright': options.no_copyright, + 'copyright_year': options.copyright_year, 'perl': options.perl, 'tex': options.tex, 'cmake': options.cmake, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-1.0.1/spec_cleaner/rpmcopyright.py new/spec-cleaner-spec-cleaner-1.0.2/spec_cleaner/rpmcopyright.py --- old/spec-cleaner-spec-cleaner-1.0.1/spec_cleaner/rpmcopyright.py 2017-12-06 16:42:43.000000000 +0100 +++ new/spec-cleaner-spec-cleaner-1.0.2/spec_cleaner/rpmcopyright.py 2018-01-23 10:50:09.000000000 +0100 @@ -17,6 +17,7 @@ def __init__(self, options): Section.__init__(self, options) self.no_copyright = options['no_copyright'] + self.year = options['copyright_year'] self.copyrights = [] self.buildrules = [] self.my_copyright = '' @@ -29,8 +30,7 @@ #'''.format(specname)) def _create_default_copyright(self): - year = datetime.date.today().year - self.my_copyright = '# Copyright (c) {0} SUSE LINUX GmbH, Nuernberg, Germany.'.format(year) + self.my_copyright = '# Copyright (c) {0} SUSE LINUX GmbH, Nuernberg, Germany.'.format(self.year) def _add_copyright(self): self._create_default_copyright() diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-1.0.1/spec_cleaner/rpmregexp.py new/spec-cleaner-spec-cleaner-1.0.2/spec_cleaner/rpmregexp.py --- old/spec-cleaner-spec-cleaner-1.0.1/spec_cleaner/rpmregexp.py 2017-12-06 16:42:43.000000000 +0100 +++ new/spec-cleaner-spec-cleaner-1.0.2/spec_cleaner/rpmregexp.py 2018-01-23 10:50:09.000000000 +0100 @@ -119,7 +119,7 @@ # rpmfiles re_compression = re.compile(r'\.(gz|\*)$') - re_defattr = re.compile(r'^\s*%defattr\s*\(\s*(-|(0)?644)\s*,\s*root\s*,\s*root\s*(,\s*(-|(0)?755)\s*)?\)\s*') + re_defattr = re.compile(r'^\s*%defattr\s*\(\s*-\s*,\s*root\s*,\s*root\s*(,\s*-\s*)?\)\s*') # patches/sources re_ptch = re.compile(r'%{P:(\d+)}') diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-1.0.1/spec_cleaner/rpmrequirestoken.py new/spec-cleaner-spec-cleaner-1.0.2/spec_cleaner/rpmrequirestoken.py --- old/spec-cleaner-spec-cleaner-1.0.1/spec_cleaner/rpmrequirestoken.py 2017-12-06 16:42:43.000000000 +0100 +++ new/spec-cleaner-spec-cleaner-1.0.2/spec_cleaner/rpmrequirestoken.py 2018-01-23 10:50:09.000000000 +0100 @@ -38,7 +38,7 @@ # if there is otherproviders codeblock just ommit it if name.startswith('otherproviders('): name = name.rstrip(')') - name = name.lstrip('otherproviders(') + name = name.replace('otherproviders(', '') return name def __str__(self): diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-1.0.1/tests/acceptance-tests.py new/spec-cleaner-spec-cleaner-1.0.2/tests/acceptance-tests.py --- old/spec-cleaner-spec-cleaner-1.0.1/tests/acceptance-tests.py 2017-12-06 16:42:43.000000000 +0100 +++ new/spec-cleaner-spec-cleaner-1.0.2/tests/acceptance-tests.py 2018-01-23 10:50:09.000000000 +0100 @@ -3,22 +3,29 @@ import glob import os -import shutil -import tempfile +from shutil import copyfile import difflib -import datetime -from nose.tools import raises +import pytest from spec_cleaner import RpmException from spec_cleaner import RpmSpecCleaner -class NewDate(datetime.date): - @classmethod - def today(cls): - return cls(2013, 1, 1) [email protected](scope='session') +def tests(): + """ + Generate list of tests we are going to use according to what is on hdd + """ + testglob = os.path.join('tests', 'in', '*.spec') + return [os.path.basename(f) for f in glob.glob(testglob)] -datetime.date = NewDate [email protected](scope='session') +def space_tests(): + """ + Generate list of tests we are going to use according to what is on hdd + """ + testglob = os.path.join('tests', 'keep-space', '*.spec') + return [os.path.basename(f) for f in glob.glob(testglob)] class TestCompare(object): @@ -34,118 +41,78 @@ 'minimal': False, 'no_curlification': False, 'no_copyright': True, + 'copyright_year': 2013, 'tex': False, 'perl': False, 'cmake': False, 'keep_space': False, } - def _difftext(self, lines1, lines2, junk=None): - junk = junk or (' ', '\t') - # result is a generator - result = difflib.ndiff(lines1, lines2, charjunk=lambda x: x in junk) - read = [] - for line in result: - read.append(line) - # lines that don't start with a ' ' are diff ones - if not line.startswith(' '): - assert False, ''.join(read + list(result)) - - def assertStreamEqual(self, stream1, stream2, junk=None): - """compare two streams (using difflib and readlines())""" - # if stream2 is stream2, readlines() on stream1 will also read lines - # in stream2, so they'll appear different, although they're not - if stream1 is stream2: - return - # make sure we compare from the beginning of the stream - stream1.seek(0) - stream2.seek(0) - # ocmpare - self._difftext(stream1.readlines(), stream2.readlines(), junk) + @pytest.fixture(scope='function') + def tmpfile(self, tmpdir_factory): + tmpfile = tmpdir_factory.mktemp('run', numbered=True).join('testing.spec') + return str(tmpfile) - def _list_tests(self, directory='in'): - """ - Generate list of tests we are going to use according to what is on hdd - """ - testglob = os.path.join('tests', directory, '*.spec') - return [os.path.basename(f) for f in glob.glob(testglob)] - - def _run_individual_test(self, test, compare_dir, infile=None, outfile=None, options=None, **kwargs): + def _run_individual_test(self, test, compare_dir, infile=None, outfile=None, options={}): """ Run the cleaner as specified and store the output for further comparison. """ - with tempfile.NamedTemporaryFile() as default_tmp_file: - if infile is None: - infile = os.path.join('tests', 'in', test) - - if outfile is None: - outfile = default_tmp_file.name - - full_options = { - 'specfile': infile, - 'output': outfile, - } - full_options.update(self.option_presets) - full_options.update(kwargs) - full_options.update(options or {}) - - cleaner = RpmSpecCleaner(full_options) - cleaner.run() - - if compare_dir is not None: - compare = os.path.join('tests', compare_dir, test) - testfile = full_options['inline'] and infile or outfile - with open(compare) as ref, open(testfile) as test: - self.assertStreamEqual(ref, test) - - def _compare_and_rerun(self, compare_dir, **kwargs): - for test in self._list_tests(): - with tempfile.NamedTemporaryFile(suffix="-"+test) as tmpfile: - tmp = tmpfile.name - yield self._run_individual_test, test, compare_dir, None, tmp, kwargs - yield self._run_individual_test, test, compare_dir, tmp, None, kwargs - - def test_normal_outputs(self): - for testcase in self._compare_and_rerun('out', pkgconfig=True): - yield testcase - - def test_minimal_outputs(self): - for testcase in self._compare_and_rerun('out-minimal', pkgconfig=True, minimal=True): - yield testcase - - def test_copyright_output(self): - self._run_individual_test('header.spec', 'header', minimal=True, no_copyright=False) - - def test_keep_space_output(self): - for test in self._list_tests('keep-space'): - self._run_individual_test(test, 'keep-space', keep_space=True) + if infile is None: + infile = os.path.join('tests', 'in', test) - def test_pkgconfig_disabled_output(self): - self._run_individual_test('pkgconfrequires.spec', 'out', pkgconfig=False) + full_options = { + 'specfile': infile, + 'output': outfile, + } + full_options.update(self.option_presets) + full_options.update(options) + + cleaner = RpmSpecCleaner(full_options) + cleaner.run() + + if compare_dir is not None: + compare = os.path.join('tests', compare_dir, test) + testfile = full_options['inline'] and infile or outfile + with open(compare) as ref, open(testfile) as test: + assert ref.read() == test.read() + + def _compare_and_rerun(self, test, compare_dir, tmpfile, options={}): + self._run_individual_test(test, compare_dir, None, tmpfile, options) + tmpfile_rerun = tmpfile + '_rerun' + self._run_individual_test(test, compare_dir, tmpfile, tmpfile_rerun, options) + + @pytest.mark.parametrize('test', tests()) + def test_normal_outputs(self, tmpfile, test): + self._compare_and_rerun(test, 'out', tmpfile, {'pkgconfig': True}) + + @pytest.mark.parametrize('test', tests()) + def test_minimal_outputs(self, test, tmpfile): + self._compare_and_rerun(test, 'out-minimal', tmpfile, {'pkgconfig': True, 'minimal': True}) + + @pytest.mark.parametrize('test', space_tests()) + def test_keep_space_output(self, tmpfile, test): + self._compare_and_rerun(test, 'keep-space', tmpfile, options={'keep_space': True}) - def test_inline_function(self): - test = self._list_tests()[0] + def test_inline_function(self, tmpfile): + test = 'bconds.spec' infile = os.path.join('tests', 'in', test) - with tempfile.NamedTemporaryFile() as tmpfile: - shutil.copyfile(infile, tmpfile.name) - self._run_individual_test(test, None, - infile=tmpfile.name, outfile='', - pkgconfig=True, inline=True) - - def test_regular_output(self): - test = self._list_tests()[0] - self._run_individual_test(test, None, outfile='') - - @raises(RpmException) - def test_diff_function(self): - test = self._list_tests()[0] - self._run_individual_test(test, None, outfile='', diff=True, diff_prog='error') - - def test_tex_output(self): - self._run_individual_test('tex.spec', 'tex', tex=True) - - def test_perl_output(self): - self._run_individual_test('perl.spec', 'perl', perl=True) + copyfile(infile, tmpfile) + self._run_individual_test(test, None, infile=tmpfile, outfile='', options={'pkgconfig': True, 'inline': True}) - def test_cmake_output(self): - self._run_individual_test('cmake.spec', 'cmake', cmake=True) + def test_diff_function(self, tmpfile): + test = 'bconds.spec' + with pytest.raises(RpmException): + self._run_individual_test(test, None, outfile='', options={'diff': True, 'diff_prog':'error'}) + + @pytest.mark.parametrize( + 'test, compare_dir, options', + [ + ('header.spec', 'header', {'minimal': True, 'no_copyright': False}), + ('pkgconfrequires.spec', 'out', {'pkgconfig': False}), + ('tex.spec', 'tex', {'tex': True}), + ('perl.spec', 'perl', {'perl': True}), + ('cmake.spec', 'cmake', {'cmake': True}), + ] + ) + def test_single_output(self, tmpfile, test, compare_dir, options): + self._run_individual_test(test, compare_dir, outfile=tmpfile, options=options) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-1.0.1/tests/fileutils-tests.py new/spec-cleaner-spec-cleaner-1.0.2/tests/fileutils-tests.py --- old/spec-cleaner-spec-cleaner-1.0.1/tests/fileutils-tests.py 2017-12-06 16:42:43.000000000 +0100 +++ new/spec-cleaner-spec-cleaner-1.0.2/tests/fileutils-tests.py 2018-01-23 10:50:09.000000000 +0100 @@ -1,38 +1,37 @@ #!/usr/bin/env python # -*- coding: utf-8 -*- -import unittest -from nose.tools import raises +import pytest from spec_cleaner.fileutils import FileUtils from spec_cleaner import RpmException -class TestFileutils(unittest.TestCase): +class TestFileutils(object): """ We run few tests to ensure fileutils class works fine """ - def setUp(self): + def setup_class(self): """ Declare global scope variables for further use. """ self.fileutils = FileUtils() - @raises(RpmException) def test_open_assertion(self): - self.fileutils.open('missing-file.txt', 'r') + with pytest.raises(RpmException): + self.fileutils.open('missing-file.txt', 'r') - @raises(RpmException) def test_open_datafile_assertion(self): - self.fileutils.open_datafile('missing-file.txt') + with pytest.raises(RpmException): + self.fileutils.open_datafile('missing-file.txt') def test_open(self): self.fileutils.open('tests/fileutils-tests.py', 'r') self.fileutils.close() - self.assertEqual(None, self.fileutils.f) + assert self.fileutils.f is None def test_open_datafile(self): self.fileutils.open_datafile('excludes-bracketing.txt') self.fileutils.close() - self.assertEqual(None, self.fileutils.f) + assert self.fileutils.f is None diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-1.0.1/tests/in/conflicts.spec new/spec-cleaner-spec-cleaner-1.0.2/tests/in/conflicts.spec --- old/spec-cleaner-spec-cleaner-1.0.1/tests/in/conflicts.spec 2017-12-06 16:42:43.000000000 +0100 +++ new/spec-cleaner-spec-cleaner-1.0.2/tests/in/conflicts.spec 2018-01-23 10:50:09.000000000 +0100 @@ -2,3 +2,4 @@ Conflicts: z a Conflicts: openais <= 0.89, openais-devel <= 0.89 Conflicts: otherproviders(foo) +Conflicts: otherproviders(rust) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-1.0.1/tests/out/conflicts.spec new/spec-cleaner-spec-cleaner-1.0.2/tests/out/conflicts.spec --- old/spec-cleaner-spec-cleaner-1.0.1/tests/out/conflicts.spec 2017-12-06 16:42:43.000000000 +0100 +++ new/spec-cleaner-spec-cleaner-1.0.2/tests/out/conflicts.spec 2018-01-23 10:50:09.000000000 +0100 @@ -3,6 +3,7 @@ Conflicts: foo Conflicts: openais <= 0.89 Conflicts: openais-devel <= 0.89 +Conflicts: rust Conflicts: z %changelog diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-1.0.1/tests/out/defattr.spec new/spec-cleaner-spec-cleaner-1.0.2/tests/out/defattr.spec --- old/spec-cleaner-spec-cleaner-1.0.1/tests/out/defattr.spec 2017-12-06 16:42:43.000000000 +0100 +++ new/spec-cleaner-spec-cleaner-1.0.2/tests/out/defattr.spec 2018-01-23 10:50:09.000000000 +0100 @@ -1,4 +1,8 @@ %files +%defattr(0644, root, root,0755) +%defattr(0644,root,root) +%defattr (644,root,root,755) +%defattr(644, root,root) %doc ChangeLog %changelog diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-1.0.1/tests/out-minimal/conflicts.spec new/spec-cleaner-spec-cleaner-1.0.2/tests/out-minimal/conflicts.spec --- old/spec-cleaner-spec-cleaner-1.0.1/tests/out-minimal/conflicts.spec 2017-12-06 16:42:43.000000000 +0100 +++ new/spec-cleaner-spec-cleaner-1.0.2/tests/out-minimal/conflicts.spec 2018-01-23 10:50:09.000000000 +0100 @@ -3,6 +3,7 @@ Conflicts: foo Conflicts: openais <= 0.89 Conflicts: openais-devel <= 0.89 +Conflicts: rust Conflicts: z %changelog diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-1.0.1/tox.ini new/spec-cleaner-spec-cleaner-1.0.2/tox.ini --- old/spec-cleaner-spec-cleaner-1.0.1/tox.ini 2017-12-06 16:42:43.000000000 +0100 +++ new/spec-cleaner-spec-cleaner-1.0.2/tox.ini 2018-01-23 10:50:09.000000000 +0100 @@ -1,5 +1,5 @@ [tox] -envlist = py27,py33,py34,py35,py36 +envlist = py27,py34,py35,py36 minversion = 1.6 skipsdist = True @@ -10,14 +10,13 @@ setenv = VIRTUAL_ENV={envdir} deps = coveralls - mock - nose + pytest + pytest_runner + pytest-cov coverage commands = - coverage run --source=spec_cleaner setup.py test - coverage report -m - - coveralls --verbose + pytest [testenv:venv] commands = {posargs} ++++++ spec-cleaner.dsc ++++++ --- /var/tmp/diff_new_pack.cEnbl2/_old 2018-01-24 15:30:53.201289380 +0100 +++ /var/tmp/diff_new_pack.cEnbl2/_new 2018-01-24 15:30:53.201289380 +0100 @@ -4,5 +4,5 @@ Binary: spec-cleaner Maintainer: Tomáš Chvátal <[email protected]> Architecture: all -Build-Depends: debhelper (>= 9), python3-dev, python3-mock, python3-nose, - python3-setuptools, dh-python +Build-Depends: debhelper (>= 9), python3-dev, python3-pytest, + python3-pytest-runner, python3-pytest-cov, python3-setuptools, dh-python
