The branch, master has been updated via 86afe83 waf: Factor checking for undefined symbol flags out into separate method. via af5c6fb waf: Simplify handling of python modules. via 126209d Revert 9a5ae8edd6d006c078b3af8fdfd84677a63276b1. via 3585abc pytdb: Shorter description which fits on a single line. via a4c2ba6 testtools: Import new upstream snapshot. via 9250177 subunit: Import new upstream snapshot. via 0966be4 wafsamba: Support allow_undefined_symbols in SAMBA_SUBSYSTEM. via 2f29133 wafsambaa: Support libraries that don't have the same name as their pkg-config file. via c526078 ldb: Only check for pkg-config file when checking for system ldb. via b929cd2 tevent: Only check for pkg-config file when checking for system tevent. via 774f856 tdb: Only check for pkg-config file when checking for system tdb. via 39ba9b9 talloc: Only check for pkg-config file when checking for system talloc. via 2c388a4 subunit: Only check for pkg-config file and use proper pkg-config file name. via f429b16 wafsamba: add CHECK_BUNDLED_SYSTEM_PKG function. via 5e8dee8 tevent: Only build pytevent if the system doesn't provide it. via 8aa988a ldb: Use pyembed rather than pyext for ldb-util library. via 011707d tevent: remove unnecessary enablement. via 22c88fb pytalloc-util: Don't mark as python extension, use pyembed instead. via 312fd94 waf: Don't link python modules against libpython2.x, consistent with other Python modules. via c529c12 upgrade: use logger.warning. from 576ea40 samba-tool: allow dbcheck to correct the originating_change_time of the deleted object container
http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master - Log ----------------------------------------------------------------- commit 86afe83d867229b11fd4ec9cb6e29af698cacdef Author: Jelmer Vernooij <jel...@samba.org> Date: Sun Nov 13 18:01:09 2011 +0100 waf: Factor checking for undefined symbol flags out into separate method. Autobuild-User: Jelmer Vernooij <jel...@samba.org> Autobuild-Date: Sun Nov 13 19:38:38 CET 2011 on sn-devel-104 commit af5c6fba68a05e9e196f4e9133b07cb1d62cc981 Author: Jelmer Vernooij <jel...@samba.org> Date: Sun Nov 13 17:50:52 2011 +0100 waf: Simplify handling of python modules. commit 126209d2e593be55c69ce9ae9462ea441bbb3ce1 Author: Jelmer Vernooij <jel...@samba.org> Date: Sun Nov 13 17:29:10 2011 +0100 Revert 9a5ae8edd6d006c078b3af8fdfd84677a63276b1. commit 3585abcd4cc1b6ffeeb7f64abe3d21a12f9633f6 Author: Jelmer Vernooij <jel...@samba.org> Date: Sun Nov 13 17:20:57 2011 +0100 pytdb: Shorter description which fits on a single line. commit a4c2ba66cb420d35789e55f604599a84c8d570a7 Author: Jelmer Vernooij <jel...@samba.org> Date: Sun Nov 13 17:18:10 2011 +0100 testtools: Import new upstream snapshot. commit 9250177ae71e37fe1a132fe198cac4f3512bc4c7 Author: Jelmer Vernooij <jel...@samba.org> Date: Sun Nov 13 17:17:54 2011 +0100 subunit: Import new upstream snapshot. commit 0966be49a0b7d1cea7d8afc9b0c313a8198bde66 Author: Jelmer Vernooij <jel...@samba.org> Date: Sat Nov 12 20:24:35 2011 +0100 wafsamba: Support allow_undefined_symbols in SAMBA_SUBSYSTEM. commit 2f2913349146e03b498f305f046c92344508da69 Author: Jelmer Vernooij <jel...@samba.org> Date: Sat Nov 12 16:56:01 2011 +0100 wafsambaa: Support libraries that don't have the same name as their pkg-config file. commit c5260788067a3fe1e2f10120e99a16e7cd28bac9 Author: Jelmer Vernooij <jel...@samba.org> Date: Sat Nov 12 16:36:39 2011 +0100 ldb: Only check for pkg-config file when checking for system ldb. commit b929cd2c096d4184bec193dd762acdf4710a7d2c Author: Jelmer Vernooij <jel...@samba.org> Date: Sat Nov 12 16:36:28 2011 +0100 tevent: Only check for pkg-config file when checking for system tevent. commit 774f85649b5d9f8872ebfdd359964330b4ff436a Author: Jelmer Vernooij <jel...@samba.org> Date: Sat Nov 12 16:36:18 2011 +0100 tdb: Only check for pkg-config file when checking for system tdb. commit 39ba9b93d795f8add40fb13434e8a4dd259f9c24 Author: Jelmer Vernooij <jel...@samba.org> Date: Sat Nov 12 16:36:07 2011 +0100 talloc: Only check for pkg-config file when checking for system talloc. commit 2c388a40cc375de62c960251b47fb5e6822002b7 Author: Jelmer Vernooij <jel...@samba.org> Date: Sat Nov 12 16:35:48 2011 +0100 subunit: Only check for pkg-config file and use proper pkg-config file name. commit f429b166b6e9c3da086ab53cbf5ebfdc1516cb17 Author: Jelmer Vernooij <jel...@samba.org> Date: Sat Nov 12 16:35:11 2011 +0100 wafsamba: add CHECK_BUNDLED_SYSTEM_PKG function. commit 5e8dee8d96a7522cdcde57dbbf93fbe9c614992e Author: Jelmer Vernooij <jel...@samba.org> Date: Sat Nov 12 16:14:33 2011 +0100 tevent: Only build pytevent if the system doesn't provide it. commit 8aa988a455f1165f59e19eb39f5fd2b0c39231f6 Author: Jelmer Vernooij <jel...@samba.org> Date: Sat Nov 12 15:51:16 2011 +0100 ldb: Use pyembed rather than pyext for ldb-util library. commit 011707dee8a7c0bd1ee6768023e7d91a8988009b Author: Jelmer Vernooij <jel...@samba.org> Date: Sat Nov 12 15:50:54 2011 +0100 tevent: remove unnecessary enablement. commit 22c88fbc1d7d0444261c950c3ead7076f933a178 Author: Jelmer Vernooij <jel...@samba.org> Date: Sat Nov 12 15:38:45 2011 +0100 pytalloc-util: Don't mark as python extension, use pyembed instead. commit 312fd94002cd576140e5d90ef70ea2dd053c949a Author: Jelmer Vernooij <jel...@samba.org> Date: Sat Nov 12 05:20:10 2011 +0100 waf: Don't link python modules against libpython2.x, consistent with other Python modules. Rather, rely just on waf's pyext feature. This fixes a warning from dh_python2. commit c529c12c7d644bb2d7391a5d736ee9e6b12d6ab6 Author: Jelmer Vernooij <jel...@samba.org> Date: Fri Nov 11 18:32:55 2011 +0100 upgrade: use logger.warning. ----------------------------------------------------------------------- Summary of changes: buildtools/wafsamba/samba_autoconf.py | 12 +++ buildtools/wafsamba/samba_bundled.py | 72 +++++++++++++++++-- buildtools/wafsamba/samba_python.py | 25 ++----- buildtools/wafsamba/wafsamba.py | 16 +++-- lib/ldb/wscript | 8 ++- lib/subunit/NEWS | 37 ++++++---- lib/subunit/c/wscript | 2 +- lib/subunit/configure.ac | 2 +- lib/subunit/python/subunit/run.py | 2 + lib/subunit/python/subunit/tests/__init__.py | 2 + lib/subunit/python/subunit/tests/test_run.py | 52 ++++++++++++++ .../python/subunit/tests/test_test_protocol.py | 17 +++-- lib/subunit/setup.py | 2 +- lib/talloc/wscript | 8 ++- lib/tdb/pytdb.c | 3 +- lib/tdb/wscript | 4 +- lib/testtools/NEWS | 5 ++ lib/testtools/testtools/matchers.py | 2 +- lib/testtools/testtools/testresult/real.py | 10 +++ lib/testtools/testtools/tests/test_matchers.py | 10 ++-- lib/testtools/testtools/tests/test_testcase.py | 4 +- lib/testtools/testtools/tests/test_testresult.py | 7 ++ lib/tevent/wscript | 18 +++-- source4/scripting/python/samba/netcmd/domain.py | 8 +- source4/scripting/python/wscript_build | 2 +- wscript | 10 +--- 26 files changed, 247 insertions(+), 93 deletions(-) create mode 100644 lib/subunit/python/subunit/tests/test_run.py Changeset truncated at 500 lines: diff --git a/buildtools/wafsamba/samba_autoconf.py b/buildtools/wafsamba/samba_autoconf.py index 909e836..1ea818e 100644 --- a/buildtools/wafsamba/samba_autoconf.py +++ b/buildtools/wafsamba/samba_autoconf.py @@ -712,3 +712,15 @@ def SETUP_CONFIGURE_CACHE(conf, enable): preproc.recursion_limit = 1 # in either case we don't need to scan system includes preproc.go_absolute = False + + +@conf +def SAMBA_CHECK_UNDEFINED_SYMBOL_FLAGS(conf): + # we don't want any libraries or modules to rely on runtime + # resolution of symbols + if sys.platform != "openbsd4": + conf.env.undefined_ldflags = conf.ADD_LDFLAGS('-Wl,-no-undefined', testflags=True) + + if sys.platform != "openbsd4" and conf.env.undefined_ignore_ldflags == []: + if conf.CHECK_LDFLAGS(['-undefined', 'dynamic_lookup']): + conf.env.undefined_ignore_ldflags = ['-undefined', 'dynamic_lookup'] diff --git a/buildtools/wafsamba/samba_bundled.py b/buildtools/wafsamba/samba_bundled.py index 39edad0..95d0c7d 100644 --- a/buildtools/wafsamba/samba_bundled.py +++ b/buildtools/wafsamba/samba_bundled.py @@ -82,6 +82,64 @@ def LIB_MUST_BE_BUNDLED(conf, libname): libname in conf.env.BUNDLED_LIBS) +@conf +def CHECK_PREREQUISITES(conf, prereqs): + for syslib in TO_LIST(prereqs): + f = 'FOUND_SYSTEMLIB_%s' % syslib + if not f in conf.env: + return False + return True + + +@runonce +@conf +def CHECK_BUNDLED_SYSTEM_PKG(conf, libname, minversion='0.0.0', + onlyif=None, implied_deps=None, pkg=None): + '''check if a library is available as a system library. + + This only tries using pkg-config + ''' + if conf.LIB_MUST_BE_BUNDLED(libname): + return False + found = 'FOUND_SYSTEMLIB_%s' % libname + if found in conf.env: + return conf.env[found] + + # see if the library should only use a system version if another dependent + # system version is found. That prevents possible use of mixed library + # versions + if onlyif: + if not conf.CHECK_PREREQUISITES(onlyif): + if not conf.LIB_MAY_BE_BUNDLED(libname): + Logs.error('ERROR: Use of system library %s depends on missing system library %s' % (libname, syslib)) + sys.exit(1) + conf.env[found] = False + return False + + minversion = minimum_library_version(conf, libname, minversion) + + msg = 'Checking for system %s' % libname + if minversion != '0.0.0': + msg += ' >= %s' % minversion + + if pkg is None: + pkg = libname + + if conf.check_cfg(package=pkg, + args='"%s >= %s" --cflags --libs' % (pkg, minversion), + msg=msg): + conf.SET_TARGET_TYPE(libname, 'SYSLIB') + conf.env[found] = True + if implied_deps: + conf.SET_SYSLIB_DEPS(libname, implied_deps) + return True + conf.env[found] = False + if not conf.LIB_MAY_BE_BUNDLED(libname): + Logs.error('ERROR: System library %s of version %s not found, and bundling disabled' % (libname, minversion)) + sys.exit(1) + return False + + @runonce @conf def CHECK_BUNDLED_SYSTEM(conf, libname, minversion='0.0.0', @@ -111,14 +169,12 @@ def CHECK_BUNDLED_SYSTEM(conf, libname, minversion='0.0.0', # system version is found. That prevents possible use of mixed library # versions if onlyif: - for syslib in TO_LIST(onlyif): - f = 'FOUND_SYSTEMLIB_%s' % syslib - if not f in conf.env: - if not conf.LIB_MAY_BE_BUNDLED(libname): - Logs.error('ERROR: Use of system library %s depends on missing system library %s' % (libname, syslib)) - sys.exit(1) - conf.env[found] = False - return False + if not conf.CHECK_PREREQUISITES(onlyif): + if not conf.LIB_MAY_BE_BUNDLED(libname): + Logs.error('ERROR: Use of system library %s depends on missing system library %s' % (libname, syslib)) + sys.exit(1) + conf.env[found] = False + return False minversion = minimum_library_version(conf, libname, minversion) diff --git a/buildtools/wafsamba/samba_python.py b/buildtools/wafsamba/samba_python.py index e9afa93..503fa75 100644 --- a/buildtools/wafsamba/samba_python.py +++ b/buildtools/wafsamba/samba_python.py @@ -34,22 +34,10 @@ def SAMBA_PYTHON(bld, name, source = bld.EXPAND_VARIABLES(source, vars=vars) - if realname is None: - # a SAMBA_PYTHON target without a realname is just a - # library with pyembed=True - bld.SAMBA_LIBRARY(name, - source=source, - deps=deps, - public_deps=public_deps, - includes=includes, - cflags=cflags, - local_include=local_include, - vars=vars, - pyembed=True, - enabled=enabled) - return - - link_name = 'python/%s' % realname + if realname is not None: + link_name = 'python/%s' % realname + else: + link_name = None bld.SAMBA_LIBRARY(name, source=source, @@ -57,13 +45,14 @@ def SAMBA_PYTHON(bld, name, public_deps=public_deps, includes=includes, cflags=cflags, - realname=realname, local_include=local_include, vars=vars, + realname=realname, link_name=link_name, - pyembed=True, + pyext=True, target_type='PYTHON', install_path='${PYTHONARCHDIR}', + allow_undefined_symbols=True, enabled=enabled) Build.BuildContext.SAMBA_PYTHON = SAMBA_PYTHON diff --git a/buildtools/wafsamba/wafsamba.py b/buildtools/wafsamba/wafsamba.py index 876cec5..5e4f40d 100644 --- a/buildtools/wafsamba/wafsamba.py +++ b/buildtools/wafsamba/wafsamba.py @@ -172,7 +172,8 @@ def SAMBA_LIBRARY(bld, libname, source, autoproto_extra_source=autoproto_extra_source, depends_on = depends_on, hide_symbols = hide_symbols, - pyext = pyext or (target_type == "PYTHON"), + pyembed = pyembed, + pyext = pyext, local_include = local_include, global_include = global_include) @@ -211,11 +212,9 @@ def SAMBA_LIBRARY(bld, libname, source, ldflags = TO_LIST(ldflags) features = 'cc cshlib symlink_lib install_lib' - if target_type == 'PYTHON': + if pyext: features += ' pyext' - if pyext or pyembed: - # this is quite strange. we should add pyext feature for pyext - # but that breaks the build. This may be a bug in the waf python tool + if pyembed: features += ' pyembed' if abi_directory: @@ -492,7 +491,8 @@ def SAMBA_SUBSYSTEM(bld, modname, source, vars=None, subdir=None, hide_symbols=False, - pyext=False): + pyext=False, + pyembed=False): '''define a Samba subsystem''' if not enabled: @@ -519,6 +519,8 @@ def SAMBA_SUBSYSTEM(bld, modname, source, features = 'cc' if pyext: features += ' pyext' + if pyembed: + features += ' pyembed' t = bld( features = features, @@ -533,7 +535,7 @@ def SAMBA_SUBSYSTEM(bld, modname, source, global_include = global_include, samba_subsystem= subsystem_name, samba_use_hostcc = use_hostcc, - samba_use_global_deps = use_global_deps + samba_use_global_deps = use_global_deps, ) if cflags_end is not None: diff --git a/lib/ldb/wscript b/lib/ldb/wscript index 3772871..088292c 100755 --- a/lib/ldb/wscript +++ b/lib/ldb/wscript @@ -50,11 +50,11 @@ def configure(conf): conf.env.standalone_ldb = conf.IN_LAUNCH_DIR() if not conf.env.standalone_ldb: - if conf.CHECK_BUNDLED_SYSTEM('ldb', minversion=VERSION, + if conf.CHECK_BUNDLED_SYSTEM_PKG('ldb', minversion=VERSION, onlyif='talloc tdb tevent', implied_deps='replace talloc tdb tevent'): conf.define('USING_SYSTEM_LDB', 1) - if conf.CHECK_BUNDLED_SYSTEM('pyldb-util', minversion=VERSION, + if conf.CHECK_BUNDLED_SYSTEM_PKG('pyldb-util', minversion=VERSION, onlyif='talloc tdb tevent ldb', implied_deps='replace talloc tdb tevent ldb'): conf.define('USING_SYSTEM_PYLDB_UTIL', 1) @@ -75,6 +75,8 @@ def configure(conf): conf.SAMBA_CONFIG_H() + conf.SAMBA_CHECK_UNDEFINED_SYMBOL_FLAGS() + def build(bld): bld.RECURSE('lib/tdb_compat') bld.RECURSE('lib/tevent') @@ -120,7 +122,7 @@ def build(bld): vnum=VERSION, private_library=private_library, pc_files='pyldb-util.pc', - pyext=True, + pyembed=True, abi_directory='ABI', abi_match='pyldb_*') diff --git a/lib/subunit/NEWS b/lib/subunit/NEWS index 2edf736..713d272 100644 --- a/lib/subunit/NEWS +++ b/lib/subunit/NEWS @@ -5,6 +5,26 @@ subunit release notes NEXT (In development) --------------------- +IMPROVEMENTS +~~~~~~~~~~~~ + +* Perl module now correctly outputs "failure" instead of "fail". (Stewart Smith) + +* Shell functions now output timestamps. (Stewart Smith) + +BUG FIXES +~~~~~~~~~ + +* Add 'subunit --no-xfail', which will omit expected failures from the subunit + stream. (John Arbash Meinel, #623642) + +* Add 'subunit -F/--only-genuine-failures' which sets all of '--no-skips', + '--no-xfail', '--no-passthrough, '--no-success', and gives you just the + failure stream. (John Arbash Meinel) + +0.0.7 +----- + The Subunit Python test runner ``python -m subunit.run`` can now report the test ids and also filter via a test id list file thanks to improvements in ``testtools.run``. See the testtools manual, or testrepository - a major @@ -26,13 +46,9 @@ IMPROVEMENTS * Force flush of writes to stdout in c/tests/test_child. (Jelmer Vernooij, #687611) -* Perl module now correctly outputs "failure" instead of "fail". (Stewart Smith) - * Provisional Python 3.x support. (Robert Collins, Tres Seaver, Martin[gz], #666819) -* Shell functions now output timestamps. (Stewart Smith) - * ``subunit.chunked.Decoder`` Python class takes a new ``strict`` option, which defaults to ``True``. When ``False``, the ``Decoder`` will accept incorrect input that is still unambiguous. i.e. subunit will not barf if @@ -68,20 +84,11 @@ IMPROVEMENTS * The Python2.7 / testtools addUnexpectedSuccess API is now supported. This required adding a new status code to the protocol. (Robert Collins, #654474) -BUG FIXES -~~~~~~~~~ - -* Add 'subunit --no-xfail', which will omit expected failures from the subunit - stream. (John Arbash Meinel, #623642) - -* Add 'subunit -F/--only-genuine-failures' which sets all of '--no-skips', - '--no-xfail', '--no-passthrough, '--no-success', and gives you just the - failure stream. (John Arbash Meinel) - CHANGES ~~~~~~~ -* Newer testtools is needed as part of the Python 3 support. (Robert Collins) +* testtools 0.9.11 or newer is new needed (due to the Python 3 support). + (Robert Collins) 0.0.6 ----- diff --git a/lib/subunit/c/wscript b/lib/subunit/c/wscript index 3e5311d..f308b33 100644 --- a/lib/subunit/c/wscript +++ b/lib/subunit/c/wscript @@ -3,7 +3,7 @@ import Options def configure(conf): - if conf.CHECK_BUNDLED_SYSTEM('subunit', checkfunctions='subunit_test_start', headers='subunit/child.h'): + if conf.CHECK_BUNDLED_SYSTEM_PKG('subunit', pkg='libsubunit'): conf.define('USING_SYSTEM_SUBUNIT', 1) def build(bld): diff --git a/lib/subunit/configure.ac b/lib/subunit/configure.ac index 5696573..4375c37 100644 --- a/lib/subunit/configure.ac +++ b/lib/subunit/configure.ac @@ -1,6 +1,6 @@ m4_define([SUBUNIT_MAJOR_VERSION], [0]) m4_define([SUBUNIT_MINOR_VERSION], [0]) -m4_define([SUBUNIT_MICRO_VERSION], [6]) +m4_define([SUBUNIT_MICRO_VERSION], [7]) m4_define([SUBUNIT_VERSION], m4_defn([SUBUNIT_MAJOR_VERSION]).m4_defn([SUBUNIT_MINOR_VERSION]).m4_defn([SUBUNIT_MICRO_VERSION])) AC_PREREQ([2.59]) diff --git a/lib/subunit/python/subunit/run.py b/lib/subunit/python/subunit/run.py index 51d6837..ca5fe5c 100755 --- a/lib/subunit/python/subunit/run.py +++ b/lib/subunit/python/subunit/run.py @@ -23,6 +23,7 @@ import sys from subunit import TestProtocolClient, get_default_formatter +from subunit.test_results import AutoTimingTestResultDecorator from testtools.run import ( BUFFEROUTPUT, CATCHBREAK, @@ -39,6 +40,7 @@ class SubunitTestRunner(object): def run(self, test): "Run the given test case or test suite." result = TestProtocolClient(self.stream) + result = AutoTimingTestResultDecorator(result) test(result) return result diff --git a/lib/subunit/python/subunit/tests/__init__.py b/lib/subunit/python/subunit/tests/__init__.py index a78cec8..e0e1eb1 100644 --- a/lib/subunit/python/subunit/tests/__init__.py +++ b/lib/subunit/python/subunit/tests/__init__.py @@ -19,6 +19,7 @@ from subunit.tests import ( test_chunked, test_details, test_progress_model, + test_run, test_subunit_filter, test_subunit_stats, test_subunit_tags, @@ -38,4 +39,5 @@ def test_suite(): result.addTest(test_subunit_filter.test_suite()) result.addTest(test_subunit_tags.test_suite()) result.addTest(test_subunit_stats.test_suite()) + result.addTest(test_run.test_suite()) return result diff --git a/lib/subunit/python/subunit/tests/test_run.py b/lib/subunit/python/subunit/tests/test_run.py new file mode 100644 index 0000000..5a96bcf --- /dev/null +++ b/lib/subunit/python/subunit/tests/test_run.py @@ -0,0 +1,52 @@ +# +# subunit: extensions to python unittest to get test results from subprocesses. +# Copyright (C) 2011 Robert Collins <robe...@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 distributed 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. +# + +from cStringIO import StringIO +import unittest + +from testtools import PlaceHolder + +import subunit +from subunit.run import SubunitTestRunner + + +def test_suite(): + loader = subunit.tests.TestUtil.TestLoader() + result = loader.loadTestsFromName(__name__) + return result + + +class TimeCollectingTestResult(unittest.TestResult): + + def __init__(self, *args, **kwargs): + super(TimeCollectingTestResult, self).__init__(*args, **kwargs) + self.time_called = [] + + def time(self, a_time): + self.time_called.append(a_time) + + +class TestSubunitTestRunner(unittest.TestCase): + + def test_includes_timing_output(self): + io = StringIO() + runner = SubunitTestRunner(stream=io) + test = PlaceHolder('name') + runner.run(test) + client = TimeCollectingTestResult() + io.seek(0) + subunit.TestProtocolServer(client).readFrom(io) + self.assertTrue(len(client.time_called) > 0) diff --git a/lib/subunit/python/subunit/tests/test_test_protocol.py b/lib/subunit/python/subunit/tests/test_test_protocol.py index 03d921a..c93aabd 100644 --- a/lib/subunit/python/subunit/tests/test_test_protocol.py +++ b/lib/subunit/python/subunit/tests/test_test_protocol.py @@ -22,11 +22,18 @@ from testtools import skipIf, TestCase from testtools.compat import _b, _u, BytesIO, StringIO from testtools.content import Content, TracebackContent from testtools.content_type import ContentType -from testtools.tests.helpers import ( - Python26TestResult, - Python27TestResult, - ExtendedTestResult, - ) +try: + from testtools.testresult.doubles import ( + Python26TestResult, + Python27TestResult, + ExtendedTestResult, + ) +except ImportError: + from testtools.tests.helpers import ( + Python26TestResult, + Python27TestResult, + ExtendedTestResult, + ) import subunit from subunit import _remote_exception_str, _remote_exception_str_chunked diff --git a/lib/subunit/setup.py b/lib/subunit/setup.py index 2038d04..bb51a24 100755 --- a/lib/subunit/setup.py +++ b/lib/subunit/setup.py @@ -9,7 +9,7 @@ except ImportError: else: extra = { 'install_requires': [ - 'testtools>=0.9.6', + 'testtools>=0.9.11', ] } diff --git a/lib/talloc/wscript b/lib/talloc/wscript index dd83e16..447406b 100644 --- a/lib/talloc/wscript +++ b/lib/talloc/wscript @@ -44,10 +44,10 @@ def configure(conf): conf.env.disable_python = getattr(Options.options, 'disable_python', False) if not conf.env.standalone_talloc: - if conf.CHECK_BUNDLED_SYSTEM('talloc', minversion=VERSION, + if conf.CHECK_BUNDLED_SYSTEM_PKG('talloc', minversion=VERSION, implied_deps='replace'): conf.define('USING_SYSTEM_TALLOC', 1) - if conf.CHECK_BUNDLED_SYSTEM('pytalloc-util', minversion=VERSION, + if conf.CHECK_BUNDLED_SYSTEM_PKG('pytalloc-util', minversion=VERSION, implied_deps='talloc replace'): conf.define('USING_SYSTEM_PYTALLOC_UTIL', 1) @@ -67,6 +67,8 @@ def configure(conf): conf.SAMBA_CONFIG_H() -- Samba Shared Repository