Source: aiocoap
Version: 0.4.3-0.1
Severity: serious
Justification: FTBFS
Tags: bookworm sid ftbfs
User: lu...@debian.org
Usertags: ftbfs-20220624 ftbfs-bookworm

Hi,

During a rebuild of all packages in sid, your package failed to build
on amd64.


Relevant part (hopefully):
>  debian/rules build
> dh build --with python3,sphinxdoc --buildsystem=pybuild
>    dh_update_autotools_config -O--buildsystem=pybuild
>    dh_autoreconf -O--buildsystem=pybuild
>    dh_auto_configure -O--buildsystem=pybuild
> I: pybuild base:239: python3.9 setup.py config 
> running config
> I: pybuild base:239: python3.10 setup.py config 
> running config
>    dh_auto_build -O--buildsystem=pybuild
> I: pybuild base:239: /usr/bin/python3.9 setup.py build 
> running build
> running build_py
> creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap
> copying aiocoap/__init__.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap
> copying aiocoap/credentials.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap
> copying aiocoap/optiontypes.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap
> copying aiocoap/messagemanager.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap
> copying aiocoap/options.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap
> copying aiocoap/interfaces.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap
> copying aiocoap/message.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap
> copying aiocoap/resource.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap
> copying aiocoap/defaults.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap
> copying aiocoap/oscore_sitewrapper.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap
> copying aiocoap/tokenmanager.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap
> copying aiocoap/protocol.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap
> copying aiocoap/oscore.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap
> copying aiocoap/meta.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap
> copying aiocoap/error.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap
> creating 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap/transports
> copying aiocoap/transports/__init__.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap/transports
> copying aiocoap/transports/generic_udp.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap/transports
> copying aiocoap/transports/rfc8323common.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap/transports
> copying aiocoap/transports/simplesocketserver.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap/transports
> copying aiocoap/transports/udp6.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap/transports
> copying aiocoap/transports/ws.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap/transports
> copying aiocoap/transports/simple6.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap/transports
> copying aiocoap/transports/tinydtls.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap/transports
> copying aiocoap/transports/tcp.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap/transports
> copying aiocoap/transports/tinydtls_server.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap/transports
> copying aiocoap/transports/tls.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap/transports
> copying aiocoap/transports/oscore.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap/transports
> creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap/util
> copying aiocoap/util/__init__.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap/util
> copying aiocoap/util/socknumbers.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap/util
> copying aiocoap/util/linkformat_pygments.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap/util
> copying aiocoap/util/cli.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap/util
> copying aiocoap/util/prettyprint.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap/util
> copying aiocoap/util/uri.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap/util
> copying aiocoap/util/contenttype.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap/util
> copying aiocoap/util/cryptography_additions.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap/util
> copying aiocoap/util/linkformat.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap/util
> creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap/numbers
> copying aiocoap/numbers/__init__.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap/numbers
> copying aiocoap/numbers/optionnumbers.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap/numbers
> copying aiocoap/numbers/codes.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap/numbers
> copying aiocoap/numbers/constants.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap/numbers
> copying aiocoap/numbers/types.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap/numbers
> creating 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap/resourcedirectory
> copying aiocoap/resourcedirectory/__init__.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap/resourcedirectory
> creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap/cli
> copying aiocoap/cli/__init__.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap/cli
> copying aiocoap/cli/defaults.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap/cli
> copying aiocoap/cli/client.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap/cli
> copying aiocoap/cli/fileserver.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap/cli
> copying aiocoap/cli/common.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap/cli
> copying aiocoap/cli/proxy.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap/cli
> copying aiocoap/cli/rd.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap/cli
> creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap/proxy
> copying aiocoap/proxy/__init__.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap/proxy
> copying aiocoap/proxy/client.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap/proxy
> copying aiocoap/proxy/server.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap/proxy
> creating 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap/util/asyncio
> copying aiocoap/util/asyncio/__init__.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap/util/asyncio
> copying aiocoap/util/asyncio/recvmsg.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap/util/asyncio
> creating 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap/resourcedirectory/client
> copying aiocoap/resourcedirectory/client/__init__.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap/resourcedirectory/client
> copying aiocoap/resourcedirectory/client/register.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap/resourcedirectory/client
> I: pybuild base:239: /usr/bin/python3 setup.py build 
> running build
> running build_py
> creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap
> copying aiocoap/__init__.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap
> copying aiocoap/credentials.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap
> copying aiocoap/optiontypes.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap
> copying aiocoap/messagemanager.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap
> copying aiocoap/options.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap
> copying aiocoap/interfaces.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap
> copying aiocoap/message.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap
> copying aiocoap/resource.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap
> copying aiocoap/defaults.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap
> copying aiocoap/oscore_sitewrapper.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap
> copying aiocoap/tokenmanager.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap
> copying aiocoap/protocol.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap
> copying aiocoap/oscore.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap
> copying aiocoap/meta.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap
> copying aiocoap/error.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap
> creating 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap/transports
> copying aiocoap/transports/__init__.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap/transports
> copying aiocoap/transports/generic_udp.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap/transports
> copying aiocoap/transports/rfc8323common.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap/transports
> copying aiocoap/transports/simplesocketserver.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap/transports
> copying aiocoap/transports/udp6.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap/transports
> copying aiocoap/transports/ws.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap/transports
> copying aiocoap/transports/simple6.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap/transports
> copying aiocoap/transports/tinydtls.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap/transports
> copying aiocoap/transports/tcp.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap/transports
> copying aiocoap/transports/tinydtls_server.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap/transports
> copying aiocoap/transports/tls.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap/transports
> copying aiocoap/transports/oscore.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap/transports
> creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap/util
> copying aiocoap/util/__init__.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap/util
> copying aiocoap/util/socknumbers.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap/util
> copying aiocoap/util/linkformat_pygments.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap/util
> copying aiocoap/util/cli.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap/util
> copying aiocoap/util/prettyprint.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap/util
> copying aiocoap/util/uri.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap/util
> copying aiocoap/util/contenttype.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap/util
> copying aiocoap/util/cryptography_additions.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap/util
> copying aiocoap/util/linkformat.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap/util
> creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap/numbers
> copying aiocoap/numbers/__init__.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap/numbers
> copying aiocoap/numbers/optionnumbers.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap/numbers
> copying aiocoap/numbers/codes.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap/numbers
> copying aiocoap/numbers/constants.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap/numbers
> copying aiocoap/numbers/types.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap/numbers
> creating 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap/resourcedirectory
> copying aiocoap/resourcedirectory/__init__.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap/resourcedirectory
> creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap/cli
> copying aiocoap/cli/__init__.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap/cli
> copying aiocoap/cli/defaults.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap/cli
> copying aiocoap/cli/client.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap/cli
> copying aiocoap/cli/fileserver.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap/cli
> copying aiocoap/cli/common.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap/cli
> copying aiocoap/cli/proxy.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap/cli
> copying aiocoap/cli/rd.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap/cli
> creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap/proxy
> copying aiocoap/proxy/__init__.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap/proxy
> copying aiocoap/proxy/client.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap/proxy
> copying aiocoap/proxy/server.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap/proxy
> creating 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap/util/asyncio
> copying aiocoap/util/asyncio/__init__.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap/util/asyncio
> copying aiocoap/util/asyncio/recvmsg.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap/util/asyncio
> creating 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap/resourcedirectory/client
> copying aiocoap/resourcedirectory/client/__init__.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap/resourcedirectory/client
> copying aiocoap/resourcedirectory/client/register.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap/resourcedirectory/client
>    dh_auto_test -O--buildsystem=pybuild
> I: pybuild base:239: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build; 
> python3.9 -m pytest -k 'not test_commandline'
> ============================= test session starts 
> ==============================
> platform linux -- Python 3.9.13, pytest-6.2.5, py-1.10.0, pluggy-1.0.0
> rootdir: /<<PKGBUILDDIR>>
> collected 211 items / 5 deselected / 206 selected
> 
> tests/test_blockwise.py .s.                                              [  
> 1%]
> tests/test_client.py FE.FE....                                           [  
> 4%]
> tests/test_credentials.py ..s                                            [  
> 6%]
> tests/test_dtls.py ssssssssssss                                          [ 
> 12%]
> tests/test_encoding.py ...........                                       [ 
> 17%]
> tests/test_group_oscore.py ssssssssssssssssssssssss                      [ 
> 29%]
> tests/test_noncoap_client.py .......ss                                   [ 
> 33%]
> tests/test_noncoap_tcp_client.py ...........                             [ 
> 38%]
> tests/test_observe.py .......x....                                       [ 
> 44%]
> tests/test_oscore.py ssssssssssssssssssssss                              [ 
> 55%]
> tests/test_oscore_plugtest.py ssssssssssssssssssssssssssssssssssssssssss [ 
> 75%]
> ssssss                                                                   [ 
> 78%]
> tests/test_rd_examples.py ss                                             [ 
> 79%]
> tests/test_reverseproxy.py FF                                            [ 
> 80%]
> tests/test_server.py ........................ssssssssssss                [ 
> 98%]
> tests/test_tls.py FE                                                     [ 
> 98%]
> tests/test_uri_handling.py ..                                            [ 
> 99%]
> tests/test_util_cryptography.py s                                        
> [100%]
> 
> ==================================== ERRORS 
> ====================================
> __________ ERROR at teardown of TestClientWithSetHost.test_uri_parser 
> __________
> 
> self = <tests.test_client.TestClientWithSetHost testMethod=test_uri_parser>
> 
>     def tearDown(self):
>         super(WithLogMonitoring, self).tearDown()
>     
>         logging.root.removeHandler(self.handler)
>     
>         complete_log = " Complete log:\n" + "\n".join(
>                 x.preformatted for x in self.handler.list if x.name != 
> 'asyncio')
>     
>         if 'AIOCOAP_TESTS_SHOWLOG' in os.environ:
>             print(complete_log, file=sys.stderr)
>             complete_log = "was just printed unconditionally anyway"
>     
> >       self.assertTrue(is_test_successful(self),
>                 "Previous errors were raised." + complete_log)
> E       AssertionError: False is not true : Previous errors were raised. 
> Complete log:
> E       2022-06-24 05:50:52,932:DEBUG:coap:Sending request - Token: 6929, 
> Remote: <UDP6EndpointAddress [::1]>
> E       2022-06-24 05:50:52,932:DEBUG:coap:Sending message <aiocoap.Message 
> at 0x7f3925e74ac0: Type.CON GET (MID 23941, token 6929) remote 
> <UDP6EndpointAddress [::1]>, 2 option(s)>
> E       2022-06-24 05:50:52,932:DEBUG:coap:Exchange added, message ID: 23941.
> E       2022-06-24 05:50:52,933:DEBUG:coap-server:Incoming message 
> <aiocoap.Message at 0x7f3925e86a00: Type.CON GET (MID 23941, token 6929) 
> remote <UDP6EndpointAddress [::1]:52231 (locally ::1%lo)>, 2 option(s)>
> E       2022-06-24 05:50:52,933:DEBUG:coap-server:New unique message received
> E       2022-06-24 05:50:52,933:DEBUG:coap-server:Sending message 
> <aiocoap.Message at 0x7f3925561310: Type.ACK 2.05 Content (MID 23941, token 
> 6929) remote <UDP6EndpointAddress [::1]:52231 (locally ::1%lo)>, 1 option(s)>
> E       2022-06-24 05:50:52,934:DEBUG:coap:Incoming message <aiocoap.Message 
> at 0x7f3925561520: Type.ACK 2.05 Content (MID 23941, token 6929) remote 
> <UDP6EndpointAddress [::1] (locally ::1%lo)>, 1 option(s)>
> E       2022-06-24 05:50:52,934:DEBUG:coap:Exchange removed, message ID: 
> 23941.
> E       2022-06-24 05:50:52,934:DEBUG:coap:Received Response: 
> <aiocoap.Message at 0x7f3925561520: Type.ACK 2.05 Content (MID 23941, token 
> 6929) remote <UDP6EndpointAddress [::1] (locally ::1%lo)>, 1 option(s)>
> E       2022-06-24 05:50:52,934:DEBUG:coap:Response <aiocoap.Message at 
> 0x7f3925561520: Type.ACK 2.05 Content (MID 23941, token 6929) remote 
> <UDP6EndpointAddress [::1] (locally ::1%lo)>, 1 option(s)> matched to request 
> <PlumbingRequest at 0x7f3925e86a90 around <aiocoap.Message at 0x7f3925e74ac0: 
> Type.CON GET (MID 23941, token 6929) remote <UDP6EndpointAddress [::1]>, 2 
> option(s)> with 2 callbacks>
> E       2022-06-24 05:50:52,945:DEBUG:coap-server:Shutting down context
> E       2022-06-24 05:50:52,946:DEBUG:coap:Shutting down context
> 
> tests/fixtures.py:116: AssertionError
> ------------------------------ Captured log call 
> -------------------------------
> DEBUG    coap:tokenmanager.py:209 Sending request - Token: 6929, Remote: 
> <UDP6EndpointAddress [::1]>
> DEBUG    coap:messagemanager.py:423 Sending message <aiocoap.Message at 
> 0x7f3925e74ac0: Type.CON GET (MID 23941, token 6929) remote 
> <UDP6EndpointAddress [::1]>, 2 option(s)>
> DEBUG    coap:messagemanager.py:209 Exchange added, message ID: 23941.
> DEBUG    coap-server:messagemanager.py:83 Incoming message <aiocoap.Message 
> at 0x7f3925e86a00: Type.CON GET (MID 23941, token 6929) remote 
> <UDP6EndpointAddress [::1]:52231 (locally ::1%lo)>, 2 option(s)>
> DEBUG    coap-server:messagemanager.py:175 New unique message received
> DEBUG    coap-server:messagemanager.py:423 Sending message <aiocoap.Message 
> at 0x7f3925561310: Type.ACK 2.05 Content (MID 23941, token 6929) remote 
> <UDP6EndpointAddress [::1]:52231 (locally ::1%lo)>, 1 option(s)>
> DEBUG    coap:messagemanager.py:83 Incoming message <aiocoap.Message at 
> 0x7f3925561520: Type.ACK 2.05 Content (MID 23941, token 6929) remote 
> <UDP6EndpointAddress [::1] (locally ::1%lo)>, 1 option(s)>
> DEBUG    coap:messagemanager.py:224 Exchange removed, message ID: 23941.
> DEBUG    coap:messagemanager.py:332 Received Response: <aiocoap.Message at 
> 0x7f3925561520: Type.ACK 2.05 Content (MID 23941, token 6929) remote 
> <UDP6EndpointAddress [::1] (locally ::1%lo)>, 1 option(s)>
> DEBUG    coap:tokenmanager.py:170 Response <aiocoap.Message at 
> 0x7f3925561520: Type.ACK 2.05 Content (MID 23941, token 6929) remote 
> <UDP6EndpointAddress [::1] (locally ::1%lo)>, 1 option(s)> matched to request 
> <PlumbingRequest at 0x7f3925e86a90 around <aiocoap.Message at 0x7f3925e74ac0: 
> Type.CON GET (MID 23941, token 6929) remote <UDP6EndpointAddress [::1]>, 2 
> option(s)> with 2 callbacks>
> DEBUG    coap-server:protocol.py:317 Shutting down context
> DEBUG    coap:protocol.py:317 Shutting down context
> _____ ERROR at teardown of TestClientWithHostlessMessages.test_uri_parser 
> ______
> 
> self = <tests.test_client.TestClientWithHostlessMessages 
> testMethod=test_uri_parser>
> 
>     def tearDown(self):
>         super(WithLogMonitoring, self).tearDown()
>     
>         logging.root.removeHandler(self.handler)
>     
>         complete_log = " Complete log:\n" + "\n".join(
>                 x.preformatted for x in self.handler.list if x.name != 
> 'asyncio')
>     
>         if 'AIOCOAP_TESTS_SHOWLOG' in os.environ:
>             print(complete_log, file=sys.stderr)
>             complete_log = "was just printed unconditionally anyway"
>     
> >       self.assertTrue(is_test_successful(self),
>                 "Previous errors were raised." + complete_log)
> E       AssertionError: False is not true : Previous errors were raised. 
> Complete log:
> E       2022-06-24 05:50:53,169:DEBUG:coap:Sending request - Token: 4718, 
> Remote: <UDP6EndpointAddress [::1]>
> E       2022-06-24 05:50:53,169:DEBUG:coap:Sending message <aiocoap.Message 
> at 0x7f39254ef3d0: Type.CON GET (MID 38050, token 4718) remote 
> <UDP6EndpointAddress [::1]>, 2 option(s)>
> E       2022-06-24 05:50:53,169:DEBUG:coap:Exchange added, message ID: 38050.
> E       2022-06-24 05:50:53,170:DEBUG:coap-server:Incoming message 
> <aiocoap.Message at 0x7f3925527f10: Type.CON GET (MID 38050, token 4718) 
> remote <UDP6EndpointAddress [::1]:41122 (locally ::1%lo)>, 2 option(s)>
> E       2022-06-24 05:50:53,170:DEBUG:coap-server:New unique message received
> E       2022-06-24 05:50:53,170:DEBUG:coap-server:Sending message 
> <aiocoap.Message at 0x7f3925393d60: Type.ACK 2.05 Content (MID 38050, token 
> 4718) remote <UDP6EndpointAddress [::1]:41122 (locally ::1%lo)>, 1 option(s)>
> E       2022-06-24 05:50:53,171:DEBUG:coap:Incoming message <aiocoap.Message 
> at 0x7f3925527d90: Type.ACK 2.05 Content (MID 38050, token 4718) remote 
> <UDP6EndpointAddress [::1] (locally ::1%lo)>, 1 option(s)>
> E       2022-06-24 05:50:53,171:DEBUG:coap:Exchange removed, message ID: 
> 38050.
> E       2022-06-24 05:50:53,171:DEBUG:coap:Received Response: 
> <aiocoap.Message at 0x7f3925527d90: Type.ACK 2.05 Content (MID 38050, token 
> 4718) remote <UDP6EndpointAddress [::1] (locally ::1%lo)>, 1 option(s)>
> E       2022-06-24 05:50:53,171:DEBUG:coap:Response <aiocoap.Message at 
> 0x7f3925527d90: Type.ACK 2.05 Content (MID 38050, token 4718) remote 
> <UDP6EndpointAddress [::1] (locally ::1%lo)>, 1 option(s)> matched to request 
> <PlumbingRequest at 0x7f3925527850 around <aiocoap.Message at 0x7f39254ef3d0: 
> Type.CON GET (MID 38050, token 4718) remote <UDP6EndpointAddress [::1]>, 2 
> option(s)> with 2 callbacks>
> E       2022-06-24 05:50:53,182:DEBUG:coap-server:Shutting down context
> E       2022-06-24 05:50:53,182:DEBUG:coap:Shutting down context
> 
> tests/fixtures.py:116: AssertionError
> ------------------------------ Captured log call 
> -------------------------------
> DEBUG    coap:tokenmanager.py:209 Sending request - Token: 4718, Remote: 
> <UDP6EndpointAddress [::1]>
> DEBUG    coap:messagemanager.py:423 Sending message <aiocoap.Message at 
> 0x7f39254ef3d0: Type.CON GET (MID 38050, token 4718) remote 
> <UDP6EndpointAddress [::1]>, 2 option(s)>
> DEBUG    coap:messagemanager.py:209 Exchange added, message ID: 38050.
> DEBUG    coap-server:messagemanager.py:83 Incoming message <aiocoap.Message 
> at 0x7f3925527f10: Type.CON GET (MID 38050, token 4718) remote 
> <UDP6EndpointAddress [::1]:41122 (locally ::1%lo)>, 2 option(s)>
> DEBUG    coap-server:messagemanager.py:175 New unique message received
> DEBUG    coap-server:messagemanager.py:423 Sending message <aiocoap.Message 
> at 0x7f3925393d60: Type.ACK 2.05 Content (MID 38050, token 4718) remote 
> <UDP6EndpointAddress [::1]:41122 (locally ::1%lo)>, 1 option(s)>
> DEBUG    coap:messagemanager.py:83 Incoming message <aiocoap.Message at 
> 0x7f3925527d90: Type.ACK 2.05 Content (MID 38050, token 4718) remote 
> <UDP6EndpointAddress [::1] (locally ::1%lo)>, 1 option(s)>
> DEBUG    coap:messagemanager.py:224 Exchange removed, message ID: 38050.
> DEBUG    coap:messagemanager.py:332 Received Response: <aiocoap.Message at 
> 0x7f3925527d90: Type.ACK 2.05 Content (MID 38050, token 4718) remote 
> <UDP6EndpointAddress [::1] (locally ::1%lo)>, 1 option(s)>
> DEBUG    coap:tokenmanager.py:170 Response <aiocoap.Message at 
> 0x7f3925527d90: Type.ACK 2.05 Content (MID 38050, token 4718) remote 
> <UDP6EndpointAddress [::1] (locally ::1%lo)>, 1 option(s)> matched to request 
> <PlumbingRequest at 0x7f3925527850 around <aiocoap.Message at 0x7f39254ef3d0: 
> Type.CON GET (MID 38050, token 4718) remote <UDP6EndpointAddress [::1]>, 2 
> option(s)> with 2 callbacks>
> DEBUG    coap-server:protocol.py:317 Shutting down context
> DEBUG    coap:protocol.py:317 Shutting down context
> ____________________ ERROR at teardown of TestTLS.test_tls 
> _____________________
> 
> self = <tests.test_tls.TestTLS testMethod=test_tls>
> 
>     def tearDown(self):
>         super(WithLogMonitoring, self).tearDown()
>     
>         logging.root.removeHandler(self.handler)
>     
>         complete_log = " Complete log:\n" + "\n".join(
>                 x.preformatted for x in self.handler.list if x.name != 
> 'asyncio')
>     
>         if 'AIOCOAP_TESTS_SHOWLOG' in os.environ:
>             print(complete_log, file=sys.stderr)
>             complete_log = "was just printed unconditionally anyway"
>     
> >       self.assertTrue(is_test_successful(self),
>                 "Previous errors were raised." + complete_log)
> E       AssertionError: False is not true : Previous errors were raised. 
> Complete log:
> E       2022-06-24 05:51:11,975:DEBUG:coap-server:Shutting down context
> E       2022-06-24 05:51:11,976:DEBUG:coap:Shutting down context
> 
> tests/fixtures.py:116: AssertionError
> ------------------------------ Captured log call 
> -------------------------------
> DEBUG    coap-server:protocol.py:317 Shutting down context
> DEBUG    coap:protocol.py:317 Shutting down context
> =================================== FAILURES 
> ===================================
> ____________________ TestClientWithSetHost.test_uri_parser 
> _____________________
> 
> self = <tests.test_client.TestClientWithSetHost testMethod=test_uri_parser>
> function = <function TestClientWithSetHost.test_uri_parser at 0x7f3926074430>
> args = (), startcount = 0
> 
>     def wrapped(self, *args, function=function):
>         # assertLogs does not work as assertDoesntLog anyway without major
>         # tricking, and it interacts badly with WithLogMonitoring as they both
>         # try to change the root logger's level.
>     
>         startcount = len(self.handler.list)
> >       result = function(self, *args)
> 
> tests/fixtures.py:75: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/fixtures.py:57: in wrapper
>     return self.loop.run_until_complete(f)
> /usr/lib/python3.9/asyncio/base_events.py:647: in run_until_complete
>     return future.result()
> /usr/lib/python3.9/asyncio/tasks.py:611: in _wait_for_one
>     return f.result()  # May raise f.exception().
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> self = <tests.test_client.TestClientWithSetHost testMethod=test_uri_parser>
> 
>     @no_warnings
>     @asynctest
>     async def test_uri_parser(self):
>         request = aiocoap.Message(code=aiocoap.GET)
>         request_uri = "coap://" + self.servernetloc + "/empty?query=a&query=b"
>         request.set_request_uri(request_uri, set_uri_host=self.set_uri_host)
>         self.assertEqual(request.get_request_uri(), request_uri, "Request URL 
> does not round-trip in request")
>         response = await self.client.request(request).response
>         self.assertEqual(response.get_request_uri(), request_uri, "Request 
> URL does not round-trip in response")
>         self.assertEqual(response.code, aiocoap.CONTENT, "Request URL 
> building failed")
>     
>         request = aiocoap.Message(code=aiocoap.GET)
> >       request.set_request_uri("coap://" + self.servernamealias + "/empty", 
> > set_uri_host=self.set_uri_host)
> E       TypeError: can only concatenate str (not "NoneType") to str
> 
> tests/test_client.py:31: TypeError
> ------------------------------ Captured log call 
> -------------------------------
> DEBUG    coap:tokenmanager.py:209 Sending request - Token: 6929, Remote: 
> <UDP6EndpointAddress [::1]>
> DEBUG    coap:messagemanager.py:423 Sending message <aiocoap.Message at 
> 0x7f3925e74ac0: Type.CON GET (MID 23941, token 6929) remote 
> <UDP6EndpointAddress [::1]>, 2 option(s)>
> DEBUG    coap:messagemanager.py:209 Exchange added, message ID: 23941.
> DEBUG    coap-server:messagemanager.py:83 Incoming message <aiocoap.Message 
> at 0x7f3925e86a00: Type.CON GET (MID 23941, token 6929) remote 
> <UDP6EndpointAddress [::1]:52231 (locally ::1%lo)>, 2 option(s)>
> DEBUG    coap-server:messagemanager.py:175 New unique message received
> DEBUG    coap-server:messagemanager.py:423 Sending message <aiocoap.Message 
> at 0x7f3925561310: Type.ACK 2.05 Content (MID 23941, token 6929) remote 
> <UDP6EndpointAddress [::1]:52231 (locally ::1%lo)>, 1 option(s)>
> DEBUG    coap:messagemanager.py:83 Incoming message <aiocoap.Message at 
> 0x7f3925561520: Type.ACK 2.05 Content (MID 23941, token 6929) remote 
> <UDP6EndpointAddress [::1] (locally ::1%lo)>, 1 option(s)>
> DEBUG    coap:messagemanager.py:224 Exchange removed, message ID: 23941.
> DEBUG    coap:messagemanager.py:332 Received Response: <aiocoap.Message at 
> 0x7f3925561520: Type.ACK 2.05 Content (MID 23941, token 6929) remote 
> <UDP6EndpointAddress [::1] (locally ::1%lo)>, 1 option(s)>
> DEBUG    coap:tokenmanager.py:170 Response <aiocoap.Message at 
> 0x7f3925561520: Type.ACK 2.05 Content (MID 23941, token 6929) remote 
> <UDP6EndpointAddress [::1] (locally ::1%lo)>, 1 option(s)> matched to request 
> <PlumbingRequest at 0x7f3925e86a90 around <aiocoap.Message at 0x7f3925e74ac0: 
> Type.CON GET (MID 23941, token 6929) remote <UDP6EndpointAddress [::1]>, 2 
> option(s)> with 2 callbacks>
> DEBUG    coap-server:protocol.py:317 Shutting down context
> DEBUG    coap:protocol.py:317 Shutting down context
> ________________ TestClientWithHostlessMessages.test_uri_parser 
> ________________
> 
> self = <tests.test_client.TestClientWithHostlessMessages 
> testMethod=test_uri_parser>
> function = <function TestClientWithSetHost.test_uri_parser at 0x7f3926074430>
> args = (), startcount = 0
> 
>     def wrapped(self, *args, function=function):
>         # assertLogs does not work as assertDoesntLog anyway without major
>         # tricking, and it interacts badly with WithLogMonitoring as they both
>         # try to change the root logger's level.
>     
>         startcount = len(self.handler.list)
> >       result = function(self, *args)
> 
> tests/fixtures.py:75: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/fixtures.py:57: in wrapper
>     return self.loop.run_until_complete(f)
> /usr/lib/python3.9/asyncio/base_events.py:647: in run_until_complete
>     return future.result()
> /usr/lib/python3.9/asyncio/tasks.py:611: in _wait_for_one
>     return f.result()  # May raise f.exception().
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> self = <tests.test_client.TestClientWithHostlessMessages 
> testMethod=test_uri_parser>
> 
>     @no_warnings
>     @asynctest
>     async def test_uri_parser(self):
>         request = aiocoap.Message(code=aiocoap.GET)
>         request_uri = "coap://" + self.servernetloc + "/empty?query=a&query=b"
>         request.set_request_uri(request_uri, set_uri_host=self.set_uri_host)
>         self.assertEqual(request.get_request_uri(), request_uri, "Request URL 
> does not round-trip in request")
>         response = await self.client.request(request).response
>         self.assertEqual(response.get_request_uri(), request_uri, "Request 
> URL does not round-trip in response")
>         self.assertEqual(response.code, aiocoap.CONTENT, "Request URL 
> building failed")
>     
>         request = aiocoap.Message(code=aiocoap.GET)
> >       request.set_request_uri("coap://" + self.servernamealias + "/empty", 
> > set_uri_host=self.set_uri_host)
> E       TypeError: can only concatenate str (not "NoneType") to str
> 
> tests/test_client.py:31: TypeError
> ------------------------------ Captured log call 
> -------------------------------
> DEBUG    coap:tokenmanager.py:209 Sending request - Token: 4718, Remote: 
> <UDP6EndpointAddress [::1]>
> DEBUG    coap:messagemanager.py:423 Sending message <aiocoap.Message at 
> 0x7f39254ef3d0: Type.CON GET (MID 38050, token 4718) remote 
> <UDP6EndpointAddress [::1]>, 2 option(s)>
> DEBUG    coap:messagemanager.py:209 Exchange added, message ID: 38050.
> DEBUG    coap-server:messagemanager.py:83 Incoming message <aiocoap.Message 
> at 0x7f3925527f10: Type.CON GET (MID 38050, token 4718) remote 
> <UDP6EndpointAddress [::1]:41122 (locally ::1%lo)>, 2 option(s)>
> DEBUG    coap-server:messagemanager.py:175 New unique message received
> DEBUG    coap-server:messagemanager.py:423 Sending message <aiocoap.Message 
> at 0x7f3925393d60: Type.ACK 2.05 Content (MID 38050, token 4718) remote 
> <UDP6EndpointAddress [::1]:41122 (locally ::1%lo)>, 1 option(s)>
> DEBUG    coap:messagemanager.py:83 Incoming message <aiocoap.Message at 
> 0x7f3925527d90: Type.ACK 2.05 Content (MID 38050, token 4718) remote 
> <UDP6EndpointAddress [::1] (locally ::1%lo)>, 1 option(s)>
> DEBUG    coap:messagemanager.py:224 Exchange removed, message ID: 38050.
> DEBUG    coap:messagemanager.py:332 Received Response: <aiocoap.Message at 
> 0x7f3925527d90: Type.ACK 2.05 Content (MID 38050, token 4718) remote 
> <UDP6EndpointAddress [::1] (locally ::1%lo)>, 1 option(s)>
> DEBUG    coap:tokenmanager.py:170 Response <aiocoap.Message at 
> 0x7f3925527d90: Type.ACK 2.05 Content (MID 38050, token 4718) remote 
> <UDP6EndpointAddress [::1] (locally ::1%lo)>, 1 option(s)> matched to request 
> <PlumbingRequest at 0x7f3925527850 around <aiocoap.Message at 0x7f39254ef3d0: 
> Type.CON GET (MID 38050, token 4718) remote <UDP6EndpointAddress [::1]>, 2 
> option(s)> with 2 callbacks>
> DEBUG    coap-server:protocol.py:317 Shutting down context
> DEBUG    coap:protocol.py:317 Shutting down context
> ________________________ TestReverseProxy.test_options 
> _________________________
> 
> self = <tests.test_reverseproxy.TestReverseProxy testMethod=test_options>
> 
>     def setUp(self):
>         super(WithReverseProxy, self).setUp()
>     
>         self.reverseproxy = aiocoap.cli.proxy.Main(
> >               ["--reverse", "--bind", hostportjoin(self.proxyhost, 
> > self.proxyport), "--namebased", "%s:%s"%(self.name_for_real_server, 
> > self.servernetloc), "--pathbased", 
> > "%s:%s"%("/".join(self.path_for_real_server), self.servernetloc)],
>                 loop=self.loop,
>                 )
> 
> tests/test_reverseproxy.py:23: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> host = None, port = 56839
> 
>     def hostportjoin(host, port=None):
>         """Join a host and optionally port into a hostinfo-style host:port
>         string
>     
>         >>> hostportjoin('example.com')
>         'example.com'
>         >>> hostportjoin('example.com', 1234)
>         'example.com:1234'
>         >>> hostportjoin('127.0.0.1', 1234)
>         '127.0.0.1:1234'
>     
>         This is lax with respect to whether host is an IPv6 literal in 
> brackets or
>         not, and accepts either form; IP-future literals that do not contain a
>         colon must be already presented in their bracketed form:
>     
>         >>> hostportjoin('2001:db8::1')
>         '[2001:db8::1]'
>         >>> hostportjoin('2001:db8::1', 1234)
>         '[2001:db8::1]:1234'
>         >>> hostportjoin('[2001:db8::1]', 1234)
>         '[2001:db8::1]:1234'
>         """
> >       if ':' in host and not (host.startswith('[') and host.endswith(']')):
> E       TypeError: argument of type 'NoneType' is not iterable
> 
> aiocoap/util/__init__.py:86: TypeError
> ________________________ TestReverseProxy.test_routing 
> _________________________
> 
> self = <tests.test_reverseproxy.TestReverseProxy testMethod=test_routing>
> 
>     def setUp(self):
>         super(WithReverseProxy, self).setUp()
>     
>         self.reverseproxy = aiocoap.cli.proxy.Main(
> >               ["--reverse", "--bind", hostportjoin(self.proxyhost, 
> > self.proxyport), "--namebased", "%s:%s"%(self.name_for_real_server, 
> > self.servernetloc), "--pathbased", 
> > "%s:%s"%("/".join(self.path_for_real_server), self.servernetloc)],
>                 loop=self.loop,
>                 )
> 
> tests/test_reverseproxy.py:23: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> host = None, port = 56839
> 
>     def hostportjoin(host, port=None):
>         """Join a host and optionally port into a hostinfo-style host:port
>         string
>     
>         >>> hostportjoin('example.com')
>         'example.com'
>         >>> hostportjoin('example.com', 1234)
>         'example.com:1234'
>         >>> hostportjoin('127.0.0.1', 1234)
>         '127.0.0.1:1234'
>     
>         This is lax with respect to whether host is an IPv6 literal in 
> brackets or
>         not, and accepts either form; IP-future literals that do not contain a
>         colon must be already presented in their bracketed form:
>     
>         >>> hostportjoin('2001:db8::1')
>         '[2001:db8::1]'
>         >>> hostportjoin('2001:db8::1', 1234)
>         '[2001:db8::1]:1234'
>         >>> hostportjoin('[2001:db8::1]', 1234)
>         '[2001:db8::1]:1234'
>         """
> >       if ':' in host and not (host.startswith('[') and host.endswith(']')):
> E       TypeError: argument of type 'NoneType' is not iterable
> 
> aiocoap/util/__init__.py:86: TypeError
> _______________________________ TestTLS.test_tls 
> _______________________________
> 
> self = <aiocoap.transports.tls.TLSClient object at 0x7f3925326be0>
> message = <aiocoap.Message at 0x7f39255823a0: no mtype, GET (no MID, empty 
> token) remote UndecidedRemote(scheme='coaps+tcp', hostinfo='None'), 1 
> option(s)>
> 
>     async def _spawn_protocol(self, message):
>         if message.unresolved_remote is None:
>             host = message.opt.uri_host
>             port = message.opt.uri_port or self._default_port
>             if host is None:
>                 raise ValueError("No location found to send message to 
> (neither in .opt.uri_host nor in .remote)")
>         else:
>             host, port = util.hostportsplit(message.unresolved_remote)
>             port = port or self._default_port
>     
>         if (host, port) in self._pool:
>             return self._pool[(host, port)]
>     
>         try:
> >           _, protocol = await self.loop.create_connection(
>                     lambda: TcpConnection(self, self.log, self.loop,
>                         is_server=False),
>                     host, port,
>                     ssl=self._ssl_context_factory(message.unresolved_remote))
> 
> aiocoap/transports/tcp.py:343: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> self = <_UnixSelectorEventLoop running=False closed=False debug=False>
> protocol_factory = <function TCPClient._spawn_protocol.<locals>.<lambda> at 
> 0x7f39254f6e50>
> host = 'none', port = 5684
> 
>     async def create_connection(
>             self, protocol_factory, host=None, port=None,
>             *, ssl=None, family=0,
>             proto=0, flags=0, sock=None,
>             local_addr=None, server_hostname=None,
>             ssl_handshake_timeout=None,
>             happy_eyeballs_delay=None, interleave=None):
>         """Connect to a TCP server.
>     
>         Create a streaming transport connection to a given Internet host and
>         port: socket family AF_INET or socket.AF_INET6 depending on host (or
>         family if specified), socket type SOCK_STREAM. protocol_factory must 
> be
>         a callable returning a protocol instance.
>     
>         This method is a coroutine which will try to establish the connection
>         in the background.  When successful, the coroutine returns a
>         (transport, protocol) pair.
>         """
>         if server_hostname is not None and not ssl:
>             raise ValueError('server_hostname is only meaningful with ssl')
>     
>         if server_hostname is None and ssl:
>             # Use host as default for server_hostname.  It is an error
>             # if host is empty or not set, e.g. when an
>             # already-connected socket was passed or when only a port
>             # is given.  To avoid this error, you can pass
>             # server_hostname='' -- this will bypass the hostname
>             # check.  (This also means that if host is a numeric
>             # IP/IPv6 address, we will attempt to verify that exact
>             # address; this will probably fail, but it is possible to
>             # create a certificate for a specific IP address, so we
>             # don't judge it here.)
>             if not host:
>                 raise ValueError('You must set server_hostname '
>                                  'when using ssl without a host')
>             server_hostname = host
>     
>         if ssl_handshake_timeout is not None and not ssl:
>             raise ValueError(
>                 'ssl_handshake_timeout is only meaningful with ssl')
>     
>         if sock is not None:
>             _check_ssl_socket(sock)
>     
>         if happy_eyeballs_delay is not None and interleave is None:
>             # If using happy eyeballs, default to interleave addresses by 
> family
>             interleave = 1
>     
>         if host is not None or port is not None:
>             if sock is not None:
>                 raise ValueError(
>                     'host/port and sock can not be specified at the same 
> time')
>     
> >           infos = await self._ensure_resolved(
>                 (host, port), family=family,
>                 type=socket.SOCK_STREAM, proto=proto, flags=flags, loop=self)
> 
> /usr/lib/python3.9/asyncio/base_events.py:1026: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> self = <_UnixSelectorEventLoop running=False closed=False debug=False>
> address = ('none', 5684)
> 
>     async def _ensure_resolved(self, address, *,
>                                family=0, type=socket.SOCK_STREAM,
>                                proto=0, flags=0, loop):
>         host, port = address[:2]
>         info = _ipaddr_info(host, port, family, type, proto, *address[2:])
>         if info is not None:
>             # "host" is already a resolved IP.
>             return [info]
>         else:
> >           return await loop.getaddrinfo(host, port, family=family, 
> > type=type,
>                                           proto=proto, flags=flags)
> 
> /usr/lib/python3.9/asyncio/base_events.py:1405: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> self = <_UnixSelectorEventLoop running=False closed=False debug=False>
> host = 'none', port = 5684
> 
>     async def getaddrinfo(self, host, port, *,
>                           family=0, type=0, proto=0, flags=0):
>         if self._debug:
>             getaddr_func = self._getaddrinfo_debug
>         else:
>             getaddr_func = socket.getaddrinfo
>     
> >       return await self.run_in_executor(
>             None, getaddr_func, host, port, family, type, proto, flags)
> 
> /usr/lib/python3.9/asyncio/base_events.py:861: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> self = None
> 
>     def run(self):
>         if not self.future.set_running_or_notify_cancel():
>             return
>     
>         try:
> >           result = self.fn(*self.args, **self.kwargs)
> 
> /usr/lib/python3.9/concurrent/futures/thread.py:58: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> host = 'none', port = 5684, family = 0, type = <SocketKind.SOCK_STREAM: 1>
> proto = 0, flags = 0
> 
>     def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0):
>         """Resolve host and port into list of address info entries.
>     
>         Translate the host/port argument into a sequence of 5-tuples that 
> contain
>         all the necessary arguments for creating a socket connected to that 
> service.
>         host is a domain name, a string representation of an IPv4/v6 address 
> or
>         None. port is a string service name such as 'http', a numeric port 
> number or
>         None. By passing None as the value of host and port, you can pass 
> NULL to
>         the underlying C API.
>     
>         The family, type and proto arguments can be optionally specified in 
> order to
>         narrow the list of addresses returned. Passing zero as a value for 
> each of
>         these arguments selects the full range of results.
>         """
>         # We override this function since we want to translate the numeric 
> family
>         # and socket type values to enum constants.
>         addrlist = []
> >       for res in _socket.getaddrinfo(host, port, family, type, proto, 
> > flags):
> E       socket.gaierror: [Errno -2] Name or service not known
> 
> /usr/lib/python3.9/socket.py:954: gaierror
> 
> During handling of the above exception, another exception occurred:
> 
> self = <tests.test_tls.TestTLS testMethod=test_tls>
> function = <function TestTLS.test_tls at 0x7f3925f04af0>, args = ()
> startcount = 0
> 
>     def wrapped(self, *args, function=function):
>         # assertLogs does not work as assertDoesntLog anyway without major
>         # tricking, and it interacts badly with WithLogMonitoring as they both
>         # try to change the root logger's level.
>     
>         startcount = len(self.handler.list)
> >       result = function(self, *args)
> 
> tests/fixtures.py:75: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/fixtures.py:57: in wrapper
>     return self.loop.run_until_complete(f)
> /usr/lib/python3.9/asyncio/base_events.py:647: in run_until_complete
>     return future.result()
> /usr/lib/python3.9/asyncio/tasks.py:611: in _wait_for_one
>     return f.result()  # May raise f.exception().
> tests/test_tls.py:84: in test_tls
>     response = await self.client.request(request).response_raising
> aiocoap/protocol.py:643: in response_raising
>     response = await self.response
> aiocoap/protocol.py:842: in _run_outer
>     await cls._run(app_request, response, weak_observation, protocol, log)
> aiocoap/protocol.py:867: in _run
>     await protocol.find_remote_and_interface(app_request)
> aiocoap/protocol.py:340: in find_remote_and_interface
>     if await ri.fill_or_recognize_remote(message):
> aiocoap/tokenmanager.py:194: in fill_or_recognize_remote
>     return await self.token_interface.fill_or_recognize_remote(message)
> aiocoap/transports/tcp.py:398: in fill_or_recognize_remote
>     message.remote = await self._spawn_protocol(message)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> self = <aiocoap.transports.tls.TLSClient object at 0x7f3925326be0>
> message = <aiocoap.Message at 0x7f39255823a0: no mtype, GET (no MID, empty 
> token) remote UndecidedRemote(scheme='coaps+tcp', hostinfo='None'), 1 
> option(s)>
> 
>     async def _spawn_protocol(self, message):
>         if message.unresolved_remote is None:
>             host = message.opt.uri_host
>             port = message.opt.uri_port or self._default_port
>             if host is None:
>                 raise ValueError("No location found to send message to 
> (neither in .opt.uri_host nor in .remote)")
>         else:
>             host, port = util.hostportsplit(message.unresolved_remote)
>             port = port or self._default_port
>     
>         if (host, port) in self._pool:
>             return self._pool[(host, port)]
>     
>         try:
>             _, protocol = await self.loop.create_connection(
>                     lambda: TcpConnection(self, self.log, self.loop,
>                         is_server=False),
>                     host, port,
>                     ssl=self._ssl_context_factory(message.unresolved_remote))
>         except socket.gaierror:
> >           raise error.ResolutionError("No address information found for 
> > requests to %r" % host)
> E           aiocoap.error.ResolutionError: No address information found for 
> requests to 'none'
> 
> aiocoap/transports/tcp.py:349: ResolutionError
> ------------------------------ Captured log call 
> -------------------------------
> DEBUG    coap-server:protocol.py:317 Shutting down context
> DEBUG    coap:protocol.py:317 Shutting down context
> =============================== warnings summary 
> ===============================
> aiocoap/resource.py:266
>   
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/aiocoap/resource.py:266: 
> DeprecationWarning: invalid escape sequence \ 
>     """Class that indicates that a resource promises to parse the uri_path
> 
> tests/test_server.py:116
>   
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/tests/test_server.py:116:
>  PytestCollectionWarning: cannot collect test class 'TestingSite' because it 
> has a __init__ constructor (from: 
> .pybuild/cpython3_3.9_aiocoap/build/tests/test_blockwise.py)
>     class TestingSite(aiocoap.resource.Site):
> 
> tests/test_server.py:116
>   
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build/tests/test_server.py:116:
>  PytestCollectionWarning: cannot collect test class 'TestingSite' because it 
> has a __init__ constructor (from: 
> .pybuild/cpython3_3.9_aiocoap/build/tests/test_server.py)
>     class TestingSite(aiocoap.resource.Site):
> 
> -- Docs: https://docs.pytest.org/en/stable/warnings.html
> =========================== short test summary info 
> ============================
> FAILED tests/test_client.py::TestClientWithSetHost::test_uri_parser - 
> TypeErr...
> FAILED tests/test_client.py::TestClientWithHostlessMessages::test_uri_parser
> FAILED tests/test_reverseproxy.py::TestReverseProxy::test_options - 
> TypeError...
> FAILED tests/test_reverseproxy.py::TestReverseProxy::test_routing - 
> TypeError...
> FAILED tests/test_tls.py::TestTLS::test_tls - aiocoap.error.ResolutionError: 
> ...
> ERROR tests/test_client.py::TestClientWithSetHost::test_uri_parser - 
> Assertio...
> ERROR tests/test_client.py::TestClientWithHostlessMessages::test_uri_parser
> ERROR tests/test_tls.py::TestTLS::test_tls - AssertionError: False is not 
> tru...
> = 5 failed, 75 passed, 125 skipped, 5 deselected, 1 xfailed, 3 warnings, 3 
> errors in 20.62s =
> E: pybuild pybuild:369: test: plugin distutils failed with: exit code=1: cd 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_aiocoap/build; python3.9 -m pytest -k 
> 'not test_commandline'
> I: pybuild base:239: cd 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build; python3.10 -m pytest 
> -k 'not test_commandline'
> ============================= test session starts 
> ==============================
> platform linux -- Python 3.10.5, pytest-6.2.5, py-1.10.0, pluggy-1.0.0
> rootdir: /<<PKGBUILDDIR>>
> collected 211 items / 5 deselected / 206 selected
> 
> tests/test_blockwise.py .s.                                              [  
> 1%]
> tests/test_client.py FE.FE....                                           [  
> 4%]
> tests/test_credentials.py ..s                                            [  
> 6%]
> tests/test_dtls.py ssssssssssss                                          [ 
> 12%]
> tests/test_encoding.py ...........                                       [ 
> 17%]
> tests/test_group_oscore.py ssssssssssssssssssssssss                      [ 
> 29%]
> tests/test_noncoap_client.py .......ss                                   [ 
> 33%]
> tests/test_noncoap_tcp_client.py ...........                             [ 
> 38%]
> tests/test_observe.py .......x....                                       [ 
> 44%]
> tests/test_oscore.py ssssssssssssssssssssss                              [ 
> 55%]
> tests/test_oscore_plugtest.py ssssssssssssssssssssssssssssssssssssssssss [ 
> 75%]
> ssssss                                                                   [ 
> 78%]
> tests/test_rd_examples.py ss                                             [ 
> 79%]
> tests/test_reverseproxy.py FF                                            [ 
> 80%]
> tests/test_server.py ........................ssssssssssss                [ 
> 98%]
> tests/test_tls.py FE                                                     [ 
> 98%]
> tests/test_uri_handling.py ..                                            [ 
> 99%]
> tests/test_util_cryptography.py s                                        
> [100%]
> 
> ==================================== ERRORS 
> ====================================
> __________ ERROR at teardown of TestClientWithSetHost.test_uri_parser 
> __________
> 
> self = <tests.test_client.TestClientWithSetHost testMethod=test_uri_parser>
> 
>     def tearDown(self):
>         super(WithLogMonitoring, self).tearDown()
>     
>         logging.root.removeHandler(self.handler)
>     
>         complete_log = " Complete log:\n" + "\n".join(
>                 x.preformatted for x in self.handler.list if x.name != 
> 'asyncio')
>     
>         if 'AIOCOAP_TESTS_SHOWLOG' in os.environ:
>             print(complete_log, file=sys.stderr)
>             complete_log = "was just printed unconditionally anyway"
>     
> >       self.assertTrue(is_test_successful(self),
>                 "Previous errors were raised." + complete_log)
> E       AssertionError: False is not true : Previous errors were raised. 
> Complete log:
> E       2022-06-24 05:51:13,878:DEBUG:coap:Sending request - Token: 76ff, 
> Remote: <UDP6EndpointAddress [::1]>
> E       2022-06-24 05:51:13,878:DEBUG:coap:Sending message <aiocoap.Message 
> at 0x7fe89670e740: Type.CON GET (MID 10639, token 76ff) remote 
> <UDP6EndpointAddress [::1]>, 2 option(s)>
> E       2022-06-24 05:51:13,879:DEBUG:coap:Exchange added, message ID: 10639.
> E       2022-06-24 05:51:13,879:DEBUG:coap-server:Incoming message 
> <aiocoap.Message at 0x7fe89670d600: Type.CON GET (MID 10639, token 76ff) 
> remote <UDP6EndpointAddress [::1]:35157 (locally ::1%lo)>, 2 option(s)>
> E       2022-06-24 05:51:13,879:DEBUG:coap-server:New unique message received
> E       2022-06-24 05:51:13,879:DEBUG:coap-server:Sending message 
> <aiocoap.Message at 0x7fe896694190: Type.ACK 2.05 Content (MID 10639, token 
> 76ff) remote <UDP6EndpointAddress [::1]:35157 (locally ::1%lo)>, 1 option(s)>
> E       2022-06-24 05:51:13,880:DEBUG:coap:Incoming message <aiocoap.Message 
> at 0x7fe896695ff0: Type.ACK 2.05 Content (MID 10639, token 76ff) remote 
> <UDP6EndpointAddress [::1] (locally ::1%lo)>, 1 option(s)>
> E       2022-06-24 05:51:13,880:DEBUG:coap:Exchange removed, message ID: 
> 10639.
> E       2022-06-24 05:51:13,880:DEBUG:coap:Received Response: 
> <aiocoap.Message at 0x7fe896695ff0: Type.ACK 2.05 Content (MID 10639, token 
> 76ff) remote <UDP6EndpointAddress [::1] (locally ::1%lo)>, 1 option(s)>
> E       2022-06-24 05:51:13,880:DEBUG:coap:Response <aiocoap.Message at 
> 0x7fe896695ff0: Type.ACK 2.05 Content (MID 10639, token 76ff) remote 
> <UDP6EndpointAddress [::1] (locally ::1%lo)>, 1 option(s)> matched to request 
> <PlumbingRequest at 0x7fe89670c790 around <aiocoap.Message at 0x7fe89670e740: 
> Type.CON GET (MID 10639, token 76ff) remote <UDP6EndpointAddress [::1]>, 2 
> option(s)> with 2 callbacks>
> E       2022-06-24 05:51:13,891:DEBUG:coap-server:Shutting down context
> E       2022-06-24 05:51:13,892:DEBUG:coap:Shutting down context
> 
> tests/fixtures.py:116: AssertionError
> ------------------------------ Captured log call 
> -------------------------------
> DEBUG    coap:tokenmanager.py:209 Sending request - Token: 76ff, Remote: 
> <UDP6EndpointAddress [::1]>
> DEBUG    coap:messagemanager.py:423 Sending message <aiocoap.Message at 
> 0x7fe89670e740: Type.CON GET (MID 10639, token 76ff) remote 
> <UDP6EndpointAddress [::1]>, 2 option(s)>
> DEBUG    coap:messagemanager.py:209 Exchange added, message ID: 10639.
> DEBUG    coap-server:messagemanager.py:83 Incoming message <aiocoap.Message 
> at 0x7fe89670d600: Type.CON GET (MID 10639, token 76ff) remote 
> <UDP6EndpointAddress [::1]:35157 (locally ::1%lo)>, 2 option(s)>
> DEBUG    coap-server:messagemanager.py:175 New unique message received
> DEBUG    coap-server:messagemanager.py:423 Sending message <aiocoap.Message 
> at 0x7fe896694190: Type.ACK 2.05 Content (MID 10639, token 76ff) remote 
> <UDP6EndpointAddress [::1]:35157 (locally ::1%lo)>, 1 option(s)>
> DEBUG    coap:messagemanager.py:83 Incoming message <aiocoap.Message at 
> 0x7fe896695ff0: Type.ACK 2.05 Content (MID 10639, token 76ff) remote 
> <UDP6EndpointAddress [::1] (locally ::1%lo)>, 1 option(s)>
> DEBUG    coap:messagemanager.py:224 Exchange removed, message ID: 10639.
> DEBUG    coap:messagemanager.py:332 Received Response: <aiocoap.Message at 
> 0x7fe896695ff0: Type.ACK 2.05 Content (MID 10639, token 76ff) remote 
> <UDP6EndpointAddress [::1] (locally ::1%lo)>, 1 option(s)>
> DEBUG    coap:tokenmanager.py:170 Response <aiocoap.Message at 
> 0x7fe896695ff0: Type.ACK 2.05 Content (MID 10639, token 76ff) remote 
> <UDP6EndpointAddress [::1] (locally ::1%lo)>, 1 option(s)> matched to request 
> <PlumbingRequest at 0x7fe89670c790 around <aiocoap.Message at 0x7fe89670e740: 
> Type.CON GET (MID 10639, token 76ff) remote <UDP6EndpointAddress [::1]>, 2 
> option(s)> with 2 callbacks>
> DEBUG    coap-server:protocol.py:317 Shutting down context
> DEBUG    coap:protocol.py:317 Shutting down context
> _____ ERROR at teardown of TestClientWithHostlessMessages.test_uri_parser 
> ______
> 
> self = <tests.test_client.TestClientWithHostlessMessages 
> testMethod=test_uri_parser>
> 
>     def tearDown(self):
>         super(WithLogMonitoring, self).tearDown()
>     
>         logging.root.removeHandler(self.handler)
>     
>         complete_log = " Complete log:\n" + "\n".join(
>                 x.preformatted for x in self.handler.list if x.name != 
> 'asyncio')
>     
>         if 'AIOCOAP_TESTS_SHOWLOG' in os.environ:
>             print(complete_log, file=sys.stderr)
>             complete_log = "was just printed unconditionally anyway"
>     
> >       self.assertTrue(is_test_successful(self),
>                 "Previous errors were raised." + complete_log)
> E       AssertionError: False is not true : Previous errors were raised. 
> Complete log:
> E       2022-06-24 05:51:14,132:DEBUG:coap:Sending request - Token: bb8a, 
> Remote: <UDP6EndpointAddress [::1]>
> E       2022-06-24 05:51:14,133:DEBUG:coap:Sending message <aiocoap.Message 
> at 0x7fe89639d720: Type.CON GET (MID 5906, token bb8a) remote 
> <UDP6EndpointAddress [::1]>, 2 option(s)>
> E       2022-06-24 05:51:14,133:DEBUG:coap:Exchange added, message ID: 5906.
> E       2022-06-24 05:51:14,133:DEBUG:coap-server:Incoming message 
> <aiocoap.Message at 0x7fe89639f220: Type.CON GET (MID 5906, token bb8a) 
> remote <UDP6EndpointAddress [::1]:59776 (locally ::1%lo)>, 2 option(s)>
> E       2022-06-24 05:51:14,133:DEBUG:coap-server:New unique message received
> E       2022-06-24 05:51:14,134:DEBUG:coap-server:Sending message 
> <aiocoap.Message at 0x7fe896704ee0: Type.ACK 2.05 Content (MID 5906, token 
> bb8a) remote <UDP6EndpointAddress [::1]:59776 (locally ::1%lo)>, 1 option(s)>
> E       2022-06-24 05:51:14,134:DEBUG:coap:Incoming message <aiocoap.Message 
> at 0x7fe89639fc40: Type.ACK 2.05 Content (MID 5906, token bb8a) remote 
> <UDP6EndpointAddress [::1] (locally ::1%lo)>, 1 option(s)>
> E       2022-06-24 05:51:14,135:DEBUG:coap:Exchange removed, message ID: 5906.
> E       2022-06-24 05:51:14,135:DEBUG:coap:Received Response: 
> <aiocoap.Message at 0x7fe89639fc40: Type.ACK 2.05 Content (MID 5906, token 
> bb8a) remote <UDP6EndpointAddress [::1] (locally ::1%lo)>, 1 option(s)>
> E       2022-06-24 05:51:14,135:DEBUG:coap:Response <aiocoap.Message at 
> 0x7fe89639fc40: Type.ACK 2.05 Content (MID 5906, token bb8a) remote 
> <UDP6EndpointAddress [::1] (locally ::1%lo)>, 1 option(s)> matched to request 
> <PlumbingRequest at 0x7fe89639d960 around <aiocoap.Message at 0x7fe89639d720: 
> Type.CON GET (MID 5906, token bb8a) remote <UDP6EndpointAddress [::1]>, 2 
> option(s)> with 2 callbacks>
> E       2022-06-24 05:51:14,146:DEBUG:coap-server:Shutting down context
> E       2022-06-24 05:51:14,146:DEBUG:coap:Shutting down context
> 
> tests/fixtures.py:116: AssertionError
> ------------------------------ Captured log call 
> -------------------------------
> DEBUG    coap:tokenmanager.py:209 Sending request - Token: bb8a, Remote: 
> <UDP6EndpointAddress [::1]>
> DEBUG    coap:messagemanager.py:423 Sending message <aiocoap.Message at 
> 0x7fe89639d720: Type.CON GET (MID 5906, token bb8a) remote 
> <UDP6EndpointAddress [::1]>, 2 option(s)>
> DEBUG    coap:messagemanager.py:209 Exchange added, message ID: 5906.
> DEBUG    coap-server:messagemanager.py:83 Incoming message <aiocoap.Message 
> at 0x7fe89639f220: Type.CON GET (MID 5906, token bb8a) remote 
> <UDP6EndpointAddress [::1]:59776 (locally ::1%lo)>, 2 option(s)>
> DEBUG    coap-server:messagemanager.py:175 New unique message received
> DEBUG    coap-server:messagemanager.py:423 Sending message <aiocoap.Message 
> at 0x7fe896704ee0: Type.ACK 2.05 Content (MID 5906, token bb8a) remote 
> <UDP6EndpointAddress [::1]:59776 (locally ::1%lo)>, 1 option(s)>
> DEBUG    coap:messagemanager.py:83 Incoming message <aiocoap.Message at 
> 0x7fe89639fc40: Type.ACK 2.05 Content (MID 5906, token bb8a) remote 
> <UDP6EndpointAddress [::1] (locally ::1%lo)>, 1 option(s)>
> DEBUG    coap:messagemanager.py:224 Exchange removed, message ID: 5906.
> DEBUG    coap:messagemanager.py:332 Received Response: <aiocoap.Message at 
> 0x7fe89639fc40: Type.ACK 2.05 Content (MID 5906, token bb8a) remote 
> <UDP6EndpointAddress [::1] (locally ::1%lo)>, 1 option(s)>
> DEBUG    coap:tokenmanager.py:170 Response <aiocoap.Message at 
> 0x7fe89639fc40: Type.ACK 2.05 Content (MID 5906, token bb8a) remote 
> <UDP6EndpointAddress [::1] (locally ::1%lo)>, 1 option(s)> matched to request 
> <PlumbingRequest at 0x7fe89639d960 around <aiocoap.Message at 0x7fe89639d720: 
> Type.CON GET (MID 5906, token bb8a) remote <UDP6EndpointAddress [::1]>, 2 
> option(s)> with 2 callbacks>
> DEBUG    coap-server:protocol.py:317 Shutting down context
> DEBUG    coap:protocol.py:317 Shutting down context
> ____________________ ERROR at teardown of TestTLS.test_tls 
> _____________________
> 
> self = <tests.test_tls.TestTLS testMethod=test_tls>
> 
>     def tearDown(self):
>         super(WithLogMonitoring, self).tearDown()
>     
>         logging.root.removeHandler(self.handler)
>     
>         complete_log = " Complete log:\n" + "\n".join(
>                 x.preformatted for x in self.handler.list if x.name != 
> 'asyncio')
>     
>         if 'AIOCOAP_TESTS_SHOWLOG' in os.environ:
>             print(complete_log, file=sys.stderr)
>             complete_log = "was just printed unconditionally anyway"
>     
> >       self.assertTrue(is_test_successful(self),
>                 "Previous errors were raised." + complete_log)
> E       AssertionError: False is not true : Previous errors were raised. 
> Complete log:
> E       2022-06-24 05:51:30,138:DEBUG:coap-server:Shutting down context
> E       2022-06-24 05:51:30,139:DEBUG:coap:Shutting down context
> 
> tests/fixtures.py:116: AssertionError
> ------------------------------ Captured log call 
> -------------------------------
> DEBUG    coap-server:protocol.py:317 Shutting down context
> DEBUG    coap:protocol.py:317 Shutting down context
> =================================== FAILURES 
> ===================================
> ____________________ TestClientWithSetHost.test_uri_parser 
> _____________________
> 
> self = <tests.test_client.TestClientWithSetHost testMethod=test_uri_parser>
> function = <function TestClientWithSetHost.test_uri_parser at 0x7fe896545630>
> args = (), startcount = 0
> 
>     def wrapped(self, *args, function=function):
>         # assertLogs does not work as assertDoesntLog anyway without major
>         # tricking, and it interacts badly with WithLogMonitoring as they both
>         # try to change the root logger's level.
>     
>         startcount = len(self.handler.list)
> >       result = function(self, *args)
> 
> tests/fixtures.py:75: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/fixtures.py:57: in wrapper
>     return self.loop.run_until_complete(f)
> /usr/lib/python3.10/asyncio/base_events.py:646: in run_until_complete
>     return future.result()
> /usr/lib/python3.10/asyncio/tasks.py:571: in _wait_for_one
>     return f.result()  # May raise f.exception().
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> self = <tests.test_client.TestClientWithSetHost testMethod=test_uri_parser>
> 
>     @no_warnings
>     @asynctest
>     async def test_uri_parser(self):
>         request = aiocoap.Message(code=aiocoap.GET)
>         request_uri = "coap://" + self.servernetloc + "/empty?query=a&query=b"
>         request.set_request_uri(request_uri, set_uri_host=self.set_uri_host)
>         self.assertEqual(request.get_request_uri(), request_uri, "Request URL 
> does not round-trip in request")
>         response = await self.client.request(request).response
>         self.assertEqual(response.get_request_uri(), request_uri, "Request 
> URL does not round-trip in response")
>         self.assertEqual(response.code, aiocoap.CONTENT, "Request URL 
> building failed")
>     
>         request = aiocoap.Message(code=aiocoap.GET)
> >       request.set_request_uri("coap://" + self.servernamealias + "/empty", 
> > set_uri_host=self.set_uri_host)
> E       TypeError: can only concatenate str (not "NoneType") to str
> 
> tests/test_client.py:31: TypeError
> ------------------------------ Captured log call 
> -------------------------------
> DEBUG    coap:tokenmanager.py:209 Sending request - Token: 76ff, Remote: 
> <UDP6EndpointAddress [::1]>
> DEBUG    coap:messagemanager.py:423 Sending message <aiocoap.Message at 
> 0x7fe89670e740: Type.CON GET (MID 10639, token 76ff) remote 
> <UDP6EndpointAddress [::1]>, 2 option(s)>
> DEBUG    coap:messagemanager.py:209 Exchange added, message ID: 10639.
> DEBUG    coap-server:messagemanager.py:83 Incoming message <aiocoap.Message 
> at 0x7fe89670d600: Type.CON GET (MID 10639, token 76ff) remote 
> <UDP6EndpointAddress [::1]:35157 (locally ::1%lo)>, 2 option(s)>
> DEBUG    coap-server:messagemanager.py:175 New unique message received
> DEBUG    coap-server:messagemanager.py:423 Sending message <aiocoap.Message 
> at 0x7fe896694190: Type.ACK 2.05 Content (MID 10639, token 76ff) remote 
> <UDP6EndpointAddress [::1]:35157 (locally ::1%lo)>, 1 option(s)>
> DEBUG    coap:messagemanager.py:83 Incoming message <aiocoap.Message at 
> 0x7fe896695ff0: Type.ACK 2.05 Content (MID 10639, token 76ff) remote 
> <UDP6EndpointAddress [::1] (locally ::1%lo)>, 1 option(s)>
> DEBUG    coap:messagemanager.py:224 Exchange removed, message ID: 10639.
> DEBUG    coap:messagemanager.py:332 Received Response: <aiocoap.Message at 
> 0x7fe896695ff0: Type.ACK 2.05 Content (MID 10639, token 76ff) remote 
> <UDP6EndpointAddress [::1] (locally ::1%lo)>, 1 option(s)>
> DEBUG    coap:tokenmanager.py:170 Response <aiocoap.Message at 
> 0x7fe896695ff0: Type.ACK 2.05 Content (MID 10639, token 76ff) remote 
> <UDP6EndpointAddress [::1] (locally ::1%lo)>, 1 option(s)> matched to request 
> <PlumbingRequest at 0x7fe89670c790 around <aiocoap.Message at 0x7fe89670e740: 
> Type.CON GET (MID 10639, token 76ff) remote <UDP6EndpointAddress [::1]>, 2 
> option(s)> with 2 callbacks>
> DEBUG    coap-server:protocol.py:317 Shutting down context
> DEBUG    coap:protocol.py:317 Shutting down context
> ________________ TestClientWithHostlessMessages.test_uri_parser 
> ________________
> 
> self = <tests.test_client.TestClientWithHostlessMessages 
> testMethod=test_uri_parser>
> function = <function TestClientWithSetHost.test_uri_parser at 0x7fe896545630>
> args = (), startcount = 0
> 
>     def wrapped(self, *args, function=function):
>         # assertLogs does not work as assertDoesntLog anyway without major
>         # tricking, and it interacts badly with WithLogMonitoring as they both
>         # try to change the root logger's level.
>     
>         startcount = len(self.handler.list)
> >       result = function(self, *args)
> 
> tests/fixtures.py:75: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/fixtures.py:57: in wrapper
>     return self.loop.run_until_complete(f)
> /usr/lib/python3.10/asyncio/base_events.py:646: in run_until_complete
>     return future.result()
> /usr/lib/python3.10/asyncio/tasks.py:571: in _wait_for_one
>     return f.result()  # May raise f.exception().
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> self = <tests.test_client.TestClientWithHostlessMessages 
> testMethod=test_uri_parser>
> 
>     @no_warnings
>     @asynctest
>     async def test_uri_parser(self):
>         request = aiocoap.Message(code=aiocoap.GET)
>         request_uri = "coap://" + self.servernetloc + "/empty?query=a&query=b"
>         request.set_request_uri(request_uri, set_uri_host=self.set_uri_host)
>         self.assertEqual(request.get_request_uri(), request_uri, "Request URL 
> does not round-trip in request")
>         response = await self.client.request(request).response
>         self.assertEqual(response.get_request_uri(), request_uri, "Request 
> URL does not round-trip in response")
>         self.assertEqual(response.code, aiocoap.CONTENT, "Request URL 
> building failed")
>     
>         request = aiocoap.Message(code=aiocoap.GET)
> >       request.set_request_uri("coap://" + self.servernamealias + "/empty", 
> > set_uri_host=self.set_uri_host)
> E       TypeError: can only concatenate str (not "NoneType") to str
> 
> tests/test_client.py:31: TypeError
> ------------------------------ Captured log call 
> -------------------------------
> DEBUG    coap:tokenmanager.py:209 Sending request - Token: bb8a, Remote: 
> <UDP6EndpointAddress [::1]>
> DEBUG    coap:messagemanager.py:423 Sending message <aiocoap.Message at 
> 0x7fe89639d720: Type.CON GET (MID 5906, token bb8a) remote 
> <UDP6EndpointAddress [::1]>, 2 option(s)>
> DEBUG    coap:messagemanager.py:209 Exchange added, message ID: 5906.
> DEBUG    coap-server:messagemanager.py:83 Incoming message <aiocoap.Message 
> at 0x7fe89639f220: Type.CON GET (MID 5906, token bb8a) remote 
> <UDP6EndpointAddress [::1]:59776 (locally ::1%lo)>, 2 option(s)>
> DEBUG    coap-server:messagemanager.py:175 New unique message received
> DEBUG    coap-server:messagemanager.py:423 Sending message <aiocoap.Message 
> at 0x7fe896704ee0: Type.ACK 2.05 Content (MID 5906, token bb8a) remote 
> <UDP6EndpointAddress [::1]:59776 (locally ::1%lo)>, 1 option(s)>
> DEBUG    coap:messagemanager.py:83 Incoming message <aiocoap.Message at 
> 0x7fe89639fc40: Type.ACK 2.05 Content (MID 5906, token bb8a) remote 
> <UDP6EndpointAddress [::1] (locally ::1%lo)>, 1 option(s)>
> DEBUG    coap:messagemanager.py:224 Exchange removed, message ID: 5906.
> DEBUG    coap:messagemanager.py:332 Received Response: <aiocoap.Message at 
> 0x7fe89639fc40: Type.ACK 2.05 Content (MID 5906, token bb8a) remote 
> <UDP6EndpointAddress [::1] (locally ::1%lo)>, 1 option(s)>
> DEBUG    coap:tokenmanager.py:170 Response <aiocoap.Message at 
> 0x7fe89639fc40: Type.ACK 2.05 Content (MID 5906, token bb8a) remote 
> <UDP6EndpointAddress [::1] (locally ::1%lo)>, 1 option(s)> matched to request 
> <PlumbingRequest at 0x7fe89639d960 around <aiocoap.Message at 0x7fe89639d720: 
> Type.CON GET (MID 5906, token bb8a) remote <UDP6EndpointAddress [::1]>, 2 
> option(s)> with 2 callbacks>
> DEBUG    coap-server:protocol.py:317 Shutting down context
> DEBUG    coap:protocol.py:317 Shutting down context
> ________________________ TestReverseProxy.test_options 
> _________________________
> 
> self = <tests.test_reverseproxy.TestReverseProxy testMethod=test_options>
> 
>     def setUp(self):
>         super(WithReverseProxy, self).setUp()
>     
>         self.reverseproxy = aiocoap.cli.proxy.Main(
> >               ["--reverse", "--bind", hostportjoin(self.proxyhost, 
> > self.proxyport), "--namebased", "%s:%s"%(self.name_for_real_server, 
> > self.servernetloc), "--pathbased", 
> > "%s:%s"%("/".join(self.path_for_real_server), self.servernetloc)],
>                 loop=self.loop,
>                 )
> 
> tests/test_reverseproxy.py:23: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> host = None, port = 56839
> 
>     def hostportjoin(host, port=None):
>         """Join a host and optionally port into a hostinfo-style host:port
>         string
>     
>         >>> hostportjoin('example.com')
>         'example.com'
>         >>> hostportjoin('example.com', 1234)
>         'example.com:1234'
>         >>> hostportjoin('127.0.0.1', 1234)
>         '127.0.0.1:1234'
>     
>         This is lax with respect to whether host is an IPv6 literal in 
> brackets or
>         not, and accepts either form; IP-future literals that do not contain a
>         colon must be already presented in their bracketed form:
>     
>         >>> hostportjoin('2001:db8::1')
>         '[2001:db8::1]'
>         >>> hostportjoin('2001:db8::1', 1234)
>         '[2001:db8::1]:1234'
>         >>> hostportjoin('[2001:db8::1]', 1234)
>         '[2001:db8::1]:1234'
>         """
> >       if ':' in host and not (host.startswith('[') and host.endswith(']')):
> E       TypeError: argument of type 'NoneType' is not iterable
> 
> aiocoap/util/__init__.py:86: TypeError
> ________________________ TestReverseProxy.test_routing 
> _________________________
> 
> self = <tests.test_reverseproxy.TestReverseProxy testMethod=test_routing>
> 
>     def setUp(self):
>         super(WithReverseProxy, self).setUp()
>     
>         self.reverseproxy = aiocoap.cli.proxy.Main(
> >               ["--reverse", "--bind", hostportjoin(self.proxyhost, 
> > self.proxyport), "--namebased", "%s:%s"%(self.name_for_real_server, 
> > self.servernetloc), "--pathbased", 
> > "%s:%s"%("/".join(self.path_for_real_server), self.servernetloc)],
>                 loop=self.loop,
>                 )
> 
> tests/test_reverseproxy.py:23: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> host = None, port = 56839
> 
>     def hostportjoin(host, port=None):
>         """Join a host and optionally port into a hostinfo-style host:port
>         string
>     
>         >>> hostportjoin('example.com')
>         'example.com'
>         >>> hostportjoin('example.com', 1234)
>         'example.com:1234'
>         >>> hostportjoin('127.0.0.1', 1234)
>         '127.0.0.1:1234'
>     
>         This is lax with respect to whether host is an IPv6 literal in 
> brackets or
>         not, and accepts either form; IP-future literals that do not contain a
>         colon must be already presented in their bracketed form:
>     
>         >>> hostportjoin('2001:db8::1')
>         '[2001:db8::1]'
>         >>> hostportjoin('2001:db8::1', 1234)
>         '[2001:db8::1]:1234'
>         >>> hostportjoin('[2001:db8::1]', 1234)
>         '[2001:db8::1]:1234'
>         """
> >       if ':' in host and not (host.startswith('[') and host.endswith(']')):
> E       TypeError: argument of type 'NoneType' is not iterable
> 
> aiocoap/util/__init__.py:86: TypeError
> _______________________________ TestTLS.test_tls 
> _______________________________
> 
> self = <aiocoap.transports.tls.TLSClient object at 0x7fe89639f550>
> message = <aiocoap.Message at 0x7fe89639f0d0: no mtype, GET (no MID, empty 
> token) remote UndecidedRemote(scheme='coaps+tcp', hostinfo='None'), 1 
> option(s)>
> 
>     async def _spawn_protocol(self, message):
>         if message.unresolved_remote is None:
>             host = message.opt.uri_host
>             port = message.opt.uri_port or self._default_port
>             if host is None:
>                 raise ValueError("No location found to send message to 
> (neither in .opt.uri_host nor in .remote)")
>         else:
>             host, port = util.hostportsplit(message.unresolved_remote)
>             port = port or self._default_port
>     
>         if (host, port) in self._pool:
>             return self._pool[(host, port)]
>     
>         try:
> >           _, protocol = await self.loop.create_connection(
>                     lambda: TcpConnection(self, self.log, self.loop,
>                         is_server=False),
>                     host, port,
>                     ssl=self._ssl_context_factory(message.unresolved_remote))
> 
> aiocoap/transports/tcp.py:343: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> self = <_UnixSelectorEventLoop running=False closed=False debug=False>
> protocol_factory = <function TCPClient._spawn_protocol.<locals>.<lambda> at 
> 0x7fe8959df1c0>
> host = 'none', port = 5684
> 
>     async def create_connection(
>             self, protocol_factory, host=None, port=None,
>             *, ssl=None, family=0,
>             proto=0, flags=0, sock=None,
>             local_addr=None, server_hostname=None,
>             ssl_handshake_timeout=None,
>             happy_eyeballs_delay=None, interleave=None):
>         """Connect to a TCP server.
>     
>         Create a streaming transport connection to a given internet host and
>         port: socket family AF_INET or socket.AF_INET6 depending on host (or
>         family if specified), socket type SOCK_STREAM. protocol_factory must 
> be
>         a callable returning a protocol instance.
>     
>         This method is a coroutine which will try to establish the connection
>         in the background.  When successful, the coroutine returns a
>         (transport, protocol) pair.
>         """
>         if server_hostname is not None and not ssl:
>             raise ValueError('server_hostname is only meaningful with ssl')
>     
>         if server_hostname is None and ssl:
>             # Use host as default for server_hostname.  It is an error
>             # if host is empty or not set, e.g. when an
>             # already-connected socket was passed or when only a port
>             # is given.  To avoid this error, you can pass
>             # server_hostname='' -- this will bypass the hostname
>             # check.  (This also means that if host is a numeric
>             # IP/IPv6 address, we will attempt to verify that exact
>             # address; this will probably fail, but it is possible to
>             # create a certificate for a specific IP address, so we
>             # don't judge it here.)
>             if not host:
>                 raise ValueError('You must set server_hostname '
>                                  'when using ssl without a host')
>             server_hostname = host
>     
>         if ssl_handshake_timeout is not None and not ssl:
>             raise ValueError(
>                 'ssl_handshake_timeout is only meaningful with ssl')
>     
>         if sock is not None:
>             _check_ssl_socket(sock)
>     
>         if happy_eyeballs_delay is not None and interleave is None:
>             # If using happy eyeballs, default to interleave addresses by 
> family
>             interleave = 1
>     
>         if host is not None or port is not None:
>             if sock is not None:
>                 raise ValueError(
>                     'host/port and sock can not be specified at the same 
> time')
>     
> >           infos = await self._ensure_resolved(
>                 (host, port), family=family,
>                 type=socket.SOCK_STREAM, proto=proto, flags=flags, loop=self)
> 
> /usr/lib/python3.10/asyncio/base_events.py:1025: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> self = <_UnixSelectorEventLoop running=False closed=False debug=False>
> address = ('none', 5684)
> 
>     async def _ensure_resolved(self, address, *,
>                                family=0, type=socket.SOCK_STREAM,
>                                proto=0, flags=0, loop):
>         host, port = address[:2]
>         info = _ipaddr_info(host, port, family, type, proto, *address[2:])
>         if info is not None:
>             # "host" is already a resolved IP.
>             return [info]
>         else:
> >           return await loop.getaddrinfo(host, port, family=family, 
> > type=type,
>                                           proto=proto, flags=flags)
> 
> /usr/lib/python3.10/asyncio/base_events.py:1404: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> self = <_UnixSelectorEventLoop running=False closed=False debug=False>
> host = 'none', port = 5684
> 
>     async def getaddrinfo(self, host, port, *,
>                           family=0, type=0, proto=0, flags=0):
>         if self._debug:
>             getaddr_func = self._getaddrinfo_debug
>         else:
>             getaddr_func = socket.getaddrinfo
>     
> >       return await self.run_in_executor(
>             None, getaddr_func, host, port, family, type, proto, flags)
> 
> /usr/lib/python3.10/asyncio/base_events.py:860: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> self = None
> 
>     def run(self):
>         if not self.future.set_running_or_notify_cancel():
>             return
>     
>         try:
> >           result = self.fn(*self.args, **self.kwargs)
> 
> /usr/lib/python3.10/concurrent/futures/thread.py:58: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> host = 'none', port = 5684, family = 0, type = <SocketKind.SOCK_STREAM: 1>
> proto = 0, flags = 0
> 
>     def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0):
>         """Resolve host and port into list of address info entries.
>     
>         Translate the host/port argument into a sequence of 5-tuples that 
> contain
>         all the necessary arguments for creating a socket connected to that 
> service.
>         host is a domain name, a string representation of an IPv4/v6 address 
> or
>         None. port is a string service name such as 'http', a numeric port 
> number or
>         None. By passing None as the value of host and port, you can pass 
> NULL to
>         the underlying C API.
>     
>         The family, type and proto arguments can be optionally specified in 
> order to
>         narrow the list of addresses returned. Passing zero as a value for 
> each of
>         these arguments selects the full range of results.
>         """
>         # We override this function since we want to translate the numeric 
> family
>         # and socket type values to enum constants.
>         addrlist = []
> >       for res in _socket.getaddrinfo(host, port, family, type, proto, 
> > flags):
> E       socket.gaierror: [Errno -2] Name or service not known
> 
> /usr/lib/python3.10/socket.py:955: gaierror
> 
> During handling of the above exception, another exception occurred:
> 
> self = <tests.test_tls.TestTLS testMethod=test_tls>
> function = <function TestTLS.test_tls at 0x7fe8964e3a30>, args = ()
> startcount = 0
> 
>     def wrapped(self, *args, function=function):
>         # assertLogs does not work as assertDoesntLog anyway without major
>         # tricking, and it interacts badly with WithLogMonitoring as they both
>         # try to change the root logger's level.
>     
>         startcount = len(self.handler.list)
> >       result = function(self, *args)
> 
> tests/fixtures.py:75: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> tests/fixtures.py:57: in wrapper
>     return self.loop.run_until_complete(f)
> /usr/lib/python3.10/asyncio/base_events.py:646: in run_until_complete
>     return future.result()
> /usr/lib/python3.10/asyncio/tasks.py:571: in _wait_for_one
>     return f.result()  # May raise f.exception().
> tests/test_tls.py:84: in test_tls
>     response = await self.client.request(request).response_raising
> aiocoap/protocol.py:643: in response_raising
>     response = await self.response
> aiocoap/protocol.py:842: in _run_outer
>     await cls._run(app_request, response, weak_observation, protocol, log)
> aiocoap/protocol.py:867: in _run
>     await protocol.find_remote_and_interface(app_request)
> aiocoap/protocol.py:340: in find_remote_and_interface
>     if await ri.fill_or_recognize_remote(message):
> aiocoap/tokenmanager.py:194: in fill_or_recognize_remote
>     return await self.token_interface.fill_or_recognize_remote(message)
> aiocoap/transports/tcp.py:398: in fill_or_recognize_remote
>     message.remote = await self._spawn_protocol(message)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> self = <aiocoap.transports.tls.TLSClient object at 0x7fe89639f550>
> message = <aiocoap.Message at 0x7fe89639f0d0: no mtype, GET (no MID, empty 
> token) remote UndecidedRemote(scheme='coaps+tcp', hostinfo='None'), 1 
> option(s)>
> 
>     async def _spawn_protocol(self, message):
>         if message.unresolved_remote is None:
>             host = message.opt.uri_host
>             port = message.opt.uri_port or self._default_port
>             if host is None:
>                 raise ValueError("No location found to send message to 
> (neither in .opt.uri_host nor in .remote)")
>         else:
>             host, port = util.hostportsplit(message.unresolved_remote)
>             port = port or self._default_port
>     
>         if (host, port) in self._pool:
>             return self._pool[(host, port)]
>     
>         try:
>             _, protocol = await self.loop.create_connection(
>                     lambda: TcpConnection(self, self.log, self.loop,
>                         is_server=False),
>                     host, port,
>                     ssl=self._ssl_context_factory(message.unresolved_remote))
>         except socket.gaierror:
> >           raise error.ResolutionError("No address information found for 
> > requests to %r" % host)
> E           aiocoap.error.ResolutionError: No address information found for 
> requests to 'none'
> 
> aiocoap/transports/tcp.py:349: ResolutionError
> ------------------------------ Captured log call 
> -------------------------------
> DEBUG    coap-server:protocol.py:317 Shutting down context
> DEBUG    coap:protocol.py:317 Shutting down context
> =============================== warnings summary 
> ===============================
> aiocoap/resource.py:266
>   
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/aiocoap/resource.py:266:
>  DeprecationWarning: invalid escape sequence '\ '
>     """Class that indicates that a resource promises to parse the uri_path
> 
> tests/test_server.py:116
>   
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/tests/test_server.py:116:
>  PytestCollectionWarning: cannot collect test class 'TestingSite' because it 
> has a __init__ constructor (from: 
> .pybuild/cpython3_3.10_aiocoap/build/tests/test_blockwise.py)
>     class TestingSite(aiocoap.resource.Site):
> 
> tests/test_server.py:116
>   
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/tests/test_server.py:116:
>  PytestCollectionWarning: cannot collect test class 'TestingSite' because it 
> has a __init__ constructor (from: 
> .pybuild/cpython3_3.10_aiocoap/build/tests/test_server.py)
>     class TestingSite(aiocoap.resource.Site):
> 
> .pybuild/cpython3_3.10_aiocoap/build/tests/test_blockwise.py: 2 warnings
> .pybuild/cpython3_3.10_aiocoap/build/tests/test_client.py: 7 warnings
> .pybuild/cpython3_3.10_aiocoap/build/tests/test_noncoap_client.py: 7 warnings
> .pybuild/cpython3_3.10_aiocoap/build/tests/test_noncoap_tcp_client.py: 11 
> warnings
> .pybuild/cpython3_3.10_aiocoap/build/tests/test_observe.py: 12 warnings
> .pybuild/cpython3_3.10_aiocoap/build/tests/test_reverseproxy.py: 2 warnings
> .pybuild/cpython3_3.10_aiocoap/build/tests/test_server.py: 24 warnings
> .pybuild/cpython3_3.10_aiocoap/build/tests/test_tls.py: 1 warning
>   
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/tests/fixtures.py:183: 
> DeprecationWarning: There is no current event loop
>     self.loop = asyncio.get_event_loop()
> 
> .pybuild/cpython3_3.10_aiocoap/build/tests/test_blockwise.py: 2 warnings
> .pybuild/cpython3_3.10_aiocoap/build/tests/test_client.py: 6 warnings
> .pybuild/cpython3_3.10_aiocoap/build/tests/test_noncoap_client.py: 7 warnings
> .pybuild/cpython3_3.10_aiocoap/build/tests/test_noncoap_tcp_client.py: 11 
> warnings
> .pybuild/cpython3_3.10_aiocoap/build/tests/test_observe.py: 12 warnings
> .pybuild/cpython3_3.10_aiocoap/build/tests/test_server.py: 34 warnings
> .pybuild/cpython3_3.10_aiocoap/build/tests/test_tls.py: 1 warning
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build/tests/fixtures.py:54: 
> DeprecationWarning: There is no current event loop
>     for f in asyncio.as_completed([task],
> 
> -- Docs: https://docs.pytest.org/en/stable/warnings.html
> =========================== short test summary info 
> ============================
> FAILED tests/test_client.py::TestClientWithSetHost::test_uri_parser - 
> TypeErr...
> FAILED tests/test_client.py::TestClientWithHostlessMessages::test_uri_parser
> FAILED tests/test_reverseproxy.py::TestReverseProxy::test_options - 
> TypeError...
> FAILED tests/test_reverseproxy.py::TestReverseProxy::test_routing - 
> TypeError...
> FAILED tests/test_tls.py::TestTLS::test_tls - aiocoap.error.ResolutionError: 
> ...
> ERROR tests/test_client.py::TestClientWithSetHost::test_uri_parser - 
> Assertio...
> ERROR tests/test_client.py::TestClientWithHostlessMessages::test_uri_parser
> ERROR tests/test_tls.py::TestTLS::test_tls - AssertionError: False is not 
> tru...
> = 5 failed, 75 passed, 125 skipped, 5 deselected, 1 xfailed, 142 warnings, 3 
> errors in 17.70s =
> E: pybuild pybuild:369: test: plugin distutils failed with: exit code=1: cd 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_aiocoap/build; python3.10 -m pytest 
> -k 'not test_commandline'
> dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p "3.9 
> 3.10" returned exit code 13


The full build log is available from:
http://qa-logs.debian.net/2022/06/24/aiocoap_0.4.3-0.1_unstable.log

All bugs filed during this archive rebuild are listed at:
https://bugs.debian.org/cgi-bin/pkgreport.cgi?tag=ftbfs-20220624;users=lu...@debian.org
or:
https://udd.debian.org/bugs/?release=na&merged=ign&fnewerval=7&flastmodval=7&fusertag=only&fusertagtag=ftbfs-20220624&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 marking 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.

Reply via email to