Your message dated Wed, 09 Oct 2024 15:49:25 +0000
with message-id <e1syywh-00avuy...@fasolo.debian.org>
and subject line Bug#1013528: fixed in aiocoap 0.4.11-1
has caused the Debian Bug report #1013528,
regarding aiocoap: FTBFS: dh_auto_test: error: pybuild --test --test-pytest -i 
python{version} -p "3.9 3.10" returned exit code 13
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact ow...@bugs.debian.org
immediately.)


-- 
1013528: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1013528
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems
--- Begin Message ---
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.

--- End Message ---
--- Begin Message ---
Source: aiocoap
Source-Version: 0.4.11-1
Done: Mazen Neifer <ma...@debian.org>

We believe that the bug you reported is fixed in the latest version of
aiocoap, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 1013...@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Mazen Neifer <ma...@debian.org> (supplier of updated aiocoap package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmas...@ftp-master.debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

Format: 1.8
Date: Wed, 09 Oct 2024 11:05:33 +0200
Source: aiocoap
Architecture: source
Version: 0.4.11-1
Distribution: unstable
Urgency: medium
Maintainer: Mazen Neifer <ma...@debian.org>
Changed-By: Mazen Neifer <ma...@debian.org>
Closes: 1013528 1079992 1084798
Changes:
 aiocoap (0.4.11-1) unstable; urgency=medium
 .
   * Enabled pbuilder by default when building package.
   * Fixed watch file.
   * New upstream version 0.4.11
   * Updated patches to apply on new upstream sources. Fixed build and CI/CD.
     Removed old patches that are no more needed.
     Disabled running test upon build and deferring them to the test stage.
     Fixed issue on outdated CI/CD configuration file. (Closes: Bug#1013528)
   * Changed maintainer from Augustin Henze to Mazen Neifer.
     This was agreed between both DDs as per Bug#1084798:
     > Hey Mazen, thanks for adopting this package :).
     > Please don't wait for 21 days, feel free to upload it now.
     (Closes: Bug#1084798, Bug#1079992)
Checksums-Sha1:
 1f773ce4c2a10a651ef88589188e8fc7b3704eb0 1486 aiocoap_0.4.11-1.dsc
 ff70771e62f0aa0e11d06c8172d098691cb72ef2 306792 aiocoap_0.4.11.orig.tar.gz
 fe714da919de7d2c780fb7d61e5dc921b9486d02 4892 aiocoap_0.4.11-1.debian.tar.xz
 9ffc60ff106a3356730241ef341fdf3032fe633c 7772 aiocoap_0.4.11-1_amd64.buildinfo
Checksums-Sha256:
 f02635fea01dd5446d71d04ad4dbaaf8ce2f862c63c34a1772f098b8ac5f9d0f 1486 
aiocoap_0.4.11-1.dsc
 3e5f1c1f578e8bcfa5278e1c141e2bc53a08035f423b9b5aa5107ec4b69a816f 306792 
aiocoap_0.4.11.orig.tar.gz
 03406bd360989892f9699c8ad993339a2291252aca02ef296e95a87fba90df1f 4892 
aiocoap_0.4.11-1.debian.tar.xz
 0da8e03f680841410feaa50188c60d9e2c3afbbd26f29d4905e828843f140c85 7772 
aiocoap_0.4.11-1_amd64.buildinfo
Files:
 79e29990f1e6a5063c0ad7e2d6eb0d2d 1486 python optional aiocoap_0.4.11-1.dsc
 1990567e2bda7b4adf19d5f5268a1118 306792 python optional 
aiocoap_0.4.11.orig.tar.gz
 1b7021a30748ea0cdff86e932c4b0e45 4892 python optional 
aiocoap_0.4.11-1.debian.tar.xz
 e12c24bdc6fd3ff6aea028f1caeec2b2 7772 python optional 
aiocoap_0.4.11-1_amd64.buildinfo

-----BEGIN PGP SIGNATURE-----

iIcEAREKAC8WIQS69sZENhB4UNQicQazJVxtVYeNjAUCZwak2xEcbWF6ZW5AZGVi
aWFuLm9yZwAKCRCzJVxtVYeNjJOCAP0Z5O/Sbt9AET7Js5wRyZqs2o0D4kbWUnPg
+2q2L7AtgQD8D9Vg66BKB+dRe/69YoVSN3bgddiopXO5sC1yLtIy2M4=
=AO+R
-----END PGP SIGNATURE-----

Attachment: pgp9NYt9O3MMJ.pgp
Description: PGP signature


--- End Message ---

Reply via email to