Bug 2078864 - python-cheroot fails to build with Python 3.11: ResourceWarning: unclosed <socket.socket fd=13, family=10, type=1, proto=6, laddr=('::1', 41978, 0, 0), raddr=('::1', 59371, 0, 0)>
Summary: python-cheroot fails to build with Python 3.11: ResourceWarning: unclosed <so...
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: python-cheroot
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Dan Radez
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: PYTHON3.11
TreeView+ depends on / blocked
 
Reported: 2022-04-26 11:33 UTC by Tomáš Hrnčiar
Modified: 2022-06-16 21:09 UTC (History)
5 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2022-06-16 21:09:11 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Tomáš Hrnčiar 2022-04-26 11:33:03 UTC
python-cheroot fails to build with Python 3.11.0a7.

=================================== FAILURES ===================================
___________________________ test_streaming_11[True] ____________________________

cls = <class '_pytest.runner.CallInfo'>
func = <function call_runtest_hook.<locals>.<lambda> at 0x7fa7034f5080>
when = 'call'
reraise = (<class '_pytest.outcomes.Exit'>, <class 'KeyboardInterrupt'>)

    @classmethod
    def from_call(
        cls,
        func: "Callable[[], TResult]",
        when: "Literal['collect', 'setup', 'call', 'teardown']",
        reraise: Optional[
            Union[Type[BaseException], Tuple[Type[BaseException], ...]]
        ] = None,
    ) -> "CallInfo[TResult]":
        """Call func, wrapping the result in a CallInfo.
    
        :param func:
            The function to call. Called without arguments.
        :param when:
            The phase in which the function is called.
        :param reraise:
            Exception or exceptions that shall propagate if raised by the
            function, instead of being wrapped in the CallInfo.
        """
        excinfo = None
        start = timing.time()
        precise_start = timing.perf_counter()
        try:
>           result: Optional[TResult] = func()

cls        = <class '_pytest.runner.CallInfo'>
duration   = 0.0029089370000292547
excinfo    = <ExceptionInfo PytestUnraisableExceptionWarning('Exception ignored in: <socket.socket fd=-1, family=10, type=1, proto=...cket.socket fd=13, family=10, type=1, proto=6, laddr=(\'::1\', 41978, 0, 0), raddr=(\'::1\', 59371, 0, 0)>\n') tblen=6>
func       = <function call_runtest_hook.<locals>.<lambda> at 0x7fa7034f5080>
precise_start = 1318.373745283
precise_stop = 1318.37665422
reraise    = (<class '_pytest.outcomes.Exit'>, <class 'KeyboardInterrupt'>)
result     = None
start      = 1650647438.552493
stop       = 1650647438.5554025
when       = 'call'

/usr/lib/python3.11/site-packages/_pytest/runner.py:340: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
/usr/lib/python3.11/site-packages/_pytest/runner.py:261: in <lambda>
    lambda: ihook(item=item, **kwds), when=when, reraise=reraise
        ihook      = <_HookCaller 'pytest_runtest_call'>
        item       = <Function test_streaming_11[True]>
        kwds       = {}
/usr/lib/python3.11/site-packages/pluggy/_hooks.py:265: in __call__
    return self._hookexec(self.name, self.get_hookimpls(), kwargs, firstresult)
        argname    = 'item'
        args       = ()
        firstresult = False
        kwargs     = {'item': <Function test_streaming_11[True]>}
        self       = <_HookCaller 'pytest_runtest_call'>
/usr/lib/python3.11/site-packages/pluggy/_manager.py:80: in _hookexec
    return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
        firstresult = False
        hook_name  = 'pytest_runtest_call'
        kwargs     = {'item': <Function test_streaming_11[True]>}
        methods    = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.11/site-packages/_pytest/runne...ption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.11/site-packages/_pytest/threadexception.py'>>]
        self       = <_pytest.config.PytestPluginManager object at 0x7fa7057bfd10>
/usr/lib/python3.11/site-packages/_pytest/unraisableexception.py:88: in pytest_runtest_call
    yield from unraisable_exception_runtest_hook()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

    def unraisable_exception_runtest_hook() -> Generator[None, None, None]:
        with catch_unraisable_exception() as cm:
            yield
            if cm.unraisable:
                if cm.unraisable.err_msg is not None:
                    err_msg = cm.unraisable.err_msg
                else:
                    err_msg = "Exception ignored in"
                msg = f"{err_msg}: {cm.unraisable.object!r}\n\n"
                msg += "".join(
                    traceback.format_exception(
                        cm.unraisable.exc_type,
                        cm.unraisable.exc_value,
                        cm.unraisable.exc_traceback,
                    )
                )
>               warnings.warn(pytest.PytestUnraisableExceptionWarning(msg))
E               pytest.PytestUnraisableExceptionWarning: Exception ignored in: <socket.socket fd=-1, family=10, type=1, proto=6>
E               
E               Traceback (most recent call last):
E                 File "/usr/lib/python3.11/site-packages/_pytest/python.py", line 192, in pytest_pyfunc_call
E                   result = testfunction(**testargs)
E                            ^^^^^^^^^^^^^^^^^^^^^^^^
E               ResourceWarning: unclosed <socket.socket fd=13, family=10, type=1, proto=6, laddr=('::1', 41978, 0, 0), raddr=('::1', 59371, 0, 0)>

cm         = <_pytest.unraisableexception.catch_unraisable_exception object at 0x7fa704a6c090>
err_msg    = 'Exception ignored in'
msg        = 'Exception ignored in: <socket.socket fd=-1, family=10, type=1, proto=6>\n\nTraceback (most recent call last):\n  File...closed <socket.socket fd=13, family=10, type=1, proto=6, laddr=(\'::1\', 41978, 0, 0), raddr=(\'::1\', 59371, 0, 0)>\n'

/usr/lib/python3.11/site-packages/_pytest/unraisableexception.py:78: PytestUnraisableExceptionWarning
___________________________ test_streaming_10[True] ____________________________

cls = <class '_pytest.runner.CallInfo'>
func = <function call_runtest_hook.<locals>.<lambda> at 0x7fa7034eb6a0>
when = 'call'
reraise = (<class '_pytest.outcomes.Exit'>, <class 'KeyboardInterrupt'>)

    @classmethod
    def from_call(
        cls,
        func: "Callable[[], TResult]",
        when: "Literal['collect', 'setup', 'call', 'teardown']",
        reraise: Optional[
            Union[Type[BaseException], Tuple[Type[BaseException], ...]]
        ] = None,
    ) -> "CallInfo[TResult]":
        """Call func, wrapping the result in a CallInfo.
    
        :param func:
            The function to call. Called without arguments.
        :param when:
            The phase in which the function is called.
        :param reraise:
            Exception or exceptions that shall propagate if raised by the
            function, instead of being wrapped in the CallInfo.
        """
        excinfo = None
        start = timing.time()
        precise_start = timing.perf_counter()
        try:
>           result: Optional[TResult] = func()

cls        = <class '_pytest.runner.CallInfo'>
duration   = 0.0022378810001555394
excinfo    = <ExceptionInfo PytestUnraisableExceptionWarning('Exception ignored in: <socket.socket fd=-1, family=10, type=1, proto=...cket.socket fd=13, family=10, type=1, proto=6, laddr=(\'::1\', 45790, 0, 0), raddr=(\'::1\', 58843, 0, 0)>\n') tblen=6>
func       = <function call_runtest_hook.<locals>.<lambda> at 0x7fa7034eb6a0>
precise_start = 1319.596730111
precise_stop = 1319.598967992
reraise    = (<class '_pytest.outcomes.Exit'>, <class 'KeyboardInterrupt'>)
result     = None
start      = 1650647439.7754781
stop       = 1650647439.7777164
when       = 'call'

/usr/lib/python3.11/site-packages/_pytest/runner.py:340: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
/usr/lib/python3.11/site-packages/_pytest/runner.py:261: in <lambda>
    lambda: ihook(item=item, **kwds), when=when, reraise=reraise
        ihook      = <_HookCaller 'pytest_runtest_call'>
        item       = <Function test_streaming_10[True]>
        kwds       = {}
/usr/lib/python3.11/site-packages/pluggy/_hooks.py:265: in __call__
    return self._hookexec(self.name, self.get_hookimpls(), kwargs, firstresult)
        argname    = 'item'
        args       = ()
        firstresult = False
        kwargs     = {'item': <Function test_streaming_10[True]>}
        self       = <_HookCaller 'pytest_runtest_call'>
/usr/lib/python3.11/site-packages/pluggy/_manager.py:80: in _hookexec
    return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
        firstresult = False
        hook_name  = 'pytest_runtest_call'
        kwargs     = {'item': <Function test_streaming_10[True]>}
        methods    = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.11/site-packages/_pytest/runne...ption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.11/site-packages/_pytest/threadexception.py'>>]
        self       = <_pytest.config.PytestPluginManager object at 0x7fa7057bfd10>
/usr/lib/python3.11/site-packages/_pytest/unraisableexception.py:88: in pytest_runtest_call
    yield from unraisable_exception_runtest_hook()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

    def unraisable_exception_runtest_hook() -> Generator[None, None, None]:
        with catch_unraisable_exception() as cm:
            yield
            if cm.unraisable:
                if cm.unraisable.err_msg is not None:
                    err_msg = cm.unraisable.err_msg
                else:
                    err_msg = "Exception ignored in"
                msg = f"{err_msg}: {cm.unraisable.object!r}\n\n"
                msg += "".join(
                    traceback.format_exception(
                        cm.unraisable.exc_type,
                        cm.unraisable.exc_value,
                        cm.unraisable.exc_traceback,
                    )
                )
>               warnings.warn(pytest.PytestUnraisableExceptionWarning(msg))
E               pytest.PytestUnraisableExceptionWarning: Exception ignored in: <socket.socket fd=-1, family=10, type=1, proto=6>
E               
E               Traceback (most recent call last):
E                 File "/usr/lib/python3.11/site-packages/_pytest/python.py", line 192, in pytest_pyfunc_call
E                   result = testfunction(**testargs)
E                            ^^^^^^^^^^^^^^^^^^^^^^^^
E               ResourceWarning: unclosed <socket.socket fd=13, family=10, type=1, proto=6, laddr=('::1', 45790, 0, 0), raddr=('::1', 58843, 0, 0)>

cm         = <_pytest.unraisableexception.catch_unraisable_exception object at 0x7fa703417150>
err_msg    = 'Exception ignored in'
msg        = 'Exception ignored in: <socket.socket fd=-1, family=10, type=1, proto=6>\n\nTraceback (most recent call last):\n  File...closed <socket.socket fd=13, family=10, type=1, proto=6, laddr=(\'::1\', 45790, 0, 0), raddr=(\'::1\', 58843, 0, 0)>\n'

/usr/lib/python3.11/site-packages/_pytest/unraisableexception.py:78: PytestUnraisableExceptionWarning
___________________________ test_keepalive[HTTP/1.1] ___________________________

cls = <class '_pytest.runner.CallInfo'>
func = <function call_runtest_hook.<locals>.<lambda> at 0x7fa703737c40>
when = 'call'
reraise = (<class '_pytest.outcomes.Exit'>, <class 'KeyboardInterrupt'>)

    @classmethod
    def from_call(
        cls,
        func: "Callable[[], TResult]",
        when: "Literal['collect', 'setup', 'call', 'teardown']",
        reraise: Optional[
            Union[Type[BaseException], Tuple[Type[BaseException], ...]]
        ] = None,
    ) -> "CallInfo[TResult]":
        """Call func, wrapping the result in a CallInfo.
    
        :param func:
            The function to call. Called without arguments.
        :param when:
            The phase in which the function is called.
        :param reraise:
            Exception or exceptions that shall propagate if raised by the
            function, instead of being wrapped in the CallInfo.
        """
        excinfo = None
        start = timing.time()
        precise_start = timing.perf_counter()
        try:
>           result: Optional[TResult] = func()

cls        = <class '_pytest.runner.CallInfo'>
duration   = 0.0024981120000120427
excinfo    = <ExceptionInfo PytestUnraisableExceptionWarning('Exception ignored in: <socket.socket fd=-1, family=10, type=1, proto=...cket.socket fd=13, family=10, type=1, proto=6, laddr=(\'::1\', 42532, 0, 0), raddr=(\'::1\', 60361, 0, 0)>\n') tblen=6>
func       = <function call_runtest_hook.<locals>.<lambda> at 0x7fa703737c40>
precise_start = 1320.811638344
precise_stop = 1320.814136456
reraise    = (<class '_pytest.outcomes.Exit'>, <class 'KeyboardInterrupt'>)
result     = None
start      = 1650647440.9903862
stop       = 1650647440.9928849
when       = 'call'

/usr/lib/python3.11/site-packages/_pytest/runner.py:340: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
/usr/lib/python3.11/site-packages/_pytest/runner.py:261: in <lambda>
    lambda: ihook(item=item, **kwds), when=when, reraise=reraise
        ihook      = <_HookCaller 'pytest_runtest_call'>
        item       = <Function test_keepalive[HTTP/1.1]>
        kwds       = {}
/usr/lib/python3.11/site-packages/pluggy/_hooks.py:265: in __call__
    return self._hookexec(self.name, self.get_hookimpls(), kwargs, firstresult)
        argname    = 'item'
        args       = ()
        firstresult = False
        kwargs     = {'item': <Function test_keepalive[HTTP/1.1]>}
        self       = <_HookCaller 'pytest_runtest_call'>
/usr/lib/python3.11/site-packages/pluggy/_manager.py:80: in _hookexec
    return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
        firstresult = False
        hook_name  = 'pytest_runtest_call'
        kwargs     = {'item': <Function test_keepalive[HTTP/1.1]>}
        methods    = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.11/site-packages/_pytest/runne...ption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.11/site-packages/_pytest/threadexception.py'>>]
        self       = <_pytest.config.PytestPluginManager object at 0x7fa7057bfd10>
/usr/lib/python3.11/site-packages/_pytest/unraisableexception.py:88: in pytest_runtest_call
    yield from unraisable_exception_runtest_hook()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

    def unraisable_exception_runtest_hook() -> Generator[None, None, None]:
        with catch_unraisable_exception() as cm:
            yield
            if cm.unraisable:
                if cm.unraisable.err_msg is not None:
                    err_msg = cm.unraisable.err_msg
                else:
                    err_msg = "Exception ignored in"
                msg = f"{err_msg}: {cm.unraisable.object!r}\n\n"
                msg += "".join(
                    traceback.format_exception(
                        cm.unraisable.exc_type,
                        cm.unraisable.exc_value,
                        cm.unraisable.exc_traceback,
                    )
                )
>               warnings.warn(pytest.PytestUnraisableExceptionWarning(msg))
E               pytest.PytestUnraisableExceptionWarning: Exception ignored in: <socket.socket fd=-1, family=10, type=1, proto=6>
E               
E               Traceback (most recent call last):
E                 File "/usr/lib/python3.11/site-packages/_pytest/python.py", line 192, in pytest_pyfunc_call
E                   result = testfunction(**testargs)
E                            ^^^^^^^^^^^^^^^^^^^^^^^^
E               ResourceWarning: unclosed <socket.socket fd=13, family=10, type=1, proto=6, laddr=('::1', 42532, 0, 0), raddr=('::1', 60361, 0, 0)>

cm         = <_pytest.unraisableexception.catch_unraisable_exception object at 0x7fa7034510d0>
err_msg    = 'Exception ignored in'
msg        = 'Exception ignored in: <socket.socket fd=-1, family=10, type=1, proto=6>\n\nTraceback (most recent call last):\n  File...closed <socket.socket fd=13, family=10, type=1, proto=6, laddr=(\'::1\', 42532, 0, 0), raddr=(\'::1\', 60361, 0, 0)>\n'

/usr/lib/python3.11/site-packages/_pytest/unraisableexception.py:78: PytestUnraisableExceptionWarning
________________________ test_keepalive_conn_management ________________________

cls = <class '_pytest.runner.CallInfo'>
func = <function call_runtest_hook.<locals>.<lambda> at 0x7fa703485080>
when = 'call'
reraise = (<class '_pytest.outcomes.Exit'>, <class 'KeyboardInterrupt'>)

    @classmethod
    def from_call(
        cls,
        func: "Callable[[], TResult]",
        when: "Literal['collect', 'setup', 'call', 'teardown']",
        reraise: Optional[
            Union[Type[BaseException], Tuple[Type[BaseException], ...]]
        ] = None,
    ) -> "CallInfo[TResult]":
        """Call func, wrapping the result in a CallInfo.
    
        :param func:
            The function to call. Called without arguments.
        :param when:
            The phase in which the function is called.
        :param reraise:
            Exception or exceptions that shall propagate if raised by the
            function, instead of being wrapped in the CallInfo.
        """
        excinfo = None
        start = timing.time()
        precise_start = timing.perf_counter()
        try:
>           result: Optional[TResult] = func()

cls        = <class '_pytest.runner.CallInfo'>
duration   = 3.416970221999918
excinfo    = <ExceptionInfo PytestUnraisableExceptionWarning('Exception ignored in: <socket.socket fd=-1, family=10, type=1, proto=...cket.socket fd=16, family=10, type=1, proto=6, laddr=(\'::1\', 38600, 0, 0), raddr=(\'::1\', 56003, 0, 0)>\n') tblen=6>
func       = <function call_runtest_hook.<locals>.<lambda> at 0x7fa703485080>
precise_start = 1321.422540734
precise_stop = 1324.839510956
reraise    = (<class '_pytest.outcomes.Exit'>, <class 'KeyboardInterrupt'>)
result     = None
start      = 1650647441.6012886
stop       = 1650647445.0182593
when       = 'call'

/usr/lib/python3.11/site-packages/_pytest/runner.py:340: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
/usr/lib/python3.11/site-packages/_pytest/runner.py:261: in <lambda>
    lambda: ihook(item=item, **kwds), when=when, reraise=reraise
        ihook      = <_HookCaller 'pytest_runtest_call'>
        item       = <Function test_keepalive_conn_management>
        kwds       = {}
/usr/lib/python3.11/site-packages/pluggy/_hooks.py:265: in __call__
    return self._hookexec(self.name, self.get_hookimpls(), kwargs, firstresult)
        argname    = 'item'
        args       = ()
        firstresult = False
        kwargs     = {'item': <Function test_keepalive_conn_management>}
        self       = <_HookCaller 'pytest_runtest_call'>
/usr/lib/python3.11/site-packages/pluggy/_manager.py:80: in _hookexec
    return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
        firstresult = False
        hook_name  = 'pytest_runtest_call'
        kwargs     = {'item': <Function test_keepalive_conn_management>}
        methods    = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.11/site-packages/_pytest/runne...ption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.11/site-packages/_pytest/threadexception.py'>>]
        self       = <_pytest.config.PytestPluginManager object at 0x7fa7057bfd10>
/usr/lib/python3.11/site-packages/_pytest/unraisableexception.py:88: in pytest_runtest_call
    yield from unraisable_exception_runtest_hook()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

    def unraisable_exception_runtest_hook() -> Generator[None, None, None]:
        with catch_unraisable_exception() as cm:
            yield
            if cm.unraisable:
                if cm.unraisable.err_msg is not None:
                    err_msg = cm.unraisable.err_msg
                else:
                    err_msg = "Exception ignored in"
                msg = f"{err_msg}: {cm.unraisable.object!r}\n\n"
                msg += "".join(
                    traceback.format_exception(
                        cm.unraisable.exc_type,
                        cm.unraisable.exc_value,
                        cm.unraisable.exc_traceback,
                    )
                )
>               warnings.warn(pytest.PytestUnraisableExceptionWarning(msg))
E               pytest.PytestUnraisableExceptionWarning: Exception ignored in: <socket.socket fd=-1, family=10, type=1, proto=6>
E               
E               Traceback (most recent call last):
E                 File "/usr/lib/python3.11/site-packages/_pytest/python.py", line 192, in pytest_pyfunc_call
E                   result = testfunction(**testargs)
E                            ^^^^^^^^^^^^^^^^^^^^^^^^
E               ResourceWarning: unclosed <socket.socket fd=16, family=10, type=1, proto=6, laddr=('::1', 38600, 0, 0), raddr=('::1', 56003, 0, 0)>

cm         = <_pytest.unraisableexception.catch_unraisable_exception object at 0x7fa703ab6550>
err_msg    = 'Exception ignored in'
msg        = 'Exception ignored in: <socket.socket fd=-1, family=10, type=1, proto=6>\n\nTraceback (most recent call last):\n  File...closed <socket.socket fd=16, family=10, type=1, proto=6, laddr=(\'::1\', 38600, 0, 0), raddr=(\'::1\', 56003, 0, 0)>\n'

/usr/lib/python3.11/site-packages/_pytest/unraisableexception.py:78: PytestUnraisableExceptionWarning
_____________________________ test_No_Message_Body _____________________________

cls = <class '_pytest.runner.CallInfo'>
func = <function call_runtest_hook.<locals>.<lambda> at 0x7fa70034f1a0>
when = 'call'
reraise = (<class '_pytest.outcomes.Exit'>, <class 'KeyboardInterrupt'>)

    @classmethod
    def from_call(
        cls,
        func: "Callable[[], TResult]",
        when: "Literal['collect', 'setup', 'call', 'teardown']",
        reraise: Optional[
            Union[Type[BaseException], Tuple[Type[BaseException], ...]]
        ] = None,
    ) -> "CallInfo[TResult]":
        """Call func, wrapping the result in a CallInfo.
    
        :param func:
            The function to call. Called without arguments.
        :param when:
            The phase in which the function is called.
        :param reraise:
            Exception or exceptions that shall propagate if raised by the
            function, instead of being wrapped in the CallInfo.
        """
        excinfo = None
        start = timing.time()
        precise_start = timing.perf_counter()
        try:
>           result: Optional[TResult] = func()

cls        = <class '_pytest.runner.CallInfo'>
duration   = 0.0028701430001092376
excinfo    = <ExceptionInfo PytestUnraisableExceptionWarning('Exception ignored in: <socket.socket fd=-1, family=10, type=1, proto=...cket.socket fd=13, family=10, type=1, proto=6, laddr=(\'::1\', 54498, 0, 0), raddr=(\'::1\', 57459, 0, 0)>\n') tblen=6>
func       = <function call_runtest_hook.<locals>.<lambda> at 0x7fa70034f1a0>
precise_start = 1341.808939176
precise_stop = 1341.811809319
reraise    = (<class '_pytest.outcomes.Exit'>, <class 'KeyboardInterrupt'>)
result     = None
start      = 1650647461.9876869
stop       = 1650647461.990558
when       = 'call'

/usr/lib/python3.11/site-packages/_pytest/runner.py:340: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
/usr/lib/python3.11/site-packages/_pytest/runner.py:261: in <lambda>
    lambda: ihook(item=item, **kwds), when=when, reraise=reraise
        ihook      = <_HookCaller 'pytest_runtest_call'>
        item       = <Function test_No_Message_Body>
        kwds       = {}
/usr/lib/python3.11/site-packages/pluggy/_hooks.py:265: in __call__
    return self._hookexec(self.name, self.get_hookimpls(), kwargs, firstresult)
        argname    = 'item'
        args       = ()
        firstresult = False
        kwargs     = {'item': <Function test_No_Message_Body>}
        self       = <_HookCaller 'pytest_runtest_call'>
/usr/lib/python3.11/site-packages/pluggy/_manager.py:80: in _hookexec
    return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
        firstresult = False
        hook_name  = 'pytest_runtest_call'
        kwargs     = {'item': <Function test_No_Message_Body>}
        methods    = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.11/site-packages/_pytest/runne...ption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.11/site-packages/_pytest/threadexception.py'>>]
        self       = <_pytest.config.PytestPluginManager object at 0x7fa7057bfd10>
/usr/lib/python3.11/site-packages/_pytest/unraisableexception.py:88: in pytest_runtest_call
    yield from unraisable_exception_runtest_hook()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

    def unraisable_exception_runtest_hook() -> Generator[None, None, None]:
        with catch_unraisable_exception() as cm:
            yield
            if cm.unraisable:
                if cm.unraisable.err_msg is not None:
                    err_msg = cm.unraisable.err_msg
                else:
                    err_msg = "Exception ignored in"
                msg = f"{err_msg}: {cm.unraisable.object!r}\n\n"
                msg += "".join(
                    traceback.format_exception(
                        cm.unraisable.exc_type,
                        cm.unraisable.exc_value,
                        cm.unraisable.exc_traceback,
                    )
                )
>               warnings.warn(pytest.PytestUnraisableExceptionWarning(msg))
E               pytest.PytestUnraisableExceptionWarning: Exception ignored in: <socket.socket fd=-1, family=10, type=1, proto=6>
E               
E               Traceback (most recent call last):
E                 File "/usr/lib/python3.11/site-packages/_pytest/python.py", line 192, in pytest_pyfunc_call
E                   result = testfunction(**testargs)
E                            ^^^^^^^^^^^^^^^^^^^^^^^^
E               ResourceWarning: unclosed <socket.socket fd=13, family=10, type=1, proto=6, laddr=('::1', 54498, 0, 0), raddr=('::1', 57459, 0, 0)>

cm         = <_pytest.unraisableexception.catch_unraisable_exception object at 0x7fa703dc7e10>
err_msg    = 'Exception ignored in'
msg        = 'Exception ignored in: <socket.socket fd=-1, family=10, type=1, proto=6>\n\nTraceback (most recent call last):\n  File...closed <socket.socket fd=13, family=10, type=1, proto=6, laddr=(\'::1\', 54498, 0, 0), raddr=(\'::1\', 57459, 0, 0)>\n'

/usr/lib/python3.11/site-packages/_pytest/unraisableexception.py:78: PytestUnraisableExceptionWarning
____________________________ test_no_content_length ____________________________

cls = <class '_pytest.runner.CallInfo'>
func = <function call_runtest_hook.<locals>.<lambda> at 0x7fa7000e3240>
when = 'call'
reraise = (<class '_pytest.outcomes.Exit'>, <class 'KeyboardInterrupt'>)

    @classmethod
    def from_call(
        cls,
        func: "Callable[[], TResult]",
        when: "Literal['collect', 'setup', 'call', 'teardown']",
        reraise: Optional[
            Union[Type[BaseException], Tuple[Type[BaseException], ...]]
        ] = None,
    ) -> "CallInfo[TResult]":
        """Call func, wrapping the result in a CallInfo.
    
        :param func:
            The function to call. Called without arguments.
        :param when:
            The phase in which the function is called.
        :param reraise:
            Exception or exceptions that shall propagate if raised by the
            function, instead of being wrapped in the CallInfo.
        """
        excinfo = None
        start = timing.time()
        precise_start = timing.perf_counter()
        try:
>           result: Optional[TResult] = func()

cls        = <class '_pytest.runner.CallInfo'>
duration   = 0.0014396960000340187
excinfo    = <ExceptionInfo PytestUnraisableExceptionWarning('Exception ignored in: <socket.socket fd=-1, family=10, type=1, proto=...cket.socket fd=28, family=10, type=1, proto=6, laddr=(\'::1\', 48080, 0, 0), raddr=(\'::1\', 53453, 0, 0)>\n') tblen=6>
func       = <function call_runtest_hook.<locals>.<lambda> at 0x7fa7000e3240>
precise_start = 1356.807405718
precise_stop = 1356.808845414
reraise    = (<class '_pytest.outcomes.Exit'>, <class 'KeyboardInterrupt'>)
result     = None
start      = 1650647476.9861534
stop       = 1650647476.9875937
when       = 'call'

/usr/lib/python3.11/site-packages/_pytest/runner.py:340: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
/usr/lib/python3.11/site-packages/_pytest/runner.py:261: in <lambda>
    lambda: ihook(item=item, **kwds), when=when, reraise=reraise
        ihook      = <_HookCaller 'pytest_runtest_call'>
        item       = <Function test_no_content_length>
        kwds       = {}
/usr/lib/python3.11/site-packages/pluggy/_hooks.py:265: in __call__
    return self._hookexec(self.name, self.get_hookimpls(), kwargs, firstresult)
        argname    = 'item'
        args       = ()
        firstresult = False
        kwargs     = {'item': <Function test_no_content_length>}
        self       = <_HookCaller 'pytest_runtest_call'>
/usr/lib/python3.11/site-packages/pluggy/_manager.py:80: in _hookexec
    return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
        firstresult = False
        hook_name  = 'pytest_runtest_call'
        kwargs     = {'item': <Function test_no_content_length>}
        methods    = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.11/site-packages/_pytest/runne...ption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.11/site-packages/_pytest/threadexception.py'>>]
        self       = <_pytest.config.PytestPluginManager object at 0x7fa7057bfd10>
/usr/lib/python3.11/site-packages/_pytest/unraisableexception.py:88: in pytest_runtest_call
    yield from unraisable_exception_runtest_hook()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

    def unraisable_exception_runtest_hook() -> Generator[None, None, None]:
        with catch_unraisable_exception() as cm:
            yield
            if cm.unraisable:
                if cm.unraisable.err_msg is not None:
                    err_msg = cm.unraisable.err_msg
                else:
                    err_msg = "Exception ignored in"
                msg = f"{err_msg}: {cm.unraisable.object!r}\n\n"
                msg += "".join(
                    traceback.format_exception(
                        cm.unraisable.exc_type,
                        cm.unraisable.exc_value,
                        cm.unraisable.exc_traceback,
                    )
                )
>               warnings.warn(pytest.PytestUnraisableExceptionWarning(msg))
E               pytest.PytestUnraisableExceptionWarning: Exception ignored in: <socket.socket fd=-1, family=10, type=1, proto=6>
E               
E               Traceback (most recent call last):
E                 File "/usr/lib/python3.11/site-packages/_pytest/python.py", line 192, in pytest_pyfunc_call
E                   result = testfunction(**testargs)
E                            ^^^^^^^^^^^^^^^^^^^^^^^^
E               ResourceWarning: unclosed <socket.socket fd=28, family=10, type=1, proto=6, laddr=('::1', 48080, 0, 0), raddr=('::1', 53453, 0, 0)>

cm         = <_pytest.unraisableexception.catch_unraisable_exception object at 0x7fa703d094d0>
err_msg    = 'Exception ignored in'
msg        = 'Exception ignored in: <socket.socket fd=-1, family=10, type=1, proto=6>\n\nTraceback (most recent call last):\n  File...closed <socket.socket fd=28, family=10, type=1, proto=6, laddr=(\'::1\', 48080, 0, 0), raddr=(\'::1\', 53453, 0, 0)>\n'

/usr/lib/python3.11/site-packages/_pytest/unraisableexception.py:78: PytestUnraisableExceptionWarning
_________________________ test_content_length_required _________________________

cls = <class '_pytest.runner.CallInfo'>
func = <function call_runtest_hook.<locals>.<lambda> at 0x7fa70009e7a0>
when = 'call'
reraise = (<class '_pytest.outcomes.Exit'>, <class 'KeyboardInterrupt'>)

    @classmethod
    def from_call(
        cls,
        func: "Callable[[], TResult]",
        when: "Literal['collect', 'setup', 'call', 'teardown']",
        reraise: Optional[
            Union[Type[BaseException], Tuple[Type[BaseException], ...]]
        ] = None,
    ) -> "CallInfo[TResult]":
        """Call func, wrapping the result in a CallInfo.
    
        :param func:
            The function to call. Called without arguments.
        :param when:
            The phase in which the function is called.
        :param reraise:
            Exception or exceptions that shall propagate if raised by the
            function, instead of being wrapped in the CallInfo.
        """
        excinfo = None
        start = timing.time()
        precise_start = timing.perf_counter()
        try:
>           result: Optional[TResult] = func()

cls        = <class '_pytest.runner.CallInfo'>
duration   = 0.001469602000042869
excinfo    = <ExceptionInfo PytestUnraisableExceptionWarning('Exception ignored in: <socket.socket fd=-1, family=10, type=1, proto=...cket.socket fd=13, family=10, type=1, proto=6, laddr=(\'::1\', 42014, 0, 0), raddr=(\'::1\', 51231, 0, 0)>\n') tblen=6>
func       = <function call_runtest_hook.<locals>.<lambda> at 0x7fa70009e7a0>
precise_start = 1357.425892733
precise_stop = 1357.427362335
reraise    = (<class '_pytest.outcomes.Exit'>, <class 'KeyboardInterrupt'>)
result     = None
start      = 1650647477.6046405
stop       = 1650647477.6061108
when       = 'call'

/usr/lib/python3.11/site-packages/_pytest/runner.py:340: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
/usr/lib/python3.11/site-packages/_pytest/runner.py:261: in <lambda>
    lambda: ihook(item=item, **kwds), when=when, reraise=reraise
        ihook      = <_HookCaller 'pytest_runtest_call'>
        item       = <Function test_content_length_required>
        kwds       = {}
/usr/lib/python3.11/site-packages/pluggy/_hooks.py:265: in __call__
    return self._hookexec(self.name, self.get_hookimpls(), kwargs, firstresult)
        argname    = 'item'
        args       = ()
        firstresult = False
        kwargs     = {'item': <Function test_content_length_required>}
        self       = <_HookCaller 'pytest_runtest_call'>
/usr/lib/python3.11/site-packages/pluggy/_manager.py:80: in _hookexec
    return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
        firstresult = False
        hook_name  = 'pytest_runtest_call'
        kwargs     = {'item': <Function test_content_length_required>}
        methods    = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.11/site-packages/_pytest/runne...ption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.11/site-packages/_pytest/threadexception.py'>>]
        self       = <_pytest.config.PytestPluginManager object at 0x7fa7057bfd10>
/usr/lib/python3.11/site-packages/_pytest/unraisableexception.py:88: in pytest_runtest_call
    yield from unraisable_exception_runtest_hook()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

    def unraisable_exception_runtest_hook() -> Generator[None, None, None]:
        with catch_unraisable_exception() as cm:
            yield
            if cm.unraisable:
                if cm.unraisable.err_msg is not None:
                    err_msg = cm.unraisable.err_msg
                else:
                    err_msg = "Exception ignored in"
                msg = f"{err_msg}: {cm.unraisable.object!r}\n\n"
                msg += "".join(
                    traceback.format_exception(
                        cm.unraisable.exc_type,
                        cm.unraisable.exc_value,
                        cm.unraisable.exc_traceback,
                    )
                )
>               warnings.warn(pytest.PytestUnraisableExceptionWarning(msg))
E               pytest.PytestUnraisableExceptionWarning: Exception ignored in: <socket.socket fd=-1, family=10, type=1, proto=6>
E               
E               Traceback (most recent call last):
E                 File "/usr/lib/python3.11/site-packages/_pytest/python.py", line 192, in pytest_pyfunc_call
E                   result = testfunction(**testargs)
E                            ^^^^^^^^^^^^^^^^^^^^^^^^
E               ResourceWarning: unclosed <socket.socket fd=13, family=10, type=1, proto=6, laddr=('::1', 42014, 0, 0), raddr=('::1', 51231, 0, 0)>

cm         = <_pytest.unraisableexception.catch_unraisable_exception object at 0x7fa703b40110>
err_msg    = 'Exception ignored in'
msg        = 'Exception ignored in: <socket.socket fd=-1, family=10, type=1, proto=6>\n\nTraceback (most recent call last):\n  File...closed <socket.socket fd=13, family=10, type=1, proto=6, laddr=(\'::1\', 42014, 0, 0), raddr=(\'::1\', 51231, 0, 0)>\n'

/usr/lib/python3.11/site-packages/_pytest/unraisableexception.py:78: PytestUnraisableExceptionWarning
__________________________ test_malformed_http_method __________________________

cls = <class '_pytest.runner.CallInfo'>
func = <function call_runtest_hook.<locals>.<lambda> at 0x7fa700201760>
when = 'call'
reraise = (<class '_pytest.outcomes.Exit'>, <class 'KeyboardInterrupt'>)

    @classmethod
    def from_call(
        cls,
        func: "Callable[[], TResult]",
        when: "Literal['collect', 'setup', 'call', 'teardown']",
        reraise: Optional[
            Union[Type[BaseException], Tuple[Type[BaseException], ...]]
        ] = None,
    ) -> "CallInfo[TResult]":
        """Call func, wrapping the result in a CallInfo.
    
        :param func:
            The function to call. Called without arguments.
        :param when:
            The phase in which the function is called.
        :param reraise:
            Exception or exceptions that shall propagate if raised by the
            function, instead of being wrapped in the CallInfo.
        """
        excinfo = None
        start = timing.time()
        precise_start = timing.perf_counter()
        try:
>           result: Optional[TResult] = func()

cls        = <class '_pytest.runner.CallInfo'>
duration   = 0.0009712730000046577
excinfo    = <ExceptionInfo PytestUnraisableExceptionWarning('Exception ignored in: <socket.socket fd=-1, family=10, type=1, proto=...cket.socket fd=13, family=10, type=1, proto=6, laddr=(\'::1\', 48770, 0, 0), raddr=(\'::1\', 39441, 0, 0)>\n') tblen=6>
func       = <function call_runtest_hook.<locals>.<lambda> at 0x7fa700201760>
precise_start = 1361.080740415
precise_stop = 1361.081711688
reraise    = (<class '_pytest.outcomes.Exit'>, <class 'KeyboardInterrupt'>)
result     = None
start      = 1650647481.2594883
stop       = 1650647481.2604601
when       = 'call'

/usr/lib/python3.11/site-packages/_pytest/runner.py:340: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
/usr/lib/python3.11/site-packages/_pytest/runner.py:261: in <lambda>
    lambda: ihook(item=item, **kwds), when=when, reraise=reraise
        ihook      = <_HookCaller 'pytest_runtest_call'>
        item       = <Function test_malformed_http_method>
        kwds       = {}
/usr/lib/python3.11/site-packages/pluggy/_hooks.py:265: in __call__
    return self._hookexec(self.name, self.get_hookimpls(), kwargs, firstresult)
        argname    = 'item'
        args       = ()
        firstresult = False
        kwargs     = {'item': <Function test_malformed_http_method>}
        self       = <_HookCaller 'pytest_runtest_call'>
/usr/lib/python3.11/site-packages/pluggy/_manager.py:80: in _hookexec
    return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
        firstresult = False
        hook_name  = 'pytest_runtest_call'
        kwargs     = {'item': <Function test_malformed_http_method>}
        methods    = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.11/site-packages/_pytest/runne...ption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.11/site-packages/_pytest/threadexception.py'>>]
        self       = <_pytest.config.PytestPluginManager object at 0x7fa7057bfd10>
/usr/lib/python3.11/site-packages/_pytest/unraisableexception.py:88: in pytest_runtest_call
    yield from unraisable_exception_runtest_hook()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

    def unraisable_exception_runtest_hook() -> Generator[None, None, None]:
        with catch_unraisable_exception() as cm:
            yield
            if cm.unraisable:
                if cm.unraisable.err_msg is not None:
                    err_msg = cm.unraisable.err_msg
                else:
                    err_msg = "Exception ignored in"
                msg = f"{err_msg}: {cm.unraisable.object!r}\n\n"
                msg += "".join(
                    traceback.format_exception(
                        cm.unraisable.exc_type,
                        cm.unraisable.exc_value,
                        cm.unraisable.exc_traceback,
                    )
                )
>               warnings.warn(pytest.PytestUnraisableExceptionWarning(msg))
E               pytest.PytestUnraisableExceptionWarning: Exception ignored in: <socket.socket fd=-1, family=10, type=1, proto=6>
E               
E               Traceback (most recent call last):
E                 File "/usr/lib64/python3.11/socket.py", line 776, in close
E                   self._sock = None
E                   ^^^^^^^^^^
E               ResourceWarning: unclosed <socket.socket fd=13, family=10, type=1, proto=6, laddr=('::1', 48770, 0, 0), raddr=('::1', 39441, 0, 0)>

cm         = <_pytest.unraisableexception.catch_unraisable_exception object at 0x7fa700207290>
err_msg    = 'Exception ignored in'
msg        = 'Exception ignored in: <socket.socket fd=-1, family=10, type=1, proto=6>\n\nTraceback (most recent call last):\n  File...closed <socket.socket fd=13, family=10, type=1, proto=6, laddr=(\'::1\', 48770, 0, 0), raddr=(\'::1\', 39441, 0, 0)>\n'

/usr/lib/python3.11/site-packages/_pytest/unraisableexception.py:78: PytestUnraisableExceptionWarning
____________________________ test_malformed_header _____________________________

cls = <class '_pytest.runner.CallInfo'>
func = <function call_runtest_hook.<locals>.<lambda> at 0x7fa7001d3c40>
when = 'call'
reraise = (<class '_pytest.outcomes.Exit'>, <class 'KeyboardInterrupt'>)

    @classmethod
    def from_call(
        cls,
        func: "Callable[[], TResult]",
        when: "Literal['collect', 'setup', 'call', 'teardown']",
        reraise: Optional[
            Union[Type[BaseException], Tuple[Type[BaseException], ...]]
        ] = None,
    ) -> "CallInfo[TResult]":
        """Call func, wrapping the result in a CallInfo.
    
        :param func:
            The function to call. Called without arguments.
        :param when:
            The phase in which the function is called.
        :param reraise:
            Exception or exceptions that shall propagate if raised by the
            function, instead of being wrapped in the CallInfo.
        """
        excinfo = None
        start = timing.time()
        precise_start = timing.perf_counter()
        try:
>           result: Optional[TResult] = func()

cls        = <class '_pytest.runner.CallInfo'>
duration   = 0.00118132800002968
excinfo    = <ExceptionInfo PytestUnraisableExceptionWarning('Exception ignored in: <socket.socket fd=-1, family=10, type=1, proto=...cket.socket fd=13, family=10, type=1, proto=6, laddr=(\'::1\', 54874, 0, 0), raddr=(\'::1\', 33815, 0, 0)>\n') tblen=6>
func       = <function call_runtest_hook.<locals>.<lambda> at 0x7fa7001d3c40>
precise_start = 1361.688839278
precise_stop = 1361.690020606
reraise    = (<class '_pytest.outcomes.Exit'>, <class 'KeyboardInterrupt'>)
result     = None
start      = 1650647481.867587
stop       = 1650647481.868769
when       = 'call'

/usr/lib/python3.11/site-packages/_pytest/runner.py:340: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
/usr/lib/python3.11/site-packages/_pytest/runner.py:261: in <lambda>
    lambda: ihook(item=item, **kwds), when=when, reraise=reraise
        ihook      = <_HookCaller 'pytest_runtest_call'>
        item       = <Function test_malformed_header>
        kwds       = {}
/usr/lib/python3.11/site-packages/pluggy/_hooks.py:265: in __call__
    return self._hookexec(self.name, self.get_hookimpls(), kwargs, firstresult)
        argname    = 'item'
        args       = ()
        firstresult = False
        kwargs     = {'item': <Function test_malformed_header>}
        self       = <_HookCaller 'pytest_runtest_call'>
/usr/lib/python3.11/site-packages/pluggy/_manager.py:80: in _hookexec
    return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
        firstresult = False
        hook_name  = 'pytest_runtest_call'
        kwargs     = {'item': <Function test_malformed_header>}
        methods    = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.11/site-packages/_pytest/runne...ption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.11/site-packages/_pytest/threadexception.py'>>]
        self       = <_pytest.config.PytestPluginManager object at 0x7fa7057bfd10>
/usr/lib/python3.11/site-packages/_pytest/unraisableexception.py:88: in pytest_runtest_call
    yield from unraisable_exception_runtest_hook()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

    def unraisable_exception_runtest_hook() -> Generator[None, None, None]:
        with catch_unraisable_exception() as cm:
            yield
            if cm.unraisable:
                if cm.unraisable.err_msg is not None:
                    err_msg = cm.unraisable.err_msg
                else:
                    err_msg = "Exception ignored in"
                msg = f"{err_msg}: {cm.unraisable.object!r}\n\n"
                msg += "".join(
                    traceback.format_exception(
                        cm.unraisable.exc_type,
                        cm.unraisable.exc_value,
                        cm.unraisable.exc_traceback,
                    )
                )
>               warnings.warn(pytest.PytestUnraisableExceptionWarning(msg))
E               pytest.PytestUnraisableExceptionWarning: Exception ignored in: <socket.socket fd=-1, family=10, type=1, proto=6>
E               
E               Traceback (most recent call last):
E                 File "/usr/lib/python3.11/site-packages/_pytest/python.py", line 192, in pytest_pyfunc_call
E                   result = testfunction(**testargs)
E                            ^^^^^^^^^^^^^^^^^^^^^^^^
E               ResourceWarning: unclosed <socket.socket fd=13, family=10, type=1, proto=6, laddr=('::1', 54874, 0, 0), raddr=('::1', 33815, 0, 0)>

cm         = <_pytest.unraisableexception.catch_unraisable_exception object at 0x7fa703b43e10>
err_msg    = 'Exception ignored in'
msg        = 'Exception ignored in: <socket.socket fd=-1, family=10, type=1, proto=6>\n\nTraceback (most recent call last):\n  File...closed <socket.socket fd=13, family=10, type=1, proto=6, laddr=(\'::1\', 54874, 0, 0), raddr=(\'::1\', 33815, 0, 0)>\n'

/usr/lib/python3.11/site-packages/_pytest/unraisableexception.py:78: PytestUnraisableExceptionWarning
___________________ test_http_over_https_error[::-pyopenssl] ___________________

cls = <class '_pytest.runner.CallInfo'>
func = <function call_runtest_hook.<locals>.<lambda> at 0x7fa700a71440>
when = 'call'
reraise = (<class '_pytest.outcomes.Exit'>, <class 'KeyboardInterrupt'>)

    @classmethod
    def from_call(
        cls,
        func: "Callable[[], TResult]",
        when: "Literal['collect', 'setup', 'call', 'teardown']",
        reraise: Optional[
            Union[Type[BaseException], Tuple[Type[BaseException], ...]]
        ] = None,
    ) -> "CallInfo[TResult]":
        """Call func, wrapping the result in a CallInfo.
    
        :param func:
            The function to call. Called without arguments.
        :param when:
            The phase in which the function is called.
        :param reraise:
            Exception or exceptions that shall propagate if raised by the
            function, instead of being wrapped in the CallInfo.
        """
        excinfo = None
        start = timing.time()
        precise_start = timing.perf_counter()
        try:
>           result: Optional[TResult] = func()

cls        = <class '_pytest.runner.CallInfo'>
duration   = 0.11033360400006131
excinfo    = <ExceptionInfo PytestUnraisableExceptionWarning('Exception ignored in: <socket.socket fd=-1, family=2, type=1, proto=6...ocket.socket fd=30, family=2, type=1, proto=6, laddr=(\'127.0.0.1\', 47855), raddr=(\'127.0.0.1\', 34638)>\n') tblen=6>
func       = <function call_runtest_hook.<locals>.<lambda> at 0x7fa700a71440>
precise_start = 1444.315797254
precise_stop = 1444.426130858
reraise    = (<class '_pytest.outcomes.Exit'>, <class 'KeyboardInterrupt'>)
result     = None
start      = 1650647564.4945452
stop       = 1650647564.6048791
when       = 'call'

/usr/lib/python3.11/site-packages/_pytest/runner.py:340: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
/usr/lib/python3.11/site-packages/_pytest/runner.py:261: in <lambda>
    lambda: ihook(item=item, **kwds), when=when, reraise=reraise
        ihook      = <_HookCaller 'pytest_runtest_call'>
        item       = <Function test_http_over_https_error[::-pyopenssl]>
        kwds       = {}
/usr/lib/python3.11/site-packages/pluggy/_hooks.py:265: in __call__
    return self._hookexec(self.name, self.get_hookimpls(), kwargs, firstresult)
        argname    = 'item'
        args       = ()
        firstresult = False
        kwargs     = {'item': <Function test_http_over_https_error[::-pyopenssl]>}
        self       = <_HookCaller 'pytest_runtest_call'>
/usr/lib/python3.11/site-packages/pluggy/_manager.py:80: in _hookexec
    return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
        firstresult = False
        hook_name  = 'pytest_runtest_call'
        kwargs     = {'item': <Function test_http_over_https_error[::-pyopenssl]>}
        methods    = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.11/site-packages/_pytest/runne...ption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.11/site-packages/_pytest/threadexception.py'>>]
        self       = <_pytest.config.PytestPluginManager object at 0x7fa7057bfd10>
/usr/lib/python3.11/site-packages/_pytest/unraisableexception.py:88: in pytest_runtest_call
    yield from unraisable_exception_runtest_hook()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

    def unraisable_exception_runtest_hook() -> Generator[None, None, None]:
        with catch_unraisable_exception() as cm:
            yield
            if cm.unraisable:
                if cm.unraisable.err_msg is not None:
                    err_msg = cm.unraisable.err_msg
                else:
                    err_msg = "Exception ignored in"
                msg = f"{err_msg}: {cm.unraisable.object!r}\n\n"
                msg += "".join(
                    traceback.format_exception(
                        cm.unraisable.exc_type,
                        cm.unraisable.exc_value,
                        cm.unraisable.exc_traceback,
                    )
                )
>               warnings.warn(pytest.PytestUnraisableExceptionWarning(msg))
E               pytest.PytestUnraisableExceptionWarning: Exception ignored in: <socket.socket fd=-1, family=2, type=1, proto=6>
E               
E               Traceback (most recent call last):
E                 File "/usr/lib64/python3.11/threading.py", line 549, in __init__
E                   self._cond = Condition(Lock())
E                                ^^^^^^^^^^^^^^^^^
E               ResourceWarning: unclosed <socket.socket fd=30, family=2, type=1, proto=6, laddr=('127.0.0.1', 47855), raddr=('127.0.0.1', 34638)>

cm         = <_pytest.unraisableexception.catch_unraisable_exception object at 0x7fa702330350>
err_msg    = 'Exception ignored in'
msg        = 'Exception ignored in: <socket.socket fd=-1, family=2, type=1, proto=6>\n\nTraceback (most recent call last):\n  File ...nclosed <socket.socket fd=30, family=2, type=1, proto=6, laddr=(\'127.0.0.1\', 47855), raddr=(\'127.0.0.1\', 34638)>\n'

/usr/lib/python3.11/site-packages/_pytest/unraisableexception.py:78: PytestUnraisableExceptionWarning
- generated xml file: /builddir/build/BUILD/cheroot-8.6.0/.test-results/pytest/test.xml -
============================= slowest 10 durations =============================
4.00s call     cheroot/test/test_conn.py::test_HTTP11_Timeout_after_request
3.42s call     cheroot/test/test_conn.py::test_keepalive_conn_management
2.00s call     cheroot/test/test_conn.py::test_HTTP11_Timeout[False]
2.00s call     cheroot/test/test_conn.py::test_HTTP11_Timeout[True]
1.21s call     cheroot/test/test_ssl.py::test_tls_client_auth[2-False-localhost-builtin]
1.18s setup    cheroot/test/test_ssl.py::test_ssl_env[2-True-builtin]
1.01s call     cheroot/test/test_conn.py::test_invalid_selected_connection
0.94s setup    cheroot/test/test_ssl.py::test_http_over_https_error[::-pyopenssl]
0.90s setup    cheroot/test/test_ssl.py::test_ssl_env[1-False-pyopenssl]
0.89s call     cheroot/test/test_ssl.py::test_tls_client_auth[1-False-localhost-pyopenssl]
=========================== short test summary info ============================
SKIPPED [1] cheroot/test/test_wsgi.py:39: unconditional skip
XFAIL cheroot/test/test_conn.py::test_Chunked_Encoding
  Headers from earlier request leak into the request line for a subsequent request, resulting in 400 instead of 413. See cherrypy/cheroot#69 for details.
XFAIL cheroot/test/test_conn.py::test_598
  Sometimes this test fails due to low timeout. Ref: https://github.com/cherrypy/cherrypy/issues/598
XFAIL cheroot/test/test_core.py::test_large_request
  https://github.com/cherrypy/cheroot/issues/106
FAILED cheroot/test/test_conn.py::test_streaming_11[True] - pytest.PytestUnra...
FAILED cheroot/test/test_conn.py::test_streaming_10[True] - pytest.PytestUnra...
FAILED cheroot/test/test_conn.py::test_keepalive[HTTP/1.1] - pytest.PytestUnr...
FAILED cheroot/test/test_conn.py::test_keepalive_conn_management - pytest.Pyt...
FAILED cheroot/test/test_conn.py::test_No_Message_Body - pytest.PytestUnraisa...
FAILED cheroot/test/test_core.py::test_no_content_length - pytest.PytestUnrai...
FAILED cheroot/test/test_core.py::test_content_length_required - pytest.Pytes...
FAILED cheroot/test/test_core.py::test_malformed_http_method - pytest.PytestU...
FAILED cheroot/test/test_core.py::test_malformed_header - pytest.PytestUnrais...
FAILED cheroot/test/test_ssl.py::test_http_over_https_error[::-pyopenssl] - p...
======= 10 failed, 143 passed, 1 skipped, 3 xfailed in 128.30s (0:02:08) =======

The interpreter state’s representation of handled exceptions (a.k.a exc_info, or _PyErr_StackItem) now has only the exc_value field, exc_type and exc_traceback have been removed as their values can be derived from exc_value. (Contributed by Irit Katriel in bpo-45711.)

https://bugs.python.org/issue?@action=redirect&bpo=45711
https://docs.python.org/3.11/whatsnew/3.11.html

For the build logs, see:
https://copr-be.cloud.fedoraproject.org/results/@python/python3.11/fedora-rawhide-x86_64/04303067-python-cheroot/

For all our attempts to build python-cheroot with Python 3.11, see:
https://copr.fedorainfracloud.org/coprs/g/python/python3.11/package/python-cheroot/

Testing and mass rebuild of packages is happening in copr. You can follow these instructions to test locally in mock if your package builds with Python 3.11:
https://copr.fedorainfracloud.org/coprs/g/python/python3.11/

Let us know here if you have any questions.

Python 3.11 is planned to be included in Fedora 37. To make that update smoother, we're building Fedora packages with all pre-releases of Python 3.11.
A build failure prevents us from testing all dependent packages (transitive [Build]Requires), so if this package is required a lot, it's important for us to get it fixed soon.
We'd appreciate help from the people who know this package best, but if you don't want to work on this now, let us know so we can try to work around it on our side.

Comment 1 Dan Radez 2022-05-04 23:47:41 UTC
Successful rebuild: https://koji.fedoraproject.org/koji/taskinfo?taskID=86652899

Comment 2 Dan Radez 2022-05-05 03:19:02 UTC
Just realized my scratch build didn't use 3.11
reopening while I re-test

Comment 3 Tomáš Hrnčiar 2022-06-16 13:43:39 UTC
Hello Dan,

any progress here?
We are in the middle of Python 3.11 mass rebuild and a bunch of packages are blocked by this. 

Here is the log from koji:
https://koji.fedoraproject.org/koji/buildinfo?buildID=1984825

Thank you


Note You need to log in before you can comment on or make changes to this bug.