commit python-python-subunit for openSUSE:Factory
Hello community, here is the log from the commit of package python-python-subunit for openSUSE:Factory checked in at 2014-10-06 22:05:07 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-python-subunit (Old) and /work/SRC/openSUSE:Factory/.python-python-subunit.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "python-python-subunit" Changes: -------- --- /work/SRC/openSUSE:Factory/python-python-subunit/python-python-subunit.changes 2014-02-26 06:55:09.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.python-python-subunit.new/python-python-subunit.changes 2014-10-06 22:05:17.000000000 +0200 @@ -1,0 +2,18 @@ +Sat Sep 27 17:26:10 UTC 2014 - dmueller@suse.com + +- update to 0.0.21: + * Brown bag bugfix - 0.0.20's setup.py referenced cvs not csv. + (Robert Collins, #1361924) + * subunit2csv is now installed when using pip. + (Robert Collins, #1279669) + * testscenarios is now a test dependency, not an install dependency. + (Arfrever Frehtes Taifersar Arahesis, #1292757) + * The python-subunit tarball can now have setup run from the current + directory. (Robert Collins, #1361857) + * ``subunit.run`` in Python will now exit 0 as long as the test stream has + been generated correctly - this has always been the intent but API friction + with testtools had prevented it working. + (Robert Collins) +- Remove python-testscenarios dependency; not needed anymore + +------------------------------------------------------------------- Old: ---- python-subunit-0.0.18.tar.gz New: ---- python-subunit-0.0.21.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-python-subunit.spec ++++++ --- /var/tmp/diff_new_pack.IdxU1D/_old 2014-10-06 22:05:18.000000000 +0200 +++ /var/tmp/diff_new_pack.IdxU1D/_new 2014-10-06 22:05:18.000000000 +0200 @@ -17,7 +17,7 @@ Name: python-python-subunit -Version: 0.0.18 +Version: 0.0.21 Release: 0 Summary: Python implementation of subunit test streaming protocol License: Apache-2.0 or BSD-3-Clause @@ -31,7 +31,6 @@ BuildRequires: python-testscenarios BuildRequires: python-testtools >= 0.9.34 Requires: python-extras -Requires: python-testscenarios Requires: python-testtools >= 0.9.34 Requires(post): update-alternatives Requires(postun): update-alternatives @@ -54,7 +53,7 @@ %prep %setup -q -n python-subunit-%{version} %patch0 -p1 -for B in subunit-2to1 subunit-1to2 subunit-filter subunit-ls subunit-notify subunit-stats subunit-tags subunit-output subunit2gtk subunit2junitxml subunit2pyunit tap2subunit ; do +for B in subunit2csv subunit-2to1 subunit-1to2 subunit-filter subunit-ls subunit-notify subunit-stats subunit-tags subunit-output subunit2gtk subunit2junitxml subunit2pyunit tap2subunit ; do sed -i "s|'filters/$B'|'filters/$B-%{py_ver}'|" setup.py mv filters/$B filters/$B-%{py_ver} done @@ -68,7 +67,7 @@ #NOTE(saschpe): The testsuite demands executables: chmod +x %{buildroot}%{python_sitelib}/subunit/tests/sample-*.py mkdir -p %{buildroot}%{_sysconfdir}/alternatives -for B in subunit-2to1 subunit-1to2 subunit-filter subunit-ls subunit-notify subunit-stats subunit-tags subunit-output subunit2gtk subunit2junitxml subunit2pyunit tap2subunit ; do +for B in subunit2csv subunit-2to1 subunit-1to2 subunit-filter subunit-ls subunit-notify subunit-stats subunit-tags subunit-output subunit2gtk subunit2junitxml subunit2pyunit tap2subunit ; do touch %{buildroot}%{_sysconfdir}/alternatives/$B ln -sf %{_sysconfdir}/alternatives/$B %{buildroot}/%{_bindir}/$B done @@ -85,6 +84,7 @@ update-alternatives \ --install %{_bindir}/subunit-2to1 subunit-2to1 %{_bindir}/subunit-2to1-%{py_ver} 20 \ --slave %{_bindir}/subunit-1to2 subunit-1to2 %{_bindir}/subunit-1to2-%{py_ver} \ + --slave %{_bindir}/subunit2csv subunit2csv %{_bindir}/subunit2csv-%{py_ver} \ --slave %{_bindir}/subunit-filter subunit-filter %{_bindir}/subunit-filter-%{py_ver} \ --slave %{_bindir}/subunit-ls subunit-ls %{_bindir}/subunit-ls-%{py_ver} \ --slave %{_bindir}/subunit-notify subunit-notify %{_bindir}/subunit-notify-%{py_ver} \ @@ -104,6 +104,8 @@ %files %defattr(-,root,root,-) %doc README NEWS +%{_bindir}/subunit2csv +%{_bindir}/subunit2csv-%{py_ver} %{_bindir}/subunit-2to1 %{_bindir}/subunit-2to1-%{py_ver} %{_bindir}/subunit-1to2 @@ -128,6 +130,7 @@ %{_bindir}/subunit2pyunit-%{py_ver} %{_bindir}/tap2subunit %{_bindir}/tap2subunit-%{py_ver} +%ghost %{_sysconfdir}/alternatives/subunit2csv %ghost %{_sysconfdir}/alternatives/subunit-2to1 %ghost %{_sysconfdir}/alternatives/subunit-1to2 %ghost %{_sysconfdir}/alternatives/subunit-filter ++++++ python-subunit-0.0.18.tar.gz -> python-subunit-0.0.21.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-subunit-0.0.18/NEWS new/python-subunit-0.0.21/NEWS --- old/python-subunit-0.0.18/NEWS 2014-01-29 20:13:19.000000000 +0100 +++ new/python-subunit-0.0.21/NEWS 2014-08-27 03:32:38.000000000 +0200 @@ -5,11 +5,46 @@ NEXT (In development) --------------------- +0.0.21 +------ + +BUGFIXES +~~~~~~~~ + +* Brown bag bugfix - 0.0.20's setup.py referenced cvs not csv. + (Robert Collins, #1361924) + +0.0.20 +------ + +BUGFIXES +~~~~~~~~ + +* subunit2csv is now installed when using pip. + (Robert Collins, #1279669) + +* testscenarios is now a test dependency, not an install dependency. + (Arfrever Frehtes Taifersar Arahesis, #1292757) + +* The python-subunit tarball can now have setup run from the current + directory. (Robert Collins, #1361857) + +0.0.19 +------ + +IMPROVEMENTS +~~~~~~~~~~~~ + +* ``subunit.run`` in Python will now exit 0 as long as the test stream has + been generated correctly - this has always been the intent but API friction + with testtools had prevented it working. + (Robert Collins) + 0.0.18 ------ -IMPROVMENTS -~~~~~~~~~~~ +IMPROVEMENTS +~~~~~~~~~~~~ * Fix compatibility with testtools 0.9.35 which dropped the 'all' compat symbol. This breaks support for Python versions lower than 2.6. @@ -18,8 +53,8 @@ 0.0.17 ------ -IMPROVMENTS -~~~~~~~~~~~ +IMPROVEMENTS +~~~~~~~~~~~~ * Add ``subunit-output`` tool that can generate a Subunit v2 bytestream from arguments passed on the command line. (Thomi Richards, #1252084) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-subunit-0.0.18/PKG-INFO new/python-subunit-0.0.21/PKG-INFO --- old/python-subunit-0.0.18/PKG-INFO 2014-01-29 20:16:59.000000000 +0100 +++ new/python-subunit-0.0.21/PKG-INFO 2014-08-27 03:33:40.000000000 +0200 @@ -1,6 +1,6 @@ Metadata-Version: 1.0 Name: python-subunit -Version: 0.0.18 +Version: 0.0.21 Summary: Python implementation of subunit test streaming protocol Home-page: http://launchpad.net/subunit Author: Robert Collins @@ -470,10 +470,10 @@ ======== * Update versions in configure.ac and python/subunit/__init__.py. - * Update Makefile in the root or do an inplace configure to get an updated Makefile. * Update NEWS. - * Make PyPI and regular tarball releases. Upload the regular one to LP, the - PyPI one to PyPI. + * Do a make distcheck, which will update Makefile etc. + * Do a PyPI release: PYTHONPATH=../../python python ../../setup.py sdist upload -s + * Upload the regular one to LP. * Push a tagged commit. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-subunit-0.0.18/README new/python-subunit-0.0.21/README --- old/python-subunit-0.0.18/README 2014-01-29 10:32:50.000000000 +0100 +++ new/python-subunit-0.0.21/README 2014-08-24 08:00:35.000000000 +0200 @@ -462,9 +462,9 @@ ======== * Update versions in configure.ac and python/subunit/__init__.py. -* Update Makefile in the root or do an inplace configure to get an updated Makefile. * Update NEWS. -* Make PyPI and regular tarball releases. Upload the regular one to LP, the - PyPI one to PyPI. +* Do a make distcheck, which will update Makefile etc. +* Do a PyPI release: PYTHONPATH=../../python python ../../setup.py sdist upload -s +* Upload the regular one to LP. * Push a tagged commit. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-subunit-0.0.18/filters/subunit2csv new/python-subunit-0.0.21/filters/subunit2csv --- old/python-subunit-0.0.18/filters/subunit2csv 1970-01-01 01:00:00.000000000 +0100 +++ new/python-subunit-0.0.21/filters/subunit2csv 2013-04-08 12:28:36.000000000 +0200 @@ -0,0 +1,26 @@ +#!/usr/bin/env python +# subunit: extensions to python unittest to get test results from subprocesses. +# Copyright (C) 2009 Robert Collins <robertc@robertcollins.net> +# +# Licensed under either the Apache License, Version 2.0 or the BSD 3-clause +# license at the users choice. A copy of both licenses are available in the +# project source as Apache-2.0 and BSD. You may not use this file except in +# compliance with one of these two licences. +# +# Unless required by applicable law or agreed to in writing, software +# distributed under these licenses is d on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# license you chose for the specific language governing permissions and +# limitations under that license. +# + +"""Turn a subunit stream into a CSV""" + +from testtools import StreamToExtendedDecorator + +from subunit.filters import run_filter_script +from subunit.test_results import CsvResult + + +run_filter_script(lambda output:StreamToExtendedDecorator(CsvResult(output)), + __doc__, protocol_version=2) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-subunit-0.0.18/python/subunit/__init__.py new/python-subunit-0.0.21/python/subunit/__init__.py --- old/python-subunit-0.0.18/python/subunit/__init__.py 2014-01-29 20:14:12.000000000 +0100 +++ new/python-subunit-0.0.21/python/subunit/__init__.py 2014-08-27 03:31:40.000000000 +0200 @@ -153,7 +153,7 @@ # If the releaselevel is 'final', then the tarball will be major.minor.micro. # Otherwise it is major.minor.micro~$(revno). -__version__ = (0, 0, 18, 'final', 0) +__version__ = (0, 0, 21, 'final', 0) PROGRESS_SET = 0 PROGRESS_CUR = 1 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-subunit-0.0.18/python/subunit/run.py new/python-subunit-0.0.21/python/subunit/run.py --- old/python-subunit-0.0.18/python/subunit/run.py 2013-11-30 02:53:54.000000000 +0100 +++ new/python-subunit-0.0.21/python/subunit/run.py 2014-08-24 07:18:12.000000000 +0200 @@ -40,15 +40,21 @@ class SubunitTestRunner(object): - def __init__(self, verbosity=None, failfast=None, buffer=None, stream=None): + def __init__(self, verbosity=None, failfast=None, buffer=None, stream=None, + stdout=None): """Create a TestToolsTestRunner. :param verbosity: Ignored. :param failfast: Stop running tests at the first failure. :param buffer: Ignored. + :param stream: Upstream unittest stream parameter. + :param stdout: Testtools stream parameter. + + Either stream or stdout can be supplied, and stream will take + precedence. """ self.failfast = failfast - self.stream = stream or sys.stdout + self.stream = stream or stdout or sys.stdout def run(self, test): "Run the given test case or test suite." @@ -112,19 +118,27 @@ sys.exit(2) -def main(): - # Disable the default buffering, for Python 2.x where pdb doesn't do it - # on non-ttys. - stream = get_default_formatter() +def main(argv=None, stdout=None): + if argv is None: + argv = sys.argv runner = SubunitTestRunner - # Patch stdout to be unbuffered, so that pdb works well on 2.6/2.7. - binstdout = io.open(sys.stdout.fileno(), 'wb', 0) - if sys.version_info[0] > 2: - sys.stdout = io.TextIOWrapper(binstdout, encoding=sys.stdout.encoding) - else: - sys.stdout = binstdout - SubunitTestProgram(module=None, argv=sys.argv, testRunner=runner, - stdout=sys.stdout) + # stdout is None except in unit tests. + if stdout is None: + stdout = sys.stdout + # XXX: This is broken code- SUBUNIT_FORMATTER is not being honoured. + stream = get_default_formatter() + # Disable the default buffering, for Python 2.x where pdb doesn't do it + # on non-ttys. + if hasattr(stdout, 'fileno'): + # Patch stdout to be unbuffered, so that pdb works well on 2.6/2.7. + binstdout = io.open(stdout.fileno(), 'wb', 0) + if sys.version_info[0] > 2: + sys.stdout = io.TextIOWrapper(binstdout, encoding=sys.stdout.encoding) + else: + sys.stdout = binstdout + stdout = sys.stdout + SubunitTestProgram(module=None, argv=argv, testRunner=runner, + stdout=stdout, exit=False) if __name__ == '__main__': diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-subunit-0.0.18/python/subunit/tests/test_run.py new/python-subunit-0.0.21/python/subunit/tests/test_run.py --- old/python-subunit-0.0.18/python/subunit/tests/test_run.py 2013-11-30 02:58:58.000000000 +0100 +++ new/python-subunit-0.0.21/python/subunit/tests/test_run.py 2014-08-24 07:27:32.000000000 +0200 @@ -14,10 +14,12 @@ # limitations under that license. # -from testtools.compat import BytesIO +import io import unittest from testtools import PlaceHolder, TestCase +from testtools.compat import _b +from testtools.matchers import StartsWith from testtools.testresult.doubles import StreamResult import subunit @@ -28,37 +30,59 @@ class TestSubunitTestRunner(TestCase): def test_includes_timing_output(self): - io = BytesIO() - runner = SubunitTestRunner(stream=io) + bytestream = io.BytesIO() + runner = SubunitTestRunner(stream=bytestream) test = PlaceHolder('name') runner.run(test) - io.seek(0) + bytestream.seek(0) eventstream = StreamResult() - subunit.ByteStreamToStreamResult(io).run(eventstream) + subunit.ByteStreamToStreamResult(bytestream).run(eventstream) timestamps = [event[-1] for event in eventstream._events if event is not None] self.assertNotEqual([], timestamps) def test_enumerates_tests_before_run(self): - io = BytesIO() - runner = SubunitTestRunner(stream=io) + bytestream = io.BytesIO() + runner = SubunitTestRunner(stream=bytestream) test1 = PlaceHolder('name1') test2 = PlaceHolder('name2') case = unittest.TestSuite([test1, test2]) runner.run(case) - io.seek(0) + bytestream.seek(0) eventstream = StreamResult() - subunit.ByteStreamToStreamResult(io).run(eventstream) + subunit.ByteStreamToStreamResult(bytestream).run(eventstream) self.assertEqual([ ('status', 'name1', 'exists'), ('status', 'name2', 'exists'), ], [event[:3] for event in eventstream._events[:2]]) def test_list_errors_if_errors_from_list_test(self): - io = BytesIO() - runner = SubunitTestRunner(stream=io) + bytestream = io.BytesIO() + runner = SubunitTestRunner(stream=bytestream) def list_test(test): return [], ['failed import'] self.patch(run, 'list_test', list_test) exc = self.assertRaises(SystemExit, runner.list, None) self.assertEqual((2,), exc.args) + + class FailingTest(TestCase): + def test_fail(self): + 1/0 + + def test_exits_zero_when_tests_fail(self): + bytestream = io.BytesIO() + stream = io.TextIOWrapper(bytestream, encoding="utf8") + try: + self.assertEqual(None, run.main( + argv=["progName", "subunit.tests.test_run.TestSubunitTestRunner.FailingTest"], + stdout=stream)) + except SystemExit: + self.fail("SystemExit raised") + self.assertThat(bytestream.getvalue(), StartsWith(_b('\xb3'))) + + def test_exits_nonzero_when_execution_errors(self): + bytestream = io.BytesIO() + stream = io.TextIOWrapper(bytestream, encoding="utf8") + exc = self.assertRaises(Exception, run.main, + argv=["progName", "subunit.tests.test_run.TestSubunitTestRunner.MissingTest"], + stdout=stream) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-subunit-0.0.18/python_subunit.egg-info/PKG-INFO new/python-subunit-0.0.21/python_subunit.egg-info/PKG-INFO --- old/python-subunit-0.0.18/python_subunit.egg-info/PKG-INFO 2014-01-29 20:16:59.000000000 +0100 +++ new/python-subunit-0.0.21/python_subunit.egg-info/PKG-INFO 2014-08-27 03:33:40.000000000 +0200 @@ -1,6 +1,6 @@ Metadata-Version: 1.0 Name: python-subunit -Version: 0.0.18 +Version: 0.0.21 Summary: Python implementation of subunit test streaming protocol Home-page: http://launchpad.net/subunit Author: Robert Collins @@ -470,10 +470,10 @@ ======== * Update versions in configure.ac and python/subunit/__init__.py. - * Update Makefile in the root or do an inplace configure to get an updated Makefile. * Update NEWS. - * Make PyPI and regular tarball releases. Upload the regular one to LP, the - PyPI one to PyPI. + * Do a make distcheck, which will update Makefile etc. + * Do a PyPI release: PYTHONPATH=../../python python ../../setup.py sdist upload -s + * Upload the regular one to LP. * Push a tagged commit. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-subunit-0.0.18/python_subunit.egg-info/SOURCES.txt new/python-subunit-0.0.21/python_subunit.egg-info/SOURCES.txt --- old/python-subunit-0.0.18/python_subunit.egg-info/SOURCES.txt 2014-01-29 20:16:59.000000000 +0100 +++ new/python-subunit-0.0.21/python_subunit.egg-info/SOURCES.txt 2014-08-27 03:33:40.000000000 +0200 @@ -10,6 +10,7 @@ filters/subunit-output filters/subunit-stats filters/subunit-tags +filters/subunit2csv filters/subunit2gtk filters/subunit2junitxml filters/subunit2pyunit diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-subunit-0.0.18/python_subunit.egg-info/requires.txt new/python-subunit-0.0.21/python_subunit.egg-info/requires.txt --- old/python-subunit-0.0.18/python_subunit.egg-info/requires.txt 2014-01-29 20:16:59.000000000 +0100 +++ new/python-subunit-0.0.21/python_subunit.egg-info/requires.txt 2014-08-27 03:33:40.000000000 +0200 @@ -1,3 +1,2 @@ extras -testscenarios testtools>=0.9.34 \ No newline at end of file diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-subunit-0.0.18/setup.py new/python-subunit-0.0.21/setup.py --- old/python-subunit-0.0.18/setup.py 2014-01-13 01:07:19.000000000 +0100 +++ new/python-subunit-0.0.21/setup.py 2014-08-27 03:31:09.000000000 +0200 @@ -1,4 +1,5 @@ #!/usr/bin/env python +import os.path try: # If the user has setuptools / distribute installed, use it from setuptools import setup @@ -10,9 +11,11 @@ extra = { 'install_requires': [ 'extras', - 'testscenarios', 'testtools>=0.9.34', - ] + ], + 'tests_require': [ + 'testscenarios', + ], } @@ -33,6 +36,9 @@ or "0.0") +relpath = os.path.dirname(__file__) +if relpath: + os.chdir(relpath) setup( name='python-subunit', version=VERSION, @@ -59,6 +65,7 @@ 'filters/subunit-output', 'filters/subunit-stats', 'filters/subunit-tags', + 'filters/subunit2csv', 'filters/subunit2gtk', 'filters/subunit2junitxml', 'filters/subunit2pyunit', -- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org
participants (1)
-
root@hilbert.suse.de