Package: src:pyecoforest
Version: 0.4.0-2
Severity: serious
Tags: ftbfs trixie sid

Dear maintainer:

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

--------------------------------------------------------------------------------
[...]
 debian/rules clean
dh clean --buildsystem=pybuild
   debian/rules override_dh_auto_clean
make[1]: Entering directory '/<<PKGBUILDDIR>>'
dh_auto_clean
rm -rf pyecoforest.egg-info/ docs/_build
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
   dh_autoreconf_clean -O--buildsystem=pybuild
   dh_clean -O--buildsystem=pybuild
 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

[... snipped ...]

    httpx_response = await router.async_handler(httpx_request)
/usr/lib/python3/dist-packages/respx/router.py:318: in async_handler
    resolved = await self.aresolve(request)
/usr/lib/python3/dist-packages/respx/router.py:291: in aresolve
    with self.resolver(request) as resolved:
/usr/lib/python3.13/contextlib.py:148: in __exit__
    next(self.gen)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <respx.router.MockRouter object at 0x7f629f6afe00>
request = <Request(b'POST', 'http://127.0.0.1/recepcion_datos_4.cgi')>

    @contextmanager
    def resolver(self, request: httpx.Request) -> Generator[ResolvedRoute, 
None, None]:
        resolved = ResolvedRoute()
    
        try:
            yield resolved
    
            if resolved.route is None:
                # Assert we always get a route match, if check is enabled
                if self._assert_all_mocked:
>                   raise AllMockedAssertionError(f"RESPX: {request!r} not 
> mocked!")
E                   respx.models.AllMockedAssertionError: RESPX: 
<Request(b'POST', 'http://127.0.0.1/recepcion_datos_4.cgi')> not mocked!

/usr/lib/python3/dist-packages/respx/router.py:250: AllMockedAssertionError
_ test_get_errors[side_effect1-EcoforestConnectionError-Timeout occurred while 
connecting to the device.] _

side_effect = TimeoutException('timeout')
expected = <class 'pyecoforest.exceptions.EcoforestConnectionError'>
message = 'Timeout occurred while connecting to the device.'

    @pytest.mark.asyncio
    @respx.mock
    @pytest.mark.parametrize(
        ("side_effect", "expected", "message"),
        [
            (
                httpx.Response(401),
                EcoforestAuthenticationRequired,
                "401",
            ),
            (
                httpx.TimeoutException("timeout"),
                EcoforestConnectionError,
                "Timeout occurred while connecting to the device.",
            ),
            (
                httpx.Response(500),
                EcoforestConnectionError,
                "Error occurred while communicating with device.",
            ),
        ],
    )
    async def test_get_errors(side_effect, expected, message):
        """Get status information with error."""
        target = _get_target()
        respx.post(path=URL_CGI, data={"idOperacion": API_STATUS_OP}).mock(
            side_effect=side_effect
        )
        respx.post(path=URL_CGI, data={"idOperacion": API_STATS_OP}).mock(
            side_effect=side_effect
        )
        respx.post(path=URL_CGI, data={"idOperacion": API_ALARMS_OP}).mock(
            side_effect=side_effect
        )
    
        with pytest.raises(expected) as err:
>           await target.get()

tests/test_api.py:126: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
pyecoforest/api.py:48: in get
    "status": await self._status(),
pyecoforest/api.py:111: in _status
    return await self._request(data={"idOperacion": API_STATUS_OP})
pyecoforest/api.py:79: in _request
    response = await self._client.post(
/usr/lib/python3/dist-packages/httpx/_client.py:1859: in post
    return await self.request(
/usr/lib/python3/dist-packages/httpx/_client.py:1540: in request
    return await self.send(request, auth=auth, 
follow_redirects=follow_redirects)
/usr/lib/python3/dist-packages/httpx/_client.py:1629: in send
    response = await self._send_handling_auth(
/usr/lib/python3/dist-packages/httpx/_client.py:1657: in _send_handling_auth
    response = await self._send_handling_redirects(
/usr/lib/python3/dist-packages/httpx/_client.py:1694: in 
_send_handling_redirects
    response = await self._send_single_request(request)
/usr/lib/python3/dist-packages/httpx/_client.py:1730: in _send_single_request
    response = await transport.handle_async_request(request)
/usr/lib/python3/dist-packages/httpx/_transports/default.py:394: in 
handle_async_request
    resp = await self._pool.handle_async_request(req)
/usr/lib/python3/dist-packages/respx/mocks.py:190: in amock
    response = await cls._send_async_request(
/usr/lib/python3/dist-packages/respx/mocks.py:224: in _send_async_request
    httpx_response = await cls.async_handler(httpx_request)
/usr/lib/python3/dist-packages/respx/mocks.py:136: in async_handler
    raise assertion_error
/usr/lib/python3/dist-packages/respx/mocks.py:129: in async_handler
    httpx_response = await router.async_handler(httpx_request)
/usr/lib/python3/dist-packages/respx/router.py:318: in async_handler
    resolved = await self.aresolve(request)
/usr/lib/python3/dist-packages/respx/router.py:291: in aresolve
    with self.resolver(request) as resolved:
/usr/lib/python3.13/contextlib.py:148: in __exit__
    next(self.gen)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <respx.router.MockRouter object at 0x7f629f6afe00>
request = <Request(b'POST', 'http://127.0.0.1/recepcion_datos_4.cgi')>

    @contextmanager
    def resolver(self, request: httpx.Request) -> Generator[ResolvedRoute, 
None, None]:
        resolved = ResolvedRoute()
    
        try:
            yield resolved
    
            if resolved.route is None:
                # Assert we always get a route match, if check is enabled
                if self._assert_all_mocked:
>                   raise AllMockedAssertionError(f"RESPX: {request!r} not 
> mocked!")
E                   respx.models.AllMockedAssertionError: RESPX: 
<Request(b'POST', 'http://127.0.0.1/recepcion_datos_4.cgi')> not mocked!

/usr/lib/python3/dist-packages/respx/router.py:250: AllMockedAssertionError
_ test_get_errors[side_effect2-EcoforestConnectionError-Error occurred while 
communicating with device.] _

side_effect = <Response [500 Internal Server Error]>
expected = <class 'pyecoforest.exceptions.EcoforestConnectionError'>
message = 'Error occurred while communicating with device.'

    @pytest.mark.asyncio
    @respx.mock
    @pytest.mark.parametrize(
        ("side_effect", "expected", "message"),
        [
            (
                httpx.Response(401),
                EcoforestAuthenticationRequired,
                "401",
            ),
            (
                httpx.TimeoutException("timeout"),
                EcoforestConnectionError,
                "Timeout occurred while connecting to the device.",
            ),
            (
                httpx.Response(500),
                EcoforestConnectionError,
                "Error occurred while communicating with device.",
            ),
        ],
    )
    async def test_get_errors(side_effect, expected, message):
        """Get status information with error."""
        target = _get_target()
        respx.post(path=URL_CGI, data={"idOperacion": API_STATUS_OP}).mock(
            side_effect=side_effect
        )
        respx.post(path=URL_CGI, data={"idOperacion": API_STATS_OP}).mock(
            side_effect=side_effect
        )
        respx.post(path=URL_CGI, data={"idOperacion": API_ALARMS_OP}).mock(
            side_effect=side_effect
        )
    
        with pytest.raises(expected) as err:
>           await target.get()

tests/test_api.py:126: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
pyecoforest/api.py:48: in get
    "status": await self._status(),
pyecoforest/api.py:111: in _status
    return await self._request(data={"idOperacion": API_STATUS_OP})
pyecoforest/api.py:79: in _request
    response = await self._client.post(
/usr/lib/python3/dist-packages/httpx/_client.py:1859: in post
    return await self.request(
/usr/lib/python3/dist-packages/httpx/_client.py:1540: in request
    return await self.send(request, auth=auth, 
follow_redirects=follow_redirects)
/usr/lib/python3/dist-packages/httpx/_client.py:1629: in send
    response = await self._send_handling_auth(
/usr/lib/python3/dist-packages/httpx/_client.py:1657: in _send_handling_auth
    response = await self._send_handling_redirects(
/usr/lib/python3/dist-packages/httpx/_client.py:1694: in 
_send_handling_redirects
    response = await self._send_single_request(request)
/usr/lib/python3/dist-packages/httpx/_client.py:1730: in _send_single_request
    response = await transport.handle_async_request(request)
/usr/lib/python3/dist-packages/httpx/_transports/default.py:394: in 
handle_async_request
    resp = await self._pool.handle_async_request(req)
/usr/lib/python3/dist-packages/respx/mocks.py:190: in amock
    response = await cls._send_async_request(
/usr/lib/python3/dist-packages/respx/mocks.py:224: in _send_async_request
    httpx_response = await cls.async_handler(httpx_request)
/usr/lib/python3/dist-packages/respx/mocks.py:136: in async_handler
    raise assertion_error
/usr/lib/python3/dist-packages/respx/mocks.py:129: in async_handler
    httpx_response = await router.async_handler(httpx_request)
/usr/lib/python3/dist-packages/respx/router.py:318: in async_handler
    resolved = await self.aresolve(request)
/usr/lib/python3/dist-packages/respx/router.py:291: in aresolve
    with self.resolver(request) as resolved:
/usr/lib/python3.13/contextlib.py:148: in __exit__
    next(self.gen)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <respx.router.MockRouter object at 0x7f629f6afe00>
request = <Request(b'POST', 'http://127.0.0.1/recepcion_datos_4.cgi')>

    @contextmanager
    def resolver(self, request: httpx.Request) -> Generator[ResolvedRoute, 
None, None]:
        resolved = ResolvedRoute()
    
        try:
            yield resolved
    
            if resolved.route is None:
                # Assert we always get a route match, if check is enabled
                if self._assert_all_mocked:
>                   raise AllMockedAssertionError(f"RESPX: {request!r} not 
> mocked!")
E                   respx.models.AllMockedAssertionError: RESPX: 
<Request(b'POST', 'http://127.0.0.1/recepcion_datos_4.cgi')> not mocked!

/usr/lib/python3/dist-packages/respx/router.py:250: AllMockedAssertionError
_____________________________ test_set_temperature _____________________________

    @pytest.mark.asyncio
    @respx.mock
    async def test_set_temperature():
        """Set target temperature."""
        target = _get_target()
        respx.post(path=URL_CGI, data={"idOperacion": API_STATUS_OP}).mock(
            return_value=httpx.Response(
                200,
                text=_mutate_fixture(
                    "op-1002-status.txt",
                    [("consigna_temperatura=20.5", 
"consigna_temperatura=23.5")],
                ),
            )
        )
        respx.post(path=URL_CGI, data={"idOperacion": API_STATS_OP}).mock(
            return_value=httpx.Response(200, 
text=_load_fixture("op-1020-stats.txt"))
        )
        respx.post(path=URL_CGI, data={"idOperacion": API_ALARMS_OP}).mock(
            return_value=httpx.Response(200, 
text=_load_fixture("op-1079-alarms.txt"))
        )
        respx.post(
            path=URL_CGI, data={"idOperacion": API_SET_TEMP_OP, "temperatura": 
23.5}
        ).mock(return_value=httpx.Response(200, 
text=_load_fixture("op-1019-set-temp.txt")))
    
>       actual = await target.set_temperature(23.5)

tests/test_api.py:154: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
pyecoforest/api.py:63: in set_temperature
    await self._request(
pyecoforest/api.py:79: in _request
    response = await self._client.post(
/usr/lib/python3/dist-packages/httpx/_client.py:1859: in post
    return await self.request(
/usr/lib/python3/dist-packages/httpx/_client.py:1540: in request
    return await self.send(request, auth=auth, 
follow_redirects=follow_redirects)
/usr/lib/python3/dist-packages/httpx/_client.py:1629: in send
    response = await self._send_handling_auth(
/usr/lib/python3/dist-packages/httpx/_client.py:1657: in _send_handling_auth
    response = await self._send_handling_redirects(
/usr/lib/python3/dist-packages/httpx/_client.py:1694: in 
_send_handling_redirects
    response = await self._send_single_request(request)
/usr/lib/python3/dist-packages/httpx/_client.py:1730: in _send_single_request
    response = await transport.handle_async_request(request)
/usr/lib/python3/dist-packages/httpx/_transports/default.py:394: in 
handle_async_request
    resp = await self._pool.handle_async_request(req)
/usr/lib/python3/dist-packages/respx/mocks.py:190: in amock
    response = await cls._send_async_request(
/usr/lib/python3/dist-packages/respx/mocks.py:224: in _send_async_request
    httpx_response = await cls.async_handler(httpx_request)
/usr/lib/python3/dist-packages/respx/mocks.py:136: in async_handler
    raise assertion_error
/usr/lib/python3/dist-packages/respx/mocks.py:129: in async_handler
    httpx_response = await router.async_handler(httpx_request)
/usr/lib/python3/dist-packages/respx/router.py:318: in async_handler
    resolved = await self.aresolve(request)
/usr/lib/python3/dist-packages/respx/router.py:291: in aresolve
    with self.resolver(request) as resolved:
/usr/lib/python3.13/contextlib.py:148: in __exit__
    next(self.gen)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <respx.router.MockRouter object at 0x7f629f6afe00>
request = <Request(b'POST', 'http://127.0.0.1/recepcion_datos_4.cgi')>

    @contextmanager
    def resolver(self, request: httpx.Request) -> Generator[ResolvedRoute, 
None, None]:
        resolved = ResolvedRoute()
    
        try:
            yield resolved
    
            if resolved.route is None:
                # Assert we always get a route match, if check is enabled
                if self._assert_all_mocked:
>                   raise AllMockedAssertionError(f"RESPX: {request!r} not 
> mocked!")
E                   respx.models.AllMockedAssertionError: RESPX: 
<Request(b'POST', 'http://127.0.0.1/recepcion_datos_4.cgi')> not mocked!

/usr/lib/python3/dist-packages/respx/router.py:250: AllMockedAssertionError
________________________________ test_set_power ________________________________

    @pytest.mark.asyncio
    @respx.mock
    async def test_set_power():
        """Set target power."""
        target = _get_target()
        respx.post(path=URL_CGI, data={"idOperacion": API_STATUS_OP}).mock(
            return_value=httpx.Response(
                200,
                text=_mutate_fixture(
                    "op-1002-status.txt", [("consigna_potencia=3", 
"consigna_potencia=5")]
                ),
            )
        )
        respx.post(path=URL_CGI, data={"idOperacion": API_STATS_OP}).mock(
            return_value=httpx.Response(200, 
text=_load_fixture("op-1020-stats.txt"))
        )
        respx.post(path=URL_CGI, data={"idOperacion": API_ALARMS_OP}).mock(
            return_value=httpx.Response(200, 
text=_load_fixture("op-1079-alarms.txt"))
        )
        respx.post(
            path=URL_CGI, data={"idOperacion": API_SET_POWER_OP, "potencia": 5}
        ).mock(
            return_value=httpx.Response(200, 
text=_load_fixture("op-1004-set-power.txt"))
        )
    
>       actual = await target.set_power(5)

tests/test_api.py:210: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
pyecoforest/api.py:70: in set_power
    await self._request(data={"idOperacion": API_SET_POWER_OP, "potencia": 
target})
pyecoforest/api.py:79: in _request
    response = await self._client.post(
/usr/lib/python3/dist-packages/httpx/_client.py:1859: in post
    return await self.request(
/usr/lib/python3/dist-packages/httpx/_client.py:1540: in request
    return await self.send(request, auth=auth, 
follow_redirects=follow_redirects)
/usr/lib/python3/dist-packages/httpx/_client.py:1629: in send
    response = await self._send_handling_auth(
/usr/lib/python3/dist-packages/httpx/_client.py:1657: in _send_handling_auth
    response = await self._send_handling_redirects(
/usr/lib/python3/dist-packages/httpx/_client.py:1694: in 
_send_handling_redirects
    response = await self._send_single_request(request)
/usr/lib/python3/dist-packages/httpx/_client.py:1730: in _send_single_request
    response = await transport.handle_async_request(request)
/usr/lib/python3/dist-packages/httpx/_transports/default.py:394: in 
handle_async_request
    resp = await self._pool.handle_async_request(req)
/usr/lib/python3/dist-packages/respx/mocks.py:190: in amock
    response = await cls._send_async_request(
/usr/lib/python3/dist-packages/respx/mocks.py:224: in _send_async_request
    httpx_response = await cls.async_handler(httpx_request)
/usr/lib/python3/dist-packages/respx/mocks.py:136: in async_handler
    raise assertion_error
/usr/lib/python3/dist-packages/respx/mocks.py:129: in async_handler
    httpx_response = await router.async_handler(httpx_request)
/usr/lib/python3/dist-packages/respx/router.py:318: in async_handler
    resolved = await self.aresolve(request)
/usr/lib/python3/dist-packages/respx/router.py:291: in aresolve
    with self.resolver(request) as resolved:
/usr/lib/python3.13/contextlib.py:148: in __exit__
    next(self.gen)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <respx.router.MockRouter object at 0x7f629f6afe00>
request = <Request(b'POST', 'http://127.0.0.1/recepcion_datos_4.cgi')>

    @contextmanager
    def resolver(self, request: httpx.Request) -> Generator[ResolvedRoute, 
None, None]:
        resolved = ResolvedRoute()
    
        try:
            yield resolved
    
            if resolved.route is None:
                # Assert we always get a route match, if check is enabled
                if self._assert_all_mocked:
>                   raise AllMockedAssertionError(f"RESPX: {request!r} not 
> mocked!")
E                   respx.models.AllMockedAssertionError: RESPX: 
<Request(b'POST', 'http://127.0.0.1/recepcion_datos_4.cgi')> not mocked!

/usr/lib/python3/dist-packages/respx/router.py:250: AllMockedAssertionError
__________________________________ test_turn ___________________________________

    @pytest.mark.asyncio
    @respx.mock
    async def test_turn():
        """Turn on device status."""
        target = _get_target()
        respx.post(path=URL_CGI, data={"idOperacion": API_STATUS_OP}).mock(
            return_value=httpx.Response(
                200,
                text=_mutate_fixture(
                    "op-1002-status.txt",
                    [("on_off=0", "on_off=1"), ("estado=0", "estado=1")],
                ),
            )
        )
        respx.post(path=URL_CGI, data={"idOperacion": API_STATS_OP}).mock(
            return_value=httpx.Response(200, 
text=_load_fixture("op-1020-stats.txt"))
        )
        respx.post(path=URL_CGI, data={"idOperacion": API_ALARMS_OP}).mock(
            return_value=httpx.Response(200, 
text=_load_fixture("op-1079-alarms.txt"))
        )
        respx.post(path=URL_CGI, data={"idOperacion": API_SET_STATE_OP, 
"on_off": 1}).mock(
            return_value=httpx.Response(200, 
text=_load_fixture("op-1004-set-power.txt"))
        )
    
>       actual = await target.turn(True)

tests/test_api.py:265: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
pyecoforest/api.py:56: in turn
    await self._request(
pyecoforest/api.py:79: in _request
    response = await self._client.post(
/usr/lib/python3/dist-packages/httpx/_client.py:1859: in post
    return await self.request(
/usr/lib/python3/dist-packages/httpx/_client.py:1540: in request
    return await self.send(request, auth=auth, 
follow_redirects=follow_redirects)
/usr/lib/python3/dist-packages/httpx/_client.py:1629: in send
    response = await self._send_handling_auth(
/usr/lib/python3/dist-packages/httpx/_client.py:1657: in _send_handling_auth
    response = await self._send_handling_redirects(
/usr/lib/python3/dist-packages/httpx/_client.py:1694: in 
_send_handling_redirects
    response = await self._send_single_request(request)
/usr/lib/python3/dist-packages/httpx/_client.py:1730: in _send_single_request
    response = await transport.handle_async_request(request)
/usr/lib/python3/dist-packages/httpx/_transports/default.py:394: in 
handle_async_request
    resp = await self._pool.handle_async_request(req)
/usr/lib/python3/dist-packages/respx/mocks.py:190: in amock
    response = await cls._send_async_request(
/usr/lib/python3/dist-packages/respx/mocks.py:224: in _send_async_request
    httpx_response = await cls.async_handler(httpx_request)
/usr/lib/python3/dist-packages/respx/mocks.py:136: in async_handler
    raise assertion_error
/usr/lib/python3/dist-packages/respx/mocks.py:129: in async_handler
    httpx_response = await router.async_handler(httpx_request)
/usr/lib/python3/dist-packages/respx/router.py:318: in async_handler
    resolved = await self.aresolve(request)
/usr/lib/python3/dist-packages/respx/router.py:291: in aresolve
    with self.resolver(request) as resolved:
/usr/lib/python3.13/contextlib.py:148: in __exit__
    next(self.gen)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <respx.router.MockRouter object at 0x7f629f6afe00>
request = <Request(b'POST', 'http://127.0.0.1/recepcion_datos_4.cgi')>

    @contextmanager
    def resolver(self, request: httpx.Request) -> Generator[ResolvedRoute, 
None, None]:
        resolved = ResolvedRoute()
    
        try:
            yield resolved
    
            if resolved.route is None:
                # Assert we always get a route match, if check is enabled
                if self._assert_all_mocked:
>                   raise AllMockedAssertionError(f"RESPX: {request!r} not 
> mocked!")
E                   respx.models.AllMockedAssertionError: RESPX: 
<Request(b'POST', 'http://127.0.0.1/recepcion_datos_4.cgi')> not mocked!

/usr/lib/python3/dist-packages/respx/router.py:250: AllMockedAssertionError
=========================== short test summary info ============================
FAILED tests/test_api.py::test_get - respx.models.AllMockedAssertionError: RE...
FAILED 
tests/test_api.py::test_get_errors[side_effect0-EcoforestAuthenticationRequired-401]
FAILED 
tests/test_api.py::test_get_errors[side_effect1-EcoforestConnectionError-Timeout
 occurred while connecting to the device.]
FAILED 
tests/test_api.py::test_get_errors[side_effect2-EcoforestConnectionError-Error 
occurred while communicating with device.]
FAILED tests/test_api.py::test_set_temperature - respx.models.AllMockedAssert...
FAILED tests/test_api.py::test_set_power - respx.models.AllMockedAssertionErr...
FAILED tests/test_api.py::test_turn - respx.models.AllMockedAssertionError: R...
========================= 7 failed, 5 passed in 0.43s ==========================
E: pybuild pybuild:389: test: plugin pyproject failed with: exit code=1: cd 
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_pyecoforest/build; python3.13 -m pytest 
--no-cov
dh_auto_test: error: pybuild --test -i python{version} -p 3.13 returned exit 
code 13
make: *** [debian/rules:8: 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/202503/

About the archive rebuild: The build was made on virtual machines from AWS,
using sbuild and a reduced chroot with only build-essential packages.

If you could not reproduce the bug please contact me privately, as I
am willing to provide ssh access to a virtual machine where the bug is
fully reproducible.

If this is really a bug in one of the build-depends, please use
reassign and add an affects on src:pyecoforest, so that this is still
visible in the BTS web page for this package.

Thanks.

Reply via email to