Source: quart Version: 0.19.4-1 Severity: serious Justification: FTBFS Tags: trixie sid ftbfs User: lu...@debian.org Usertags: ftbfs-20240313 ftbfs-trixie
Hi, During a rebuild of all packages in sid, your package failed to build on amd64. Relevant part (hopefully): > make[1]: Entering directory '/<<PKGBUILDDIR>>' > # The name of the project need to be written in lowercase letters, > # otherwise pybuild wont find the WHEEL file (as it's created from the > # project name starting with an capital letter). > sed -i 's,name = "Quart",name = "quart",g' pyproject.toml > dh_auto_build > I: pybuild plugin_pyproject:129: Building wheel for python3.12 with "build" > module > I: pybuild base:305: python3.12 -m build --skip-dependency-check > --no-isolation --wheel --outdir /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_quart > > * Building wheel... > Successfully built quart-0.19.4-py3-none-any.whl > I: pybuild plugin_pyproject:144: Unpacking wheel built for python3.12 with > "installer" module > I: pybuild plugin_pyproject:129: Building wheel for python3.11 with "build" > module > I: pybuild base:305: python3.11 -m build --skip-dependency-check > --no-isolation --wheel --outdir /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_quart > > * Building wheel... > Successfully built quart-0.19.4-py3-none-any.whl > I: pybuild plugin_pyproject:144: Unpacking wheel built for python3.11 with > "installer" module > # Now undo the previous replacement again, we need to do this hack as > # dpkg will otherwise complain about modified source code of course in > # case the build is getting started twice in a row. > sed -i 's,name = "quart",name = "Quart",g' pyproject.toml > make[1]: Leaving directory '/<<PKGBUILDDIR>>' > dh_auto_test -O--buildsystem=pybuild > I: pybuild base:305: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_quart/build; > python3.12 -m pytest tests > ============================= test session starts > ============================== > platform linux -- Python 3.12.2, pytest-8.0.2, pluggy-1.4.0 > rootdir: /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_quart/build > configfile: pyproject.toml > plugins: cov-4.1.0, asyncio-0.20.3, hypothesis-6.98.15 > asyncio: mode=Mode.AUTO > collected 250 items > > tests/test_app.py ....................................... [ > 15%] > tests/test_asgi.py ....................F...... [ > 26%] > tests/test_background_tasks.py ... [ > 27%] > tests/test_basic.py .................. [ > 34%] > tests/test_blueprints.py ........................ [ > 44%] > tests/test_cli.py ....... [ > 47%] > tests/test_ctx.py ............ [ > 52%] > tests/test_debug.py . [ > 52%] > tests/test_exceptions.py ... [ > 53%] > tests/test_helpers.py ...................... [ > 62%] > tests/test_routing.py FF [ > 63%] > tests/test_sessions.py .... [ > 64%] > tests/test_static_hosting.py . [ > 65%] > tests/test_sync.py .. [ > 66%] > tests/test_templating.py ....... [ > 68%] > tests/test_testing.py .................................. [ > 82%] > tests/test_utils.py .. [ > 83%] > tests/test_views.py ... [ > 84%] > tests/wrappers/test_base.py ...... [ > 86%] > tests/wrappers/test_request.py .......... [ > 90%] > tests/wrappers/test_response.py ....................... > [100%] > > =================================== FAILURES > =================================== > ____________________ test_websocket_accept_connection_warns > ____________________ > > websocket_scope = {'asgi': {}, 'client': ('127.0.0.1', 80), 'extensions': {}, > 'headers': [(b'User-Agent', b'Hypercorn'), (b'X-Hypercorn', b'Hypercorn'), > (b'Referer', b'hypercorn')], ...} > > async def test_websocket_accept_connection_warns(websocket_scope: > WebsocketScope) -> None: > connection = ASGIWebsocketConnection(Quart(__name__), websocket_scope) > > async def mock_send(message: ASGISendEvent) -> None: > pass > > > with pytest.warns(None): > > connection = <quart.asgi.ASGIWebsocketConnection object at 0x7f1fb9706720> > mock_send = <function > test_websocket_accept_connection_warns.<locals>.mock_send at 0x7f1fba0d8ae0> > websocket_scope = {'asgi': {}, 'client': ('127.0.0.1', 80), 'extensions': {}, > 'headers': [(b'User-Agent', b'Hypercorn'), (b'X-Hypercorn', b'Hypercorn'), > (b'Referer', b'hypercorn')], ...} > > tests/test_asgi.py:287: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > self = WarningsChecker(record=True), expected_warning = None, match_expr = > None > > def __init__( > self, > expected_warning: Optional[ > Union[Type[Warning], Tuple[Type[Warning], ...]] > ] = Warning, > match_expr: Optional[Union[str, Pattern[str]]] = None, > *, > _ispytest: bool = False, > ) -> None: > check_ispytest(_ispytest) > super().__init__(_ispytest=True) > > msg = "exceptions must be derived from Warning, not %s" > if expected_warning is None: > > warnings.warn(WARNS_NONE_ARG, stacklevel=4) > E pytest.PytestRemovedIn8Warning: Passing None has been deprecated. > E See > https://docs.pytest.org/en/latest/how-to/capture-warnings.html#additional-use-cases-of-warnings-in-tests > for alternatives in common use cases. > > __class__ = <class '_pytest.recwarn.WarningsChecker'> > _ispytest = True > expected_warning = None > match_expr = None > msg = 'exceptions must be derived from Warning, not %s' > self = WarningsChecker(record=True) > > /usr/lib/python3/dist-packages/_pytest/recwarn.py:281: PytestRemovedIn8Warning > ________________________ test_bind_warning[localhost-0] > ________________________ > > server_name = 'localhost', expected = 0 > http_scope = {'asgi': {}, 'client': ('127.0.0.1', 80), 'extensions': {}, > 'headers': [(b'User-Agent', b'Hypercorn'), (b'X-Hypercorn', b'Hypercorn'), > (b'Referer', b'hypercorn')], ...} > > @pytest.mark.parametrize( > "server_name, expected", > [("localhost", 0), ("quart.com", 1)], > ) > async def test_bind_warning(server_name: str, expected: int, http_scope: > HTTPScope) -> None: > map_ = QuartMap(host_matching=False) > request = Request( > "GET", > "http", > "/", > b"", > Headers([("host", "Localhost")]), > "", > "1.1", > http_scope, > send_push_promise=no_op_push, > ) > > with pytest.warns(None) as record: > > expected = 0 > http_scope = {'asgi': {}, 'client': ('127.0.0.1', 80), 'extensions': {}, > 'headers': [(b'User-Agent', b'Hypercorn'), (b'X-Hypercorn', b'Hypercorn'), > (b'Referer', b'hypercorn')], ...} > map_ = QuartMap([]) > request = <Request 'http://localhost/' [GET]> > server_name = 'localhost' > > tests/test_routing.py:29: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > /usr/lib/python3/dist-packages/_pytest/recwarn.py:281: in __init__ > warnings.warn(WARNS_NONE_ARG, stacklevel=4) > __class__ = <class '_pytest.recwarn.WarningsChecker'> > _ispytest = True > expected_warning = None > match_expr = None > msg = 'exceptions must be derived from Warning, not %s' > self = WarningsChecker(record=True) > /usr/lib/python3/dist-packages/_pytest/runner.py:342: in from_call > result: Optional[TResult] = func() > cls = <class '_pytest.runner.CallInfo'> > duration = 0.001240888006577734 > excinfo = <ExceptionInfo PytestRemovedIn8Warning('Passing None has > been deprecated.\nSee > https://docs.pytest.org/en/latest/how-to/capture-warnings.html#additional-use-cases-of-warnings-in-tests > for alternatives in common use cases.') tblen=34> > func = <function call_runtest_hook.<locals>.<lambda> at > 0x7f1fba0d9c60> > precise_start = 45847.096292897 > precise_stop = 45847.097533785 > reraise = (<class '_pytest.outcomes.Exit'>, <class > 'KeyboardInterrupt'>) > result = None > start = 1710275653.0762138 > stop = 1710275653.0774555 > when = 'call' > /usr/lib/python3/dist-packages/_pytest/runner.py:263: in <lambda> > lambda: ihook(item=item, **kwds), when=when, reraise=reraise > ihook = <HookCaller 'pytest_runtest_call'> > item = <Function test_websocket_accept_connection_warns> > kwds = {} > /usr/lib/python3/dist-packages/pluggy/_hooks.py:501: in __call__ > return self._hookexec(self.name, self._hookimpls.copy(), kwargs, > firstresult) > firstresult = False > kwargs = {'item': <Function > test_websocket_accept_connection_warns>} > self = <HookCaller 'pytest_runtest_call'> > /usr/lib/python3/dist-packages/pluggy/_manager.py:119: in _hookexec > return self._inner_hookexec(hook_name, methods, kwargs, firstresult) > firstresult = False > hook_name = 'pytest_runtest_call' > kwargs = {'item': <Function > test_websocket_accept_connection_warns>} > methods = [<HookImpl plugin_name='runner', plugin=<module > '_pytest.runner' from > '/usr/lib/python3/dist-packages/_pytest/runner.p...ugin=<module > '_pytest.unraisableexception' from > '/usr/lib/python3/dist-packages/_pytest/unraisableexception.py'>>, ...] > self = <_pytest.config.PytestPluginManager object at > 0x7f1fbbb984a0> > /usr/lib/python3/dist-packages/_pytest/threadexception.py:87: in > pytest_runtest_call > yield from thread_exception_runtest_hook() > /usr/lib/python3/dist-packages/_pytest/threadexception.py:63: in > thread_exception_runtest_hook > yield > cm = <_pytest.threadexception.catch_threading_exception > object at 0x7f1fb9706ed0> > /usr/lib/python3/dist-packages/_pytest/unraisableexception.py:90: in > pytest_runtest_call > yield from unraisable_exception_runtest_hook() > /usr/lib/python3/dist-packages/_pytest/unraisableexception.py:65: in > unraisable_exception_runtest_hook > yield > cm = <_pytest.unraisableexception.catch_unraisable_exception > object at 0x7f1fb9706cf0> > /usr/lib/python3/dist-packages/_pytest/logging.py:839: in pytest_runtest_call > yield from self._runtest_for(item, "call") > item = <Function test_websocket_accept_connection_warns> > self = <_pytest.logging.LoggingPlugin object at 0x7f1fbae56240> > /usr/lib/python3/dist-packages/_pytest/logging.py:822: in _runtest_for > yield > caplog_handler = <LogCaptureHandler (NOTSET)> > item = <Function test_websocket_accept_connection_warns> > log = '' > report_handler = <LogCaptureHandler (NOTSET)> > self = <_pytest.logging.LoggingPlugin object at 0x7f1fbae56240> > when = 'call' > /usr/lib/python3/dist-packages/_pytest/capture.py:882: in pytest_runtest_call > return (yield) > item = <Function test_websocket_accept_connection_warns> > self = <CaptureManager _method='fd' > _global_capturing=<MultiCapture out=<FDCapture 1 oldfd=5 _state='suspended' > tmpfile=<_io....xtIOWrapper name='/dev/null' mode='r' encoding='utf-8'>> > _state='suspended' _in_suspended=False> _capture_fixture=None> > /usr/lib/python3/dist-packages/_pytest/skipping.py:256: in pytest_runtest_call > return (yield) > item = <Function test_websocket_accept_connection_warns> > xfailed = None > /usr/lib/python3/dist-packages/_pytest/runner.py:178: in pytest_runtest_call > raise e > item = <Function test_websocket_accept_connection_warns> > /usr/lib/python3/dist-packages/_pytest/runner.py:170: in pytest_runtest_call > item.runtest() > item = <Function test_websocket_accept_connection_warns> > /usr/lib/python3/dist-packages/_pytest/python.py:1831: in runtest > self.ihook.pytest_pyfunc_call(pyfuncitem=self) > self = <Function test_websocket_accept_connection_warns> > /usr/lib/python3/dist-packages/pluggy/_hooks.py:501: in __call__ > return self._hookexec(self.name, self._hookimpls.copy(), kwargs, > firstresult) > firstresult = True > kwargs = {'pyfuncitem': <Function > test_websocket_accept_connection_warns>} > self = <HookCaller 'pytest_pyfunc_call'> > /usr/lib/python3/dist-packages/pluggy/_manager.py:119: in _hookexec > return self._inner_hookexec(hook_name, methods, kwargs, firstresult) > firstresult = True > hook_name = 'pytest_pyfunc_call' > kwargs = {'pyfuncitem': <Function > test_websocket_accept_connection_warns>} > methods = [<HookImpl plugin_name='python', plugin=<module > '_pytest.python' from > '/usr/lib/python3/dist-packages/_pytest/python.p...ame='asyncio', > plugin=<module 'pytest_asyncio.plugin' from > '/usr/lib/python3/dist-packages/pytest_asyncio/plugin.py'>>] > self = <_pytest.config.PytestPluginManager object at > 0x7f1fbbb984a0> > /usr/lib/python3/dist-packages/_pytest/python.py:194: in pytest_pyfunc_call > result = testfunction(**testargs) > funcargs = {'event_loop': <_UnixSelectorEventLoop running=False > closed=True debug=False>, 'websocket_scope': {'asgi': {}, 'client...ons': {}, > 'headers': [(b'User-Agent', b'Hypercorn'), (b'X-Hypercorn', b'Hypercorn'), > (b'Referer', b'hypercorn')], ...}} > pyfuncitem = <Function test_websocket_accept_connection_warns> > testargs = {'websocket_scope': {'asgi': {}, 'client': ('127.0.0.1', > 80), 'extensions': {}, 'headers': [(b'User-Agent', b'Hypercorn'), > (b'X-Hypercorn', b'Hypercorn'), (b'Referer', b'hypercorn')], ...}} > testfunction = <function test_websocket_accept_connection_warns at > 0x7f1fba0db920> > /usr/lib/python3/dist-packages/pytest_asyncio/plugin.py:478: in inner > _loop.run_until_complete(task) > _loop = <_UnixSelectorEventLoop running=False closed=True > debug=False> > args = () > coro = <coroutine object test_websocket_accept_connection_warns > at 0x7f1fba5e4c40> > func = <function test_websocket_accept_connection_warns at > 0x7f1fba5efec0> > kwargs = {'websocket_scope': {'asgi': {}, 'client': ('127.0.0.1', > 80), 'extensions': {}, 'headers': [(b'User-Agent', b'Hypercorn'), > (b'X-Hypercorn', b'Hypercorn'), (b'Referer', b'hypercorn')], ...}} > pyfuncitem = <Function test_websocket_accept_connection_warns> > task = <Task finished name='Task-80' > coro=<test_websocket_accept_connection_warns() done, defined at > /<<BUILDDIR>>/quar.../latest/how-to/capture-warnings.html#additional-use-cases-of-warnings-in-tests > for alternatives in common use cases.')> > /usr/lib/python3.12/asyncio/base_events.py:685: in run_until_complete > return future.result() > future = <Task finished name='Task-80' > coro=<test_websocket_accept_connection_warns() done, defined at > /<<BUILDDIR>>/quar.../latest/how-to/capture-warnings.html#additional-use-cases-of-warnings-in-tests > for alternatives in common use cases.')> > new_task = False > self = <_UnixSelectorEventLoop running=False closed=True > debug=False> > tests/test_asgi.py:287: in test_websocket_accept_connection_warns > with pytest.warns(None): > connection = <quart.asgi.ASGIWebsocketConnection object at > 0x7f1fb9706720> > mock_send = <function > test_websocket_accept_connection_warns.<locals>.mock_send at 0x7f1fba0d8ae0> > websocket_scope = {'asgi': {}, 'client': ('127.0.0.1', 80), > 'extensions': {}, 'headers': [(b'User-Agent', b'Hypercorn'), (b'X-Hypercorn', > b'Hypercorn'), (b'Referer', b'hypercorn')], ...} > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > self = WarningsChecker(record=True), expected_warning = None, match_expr = > None > > def __init__( > self, > expected_warning: Optional[ > Union[Type[Warning], Tuple[Type[Warning], ...]] > ] = Warning, > match_expr: Optional[Union[str, Pattern[str]]] = None, > *, > _ispytest: bool = False, > ) -> None: > check_ispytest(_ispytest) > super().__init__(_ispytest=True) > > msg = "exceptions must be derived from Warning, not %s" > if expected_warning is None: > > warnings.warn(WARNS_NONE_ARG, stacklevel=4) > E pytest.PytestRemovedIn8Warning: Passing None has been deprecated. > E See > https://docs.pytest.org/en/latest/how-to/capture-warnings.html#additional-use-cases-of-warnings-in-tests > for alternatives in common use cases. > > __class__ = <class '_pytest.recwarn.WarningsChecker'> > _ispytest = True > expected_warning = None > match_expr = None > msg = 'exceptions must be derived from Warning, not %s' > self = WarningsChecker(record=True) > > /usr/lib/python3/dist-packages/_pytest/recwarn.py:281: PytestRemovedIn8Warning > ________________________ test_bind_warning[quart.com-1] > ________________________ > > server_name = 'quart.com', expected = 1 > http_scope = {'asgi': {}, 'client': ('127.0.0.1', 80), 'extensions': {}, > 'headers': [(b'User-Agent', b'Hypercorn'), (b'X-Hypercorn', b'Hypercorn'), > (b'Referer', b'hypercorn')], ...} > > @pytest.mark.parametrize( > "server_name, expected", > [("localhost", 0), ("quart.com", 1)], > ) > async def test_bind_warning(server_name: str, expected: int, http_scope: > HTTPScope) -> None: > map_ = QuartMap(host_matching=False) > request = Request( > "GET", > "http", > "/", > b"", > Headers([("host", "Localhost")]), > "", > "1.1", > http_scope, > send_push_promise=no_op_push, > ) > > with pytest.warns(None) as record: > > expected = 1 > http_scope = {'asgi': {}, 'client': ('127.0.0.1', 80), 'extensions': {}, > 'headers': [(b'User-Agent', b'Hypercorn'), (b'X-Hypercorn', b'Hypercorn'), > (b'Referer', b'hypercorn')], ...} > map_ = QuartMap([]) > request = <Request 'http://localhost/' [GET]> > server_name = 'quart.com' > > tests/test_routing.py:29: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > /usr/lib/python3/dist-packages/_pytest/recwarn.py:281: in __init__ > warnings.warn(WARNS_NONE_ARG, stacklevel=4) > __class__ = <class '_pytest.recwarn.WarningsChecker'> > _ispytest = True > expected_warning = None > match_expr = None > msg = 'exceptions must be derived from Warning, not %s' > self = WarningsChecker(record=True) > /usr/lib/python3/dist-packages/_pytest/runner.py:342: in from_call > result: Optional[TResult] = func() > cls = <class '_pytest.runner.CallInfo'> > duration = 0.00036152500251773745 > excinfo = <ExceptionInfo PytestRemovedIn8Warning('Passing None has > been deprecated.\nSee > https://docs.pytest.org/en/latest/how-to/capture-warnings.html#additional-use-cases-of-warnings-in-tests > for alternatives in common use cases.') tblen=68> > func = <function call_runtest_hook.<locals>.<lambda> at > 0x7f1fbbab6200> > precise_start = 45849.087438992 > precise_stop = 45849.087800517 > reraise = (<class '_pytest.outcomes.Exit'>, <class > 'KeyboardInterrupt'>) > result = None > start = 1710275655.06736 > stop = 1710275655.067722 > when = 'call' > /usr/lib/python3/dist-packages/_pytest/runner.py:263: in <lambda> > lambda: ihook(item=item, **kwds), when=when, reraise=reraise > ihook = <HookCaller 'pytest_runtest_call'> > item = <Function test_bind_warning[localhost-0]> > kwds = {} > /usr/lib/python3/dist-packages/pluggy/_hooks.py:501: in __call__ > return self._hookexec(self.name, self._hookimpls.copy(), kwargs, > firstresult) > firstresult = False > kwargs = {'item': <Function test_bind_warning[localhost-0]>} > self = <HookCaller 'pytest_runtest_call'> > /usr/lib/python3/dist-packages/pluggy/_manager.py:119: in _hookexec > return self._inner_hookexec(hook_name, methods, kwargs, firstresult) > firstresult = False > hook_name = 'pytest_runtest_call' > kwargs = {'item': <Function test_bind_warning[localhost-0]>} > methods = [<HookImpl plugin_name='runner', plugin=<module > '_pytest.runner' from > '/usr/lib/python3/dist-packages/_pytest/runner.p...ugin=<module > '_pytest.unraisableexception' from > '/usr/lib/python3/dist-packages/_pytest/unraisableexception.py'>>, ...] > self = <_pytest.config.PytestPluginManager object at > 0x7f1fbbb984a0> > /usr/lib/python3/dist-packages/_pytest/threadexception.py:87: in > pytest_runtest_call > yield from thread_exception_runtest_hook() > /usr/lib/python3/dist-packages/_pytest/threadexception.py:63: in > thread_exception_runtest_hook > yield > cm = <_pytest.threadexception.catch_threading_exception > object at 0x7f1fb96051c0> > /usr/lib/python3/dist-packages/_pytest/unraisableexception.py:90: in > pytest_runtest_call > yield from unraisable_exception_runtest_hook() > /usr/lib/python3/dist-packages/_pytest/unraisableexception.py:65: in > unraisable_exception_runtest_hook > yield > cm = <_pytest.unraisableexception.catch_unraisable_exception > object at 0x7f1fb9605130> > /usr/lib/python3/dist-packages/_pytest/logging.py:839: in pytest_runtest_call > yield from self._runtest_for(item, "call") > item = <Function test_bind_warning[localhost-0]> > self = <_pytest.logging.LoggingPlugin object at 0x7f1fbae56240> > /usr/lib/python3/dist-packages/_pytest/logging.py:822: in _runtest_for > yield > caplog_handler = <LogCaptureHandler (NOTSET)> > item = <Function test_bind_warning[localhost-0]> > log = '' > report_handler = <LogCaptureHandler (NOTSET)> > self = <_pytest.logging.LoggingPlugin object at 0x7f1fbae56240> > when = 'call' > /usr/lib/python3/dist-packages/_pytest/capture.py:882: in pytest_runtest_call > return (yield) > item = <Function test_bind_warning[localhost-0]> > self = <CaptureManager _method='fd' > _global_capturing=<MultiCapture out=<FDCapture 1 oldfd=5 _state='suspended' > tmpfile=<_io....xtIOWrapper name='/dev/null' mode='r' encoding='utf-8'>> > _state='suspended' _in_suspended=False> _capture_fixture=None> > /usr/lib/python3/dist-packages/_pytest/skipping.py:256: in pytest_runtest_call > return (yield) > item = <Function test_bind_warning[localhost-0]> > xfailed = None > /usr/lib/python3/dist-packages/_pytest/runner.py:178: in pytest_runtest_call > raise e > item = <Function test_bind_warning[localhost-0]> > /usr/lib/python3/dist-packages/_pytest/runner.py:170: in pytest_runtest_call > item.runtest() > item = <Function test_bind_warning[localhost-0]> > /usr/lib/python3/dist-packages/_pytest/python.py:1831: in runtest > self.ihook.pytest_pyfunc_call(pyfuncitem=self) > self = <Function test_bind_warning[localhost-0]> > /usr/lib/python3/dist-packages/pluggy/_hooks.py:501: in __call__ > return self._hookexec(self.name, self._hookimpls.copy(), kwargs, > firstresult) > firstresult = True > kwargs = {'pyfuncitem': <Function test_bind_warning[localhost-0]>} > self = <HookCaller 'pytest_pyfunc_call'> > /usr/lib/python3/dist-packages/pluggy/_manager.py:119: in _hookexec > return self._inner_hookexec(hook_name, methods, kwargs, firstresult) > firstresult = True > hook_name = 'pytest_pyfunc_call' > kwargs = {'pyfuncitem': <Function test_bind_warning[localhost-0]>} > methods = [<HookImpl plugin_name='python', plugin=<module > '_pytest.python' from > '/usr/lib/python3/dist-packages/_pytest/python.p...ame='asyncio', > plugin=<module 'pytest_asyncio.plugin' from > '/usr/lib/python3/dist-packages/pytest_asyncio/plugin.py'>>] > self = <_pytest.config.PytestPluginManager object at > 0x7f1fbbb984a0> > /usr/lib/python3/dist-packages/_pytest/python.py:194: in pytest_pyfunc_call > result = testfunction(**testargs) > funcargs = {'event_loop': <_UnixSelectorEventLoop running=False > closed=True debug=False>, 'expected': 0, 'http_scope': {'asgi': {...r-Agent', > b'Hypercorn'), (b'X-Hypercorn', b'Hypercorn'), (b'Referer', b'hypercorn')], > ...}, 'server_name': 'localhost'} > pyfuncitem = <Function test_bind_warning[localhost-0]> > testargs = {'expected': 0, 'http_scope': {'asgi': {}, 'client': > ('127.0.0.1', 80), 'extensions': {}, 'headers': [(b'User-Agent', > b'Hypercorn'), (b'X-Hypercorn', b'Hypercorn'), (b'Referer', b'hypercorn')], > ...}, 'server_name': 'localhost'} > testfunction = <function test_bind_warning at 0x7f1fba0f1800> > /usr/lib/python3/dist-packages/pytest_asyncio/plugin.py:478: in inner > _loop.run_until_complete(task) > _loop = <_UnixSelectorEventLoop running=False closed=True > debug=False> > args = () > coro = <coroutine object test_bind_warning at 0x7f1fba16d540> > func = <function test_bind_warning at 0x7f1fba4a2700> > kwargs = {'expected': 0, 'http_scope': {'asgi': {}, 'client': > ('127.0.0.1', 80), 'extensions': {}, 'headers': [(b'User-Agent', > b'Hypercorn'), (b'X-Hypercorn', b'Hypercorn'), (b'Referer', b'hypercorn')], > ...}, 'server_name': 'localhost'} > pyfuncitem = <Function test_bind_warning[localhost-0]> > task = <Task finished name='Task-329' coro=<test_bind_warning() > done, defined at > /<<PKGBUILDDIR>>/.pybuild/cp.../latest/how-to/capture-warnings.html#additional-use-cases-of-warnings-in-tests > for alternatives in common use cases.')> > /usr/lib/python3.12/asyncio/base_events.py:685: in run_until_complete > return future.result() > future = <Task finished name='Task-329' coro=<test_bind_warning() > done, defined at > /<<PKGBUILDDIR>>/.pybuild/cp.../latest/how-to/capture-warnings.html#additional-use-cases-of-warnings-in-tests > for alternatives in common use cases.')> > new_task = False > self = <_UnixSelectorEventLoop running=False closed=True > debug=False> > tests/test_routing.py:29: in test_bind_warning > with pytest.warns(None) as record: > expected = 0 > http_scope = {'asgi': {}, 'client': ('127.0.0.1', 80), 'extensions': > {}, 'headers': [(b'User-Agent', b'Hypercorn'), (b'X-Hypercorn', > b'Hypercorn'), (b'Referer', b'hypercorn')], ...} > map_ = QuartMap([]) > request = <Request 'http://localhost/' [GET]> > server_name = 'localhost' > /usr/lib/python3/dist-packages/_pytest/recwarn.py:281: in __init__ > warnings.warn(WARNS_NONE_ARG, stacklevel=4) > __class__ = <class '_pytest.recwarn.WarningsChecker'> > _ispytest = True > expected_warning = None > match_expr = None > msg = 'exceptions must be derived from Warning, not %s' > self = WarningsChecker(record=True) > /usr/lib/python3/dist-packages/_pytest/runner.py:342: in from_call > result: Optional[TResult] = func() > cls = <class '_pytest.runner.CallInfo'> > duration = 0.001240888006577734 > excinfo = <ExceptionInfo PytestRemovedIn8Warning('Passing None has > been deprecated.\nSee > https://docs.pytest.org/en/latest/how-to/capture-warnings.html#additional-use-cases-of-warnings-in-tests > for alternatives in common use cases.') tblen=34> > func = <function call_runtest_hook.<locals>.<lambda> at > 0x7f1fba0d9c60> > precise_start = 45847.096292897 > precise_stop = 45847.097533785 > reraise = (<class '_pytest.outcomes.Exit'>, <class > 'KeyboardInterrupt'>) > result = None > start = 1710275653.0762138 > stop = 1710275653.0774555 > when = 'call' > /usr/lib/python3/dist-packages/_pytest/runner.py:263: in <lambda> > lambda: ihook(item=item, **kwds), when=when, reraise=reraise > ihook = <HookCaller 'pytest_runtest_call'> > item = <Function test_websocket_accept_connection_warns> > kwds = {} > /usr/lib/python3/dist-packages/pluggy/_hooks.py:501: in __call__ > return self._hookexec(self.name, self._hookimpls.copy(), kwargs, > firstresult) > firstresult = False > kwargs = {'item': <Function > test_websocket_accept_connection_warns>} > self = <HookCaller 'pytest_runtest_call'> > /usr/lib/python3/dist-packages/pluggy/_manager.py:119: in _hookexec > return self._inner_hookexec(hook_name, methods, kwargs, firstresult) > firstresult = False > hook_name = 'pytest_runtest_call' > kwargs = {'item': <Function > test_websocket_accept_connection_warns>} > methods = [<HookImpl plugin_name='runner', plugin=<module > '_pytest.runner' from > '/usr/lib/python3/dist-packages/_pytest/runner.p...ugin=<module > '_pytest.unraisableexception' from > '/usr/lib/python3/dist-packages/_pytest/unraisableexception.py'>>, ...] > self = <_pytest.config.PytestPluginManager object at > 0x7f1fbbb984a0> > /usr/lib/python3/dist-packages/_pytest/threadexception.py:87: in > pytest_runtest_call > yield from thread_exception_runtest_hook() > /usr/lib/python3/dist-packages/_pytest/threadexception.py:63: in > thread_exception_runtest_hook > yield > cm = <_pytest.threadexception.catch_threading_exception > object at 0x7f1fb9706ed0> > /usr/lib/python3/dist-packages/_pytest/unraisableexception.py:90: in > pytest_runtest_call > yield from unraisable_exception_runtest_hook() > /usr/lib/python3/dist-packages/_pytest/unraisableexception.py:65: in > unraisable_exception_runtest_hook > yield > cm = <_pytest.unraisableexception.catch_unraisable_exception > object at 0x7f1fb9706cf0> > /usr/lib/python3/dist-packages/_pytest/logging.py:839: in pytest_runtest_call > yield from self._runtest_for(item, "call") > item = <Function test_websocket_accept_connection_warns> > self = <_pytest.logging.LoggingPlugin object at 0x7f1fbae56240> > /usr/lib/python3/dist-packages/_pytest/logging.py:822: in _runtest_for > yield > caplog_handler = <LogCaptureHandler (NOTSET)> > item = <Function test_websocket_accept_connection_warns> > log = '' > report_handler = <LogCaptureHandler (NOTSET)> > self = <_pytest.logging.LoggingPlugin object at 0x7f1fbae56240> > when = 'call' > /usr/lib/python3/dist-packages/_pytest/capture.py:882: in pytest_runtest_call > return (yield) > item = <Function test_websocket_accept_connection_warns> > self = <CaptureManager _method='fd' > _global_capturing=<MultiCapture out=<FDCapture 1 oldfd=5 _state='suspended' > tmpfile=<_io....xtIOWrapper name='/dev/null' mode='r' encoding='utf-8'>> > _state='suspended' _in_suspended=False> _capture_fixture=None> > /usr/lib/python3/dist-packages/_pytest/skipping.py:256: in pytest_runtest_call > return (yield) > item = <Function test_websocket_accept_connection_warns> > xfailed = None > /usr/lib/python3/dist-packages/_pytest/runner.py:178: in pytest_runtest_call > raise e > item = <Function test_websocket_accept_connection_warns> > /usr/lib/python3/dist-packages/_pytest/runner.py:170: in pytest_runtest_call > item.runtest() > item = <Function test_websocket_accept_connection_warns> > /usr/lib/python3/dist-packages/_pytest/python.py:1831: in runtest > self.ihook.pytest_pyfunc_call(pyfuncitem=self) > self = <Function test_websocket_accept_connection_warns> > /usr/lib/python3/dist-packages/pluggy/_hooks.py:501: in __call__ > return self._hookexec(self.name, self._hookimpls.copy(), kwargs, > firstresult) > firstresult = True > kwargs = {'pyfuncitem': <Function > test_websocket_accept_connection_warns>} > self = <HookCaller 'pytest_pyfunc_call'> > /usr/lib/python3/dist-packages/pluggy/_manager.py:119: in _hookexec > return self._inner_hookexec(hook_name, methods, kwargs, firstresult) > firstresult = True > hook_name = 'pytest_pyfunc_call' > kwargs = {'pyfuncitem': <Function > test_websocket_accept_connection_warns>} > methods = [<HookImpl plugin_name='python', plugin=<module > '_pytest.python' from > '/usr/lib/python3/dist-packages/_pytest/python.p...ame='asyncio', > plugin=<module 'pytest_asyncio.plugin' from > '/usr/lib/python3/dist-packages/pytest_asyncio/plugin.py'>>] > self = <_pytest.config.PytestPluginManager object at > 0x7f1fbbb984a0> > /usr/lib/python3/dist-packages/_pytest/python.py:194: in pytest_pyfunc_call > result = testfunction(**testargs) > funcargs = {'event_loop': <_UnixSelectorEventLoop running=False > closed=True debug=False>, 'websocket_scope': {'asgi': {}, 'client...ons': {}, > 'headers': [(b'User-Agent', b'Hypercorn'), (b'X-Hypercorn', b'Hypercorn'), > (b'Referer', b'hypercorn')], ...}} > pyfuncitem = <Function test_websocket_accept_connection_warns> > testargs = {'websocket_scope': {'asgi': {}, 'client': ('127.0.0.1', > 80), 'extensions': {}, 'headers': [(b'User-Agent', b'Hypercorn'), > (b'X-Hypercorn', b'Hypercorn'), (b'Referer', b'hypercorn')], ...}} > testfunction = <function test_websocket_accept_connection_warns at > 0x7f1fba0db920> > /usr/lib/python3/dist-packages/pytest_asyncio/plugin.py:478: in inner > _loop.run_until_complete(task) > _loop = <_UnixSelectorEventLoop running=False closed=True > debug=False> > args = () > coro = <coroutine object test_websocket_accept_connection_warns > at 0x7f1fba5e4c40> > func = <function test_websocket_accept_connection_warns at > 0x7f1fba5efec0> > kwargs = {'websocket_scope': {'asgi': {}, 'client': ('127.0.0.1', > 80), 'extensions': {}, 'headers': [(b'User-Agent', b'Hypercorn'), > (b'X-Hypercorn', b'Hypercorn'), (b'Referer', b'hypercorn')], ...}} > pyfuncitem = <Function test_websocket_accept_connection_warns> > task = <Task finished name='Task-80' > coro=<test_websocket_accept_connection_warns() done, defined at > /<<BUILDDIR>>/quar.../latest/how-to/capture-warnings.html#additional-use-cases-of-warnings-in-tests > for alternatives in common use cases.')> > /usr/lib/python3.12/asyncio/base_events.py:685: in run_until_complete > return future.result() > future = <Task finished name='Task-80' > coro=<test_websocket_accept_connection_warns() done, defined at > /<<BUILDDIR>>/quar.../latest/how-to/capture-warnings.html#additional-use-cases-of-warnings-in-tests > for alternatives in common use cases.')> > new_task = False > self = <_UnixSelectorEventLoop running=False closed=True > debug=False> > tests/test_asgi.py:287: in test_websocket_accept_connection_warns > with pytest.warns(None): > connection = <quart.asgi.ASGIWebsocketConnection object at > 0x7f1fb9706720> > mock_send = <function > test_websocket_accept_connection_warns.<locals>.mock_send at 0x7f1fba0d8ae0> > websocket_scope = {'asgi': {}, 'client': ('127.0.0.1', 80), > 'extensions': {}, 'headers': [(b'User-Agent', b'Hypercorn'), (b'X-Hypercorn', > b'Hypercorn'), (b'Referer', b'hypercorn')], ...} > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > self = WarningsChecker(record=True), expected_warning = None, match_expr = > None > > def __init__( > self, > expected_warning: Optional[ > Union[Type[Warning], Tuple[Type[Warning], ...]] > ] = Warning, > match_expr: Optional[Union[str, Pattern[str]]] = None, > *, > _ispytest: bool = False, > ) -> None: > check_ispytest(_ispytest) > super().__init__(_ispytest=True) > > msg = "exceptions must be derived from Warning, not %s" > if expected_warning is None: > > warnings.warn(WARNS_NONE_ARG, stacklevel=4) > E pytest.PytestRemovedIn8Warning: Passing None has been deprecated. > E See > https://docs.pytest.org/en/latest/how-to/capture-warnings.html#additional-use-cases-of-warnings-in-tests > for alternatives in common use cases. > > __class__ = <class '_pytest.recwarn.WarningsChecker'> > _ispytest = True > expected_warning = None > match_expr = None > msg = 'exceptions must be derived from Warning, not %s' > self = WarningsChecker(record=True) > > /usr/lib/python3/dist-packages/_pytest/recwarn.py:281: PytestRemovedIn8Warning > =============================== warnings summary > =============================== > tests/test_helpers.py::test_send_file_path > tests/test_helpers.py::test_send_file_as_attachment > tests/test_helpers.py::test_send_file_as_attachment_name > tests/test_helpers.py::test_send_file_mimetype > tests/test_helpers.py::test_send_file_last_modified > tests/test_helpers.py::test_send_file_last_modified_override > tests/test_helpers.py::test_send_file_max_age > tests/test_static_hosting.py::test_host_matching > tests/test_static_hosting.py::test_host_matching > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_quart/build/quart/helpers.py:351: > DeprecationWarning: datetime.datetime.utcnow() is deprecated and scheduled > for removal in a future version. Use timezone-aware objects to represent > datetimes in UTC: datetime.datetime.now(datetime.UTC). > response.expires = datetime.utcnow() + timedelta(seconds=cache_timeout) > > -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html > =========================== short test summary info > ============================ > FAILED tests/test_asgi.py::test_websocket_accept_connection_warns - > pytest.Py... > FAILED tests/test_routing.py::test_bind_warning[localhost-0] - > pytest.PytestR... > FAILED tests/test_routing.py::test_bind_warning[quart.com-1] - > pytest.PytestR... > ================== 3 failed, 247 passed, 9 warnings in 5.10s > =================== > E: pybuild pybuild:389: test: plugin pyproject failed with: exit code=1: cd > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_quart/build; python3.12 -m pytest > tests > I: pybuild base:305: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_quart/build; > python3.11 -m pytest tests > ============================= test session starts > ============================== > platform linux -- Python 3.11.8, pytest-8.0.2, pluggy-1.4.0 > rootdir: /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_quart/build > configfile: pyproject.toml > plugins: cov-4.1.0, asyncio-0.20.3, hypothesis-6.98.15 > asyncio: mode=Mode.AUTO > collected 250 items > > tests/test_app.py ....................................... [ > 15%] > tests/test_asgi.py ....................F...... [ > 26%] > tests/test_background_tasks.py ... [ > 27%] > tests/test_basic.py .................. [ > 34%] > tests/test_blueprints.py ........................ [ > 44%] > tests/test_cli.py ....... [ > 47%] > tests/test_ctx.py ............ [ > 52%] > tests/test_debug.py . [ > 52%] > tests/test_exceptions.py ... [ > 53%] > tests/test_helpers.py ...................... [ > 62%] > tests/test_routing.py FF [ > 63%] > tests/test_sessions.py .... [ > 64%] > tests/test_static_hosting.py . [ > 65%] > tests/test_sync.py .. [ > 66%] > tests/test_templating.py ....... [ > 68%] > tests/test_testing.py .................................. [ > 82%] > tests/test_utils.py .. [ > 83%] > tests/test_views.py ... [ > 84%] > tests/wrappers/test_base.py ...... [ > 86%] > tests/wrappers/test_request.py .......... [ > 90%] > tests/wrappers/test_response.py ....................... > [100%] > > =================================== FAILURES > =================================== > ____________________ test_websocket_accept_connection_warns > ____________________ > > websocket_scope = {'asgi': {}, 'client': ('127.0.0.1', 80), 'extensions': {}, > 'headers': [(b'User-Agent', b'Hypercorn'), (b'X-Hypercorn', b'Hypercorn'), > (b'Referer', b'hypercorn')], ...} > > async def test_websocket_accept_connection_warns(websocket_scope: > WebsocketScope) -> None: > connection = ASGIWebsocketConnection(Quart(__name__), websocket_scope) > > async def mock_send(message: ASGISendEvent) -> None: > pass > > > with pytest.warns(None): > > connection = <quart.asgi.ASGIWebsocketConnection object at 0x7f7bda64b1d0> > mock_send = <function > test_websocket_accept_connection_warns.<locals>.mock_send at 0x7f7bda5ea660> > websocket_scope = {'asgi': {}, 'client': ('127.0.0.1', 80), 'extensions': {}, > 'headers': [(b'User-Agent', b'Hypercorn'), (b'X-Hypercorn', b'Hypercorn'), > (b'Referer', b'hypercorn')], ...} > > tests/test_asgi.py:287: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > self = WarningsChecker(record=True), expected_warning = None, match_expr = > None > > def __init__( > self, > expected_warning: Optional[ > Union[Type[Warning], Tuple[Type[Warning], ...]] > ] = Warning, > match_expr: Optional[Union[str, Pattern[str]]] = None, > *, > _ispytest: bool = False, > ) -> None: > check_ispytest(_ispytest) > super().__init__(_ispytest=True) > > msg = "exceptions must be derived from Warning, not %s" > if expected_warning is None: > > warnings.warn(WARNS_NONE_ARG, stacklevel=4) > E pytest.PytestRemovedIn8Warning: Passing None has been deprecated. > E See > https://docs.pytest.org/en/latest/how-to/capture-warnings.html#additional-use-cases-of-warnings-in-tests > for alternatives in common use cases. > > __class__ = <class '_pytest.recwarn.WarningsChecker'> > _ispytest = True > expected_warning = None > match_expr = None > msg = 'exceptions must be derived from Warning, not %s' > self = WarningsChecker(record=True) > > /usr/lib/python3/dist-packages/_pytest/recwarn.py:281: PytestRemovedIn8Warning > ________________________ test_bind_warning[localhost-0] > ________________________ > > server_name = 'localhost', expected = 0 > http_scope = {'asgi': {}, 'client': ('127.0.0.1', 80), 'extensions': {}, > 'headers': [(b'User-Agent', b'Hypercorn'), (b'X-Hypercorn', b'Hypercorn'), > (b'Referer', b'hypercorn')], ...} > > @pytest.mark.parametrize( > "server_name, expected", > [("localhost", 0), ("quart.com", 1)], > ) > async def test_bind_warning(server_name: str, expected: int, http_scope: > HTTPScope) -> None: > map_ = QuartMap(host_matching=False) > request = Request( > "GET", > "http", > "/", > b"", > Headers([("host", "Localhost")]), > "", > "1.1", > http_scope, > send_push_promise=no_op_push, > ) > > with pytest.warns(None) as record: > > expected = 0 > http_scope = {'asgi': {}, 'client': ('127.0.0.1', 80), 'extensions': {}, > 'headers': [(b'User-Agent', b'Hypercorn'), (b'X-Hypercorn', b'Hypercorn'), > (b'Referer', b'hypercorn')], ...} > map_ = QuartMap([]) > request = <Request 'http://localhost/' [GET]> > server_name = 'localhost' > > tests/test_routing.py:29: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > /usr/lib/python3/dist-packages/_pytest/recwarn.py:281: in __init__ > warnings.warn(WARNS_NONE_ARG, stacklevel=4) > __class__ = <class '_pytest.recwarn.WarningsChecker'> > _ispytest = True > expected_warning = None > match_expr = None > msg = 'exceptions must be derived from Warning, not %s' > self = WarningsChecker(record=True) > /usr/lib/python3/dist-packages/_pytest/runner.py:342: in from_call > result: Optional[TResult] = func() > cls = <class '_pytest.runner.CallInfo'> > duration = 0.001215306001540739 > excinfo = <ExceptionInfo PytestRemovedIn8Warning('Passing None has > been deprecated.\nSee > https://docs.pytest.org/en/latest/how-to/capture-warnings.html#additional-use-cases-of-warnings-in-tests > for alternatives in common use cases.') tblen=34> > func = <function call_runtest_hook.<locals>.<lambda> at > 0x7f7bdc52c860> > precise_start = 45852.935502155 > precise_stop = 45852.936717461 > reraise = (<class '_pytest.outcomes.Exit'>, <class > 'KeyboardInterrupt'>) > result = None > start = 1710275658.9154232 > stop = 1710275658.916639 > when = 'call' > /usr/lib/python3/dist-packages/_pytest/runner.py:263: in <lambda> > lambda: ihook(item=item, **kwds), when=when, reraise=reraise > ihook = <HookCaller 'pytest_runtest_call'> > item = <Function test_websocket_accept_connection_warns> > kwds = {} > /usr/lib/python3/dist-packages/pluggy/_hooks.py:501: in __call__ > return self._hookexec(self.name, self._hookimpls.copy(), kwargs, > firstresult) > firstresult = False > kwargs = {'item': <Function > test_websocket_accept_connection_warns>} > self = <HookCaller 'pytest_runtest_call'> > /usr/lib/python3/dist-packages/pluggy/_manager.py:119: in _hookexec > return self._inner_hookexec(hook_name, methods, kwargs, firstresult) > firstresult = False > hook_name = 'pytest_runtest_call' > kwargs = {'item': <Function > test_websocket_accept_connection_warns>} > methods = [<HookImpl plugin_name='runner', plugin=<module > '_pytest.runner' from > '/usr/lib/python3/dist-packages/_pytest/runner.p...ugin=<module > '_pytest.unraisableexception' from > '/usr/lib/python3/dist-packages/_pytest/unraisableexception.py'>>, ...] > self = <_pytest.config.PytestPluginManager object at > 0x7f7bdcaac150> > /usr/lib/python3/dist-packages/_pytest/threadexception.py:87: in > pytest_runtest_call > yield from thread_exception_runtest_hook() > /usr/lib/python3/dist-packages/_pytest/threadexception.py:63: in > thread_exception_runtest_hook > yield > cm = <_pytest.threadexception.catch_threading_exception > object at 0x7f7bda634ed0> > /usr/lib/python3/dist-packages/_pytest/unraisableexception.py:90: in > pytest_runtest_call > yield from unraisable_exception_runtest_hook() > /usr/lib/python3/dist-packages/_pytest/unraisableexception.py:65: in > unraisable_exception_runtest_hook > yield > cm = <_pytest.unraisableexception.catch_unraisable_exception > object at 0x7f7bda635e10> > /usr/lib/python3/dist-packages/_pytest/logging.py:839: in pytest_runtest_call > yield from self._runtest_for(item, "call") > item = <Function test_websocket_accept_connection_warns> > self = <_pytest.logging.LoggingPlugin object at 0x7f7bdc0ed090> > /usr/lib/python3/dist-packages/_pytest/logging.py:822: in _runtest_for > yield > caplog_handler = <LogCaptureHandler (NOTSET)> > item = <Function test_websocket_accept_connection_warns> > log = '' > report_handler = <LogCaptureHandler (NOTSET)> > self = <_pytest.logging.LoggingPlugin object at 0x7f7bdc0ed090> > when = 'call' > /usr/lib/python3/dist-packages/_pytest/capture.py:882: in pytest_runtest_call > return (yield) > item = <Function test_websocket_accept_connection_warns> > self = <CaptureManager _method='fd' > _global_capturing=<MultiCapture out=<FDCapture 1 oldfd=5 _state='suspended' > tmpfile=<_io....xtIOWrapper name='/dev/null' mode='r' encoding='utf-8'>> > _state='suspended' _in_suspended=False> _capture_fixture=None> > /usr/lib/python3/dist-packages/_pytest/skipping.py:256: in pytest_runtest_call > return (yield) > item = <Function test_websocket_accept_connection_warns> > xfailed = None > /usr/lib/python3/dist-packages/_pytest/runner.py:178: in pytest_runtest_call > raise e > item = <Function test_websocket_accept_connection_warns> > /usr/lib/python3/dist-packages/_pytest/runner.py:170: in pytest_runtest_call > item.runtest() > item = <Function test_websocket_accept_connection_warns> > /usr/lib/python3/dist-packages/_pytest/python.py:1831: in runtest > self.ihook.pytest_pyfunc_call(pyfuncitem=self) > self = <Function test_websocket_accept_connection_warns> > /usr/lib/python3/dist-packages/pluggy/_hooks.py:501: in __call__ > return self._hookexec(self.name, self._hookimpls.copy(), kwargs, > firstresult) > firstresult = True > kwargs = {'pyfuncitem': <Function > test_websocket_accept_connection_warns>} > self = <HookCaller 'pytest_pyfunc_call'> > /usr/lib/python3/dist-packages/pluggy/_manager.py:119: in _hookexec > return self._inner_hookexec(hook_name, methods, kwargs, firstresult) > firstresult = True > hook_name = 'pytest_pyfunc_call' > kwargs = {'pyfuncitem': <Function > test_websocket_accept_connection_warns>} > methods = [<HookImpl plugin_name='python', plugin=<module > '_pytest.python' from > '/usr/lib/python3/dist-packages/_pytest/python.p...ame='asyncio', > plugin=<module 'pytest_asyncio.plugin' from > '/usr/lib/python3/dist-packages/pytest_asyncio/plugin.py'>>] > self = <_pytest.config.PytestPluginManager object at > 0x7f7bdcaac150> > /usr/lib/python3/dist-packages/_pytest/python.py:194: in pytest_pyfunc_call > result = testfunction(**testargs) > funcargs = {'event_loop': <_UnixSelectorEventLoop running=False > closed=True debug=False>, 'websocket_scope': {'asgi': {}, 'client...ons': {}, > 'headers': [(b'User-Agent', b'Hypercorn'), (b'X-Hypercorn', b'Hypercorn'), > (b'Referer', b'hypercorn')], ...}} > pyfuncitem = <Function test_websocket_accept_connection_warns> > testargs = {'websocket_scope': {'asgi': {}, 'client': ('127.0.0.1', > 80), 'extensions': {}, 'headers': [(b'User-Agent', b'Hypercorn'), > (b'X-Hypercorn', b'Hypercorn'), (b'Referer', b'hypercorn')], ...}} > testfunction = <function test_websocket_accept_connection_warns at > 0x7f7bda5e93a0> > /usr/lib/python3/dist-packages/pytest_asyncio/plugin.py:478: in inner > _loop.run_until_complete(task) > _loop = <_UnixSelectorEventLoop running=False closed=True > debug=False> > args = () > coro = <coroutine object test_websocket_accept_connection_warns > at 0x7f7bdab00040> > func = <function test_websocket_accept_connection_warns at > 0x7f7bdab08c20> > kwargs = {'websocket_scope': {'asgi': {}, 'client': ('127.0.0.1', > 80), 'extensions': {}, 'headers': [(b'User-Agent', b'Hypercorn'), > (b'X-Hypercorn', b'Hypercorn'), (b'Referer', b'hypercorn')], ...}} > pyfuncitem = <Function test_websocket_accept_connection_warns> > task = <Task finished name='Task-97' > coro=<test_websocket_accept_connection_warns() done, defined at > /<<BUILDDIR>>/quar.../latest/how-to/capture-warnings.html#additional-use-cases-of-warnings-in-tests > for alternatives in common use cases.')> > /usr/lib/python3.11/asyncio/base_events.py:654: in run_until_complete > return future.result() > future = <Task finished name='Task-97' > coro=<test_websocket_accept_connection_warns() done, defined at > /<<BUILDDIR>>/quar.../latest/how-to/capture-warnings.html#additional-use-cases-of-warnings-in-tests > for alternatives in common use cases.')> > new_task = False > self = <_UnixSelectorEventLoop running=False closed=True > debug=False> > tests/test_asgi.py:287: in test_websocket_accept_connection_warns > with pytest.warns(None): > connection = <quart.asgi.ASGIWebsocketConnection object at > 0x7f7bda64b1d0> > mock_send = <function > test_websocket_accept_connection_warns.<locals>.mock_send at 0x7f7bda5ea660> > websocket_scope = {'asgi': {}, 'client': ('127.0.0.1', 80), > 'extensions': {}, 'headers': [(b'User-Agent', b'Hypercorn'), (b'X-Hypercorn', > b'Hypercorn'), (b'Referer', b'hypercorn')], ...} > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > self = WarningsChecker(record=True), expected_warning = None, match_expr = > None > > def __init__( > self, > expected_warning: Optional[ > Union[Type[Warning], Tuple[Type[Warning], ...]] > ] = Warning, > match_expr: Optional[Union[str, Pattern[str]]] = None, > *, > _ispytest: bool = False, > ) -> None: > check_ispytest(_ispytest) > super().__init__(_ispytest=True) > > msg = "exceptions must be derived from Warning, not %s" > if expected_warning is None: > > warnings.warn(WARNS_NONE_ARG, stacklevel=4) > E pytest.PytestRemovedIn8Warning: Passing None has been deprecated. > E See > https://docs.pytest.org/en/latest/how-to/capture-warnings.html#additional-use-cases-of-warnings-in-tests > for alternatives in common use cases. > > __class__ = <class '_pytest.recwarn.WarningsChecker'> > _ispytest = True > expected_warning = None > match_expr = None > msg = 'exceptions must be derived from Warning, not %s' > self = WarningsChecker(record=True) > > /usr/lib/python3/dist-packages/_pytest/recwarn.py:281: PytestRemovedIn8Warning > ________________________ test_bind_warning[quart.com-1] > ________________________ > > server_name = 'quart.com', expected = 1 > http_scope = {'asgi': {}, 'client': ('127.0.0.1', 80), 'extensions': {}, > 'headers': [(b'User-Agent', b'Hypercorn'), (b'X-Hypercorn', b'Hypercorn'), > (b'Referer', b'hypercorn')], ...} > > @pytest.mark.parametrize( > "server_name, expected", > [("localhost", 0), ("quart.com", 1)], > ) > async def test_bind_warning(server_name: str, expected: int, http_scope: > HTTPScope) -> None: > map_ = QuartMap(host_matching=False) > request = Request( > "GET", > "http", > "/", > b"", > Headers([("host", "Localhost")]), > "", > "1.1", > http_scope, > send_push_promise=no_op_push, > ) > > with pytest.warns(None) as record: > > expected = 1 > http_scope = {'asgi': {}, 'client': ('127.0.0.1', 80), 'extensions': {}, > 'headers': [(b'User-Agent', b'Hypercorn'), (b'X-Hypercorn', b'Hypercorn'), > (b'Referer', b'hypercorn')], ...} > map_ = QuartMap([]) > request = <Request 'http://localhost/' [GET]> > server_name = 'quart.com' > > tests/test_routing.py:29: > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > /usr/lib/python3/dist-packages/_pytest/recwarn.py:281: in __init__ > warnings.warn(WARNS_NONE_ARG, stacklevel=4) > __class__ = <class '_pytest.recwarn.WarningsChecker'> > _ispytest = True > expected_warning = None > match_expr = None > msg = 'exceptions must be derived from Warning, not %s' > self = WarningsChecker(record=True) > /usr/lib/python3/dist-packages/_pytest/runner.py:342: in from_call > result: Optional[TResult] = func() > cls = <class '_pytest.runner.CallInfo'> > duration = 0.0004356299978098832 > excinfo = <ExceptionInfo PytestRemovedIn8Warning('Passing None has > been deprecated.\nSee > https://docs.pytest.org/en/latest/how-to/capture-warnings.html#additional-use-cases-of-warnings-in-tests > for alternatives in common use cases.') tblen=68> > func = <function call_runtest_hook.<locals>.<lambda> at > 0x7f7bdc1060c0> > precise_start = 45855.06744554 > precise_stop = 45855.06788117 > reraise = (<class '_pytest.outcomes.Exit'>, <class > 'KeyboardInterrupt'>) > result = None > start = 1710275661.0473664 > stop = 1710275661.0478027 > when = 'call' > /usr/lib/python3/dist-packages/_pytest/runner.py:263: in <lambda> > lambda: ihook(item=item, **kwds), when=when, reraise=reraise > ihook = <HookCaller 'pytest_runtest_call'> > item = <Function test_bind_warning[localhost-0]> > kwds = {} > /usr/lib/python3/dist-packages/pluggy/_hooks.py:501: in __call__ > return self._hookexec(self.name, self._hookimpls.copy(), kwargs, > firstresult) > firstresult = False > kwargs = {'item': <Function test_bind_warning[localhost-0]>} > self = <HookCaller 'pytest_runtest_call'> > /usr/lib/python3/dist-packages/pluggy/_manager.py:119: in _hookexec > return self._inner_hookexec(hook_name, methods, kwargs, firstresult) > firstresult = False > hook_name = 'pytest_runtest_call' > kwargs = {'item': <Function test_bind_warning[localhost-0]>} > methods = [<HookImpl plugin_name='runner', plugin=<module > '_pytest.runner' from > '/usr/lib/python3/dist-packages/_pytest/runner.p...ugin=<module > '_pytest.unraisableexception' from > '/usr/lib/python3/dist-packages/_pytest/unraisableexception.py'>>, ...] > self = <_pytest.config.PytestPluginManager object at > 0x7f7bdcaac150> > /usr/lib/python3/dist-packages/_pytest/threadexception.py:87: in > pytest_runtest_call > yield from thread_exception_runtest_hook() > /usr/lib/python3/dist-packages/_pytest/threadexception.py:63: in > thread_exception_runtest_hook > yield > cm = <_pytest.threadexception.catch_threading_exception > object at 0x7f7bd9d695d0> > /usr/lib/python3/dist-packages/_pytest/unraisableexception.py:90: in > pytest_runtest_call > yield from unraisable_exception_runtest_hook() > /usr/lib/python3/dist-packages/_pytest/unraisableexception.py:65: in > unraisable_exception_runtest_hook > yield > cm = <_pytest.unraisableexception.catch_unraisable_exception > object at 0x7f7bd9d72f10> > /usr/lib/python3/dist-packages/_pytest/logging.py:839: in pytest_runtest_call > yield from self._runtest_for(item, "call") > item = <Function test_bind_warning[localhost-0]> > self = <_pytest.logging.LoggingPlugin object at 0x7f7bdc0ed090> > /usr/lib/python3/dist-packages/_pytest/logging.py:822: in _runtest_for > yield > caplog_handler = <LogCaptureHandler (NOTSET)> > item = <Function test_bind_warning[localhost-0]> > log = '' > report_handler = <LogCaptureHandler (NOTSET)> > self = <_pytest.logging.LoggingPlugin object at 0x7f7bdc0ed090> > when = 'call' > /usr/lib/python3/dist-packages/_pytest/capture.py:882: in pytest_runtest_call > return (yield) > item = <Function test_bind_warning[localhost-0]> > self = <CaptureManager _method='fd' > _global_capturing=<MultiCapture out=<FDCapture 1 oldfd=5 _state='suspended' > tmpfile=<_io....xtIOWrapper name='/dev/null' mode='r' encoding='utf-8'>> > _state='suspended' _in_suspended=False> _capture_fixture=None> > /usr/lib/python3/dist-packages/_pytest/skipping.py:256: in pytest_runtest_call > return (yield) > item = <Function test_bind_warning[localhost-0]> > xfailed = None > /usr/lib/python3/dist-packages/_pytest/runner.py:178: in pytest_runtest_call > raise e > item = <Function test_bind_warning[localhost-0]> > /usr/lib/python3/dist-packages/_pytest/runner.py:170: in pytest_runtest_call > item.runtest() > item = <Function test_bind_warning[localhost-0]> > /usr/lib/python3/dist-packages/_pytest/python.py:1831: in runtest > self.ihook.pytest_pyfunc_call(pyfuncitem=self) > self = <Function test_bind_warning[localhost-0]> > /usr/lib/python3/dist-packages/pluggy/_hooks.py:501: in __call__ > return self._hookexec(self.name, self._hookimpls.copy(), kwargs, > firstresult) > firstresult = True > kwargs = {'pyfuncitem': <Function test_bind_warning[localhost-0]>} > self = <HookCaller 'pytest_pyfunc_call'> > /usr/lib/python3/dist-packages/pluggy/_manager.py:119: in _hookexec > return self._inner_hookexec(hook_name, methods, kwargs, firstresult) > firstresult = True > hook_name = 'pytest_pyfunc_call' > kwargs = {'pyfuncitem': <Function test_bind_warning[localhost-0]>} > methods = [<HookImpl plugin_name='python', plugin=<module > '_pytest.python' from > '/usr/lib/python3/dist-packages/_pytest/python.p...ame='asyncio', > plugin=<module 'pytest_asyncio.plugin' from > '/usr/lib/python3/dist-packages/pytest_asyncio/plugin.py'>>] > self = <_pytest.config.PytestPluginManager object at > 0x7f7bdcaac150> > /usr/lib/python3/dist-packages/_pytest/python.py:194: in pytest_pyfunc_call > result = testfunction(**testargs) > funcargs = {'event_loop': <_UnixSelectorEventLoop running=False > closed=True debug=False>, 'expected': 0, 'http_scope': {'asgi': {...r-Agent', > b'Hypercorn'), (b'X-Hypercorn', b'Hypercorn'), (b'Referer', b'hypercorn')], > ...}, 'server_name': 'localhost'} > pyfuncitem = <Function test_bind_warning[localhost-0]> > testargs = {'expected': 0, 'http_scope': {'asgi': {}, 'client': > ('127.0.0.1', 80), 'extensions': {}, 'headers': [(b'User-Agent', > b'Hypercorn'), (b'X-Hypercorn', b'Hypercorn'), (b'Referer', b'hypercorn')], > ...}, 'server_name': 'localhost'} > testfunction = <function test_bind_warning at 0x7f7bd9d084a0> > /usr/lib/python3/dist-packages/pytest_asyncio/plugin.py:478: in inner > _loop.run_until_complete(task) > _loop = <_UnixSelectorEventLoop running=False closed=True > debug=False> > args = () > coro = <coroutine object test_bind_warning at 0x7f7bda640040> > func = <function test_bind_warning at 0x7f7bdab3eb60> > kwargs = {'expected': 0, 'http_scope': {'asgi': {}, 'client': > ('127.0.0.1', 80), 'extensions': {}, 'headers': [(b'User-Agent', > b'Hypercorn'), (b'X-Hypercorn', b'Hypercorn'), (b'Referer', b'hypercorn')], > ...}, 'server_name': 'localhost'} > pyfuncitem = <Function test_bind_warning[localhost-0]> > task = <Task finished name='Task-405' coro=<test_bind_warning() > done, defined at > /<<PKGBUILDDIR>>/.pybuild/cp.../latest/how-to/capture-warnings.html#additional-use-cases-of-warnings-in-tests > for alternatives in common use cases.')> > /usr/lib/python3.11/asyncio/base_events.py:654: in run_until_complete > return future.result() > future = <Task finished name='Task-405' coro=<test_bind_warning() > done, defined at > /<<PKGBUILDDIR>>/.pybuild/cp.../latest/how-to/capture-warnings.html#additional-use-cases-of-warnings-in-tests > for alternatives in common use cases.')> > new_task = False > self = <_UnixSelectorEventLoop running=False closed=True > debug=False> > tests/test_routing.py:29: in test_bind_warning > with pytest.warns(None) as record: > expected = 0 > http_scope = {'asgi': {}, 'client': ('127.0.0.1', 80), 'extensions': > {}, 'headers': [(b'User-Agent', b'Hypercorn'), (b'X-Hypercorn', > b'Hypercorn'), (b'Referer', b'hypercorn')], ...} > map_ = QuartMap([]) > request = <Request 'http://localhost/' [GET]> > server_name = 'localhost' > /usr/lib/python3/dist-packages/_pytest/recwarn.py:281: in __init__ > warnings.warn(WARNS_NONE_ARG, stacklevel=4) > __class__ = <class '_pytest.recwarn.WarningsChecker'> > _ispytest = True > expected_warning = None > match_expr = None > msg = 'exceptions must be derived from Warning, not %s' > self = WarningsChecker(record=True) > /usr/lib/python3/dist-packages/_pytest/runner.py:342: in from_call > result: Optional[TResult] = func() > cls = <class '_pytest.runner.CallInfo'> > duration = 0.001215306001540739 > excinfo = <ExceptionInfo PytestRemovedIn8Warning('Passing None has > been deprecated.\nSee > https://docs.pytest.org/en/latest/how-to/capture-warnings.html#additional-use-cases-of-warnings-in-tests > for alternatives in common use cases.') tblen=34> > func = <function call_runtest_hook.<locals>.<lambda> at > 0x7f7bdc52c860> > precise_start = 45852.935502155 > precise_stop = 45852.936717461 > reraise = (<class '_pytest.outcomes.Exit'>, <class > 'KeyboardInterrupt'>) > result = None > start = 1710275658.9154232 > stop = 1710275658.916639 > when = 'call' > /usr/lib/python3/dist-packages/_pytest/runner.py:263: in <lambda> > lambda: ihook(item=item, **kwds), when=when, reraise=reraise > ihook = <HookCaller 'pytest_runtest_call'> > item = <Function test_websocket_accept_connection_warns> > kwds = {} > /usr/lib/python3/dist-packages/pluggy/_hooks.py:501: in __call__ > return self._hookexec(self.name, self._hookimpls.copy(), kwargs, > firstresult) > firstresult = False > kwargs = {'item': <Function > test_websocket_accept_connection_warns>} > self = <HookCaller 'pytest_runtest_call'> > /usr/lib/python3/dist-packages/pluggy/_manager.py:119: in _hookexec > return self._inner_hookexec(hook_name, methods, kwargs, firstresult) > firstresult = False > hook_name = 'pytest_runtest_call' > kwargs = {'item': <Function > test_websocket_accept_connection_warns>} > methods = [<HookImpl plugin_name='runner', plugin=<module > '_pytest.runner' from > '/usr/lib/python3/dist-packages/_pytest/runner.p...ugin=<module > '_pytest.unraisableexception' from > '/usr/lib/python3/dist-packages/_pytest/unraisableexception.py'>>, ...] > self = <_pytest.config.PytestPluginManager object at > 0x7f7bdcaac150> > /usr/lib/python3/dist-packages/_pytest/threadexception.py:87: in > pytest_runtest_call > yield from thread_exception_runtest_hook() > /usr/lib/python3/dist-packages/_pytest/threadexception.py:63: in > thread_exception_runtest_hook > yield > cm = <_pytest.threadexception.catch_threading_exception > object at 0x7f7bda634ed0> > /usr/lib/python3/dist-packages/_pytest/unraisableexception.py:90: in > pytest_runtest_call > yield from unraisable_exception_runtest_hook() > /usr/lib/python3/dist-packages/_pytest/unraisableexception.py:65: in > unraisable_exception_runtest_hook > yield > cm = <_pytest.unraisableexception.catch_unraisable_exception > object at 0x7f7bda635e10> > /usr/lib/python3/dist-packages/_pytest/logging.py:839: in pytest_runtest_call > yield from self._runtest_for(item, "call") > item = <Function test_websocket_accept_connection_warns> > self = <_pytest.logging.LoggingPlugin object at 0x7f7bdc0ed090> > /usr/lib/python3/dist-packages/_pytest/logging.py:822: in _runtest_for > yield > caplog_handler = <LogCaptureHandler (NOTSET)> > item = <Function test_websocket_accept_connection_warns> > log = '' > report_handler = <LogCaptureHandler (NOTSET)> > self = <_pytest.logging.LoggingPlugin object at 0x7f7bdc0ed090> > when = 'call' > /usr/lib/python3/dist-packages/_pytest/capture.py:882: in pytest_runtest_call > return (yield) > item = <Function test_websocket_accept_connection_warns> > self = <CaptureManager _method='fd' > _global_capturing=<MultiCapture out=<FDCapture 1 oldfd=5 _state='suspended' > tmpfile=<_io....xtIOWrapper name='/dev/null' mode='r' encoding='utf-8'>> > _state='suspended' _in_suspended=False> _capture_fixture=None> > /usr/lib/python3/dist-packages/_pytest/skipping.py:256: in pytest_runtest_call > return (yield) > item = <Function test_websocket_accept_connection_warns> > xfailed = None > /usr/lib/python3/dist-packages/_pytest/runner.py:178: in pytest_runtest_call > raise e > item = <Function test_websocket_accept_connection_warns> > /usr/lib/python3/dist-packages/_pytest/runner.py:170: in pytest_runtest_call > item.runtest() > item = <Function test_websocket_accept_connection_warns> > /usr/lib/python3/dist-packages/_pytest/python.py:1831: in runtest > self.ihook.pytest_pyfunc_call(pyfuncitem=self) > self = <Function test_websocket_accept_connection_warns> > /usr/lib/python3/dist-packages/pluggy/_hooks.py:501: in __call__ > return self._hookexec(self.name, self._hookimpls.copy(), kwargs, > firstresult) > firstresult = True > kwargs = {'pyfuncitem': <Function > test_websocket_accept_connection_warns>} > self = <HookCaller 'pytest_pyfunc_call'> > /usr/lib/python3/dist-packages/pluggy/_manager.py:119: in _hookexec > return self._inner_hookexec(hook_name, methods, kwargs, firstresult) > firstresult = True > hook_name = 'pytest_pyfunc_call' > kwargs = {'pyfuncitem': <Function > test_websocket_accept_connection_warns>} > methods = [<HookImpl plugin_name='python', plugin=<module > '_pytest.python' from > '/usr/lib/python3/dist-packages/_pytest/python.p...ame='asyncio', > plugin=<module 'pytest_asyncio.plugin' from > '/usr/lib/python3/dist-packages/pytest_asyncio/plugin.py'>>] > self = <_pytest.config.PytestPluginManager object at > 0x7f7bdcaac150> > /usr/lib/python3/dist-packages/_pytest/python.py:194: in pytest_pyfunc_call > result = testfunction(**testargs) > funcargs = {'event_loop': <_UnixSelectorEventLoop running=False > closed=True debug=False>, 'websocket_scope': {'asgi': {}, 'client...ons': {}, > 'headers': [(b'User-Agent', b'Hypercorn'), (b'X-Hypercorn', b'Hypercorn'), > (b'Referer', b'hypercorn')], ...}} > pyfuncitem = <Function test_websocket_accept_connection_warns> > testargs = {'websocket_scope': {'asgi': {}, 'client': ('127.0.0.1', > 80), 'extensions': {}, 'headers': [(b'User-Agent', b'Hypercorn'), > (b'X-Hypercorn', b'Hypercorn'), (b'Referer', b'hypercorn')], ...}} > testfunction = <function test_websocket_accept_connection_warns at > 0x7f7bda5e93a0> > /usr/lib/python3/dist-packages/pytest_asyncio/plugin.py:478: in inner > _loop.run_until_complete(task) > _loop = <_UnixSelectorEventLoop running=False closed=True > debug=False> > args = () > coro = <coroutine object test_websocket_accept_connection_warns > at 0x7f7bdab00040> > func = <function test_websocket_accept_connection_warns at > 0x7f7bdab08c20> > kwargs = {'websocket_scope': {'asgi': {}, 'client': ('127.0.0.1', > 80), 'extensions': {}, 'headers': [(b'User-Agent', b'Hypercorn'), > (b'X-Hypercorn', b'Hypercorn'), (b'Referer', b'hypercorn')], ...}} > pyfuncitem = <Function test_websocket_accept_connection_warns> > task = <Task finished name='Task-97' > coro=<test_websocket_accept_connection_warns() done, defined at > /<<BUILDDIR>>/quar.../latest/how-to/capture-warnings.html#additional-use-cases-of-warnings-in-tests > for alternatives in common use cases.')> > /usr/lib/python3.11/asyncio/base_events.py:654: in run_until_complete > return future.result() > future = <Task finished name='Task-97' > coro=<test_websocket_accept_connection_warns() done, defined at > /<<BUILDDIR>>/quar.../latest/how-to/capture-warnings.html#additional-use-cases-of-warnings-in-tests > for alternatives in common use cases.')> > new_task = False > self = <_UnixSelectorEventLoop running=False closed=True > debug=False> > tests/test_asgi.py:287: in test_websocket_accept_connection_warns > with pytest.warns(None): > connection = <quart.asgi.ASGIWebsocketConnection object at > 0x7f7bda64b1d0> > mock_send = <function > test_websocket_accept_connection_warns.<locals>.mock_send at 0x7f7bda5ea660> > websocket_scope = {'asgi': {}, 'client': ('127.0.0.1', 80), > 'extensions': {}, 'headers': [(b'User-Agent', b'Hypercorn'), (b'X-Hypercorn', > b'Hypercorn'), (b'Referer', b'hypercorn')], ...} > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ > > self = WarningsChecker(record=True), expected_warning = None, match_expr = > None > > def __init__( > self, > expected_warning: Optional[ > Union[Type[Warning], Tuple[Type[Warning], ...]] > ] = Warning, > match_expr: Optional[Union[str, Pattern[str]]] = None, > *, > _ispytest: bool = False, > ) -> None: > check_ispytest(_ispytest) > super().__init__(_ispytest=True) > > msg = "exceptions must be derived from Warning, not %s" > if expected_warning is None: > > warnings.warn(WARNS_NONE_ARG, stacklevel=4) > E pytest.PytestRemovedIn8Warning: Passing None has been deprecated. > E See > https://docs.pytest.org/en/latest/how-to/capture-warnings.html#additional-use-cases-of-warnings-in-tests > for alternatives in common use cases. > > __class__ = <class '_pytest.recwarn.WarningsChecker'> > _ispytest = True > expected_warning = None > match_expr = None > msg = 'exceptions must be derived from Warning, not %s' > self = WarningsChecker(record=True) > > /usr/lib/python3/dist-packages/_pytest/recwarn.py:281: PytestRemovedIn8Warning > =========================== short test summary info > ============================ > FAILED tests/test_asgi.py::test_websocket_accept_connection_warns - > pytest.Py... > FAILED tests/test_routing.py::test_bind_warning[localhost-0] - > pytest.PytestR... > FAILED tests/test_routing.py::test_bind_warning[quart.com-1] - > pytest.PytestR... > ======================== 3 failed, 247 passed in 5.66s > ========================= > E: pybuild pybuild:389: test: plugin pyproject failed with: exit code=1: cd > /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_quart/build; python3.11 -m pytest > tests > dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p "3.12 > 3.11" returned exit code 13 The full build log is available from: http://qa-logs.debian.net/2024/03/13/quart_0.19.4-1_unstable.log All bugs filed during this archive rebuild are listed at: https://bugs.debian.org/cgi-bin/pkgreport.cgi?tag=ftbfs-20240313;users=lu...@debian.org or: https://udd.debian.org/bugs/?release=na&merged=ign&fnewerval=7&flastmodval=7&fusertag=only&fusertagtag=ftbfs-20240313&fusertaguser=lu...@debian.org&allbugs=1&cseverity=1&ctags=1&caffected=1#results A list of current common problems and possible solutions is available at http://wiki.debian.org/qa.debian.org/FTBFS . You're welcome to contribute! If you reassign this bug to another package, please mark it as 'affects'-ing this package. See https://www.debian.org/Bugs/server-control#affects If you fail to reproduce this, please provide a build log and diff it with mine so that we can identify if something relevant changed in the meantime.