Home - Summaries: (main) : (py3.11) : (py3.12) : Everything - Nightly builds - Benchmarks - RPython - Builders - About

pypy/module/_cffi_backend/test/test_re_python.py::AppTestRecompilerPython::()::test_dlclose

self = <CallInfo when='setup' exception: '_hpy_universal'>
func = <function <lambda> at 0x116e8410>, when = 'setup'

    def __init__(self, func, when):
        #: context of invocation: one of "setup", "call",
        #: "teardown", "memocollect"
        self.when = when
        self.start = time()
        try:
>           self.result = func()

../_pytest/runner.py:150: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

>   return CallInfo(lambda: ihook(item=item, **kwds), when=when)

../_pytest/runner.py:138: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <_HookCaller 'pytest_runtest_setup'>
kwargs = {'__multicall__': <_MultiCall 0 results, 5 meths, kwargs={'item': <AppTestMethod 'test_dlclose'>, '__multicall__': <_MultiCall 0 results, 5 meths, kwargs={...}>}>, 'item': <AppTestMethod 'test_dlclose'>}

    def __call__(self, **kwargs):
        assert not self.is_historic()
>       return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)

../_pytest/vendored_packages/pluggy.py:724: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <_pytest.config.PytestPluginManager object at 0xf446bd50>
hook = <_HookCaller 'pytest_runtest_setup'>
methods = [<_pytest.vendored_packages.pluggy.HookImpl instance at 0x09f999c4>, <_pytest.vendored_packages.pluggy.HookImpl instan...d_packages.pluggy.HookImpl instance at 0x09543dd8>, <_pytest.vendored_packages.pluggy.HookImpl instance at 0x09543dfc>]
kwargs = {'__multicall__': <_MultiCall 0 results, 5 meths, kwargs={'item': <AppTestMethod 'test_dlclose'>, '__multicall__': <_MultiCall 0 results, 5 meths, kwargs={...}>}>, 'item': <AppTestMethod 'test_dlclose'>}

    def _hookexec(self, hook, methods, kwargs):
        # called from all hookcaller instances.
        # enable_tracing will set its own wrapping function at self._inner_hookexec
>       return self._inner_hookexec(hook, methods, kwargs)

../_pytest/vendored_packages/pluggy.py:338: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

hook = <_HookCaller 'pytest_runtest_setup'>
methods = [<_pytest.vendored_packages.pluggy.HookImpl instance at 0x09f999c4>, <_pytest.vendored_packages.pluggy.HookImpl instan...d_packages.pluggy.HookImpl instance at 0x09543dd8>, <_pytest.vendored_packages.pluggy.HookImpl instance at 0x09543dfc>]
kwargs = {'__multicall__': <_MultiCall 0 results, 5 meths, kwargs={'item': <AppTestMethod 'test_dlclose'>, '__multicall__': <_MultiCall 0 results, 5 meths, kwargs={...}>}>, 'item': <AppTestMethod 'test_dlclose'>}

    self._inner_hookexec = lambda hook, methods, kwargs: \
>       _MultiCall(methods, kwargs, hook.spec_opts).execute()

../_pytest/vendored_packages/pluggy.py:333: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <_MultiCall 0 results, 5 meths, kwargs={'item': <AppTestMethod 'test_dlclose'>, '__multicall__': <_MultiCall 0 results, 5 meths, kwargs={...}>}>

    def execute(self):
        all_kwargs = self.kwargs
        self.results = results = []
        firstresult = self.specopts.get("firstresult")
    
        while self.hook_impls:
            hook_impl = self.hook_impls.pop()
            args = [all_kwargs[argname] for argname in hook_impl.argnames]
            if hook_impl.hookwrapper:
>               return _wrapped_call(hook_impl.function(*args), self.execute)

../_pytest/vendored_packages/pluggy.py:595: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

wrap_controller = <generator object pytest_runtest_setup at 0x0c3846d0>
func = <bound method _MultiCall.execute of <_MultiCall 0 results, 5 meths, kwargs={'i...st_dlclose'>, '__multicall__': <_MultiCall 0 results, 5 meths, kwargs={...}>}>>

    def _wrapped_call(wrap_controller, func):
        """ Wrap calling to a function with a generator which needs to yield
        exactly once.  The yield point will trigger calling the wrapped function
        and return its _CallOutcome to the yield point.  The generator then needs
        to finish (raise StopIteration) in order for the wrapped call to complete.
        """
        try:
            next(wrap_controller)   # first yield
        except StopIteration:
            _raise_wrapfail(wrap_controller, "did not yield")
        call_outcome = _CallOutcome(func)
        try:
            wrap_controller.send(call_outcome)
            _raise_wrapfail(wrap_controller, "has second yield")
        except StopIteration:
            pass
>       return call_outcome.get_result()

../_pytest/vendored_packages/pluggy.py:253: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <_pytest.vendored_packages.pluggy._CallOutcome instance at 0x0fbb0400>

    def get_result(self):
        if self.excinfo is None:
            return self.result
        else:
            ex = self.excinfo
            if _py3:
                raise ex[1].with_traceback(ex[2])
>           _reraise(*ex)  # noqa

../_pytest/vendored_packages/pluggy.py:279: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <_pytest.vendored_packages.pluggy._CallOutcome instance at 0x0fbb0400>
func = <bound method _MultiCall.execute of <_MultiCall 0 results, 5 meths, kwargs={'i...st_dlclose'>, '__multicall__': <_MultiCall 0 results, 5 meths, kwargs={...}>}>>

    def __init__(self, func):
        try:
>           self.result = func()

../_pytest/vendored_packages/pluggy.py:264: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <_MultiCall 0 results, 5 meths, kwargs={'item': <AppTestMethod 'test_dlclose'>, '__multicall__': <_MultiCall 0 results, 5 meths, kwargs={...}>}>

    def execute(self):
        all_kwargs = self.kwargs
        self.results = results = []
        firstresult = self.specopts.get("firstresult")
    
        while self.hook_impls:
            hook_impl = self.hook_impls.pop()
            args = [all_kwargs[argname] for argname in hook_impl.argnames]
            if hook_impl.hookwrapper:
                return _wrapped_call(hook_impl.function(*args), self.execute)
>           res = hook_impl.function(*args)

../_pytest/vendored_packages/pluggy.py:596: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

item = <AppTestMethod 'test_dlclose'>

    @pytest.hookimpl(tryfirst=True)
    def pytest_runtest_setup(item):
        if isinstance(item, pytest.Function):
            config = item.config
            if get_marker(item, name='pypy_only'):
                if config.applevel is not None and not config.applevel.is_pypy:
                    pytest.skip('PyPy-specific test')
            appclass = item.getparent(pytest.Class)
            if appclass is not None:
>               from pypy.tool.pytest.objspace import gettestobjspace

conftest.py:251: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

    import py
    import sys
    from rpython.config.config import ConflictConfigError
>   from pypy.tool.option import make_config, make_objspace

tool/pytest/objspace.py:4: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

>   from pypy.config.pypyoption import get_pypy_config

tool/option.py:3: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

    import os
    import sys
    
    import py
    
    from rpython.config.config import (OptionDescription, BoolOption, IntOption,
      ChoiceOption, StrOption, to_optparse)
    from rpython.config.translationoption import IS_64_BITS
    
    
    modulepath = py.path.local(__file__).dirpath().dirpath().join("module")
    all_modules = [p.basename for p in modulepath.listdir()
                   if p.check(dir=True, dotfile=False)
                   and p.join('__init__.py').check()
                   and not p.basename.startswith('test')]
    
    essential_modules = set([
        "exceptions", "_io", "sys", "builtins", "posix", "_warnings",
        "itertools", "_frozen_importlib", "operator", "_locale", "struct",
        "thread", "__pypy__", "zipimport", "_opcode",
    ])
    if sys.platform == "win32":
        essential_modules.add("_winreg")
    
    default_modules = essential_modules.copy()
    default_modules.update([
        "_codecs", "atexit", "gc", "_weakref", "marshal", "errno", "imp",
        "itertools", "math", "cmath", "_sre", "_pickle_support",
        "token", "_ast", "_random",
        "_string", "_testing", "time", "_abc", "_pickle",
    ])
    
    
    # --allworkingmodules
    working_modules = default_modules.copy()
    working_modules.update([
        "_socket", "unicodedata", "mmap", "fcntl", "pwd",
        "select", "_lsprof", "signal", "_rawffi", "termios",
        "zlib", "bz2", "_md5", "_minimal_curses",
        "itertools", "pyexpat", "cpyext", "array",
        "binascii", "_multiprocessing", '_warnings', "_collections",
        "_multibytecodec", "_continuation", "_cffi_backend",
        "_csv", "_pypyjson", "_posixsubprocess", # "_cppyy", "micronumpy",
        "_jitlog", # "_hpy_universal"
        # "_hashlib", "crypt"
    ])
    
    import rpython.rlib.rvmprof.cintf
    if rpython.rlib.rvmprof.cintf.IS_SUPPORTED:
        working_modules.add('_vmprof')
        working_modules.add('faulthandler')
    
    translation_modules = default_modules.copy()
    translation_modules.update([
        "fcntl", "time", "select", "signal", "_rawffi", "zlib", "struct",
        "array", "binascii",
        # the following are needed for pyrepl (and hence for the
        # interactive prompt/pdb)
        "termios", "_minimal_curses",
    ])
    
    reverse_debugger_disable_modules = set([
        "_continuation", "_vmprof", "_multiprocessing",
        "micronumpy",
        ])
    
    # XXX this should move somewhere else, maybe to platform ("is this posixish"
    #     check or something)
    if sys.platform == "win32":
        # unix only modules
        for name in ["crypt", "fcntl", "pwd", "termios", "_minimal_curses",
                     "_posixsubprocess"]:
            if name in working_modules:
                working_modules.remove(name)
            if name in translation_modules:
                translation_modules.remove(name)
    
        if "faulthandler" in working_modules:
            working_modules.remove("faulthandler")  # missing details
        if "_vmprof" in working_modules:
            working_modules.remove("_vmprof")  # FIXME: missing details
    
        # The _locale module is needed by site.py on Windows
        default_modules.add("_locale")
    
        # needed to invoke MSVC
        translation_modules.update(["thread", "_winreg", "_cffi_backend"])
    
        # not ported yet
        if IS_64_BITS:
            for name in ["_cppyy", "micronumpy"]:
                if name in working_modules:
                    working_modules.remove(name)
    
    if sys.platform == "sunos5":
        working_modules.remove('fcntl')  # LOCK_NB not defined
        working_modules.remove("_minimal_curses")
        working_modules.remove("termios")
        if "_cppyy" in working_modules:
            working_modules.remove("_cppyy")  # depends on ctypes
    
    if sys.platform.startswith('linux') and sys.maxsize <= 2**31:
        # _hpy_universal needs tweaking to work on 32-bit linux
>       working_modules.remove('_hpy_universal')
E       KeyError: '_hpy_universal'

config/pypyoption.py:104: KeyError
builder: own-linux-x86-32 build #9496+
test: pypy/module/_cffi_backend/test/test_re_python.py::AppTestRecompilerPython::()::test_dlclose