Package: src:python-rabbitair
Version: 0.0.8-1
Severity: serious
Tags: ftbfs

Dear maintainer:

During a rebuild of all packages in unstable, your package failed to build:

--------------------------------------------------------------------------------
[...]
 debian/rules binary
dh binary --buildsystem=pybuild
   dh_update_autotools_config -O--buildsystem=pybuild
   dh_autoreconf -O--buildsystem=pybuild
   dh_auto_configure -O--buildsystem=pybuild
   dh_auto_build -O--buildsystem=pybuild
I: pybuild plugin_pyproject:129: Building wheel for python3.12 with "build" 
module
I: pybuild base:311: python3.12 -m build --skip-dependency-check --no-isolation --wheel 
--outdir /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_python-rabbitair
* Building wheel...
running bdist_wheel
running build
running build_py
creating build
creating build/lib
creating build/lib/rabbitair
copying rabbitair/udp.py -> build/lib/rabbitair
copying rabbitair/tcp.py -> build/lib/rabbitair
copying rabbitair/response.py -> build/lib/rabbitair
copying rabbitair/exceptions.py -> build/lib/rabbitair
copying rabbitair/__init__.py -> build/lib/rabbitair
copying rabbitair/client.py -> build/lib/rabbitair
copying rabbitair/py.typed -> build/lib/rabbitair
installing to build/bdist.linux-x86_64/wheel
running install
running install_lib
creating build/bdist.linux-x86_64
creating build/bdist.linux-x86_64/wheel
creating build/bdist.linux-x86_64/wheel/rabbitair
copying build/lib/rabbitair/udp.py -> build/bdist.linux-x86_64/wheel/./rabbitair
copying build/lib/rabbitair/tcp.py -> build/bdist.linux-x86_64/wheel/./rabbitair
copying build/lib/rabbitair/response.py -> 
build/bdist.linux-x86_64/wheel/./rabbitair
copying build/lib/rabbitair/exceptions.py -> 
build/bdist.linux-x86_64/wheel/./rabbitair
copying build/lib/rabbitair/__init__.py -> 
build/bdist.linux-x86_64/wheel/./rabbitair
copying build/lib/rabbitair/py.typed -> 
build/bdist.linux-x86_64/wheel/./rabbitair
copying build/lib/rabbitair/client.py -> 
build/bdist.linux-x86_64/wheel/./rabbitair
running install_egg_info
running egg_info
creating python_rabbitair.egg-info
writing python_rabbitair.egg-info/PKG-INFO
writing dependency_links to python_rabbitair.egg-info/dependency_links.txt
writing requirements to python_rabbitair.egg-info/requires.txt
writing top-level names to python_rabbitair.egg-info/top_level.txt
writing manifest file 'python_rabbitair.egg-info/SOURCES.txt'
reading manifest file 'python_rabbitair.egg-info/SOURCES.txt'
adding license file 'LICENSE'
writing manifest file 'python_rabbitair.egg-info/SOURCES.txt'
Copying python_rabbitair.egg-info to 
build/bdist.linux-x86_64/wheel/./python_rabbitair-0.0.8.egg-info
running install_scripts
creating build/bdist.linux-x86_64/wheel/python_rabbitair-0.0.8.dist-info/WHEEL
creating 
'/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_python-rabbitair/.tmp-9z7_ahbx/python_rabbitair-0.0.8-py3-none-any.whl'
 and adding 'build/bdist.linux-x86_64/wheel' to it
adding 'rabbitair/__init__.py'
adding 'rabbitair/client.py'
adding 'rabbitair/exceptions.py'
adding 'rabbitair/py.typed'
adding 'rabbitair/response.py'
adding 'rabbitair/tcp.py'
adding 'rabbitair/udp.py'
adding 'python_rabbitair-0.0.8.dist-info/LICENSE'
adding 'python_rabbitair-0.0.8.dist-info/METADATA'
adding 'python_rabbitair-0.0.8.dist-info/WHEEL'
adding 'python_rabbitair-0.0.8.dist-info/top_level.txt'
adding 'python_rabbitair-0.0.8.dist-info/RECORD'
removing build/bdist.linux-x86_64/wheel
Successfully built python_rabbitair-0.0.8-py3-none-any.whl
I: pybuild plugin_pyproject:144: Unpacking wheel built for python3.12 with 
"installer" module
   dh_auto_test -O--buildsystem=pybuild
I: pybuild base:311: cd 
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_python-rabbitair/build; python3.12 -m 
pytest tests
============================= test session starts ==============================
platform linux -- Python 3.12.5, pytest-8.3.2, pluggy-1.5.0
rootdir: /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_python-rabbitair/build
configfile: pytest.ini
plugins: typeguard-4.3.0, asyncio-0.20.3
asyncio: mode=Mode.AUTO
collected 18 items

tests/test_client.py .......FFFFFFFFF                                    [ 88%]
tests/test_response.py ..                                                [100%]

=================================== FAILURES ===================================
________________________________ test_zeroconf _________________________________

    async def test_zeroconf() -> None:
        """Test mDNS resolver."""
        info = Mock()
        info.parsed_addresses.return_value = [TEST_IP]
async def async_get_service_info(type: str, name: str) -> Mock:
            return info
zc = Mock()
        zc.async_get_service_info = async_get_service_info
        with patch(
            "rabbitair.Client._command", new_callable=mock_command, 
model=Model.MinusA2
        ):
            with UdpClient("test.local", TEST_TOKEN, zeroconf=zc) as client:
              await client.get_state()

tests/test_client.py:227:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
rabbitair/client.py:190: in get_state
    response = await self.command({"cmd": 4})
rabbitair/client.py:170: in command
    await self._start()
rabbitair/client.py:94: in _start
    await loop.sock_connect(self._sock, (host, self._port))
/usr/lib/python3.12/asyncio/selector_events.py:651: in sock_connect
    return await fut
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <_UnixSelectorEventLoop running=False closed=False debug=False>
fut = None, sock = <socket.socket [closed] fd=-1, family=2, type=2, proto=0>
address = ('192.0.2.1', 9009)

    def _sock_connect(self, fut, sock, address):
        fd = sock.fileno()
        try:
          sock.connect(address)
E           OSError: [Errno 101] Network is unreachable

/usr/lib/python3.12/asyncio/selector_events.py:659: OSError
________________________________ test_state_a2 _________________________________

    async def test_state_a2() -> None:
        """Test state response for MinusA2."""
        with patch(
            "rabbitair.Client._command", new_callable=mock_command, 
model=Model.MinusA2
        ):
            with UdpClient(TEST_IP, TEST_TOKEN) as client:
              state = await client.get_state()

tests/test_client.py:238:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
rabbitair/client.py:190: in get_state
    response = await self.command({"cmd": 4})
rabbitair/client.py:170: in command
    await self._start()
rabbitair/client.py:94: in _start
    await loop.sock_connect(self._sock, (host, self._port))
/usr/lib/python3.12/asyncio/selector_events.py:651: in sock_connect
    return await fut
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <_UnixSelectorEventLoop running=False closed=False debug=False>
fut = None, sock = <socket.socket [closed] fd=-1, family=2, type=2, proto=0>
address = ('192.0.2.1', 9009)

    def _sock_connect(self, fut, sock, address):
        fd = sock.fileno()
        try:
          sock.connect(address)
E           OSError: [Errno 101] Network is unreachable

/usr/lib/python3.12/asyncio/selector_events.py:659: OSError
________________________________ test_state_a3 _________________________________

    async def test_state_a3() -> None:
        """Test state response for A3."""
        with patch("rabbitair.Client._command", new_callable=mock_command, 
model=Model.A3):
            with UdpClient(TEST_IP, TEST_TOKEN) as client:
              state = await client.get_state()

tests/test_client.py:281:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
rabbitair/client.py:190: in get_state
    response = await self.command({"cmd": 4})
rabbitair/client.py:170: in command
    await self._start()
rabbitair/client.py:94: in _start
    await loop.sock_connect(self._sock, (host, self._port))
/usr/lib/python3.12/asyncio/selector_events.py:651: in sock_connect
    return await fut
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <_UnixSelectorEventLoop running=False closed=False debug=False>
fut = None, sock = <socket.socket [closed] fd=-1, family=2, type=2, proto=0>
address = ('192.0.2.1', 9009)

    def _sock_connect(self, fut, sock, address):
        fd = sock.fileno()
        try:
          sock.connect(address)
E           OSError: [Errno 101] Network is unreachable

/usr/lib/python3.12/asyncio/selector_events.py:659: OSError
________________________ test_info[Model.MinusA2-None] _________________________

model = <Model.MinusA2: 1>, fv = None

    @pytest.mark.parametrize("model,fv", [(Model.MinusA2, None), (Model.A3, 
"1.0.0.4")])
    async def test_info(model: Model, fv: str) -> None:
        """Test info response."""
        with patch("rabbitair.Client._command", new_callable=mock_command, 
model=model):
            with UdpClient(TEST_IP, TEST_TOKEN) as client:
              info = await client.get_info()

tests/test_client.py:325:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
rabbitair/client.py:275: in get_info
    response = await self.command({"cmd": 255})
rabbitair/client.py:170: in command
    await self._start()
rabbitair/client.py:94: in _start
    await loop.sock_connect(self._sock, (host, self._port))
/usr/lib/python3.12/asyncio/selector_events.py:651: in sock_connect
    return await fut
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <_UnixSelectorEventLoop running=False closed=False debug=False>
fut = None, sock = <socket.socket [closed] fd=-1, family=2, type=2, proto=0>
address = ('192.0.2.1', 9009)

    def _sock_connect(self, fut, sock, address):
        fd = sock.fileno()
        try:
          sock.connect(address)
E           OSError: [Errno 101] Network is unreachable

/usr/lib/python3.12/asyncio/selector_events.py:659: OSError
_________________________ test_info[Model.A3-1.0.0.4] __________________________

model = <Model.A3: 3>, fv = '1.0.0.4'

    @pytest.mark.parametrize("model,fv", [(Model.MinusA2, None), (Model.A3, 
"1.0.0.4")])
    async def test_info(model: Model, fv: str) -> None:
        """Test info response."""
        with patch("rabbitair.Client._command", new_callable=mock_command, 
model=model):
            with UdpClient(TEST_IP, TEST_TOKEN) as client:
              info = await client.get_info()

tests/test_client.py:325:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
rabbitair/client.py:275: in get_info
    response = await self.command({"cmd": 255})
rabbitair/client.py:170: in command
    await self._start()
rabbitair/client.py:94: in _start
    await loop.sock_connect(self._sock, (host, self._port))
/usr/lib/python3.12/asyncio/selector_events.py:651: in sock_connect
    return await fut
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <_UnixSelectorEventLoop running=False closed=False debug=False>
fut = None, sock = <socket.socket [closed] fd=-1, family=2, type=2, proto=0>
address = ('192.0.2.1', 9009)

    def _sock_connect(self, fut, sock, address):
        fd = sock.fileno()
        try:
          sock.connect(address)
E           OSError: [Errno 101] Network is unreachable

/usr/lib/python3.12/asyncio/selector_events.py:659: OSError
_______________________________ test_no_response _______________________________

    async def test_no_response() -> None:
        """Test no response."""
        with patch("rabbitair.Client._command", 
side_effect=asyncio.TimeoutError):
            with UdpClient(TEST_IP, TEST_TOKEN) as client:
                with pytest.raises(asyncio.TimeoutError):
                  await client.get_state()

tests/test_client.py:350:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
rabbitair/client.py:190: in get_state
    response = await self.command({"cmd": 4})
rabbitair/client.py:170: in command
    await self._start()
rabbitair/client.py:94: in _start
    await loop.sock_connect(self._sock, (host, self._port))
/usr/lib/python3.12/asyncio/selector_events.py:651: in sock_connect
    return await fut
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <_UnixSelectorEventLoop running=False closed=False debug=False>
fut = None, sock = <socket.socket [closed] fd=-1, family=2, type=2, proto=0>
address = ('192.0.2.1', 9009)

    def _sock_connect(self, fut, sock, address):
        fd = sock.fileno()
        try:
          sock.connect(address)
E           OSError: [Errno 101] Network is unreachable

/usr/lib/python3.12/asyncio/selector_events.py:659: OSError
_____________________________ test_protocol_error ______________________________

    async def test_protocol_error() -> None:
        """Test protocol error response."""
        with patch("rabbitair.Client._command", side_effect=ProtocolError):
            with UdpClient(TEST_IP, TEST_TOKEN) as client:
                with pytest.raises(ProtocolError):
                  await client.get_state()

tests/test_client.py:358:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
rabbitair/client.py:190: in get_state
    response = await self.command({"cmd": 4})
rabbitair/client.py:170: in command
    await self._start()
rabbitair/client.py:94: in _start
    await loop.sock_connect(self._sock, (host, self._port))
/usr/lib/python3.12/asyncio/selector_events.py:651: in sock_connect
    return await fut
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <_UnixSelectorEventLoop running=False closed=False debug=False>
fut = None, sock = <socket.socket [closed] fd=-1, family=2, type=2, proto=0>
address = ('192.0.2.1', 9009)

    def _sock_connect(self, fut, sock, address):
        fd = sock.fileno()
        try:
          sock.connect(address)
E           OSError: [Errno 101] Network is unreachable

/usr/lib/python3.12/asyncio/selector_events.py:659: OSError
___________________________ test_sequential_requests ___________________________

    async def test_sequential_requests() -> None:
        """Test sequential requests."""
        with patch(
            "rabbitair.Client._command", new_callable=mock_command, 
model=Model.MinusA2
        ):
            with UdpClient(TEST_IP, TEST_TOKEN) as client:
              await client.get_state()

tests/test_client.py:367:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
rabbitair/client.py:190: in get_state
    response = await self.command({"cmd": 4})
rabbitair/client.py:170: in command
    await self._start()
rabbitair/client.py:94: in _start
    await loop.sock_connect(self._sock, (host, self._port))
/usr/lib/python3.12/asyncio/selector_events.py:651: in sock_connect
    return await fut
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <_UnixSelectorEventLoop running=False closed=False debug=False>
fut = None, sock = <socket.socket [closed] fd=-1, family=2, type=2, proto=0>
address = ('192.0.2.1', 9009)

    def _sock_connect(self, fut, sock, address):
        fd = sock.fileno()
        try:
          sock.connect(address)
E           OSError: [Errno 101] Network is unreachable

/usr/lib/python3.12/asyncio/selector_events.py:659: OSError
________________________________ test_set_state ________________________________

    async def test_set_state() -> None:
        """Test set state."""
        with patch("rabbitair.Client._command", new_callable=mock_command, 
model=Model.A3):
            with UdpClient(TEST_IP, TEST_TOKEN) as client:
              await client.set_state(
                    power=True,
                    mode=Mode.Manual,
                    speed=Speed.Medium,
                    sensitivity=Sensitivity.Medium,
                    ionizer=True,
                    moodlight=Moodlight.On,
                    filter_cleaning=False,
                    filter_replacement=False,
                    filter_life=525600,
                    filter_timer=0,
                    lights=Lights.Off,
                    color=[31, 0, 20, 0, 22, 40, 22, 30, 6],
                    light_sensor_ctl=True,
                    filter_ctl=True,
                    buzzer=True,
                    child_lock=False,
                    timer_mode=TimerMode.Schedule,
                    timer=60,
                    schedule="A012345A012345A012345A01",
                )

tests/test_client.py:375:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
rabbitair/client.py:271: in set_state
    await self.command({"cmd": 4, "data": data})
rabbitair/client.py:170: in command
    await self._start()
rabbitair/client.py:94: in _start
    await loop.sock_connect(self._sock, (host, self._port))
/usr/lib/python3.12/asyncio/selector_events.py:651: in sock_connect
    return await fut
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <_UnixSelectorEventLoop running=False closed=False debug=False>
fut = None, sock = <socket.socket [closed] fd=-1, family=2, type=2, proto=0>
address = ('192.0.2.1', 9009)

    def _sock_connect(self, fut, sock, address):
        fd = sock.fileno()
        try:
          sock.connect(address)
E           OSError: [Errno 101] Network is unreachable

/usr/lib/python3.12/asyncio/selector_events.py:659: OSError
=========================== short test summary info ============================
FAILED tests/test_client.py::test_zeroconf - OSError: [Errno 101] Network is ...
FAILED tests/test_client.py::test_state_a2 - OSError: [Errno 101] Network is ...
FAILED tests/test_client.py::test_state_a3 - OSError: [Errno 101] Network is ...
FAILED tests/test_client.py::test_info[Model.MinusA2-None] - OSError: [Errno ...
FAILED tests/test_client.py::test_info[Model.A3-1.0.0.4] - OSError: [Errno 10...
FAILED tests/test_client.py::test_no_response - OSError: [Errno 101] Network ...
FAILED tests/test_client.py::test_protocol_error - OSError: [Errno 101] Netwo...
FAILED tests/test_client.py::test_sequential_requests - OSError: [Errno 101] ...
FAILED tests/test_client.py::test_set_state - OSError: [Errno 101] Network is...
========================= 9 failed, 9 passed in 0.36s ==========================
E: pybuild pybuild:389: test: plugin pyproject failed with: exit code=1: cd 
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_python-rabbitair/build; python3.12 -m 
pytest tests
dh_auto_test: error: pybuild --test -i python{version} -p 3.12 returned exit 
code 13
make: *** [debian/rules:7: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2
--------------------------------------------------------------------------------

The above is just how the build ends and not necessarily the most relevant part.
If required, the full build log is available here:

https://people.debian.org/~sanvila/build-logs/202408/

This may be reproduced easily by building with sbuild --chroot-mode=unshare.

Thanks.

Reply via email to