Your message dated Wed, 26 Mar 2025 16:20:17 +0000
with message-id <[email protected]>
and subject line Bug#1084765: fixed in python-xknx 3.6.0-1
has caused the Debian Bug report #1084765,
regarding python-xknx: FTBFS (requires network interfaces)
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 [email protected]
immediately.)


-- 
1084765: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1084765
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: src:python-xknx
Version: 3.2.0-2
Severity: serious
Tags: ftbfs

Dear maintainer:

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

--------------------------------------------------------------------------------
[...]
 debian/rules build
make: pyversions: No such file or directory
py3versions: no X-Python3-Version in control file, using supported versions
dh build --buildsystem=pybuild --with python3
   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
* Building wheel...
running bdist_wheel
running build
running build_py
creating build
creating build/lib
creating build/lib/xknx
copying xknx/xknx.py -> build/lib/xknx
copying xknx/__init__.py -> build/lib/xknx
copying xknx/__version__.py -> build/lib/xknx
creating build/lib/xknx/typing
copying xknx/typing/__init__.py -> build/lib/xknx/typing
creating build/lib/xknx/profile
copying xknx/profile/__init__.py -> build/lib/xknx/profile
copying xknx/profile/const.py -> build/lib/xknx/profile
creating build/lib/xknx/secure
copying xknx/secure/security_primitives.py -> build/lib/xknx/secure
copying xknx/secure/data_secure_asdu.py -> build/lib/xknx/secure
copying xknx/secure/data_secure.py -> build/lib/xknx/secure
copying xknx/secure/__init__.py -> build/lib/xknx/secure
copying xknx/secure/util.py -> build/lib/xknx/secure
copying xknx/secure/keyring.py -> build/lib/xknx/secure
creating build/lib/xknx/io
copying xknx/io/routing.py -> build/lib/xknx/io
copying xknx/io/connection.py -> build/lib/xknx/io
copying xknx/io/gateway_scanner.py -> build/lib/xknx/io
copying xknx/io/__init__.py -> build/lib/xknx/io
copying xknx/io/self_description.py -> build/lib/xknx/io
copying xknx/io/const.py -> build/lib/xknx/io
copying xknx/io/util.py -> build/lib/xknx/io
copying xknx/io/interface.py -> build/lib/xknx/io
copying xknx/io/tunnel.py -> build/lib/xknx/io
copying xknx/io/knxip_interface.py -> build/lib/xknx/io
copying xknx/io/ip_secure.py -> build/lib/xknx/io
creating build/lib/xknx/exceptions
copying xknx/exceptions/exception.py -> build/lib/xknx/exceptions
copying xknx/exceptions/__init__.py -> build/lib/xknx/exceptions
creating build/lib/xknx/cemi
copying xknx/cemi/cemi_handler.py -> build/lib/xknx/cemi
copying xknx/cemi/cemi_frame.py -> build/lib/xknx/cemi
copying xknx/cemi/__init__.py -> build/lib/xknx/cemi
copying xknx/cemi/const.py -> build/lib/xknx/cemi
creating build/lib/xknx/knxip
copying xknx/knxip/search_response_extended.py -> build/lib/xknx/knxip
copying xknx/knxip/srp.py -> build/lib/xknx/knxip
copying xknx/knxip/session_authenticate.py -> build/lib/xknx/knxip
copying xknx/knxip/tunnelling_feature.py -> build/lib/xknx/knxip
copying xknx/knxip/header.py -> build/lib/xknx/knxip
copying xknx/knxip/session_status.py -> build/lib/xknx/knxip
copying xknx/knxip/hpai.py -> build/lib/xknx/knxip
copying xknx/knxip/description_response.py -> build/lib/xknx/knxip
copying xknx/knxip/device_configuration_request.py -> build/lib/xknx/knxip
copying xknx/knxip/routing_indication.py -> build/lib/xknx/knxip
copying xknx/knxip/body.py -> build/lib/xknx/knxip
copying xknx/knxip/timer_notify.py -> build/lib/xknx/knxip
copying xknx/knxip/tunnelling_request.py -> build/lib/xknx/knxip
copying xknx/knxip/knxip.py -> build/lib/xknx/knxip
copying xknx/knxip/secure_wrapper.py -> build/lib/xknx/knxip
copying xknx/knxip/tunnelling_ack.py -> build/lib/xknx/knxip
copying xknx/knxip/connectionstate_response.py -> build/lib/xknx/knxip
copying xknx/knxip/description_request.py -> build/lib/xknx/knxip
copying xknx/knxip/__init__.py -> build/lib/xknx/knxip
copying xknx/knxip/error_code.py -> build/lib/xknx/knxip
copying xknx/knxip/search_request.py -> build/lib/xknx/knxip
copying xknx/knxip/knxip_enum.py -> build/lib/xknx/knxip
copying xknx/knxip/dib.py -> build/lib/xknx/knxip
copying xknx/knxip/session_response.py -> build/lib/xknx/knxip
copying xknx/knxip/routing_lost_message.py -> build/lib/xknx/knxip
copying xknx/knxip/disconnect_response.py -> build/lib/xknx/knxip
copying xknx/knxip/search_request_extended.py -> build/lib/xknx/knxip
copying xknx/knxip/connect_response.py -> build/lib/xknx/knxip
copying xknx/knxip/session_request.py -> build/lib/xknx/knxip
copying xknx/knxip/connectionstate_request.py -> build/lib/xknx/knxip
copying xknx/knxip/search_response.py -> build/lib/xknx/knxip
copying xknx/knxip/disconnect_request.py -> build/lib/xknx/knxip
copying xknx/knxip/routing_busy.py -> build/lib/xknx/knxip
copying xknx/knxip/device_configuration_ack.py -> build/lib/xknx/knxip
copying xknx/knxip/connect_request.py -> build/lib/xknx/knxip
creating build/lib/xknx/remote_value
copying xknx/remote_value/remote_value_color_rgb.py -> 
build/lib/xknx/remote_value
copying xknx/remote_value/remote_value_scaling.py -> build/lib/xknx/remote_value
copying xknx/remote_value/remote_value_temp.py -> build/lib/xknx/remote_value
copying xknx/remote_value/remote_value_datetime.py -> 
build/lib/xknx/remote_value
copying xknx/remote_value/remote_value_color_rgbw.py -> 
build/lib/xknx/remote_value
copying xknx/remote_value/remote_value_updown.py -> build/lib/xknx/remote_value
copying xknx/remote_value/remote_value_dpt_value_1_ucount.py -> 
build/lib/xknx/remote_value
copying xknx/remote_value/remote_value_switch.py -> build/lib/xknx/remote_value
copying xknx/remote_value/remote_value_setpoint_shift.py -> 
build/lib/xknx/remote_value
copying xknx/remote_value/__init__.py -> build/lib/xknx/remote_value
copying xknx/remote_value/remote_value_raw.py -> build/lib/xknx/remote_value
copying xknx/remote_value/remote_value.py -> build/lib/xknx/remote_value
copying xknx/remote_value/remote_value_color_xyy.py -> 
build/lib/xknx/remote_value
copying xknx/remote_value/remote_value_climate_mode.py -> 
build/lib/xknx/remote_value
copying xknx/remote_value/remote_value_scene_number.py -> 
build/lib/xknx/remote_value
copying xknx/remote_value/remote_value_step.py -> build/lib/xknx/remote_value
copying xknx/remote_value/remote_value_sensor.py -> build/lib/xknx/remote_value
creating build/lib/xknx/dpt
copying xknx/dpt/dpt_18.py -> build/lib/xknx/dpt
copying xknx/dpt/payload.py -> build/lib/xknx/dpt
copying xknx/dpt/dpt_3.py -> build/lib/xknx/dpt
copying xknx/dpt/dpt_20.py -> build/lib/xknx/dpt
copying xknx/dpt/dpt_6.py -> build/lib/xknx/dpt
copying xknx/dpt/dpt_242.py -> build/lib/xknx/dpt
copying xknx/dpt/dpt_5.py -> build/lib/xknx/dpt
copying xknx/dpt/dpt_1.py -> build/lib/xknx/dpt
copying xknx/dpt/dpt_9.py -> build/lib/xknx/dpt
copying xknx/dpt/dpt.py -> build/lib/xknx/dpt
copying xknx/dpt/dpt_7.py -> build/lib/xknx/dpt
copying xknx/dpt/dpt_10.py -> build/lib/xknx/dpt
copying xknx/dpt/dpt_14.py -> build/lib/xknx/dpt
copying xknx/dpt/dpt_13.py -> build/lib/xknx/dpt
copying xknx/dpt/dpt_251.py -> build/lib/xknx/dpt
copying xknx/dpt/dpt_235.py -> build/lib/xknx/dpt
copying xknx/dpt/__init__.py -> build/lib/xknx/dpt
copying xknx/dpt/dpt_8.py -> build/lib/xknx/dpt
copying xknx/dpt/dpt_16.py -> build/lib/xknx/dpt
copying xknx/dpt/dpt_11.py -> build/lib/xknx/dpt
copying xknx/dpt/dpt_19.py -> build/lib/xknx/dpt
copying xknx/dpt/dpt_12.py -> build/lib/xknx/dpt
copying xknx/dpt/dpt_17.py -> build/lib/xknx/dpt
copying xknx/dpt/dpt_232.py -> build/lib/xknx/dpt
creating build/lib/xknx/devices
copying xknx/devices/device.py -> build/lib/xknx/devices
copying xknx/devices/switch.py -> build/lib/xknx/devices
copying xknx/devices/datetime.py -> build/lib/xknx/devices
copying xknx/devices/cover.py -> build/lib/xknx/devices
copying xknx/devices/climate_mode.py -> build/lib/xknx/devices
copying xknx/devices/scene.py -> build/lib/xknx/devices
copying xknx/devices/raw_value.py -> build/lib/xknx/devices
copying xknx/devices/fan.py -> build/lib/xknx/devices
copying xknx/devices/binary_sensor.py -> build/lib/xknx/devices
copying xknx/devices/expose_sensor.py -> build/lib/xknx/devices
copying xknx/devices/notification.py -> build/lib/xknx/devices
copying xknx/devices/__init__.py -> build/lib/xknx/devices
copying xknx/devices/sensor.py -> build/lib/xknx/devices
copying xknx/devices/devices.py -> build/lib/xknx/devices
copying xknx/devices/numeric_value.py -> build/lib/xknx/devices
copying xknx/devices/climate.py -> build/lib/xknx/devices
copying xknx/devices/weather.py -> build/lib/xknx/devices
copying xknx/devices/travelcalculator.py -> build/lib/xknx/devices
copying xknx/devices/light.py -> build/lib/xknx/devices
creating build/lib/xknx/util
copying xknx/util/__init__.py -> build/lib/xknx/util
creating build/lib/xknx/core
copying xknx/core/task_registry.py -> build/lib/xknx/core
copying xknx/core/group_address_dpt.py -> build/lib/xknx/core
copying xknx/core/connection_manager.py -> build/lib/xknx/core
copying xknx/core/__init__.py -> build/lib/xknx/core
copying xknx/core/value_reader.py -> build/lib/xknx/core
copying xknx/core/connection_state.py -> build/lib/xknx/core
copying xknx/core/telegram_queue.py -> build/lib/xknx/core
copying xknx/core/state_updater.py -> build/lib/xknx/core
creating build/lib/xknx/management
copying xknx/management/management.py -> build/lib/xknx/management
copying xknx/management/__init__.py -> build/lib/xknx/management
copying xknx/management/procedures.py -> build/lib/xknx/management
creating build/lib/xknx/tools
copying xknx/tools/__init__.py -> build/lib/xknx/tools
copying xknx/tools/group_communication.py -> build/lib/xknx/tools
creating build/lib/xknx/telegram
copying xknx/telegram/address_filter.py -> build/lib/xknx/telegram
copying xknx/telegram/apci.py -> build/lib/xknx/telegram
copying xknx/telegram/tpci.py -> build/lib/xknx/telegram
copying xknx/telegram/__init__.py -> build/lib/xknx/telegram
copying xknx/telegram/address.py -> build/lib/xknx/telegram
copying xknx/telegram/telegram.py -> build/lib/xknx/telegram
creating build/lib/xknx/io/transport
copying xknx/io/transport/udp_transport.py -> build/lib/xknx/io/transport
copying xknx/io/transport/__init__.py -> build/lib/xknx/io/transport
copying xknx/io/transport/tcp_transport.py -> build/lib/xknx/io/transport
copying xknx/io/transport/ip_transport.py -> build/lib/xknx/io/transport
creating build/lib/xknx/io/request_response
copying xknx/io/request_response/connectionstate.py -> 
build/lib/xknx/io/request_response
copying xknx/io/request_response/authenticate.py -> 
build/lib/xknx/io/request_response
copying xknx/io/request_response/device_configuration.py -> 
build/lib/xknx/io/request_response
copying xknx/io/request_response/session.py -> 
build/lib/xknx/io/request_response
copying xknx/io/request_response/request_response.py -> 
build/lib/xknx/io/request_response
copying xknx/io/request_response/__init__.py -> 
build/lib/xknx/io/request_response
copying xknx/io/request_response/connect.py -> 
build/lib/xknx/io/request_response
copying xknx/io/request_response/disconnect.py -> 
build/lib/xknx/io/request_response
copying xknx/io/request_response/tunnelling.py -> 
build/lib/xknx/io/request_response
running egg_info
creating xknx.egg-info
writing xknx.egg-info/PKG-INFO
writing dependency_links to xknx.egg-info/dependency_links.txt
writing requirements to xknx.egg-info/requires.txt
writing top-level names to xknx.egg-info/top_level.txt
writing manifest file 'xknx.egg-info/SOURCES.txt'
reading manifest file 'xknx.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
adding license file 'LICENSE'
writing manifest file 'xknx.egg-info/SOURCES.txt'
copying xknx/py.typed -> build/lib/xknx
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/xknx
creating build/bdist.linux-x86_64/wheel/xknx/typing
copying build/lib/xknx/typing/__init__.py -> 
build/bdist.linux-x86_64/wheel/./xknx/typing
copying build/lib/xknx/xknx.py -> build/bdist.linux-x86_64/wheel/./xknx
creating build/bdist.linux-x86_64/wheel/xknx/profile
copying build/lib/xknx/profile/__init__.py -> 
build/bdist.linux-x86_64/wheel/./xknx/profile
copying build/lib/xknx/profile/const.py -> 
build/bdist.linux-x86_64/wheel/./xknx/profile
creating build/bdist.linux-x86_64/wheel/xknx/secure
copying build/lib/xknx/secure/security_primitives.py -> 
build/bdist.linux-x86_64/wheel/./xknx/secure
copying build/lib/xknx/secure/data_secure_asdu.py -> 
build/bdist.linux-x86_64/wheel/./xknx/secure
copying build/lib/xknx/secure/data_secure.py -> 
build/bdist.linux-x86_64/wheel/./xknx/secure
copying build/lib/xknx/secure/__init__.py -> 
build/bdist.linux-x86_64/wheel/./xknx/secure
copying build/lib/xknx/secure/util.py -> 
build/bdist.linux-x86_64/wheel/./xknx/secure
copying build/lib/xknx/secure/keyring.py -> 
build/bdist.linux-x86_64/wheel/./xknx/secure
creating build/bdist.linux-x86_64/wheel/xknx/io
copying build/lib/xknx/io/routing.py -> build/bdist.linux-x86_64/wheel/./xknx/io
copying build/lib/xknx/io/connection.py -> 
build/bdist.linux-x86_64/wheel/./xknx/io
copying build/lib/xknx/io/gateway_scanner.py -> 
build/bdist.linux-x86_64/wheel/./xknx/io
copying build/lib/xknx/io/__init__.py -> 
build/bdist.linux-x86_64/wheel/./xknx/io
copying build/lib/xknx/io/self_description.py -> 
build/bdist.linux-x86_64/wheel/./xknx/io
copying build/lib/xknx/io/const.py -> build/bdist.linux-x86_64/wheel/./xknx/io
copying build/lib/xknx/io/util.py -> build/bdist.linux-x86_64/wheel/./xknx/io
copying build/lib/xknx/io/interface.py -> 
build/bdist.linux-x86_64/wheel/./xknx/io
copying build/lib/xknx/io/tunnel.py -> build/bdist.linux-x86_64/wheel/./xknx/io
copying build/lib/xknx/io/knxip_interface.py -> 
build/bdist.linux-x86_64/wheel/./xknx/io
creating build/bdist.linux-x86_64/wheel/xknx/io/transport
copying build/lib/xknx/io/transport/udp_transport.py -> 
build/bdist.linux-x86_64/wheel/./xknx/io/transport
copying build/lib/xknx/io/transport/__init__.py -> 
build/bdist.linux-x86_64/wheel/./xknx/io/transport
copying build/lib/xknx/io/transport/tcp_transport.py -> 
build/bdist.linux-x86_64/wheel/./xknx/io/transport
copying build/lib/xknx/io/transport/ip_transport.py -> 
build/bdist.linux-x86_64/wheel/./xknx/io/transport
creating build/bdist.linux-x86_64/wheel/xknx/io/request_response
copying build/lib/xknx/io/request_response/connectionstate.py -> 
build/bdist.linux-x86_64/wheel/./xknx/io/request_response
copying build/lib/xknx/io/request_response/authenticate.py -> 
build/bdist.linux-x86_64/wheel/./xknx/io/request_response
copying build/lib/xknx/io/request_response/device_configuration.py -> 
build/bdist.linux-x86_64/wheel/./xknx/io/request_response
copying build/lib/xknx/io/request_response/session.py -> 
build/bdist.linux-x86_64/wheel/./xknx/io/request_response
copying build/lib/xknx/io/request_response/request_response.py -> 
build/bdist.linux-x86_64/wheel/./xknx/io/request_response
copying build/lib/xknx/io/request_response/__init__.py -> 
build/bdist.linux-x86_64/wheel/./xknx/io/request_response
copying build/lib/xknx/io/request_response/connect.py -> 
build/bdist.linux-x86_64/wheel/./xknx/io/request_response
copying build/lib/xknx/io/request_response/disconnect.py -> 
build/bdist.linux-x86_64/wheel/./xknx/io/request_response
copying build/lib/xknx/io/request_response/tunnelling.py -> 
build/bdist.linux-x86_64/wheel/./xknx/io/request_response
copying build/lib/xknx/io/ip_secure.py -> 
build/bdist.linux-x86_64/wheel/./xknx/io
creating build/bdist.linux-x86_64/wheel/xknx/exceptions
copying build/lib/xknx/exceptions/exception.py -> 
build/bdist.linux-x86_64/wheel/./xknx/exceptions
copying build/lib/xknx/exceptions/__init__.py -> 
build/bdist.linux-x86_64/wheel/./xknx/exceptions
creating build/bdist.linux-x86_64/wheel/xknx/cemi
copying build/lib/xknx/cemi/cemi_handler.py -> 
build/bdist.linux-x86_64/wheel/./xknx/cemi
copying build/lib/xknx/cemi/cemi_frame.py -> 
build/bdist.linux-x86_64/wheel/./xknx/cemi
copying build/lib/xknx/cemi/__init__.py -> 
build/bdist.linux-x86_64/wheel/./xknx/cemi
copying build/lib/xknx/cemi/const.py -> 
build/bdist.linux-x86_64/wheel/./xknx/cemi
creating build/bdist.linux-x86_64/wheel/xknx/knxip
copying build/lib/xknx/knxip/search_response_extended.py -> 
build/bdist.linux-x86_64/wheel/./xknx/knxip
copying build/lib/xknx/knxip/srp.py -> 
build/bdist.linux-x86_64/wheel/./xknx/knxip
copying build/lib/xknx/knxip/session_authenticate.py -> 
build/bdist.linux-x86_64/wheel/./xknx/knxip
copying build/lib/xknx/knxip/tunnelling_feature.py -> 
build/bdist.linux-x86_64/wheel/./xknx/knxip
copying build/lib/xknx/knxip/header.py -> 
build/bdist.linux-x86_64/wheel/./xknx/knxip
copying build/lib/xknx/knxip/session_status.py -> 
build/bdist.linux-x86_64/wheel/./xknx/knxip
copying build/lib/xknx/knxip/hpai.py -> 
build/bdist.linux-x86_64/wheel/./xknx/knxip
copying build/lib/xknx/knxip/description_response.py -> 
build/bdist.linux-x86_64/wheel/./xknx/knxip
copying build/lib/xknx/knxip/device_configuration_request.py -> 
build/bdist.linux-x86_64/wheel/./xknx/knxip
copying build/lib/xknx/knxip/routing_indication.py -> 
build/bdist.linux-x86_64/wheel/./xknx/knxip
copying build/lib/xknx/knxip/body.py -> 
build/bdist.linux-x86_64/wheel/./xknx/knxip
copying build/lib/xknx/knxip/timer_notify.py -> 
build/bdist.linux-x86_64/wheel/./xknx/knxip
copying build/lib/xknx/knxip/tunnelling_request.py -> 
build/bdist.linux-x86_64/wheel/./xknx/knxip
copying build/lib/xknx/knxip/knxip.py -> 
build/bdist.linux-x86_64/wheel/./xknx/knxip
copying build/lib/xknx/knxip/secure_wrapper.py -> 
build/bdist.linux-x86_64/wheel/./xknx/knxip
copying build/lib/xknx/knxip/tunnelling_ack.py -> 
build/bdist.linux-x86_64/wheel/./xknx/knxip
copying build/lib/xknx/knxip/connectionstate_response.py -> 
build/bdist.linux-x86_64/wheel/./xknx/knxip
copying build/lib/xknx/knxip/description_request.py -> 
build/bdist.linux-x86_64/wheel/./xknx/knxip
copying build/lib/xknx/knxip/__init__.py -> 
build/bdist.linux-x86_64/wheel/./xknx/knxip
copying build/lib/xknx/knxip/error_code.py -> 
build/bdist.linux-x86_64/wheel/./xknx/knxip
copying build/lib/xknx/knxip/search_request.py -> 
build/bdist.linux-x86_64/wheel/./xknx/knxip
copying build/lib/xknx/knxip/knxip_enum.py -> 
build/bdist.linux-x86_64/wheel/./xknx/knxip
copying build/lib/xknx/knxip/dib.py -> 
build/bdist.linux-x86_64/wheel/./xknx/knxip
copying build/lib/xknx/knxip/session_response.py -> 
build/bdist.linux-x86_64/wheel/./xknx/knxip
copying build/lib/xknx/knxip/routing_lost_message.py -> 
build/bdist.linux-x86_64/wheel/./xknx/knxip
copying build/lib/xknx/knxip/disconnect_response.py -> 
build/bdist.linux-x86_64/wheel/./xknx/knxip
copying build/lib/xknx/knxip/search_request_extended.py -> 
build/bdist.linux-x86_64/wheel/./xknx/knxip
copying build/lib/xknx/knxip/connect_response.py -> 
build/bdist.linux-x86_64/wheel/./xknx/knxip
copying build/lib/xknx/knxip/session_request.py -> 
build/bdist.linux-x86_64/wheel/./xknx/knxip
copying build/lib/xknx/knxip/connectionstate_request.py -> 
build/bdist.linux-x86_64/wheel/./xknx/knxip
copying build/lib/xknx/knxip/search_response.py -> 
build/bdist.linux-x86_64/wheel/./xknx/knxip
copying build/lib/xknx/knxip/disconnect_request.py -> 
build/bdist.linux-x86_64/wheel/./xknx/knxip
copying build/lib/xknx/knxip/routing_busy.py -> 
build/bdist.linux-x86_64/wheel/./xknx/knxip
copying build/lib/xknx/knxip/device_configuration_ack.py -> 
build/bdist.linux-x86_64/wheel/./xknx/knxip
copying build/lib/xknx/knxip/connect_request.py -> 
build/bdist.linux-x86_64/wheel/./xknx/knxip
creating build/bdist.linux-x86_64/wheel/xknx/remote_value
copying build/lib/xknx/remote_value/remote_value_color_rgb.py -> 
build/bdist.linux-x86_64/wheel/./xknx/remote_value
copying build/lib/xknx/remote_value/remote_value_scaling.py -> 
build/bdist.linux-x86_64/wheel/./xknx/remote_value
copying build/lib/xknx/remote_value/remote_value_temp.py -> 
build/bdist.linux-x86_64/wheel/./xknx/remote_value
copying build/lib/xknx/remote_value/remote_value_datetime.py -> 
build/bdist.linux-x86_64/wheel/./xknx/remote_value
copying build/lib/xknx/remote_value/remote_value_color_rgbw.py -> 
build/bdist.linux-x86_64/wheel/./xknx/remote_value
copying build/lib/xknx/remote_value/remote_value_updown.py -> 
build/bdist.linux-x86_64/wheel/./xknx/remote_value
copying build/lib/xknx/remote_value/remote_value_dpt_value_1_ucount.py -> 
build/bdist.linux-x86_64/wheel/./xknx/remote_value
copying build/lib/xknx/remote_value/remote_value_switch.py -> 
build/bdist.linux-x86_64/wheel/./xknx/remote_value
copying build/lib/xknx/remote_value/remote_value_setpoint_shift.py -> 
build/bdist.linux-x86_64/wheel/./xknx/remote_value
copying build/lib/xknx/remote_value/__init__.py -> 
build/bdist.linux-x86_64/wheel/./xknx/remote_value
copying build/lib/xknx/remote_value/remote_value_raw.py -> 
build/bdist.linux-x86_64/wheel/./xknx/remote_value
copying build/lib/xknx/remote_value/remote_value.py -> 
build/bdist.linux-x86_64/wheel/./xknx/remote_value
copying build/lib/xknx/remote_value/remote_value_color_xyy.py -> 
build/bdist.linux-x86_64/wheel/./xknx/remote_value
copying build/lib/xknx/remote_value/remote_value_climate_mode.py -> 
build/bdist.linux-x86_64/wheel/./xknx/remote_value
copying build/lib/xknx/remote_value/remote_value_scene_number.py -> 
build/bdist.linux-x86_64/wheel/./xknx/remote_value
copying build/lib/xknx/remote_value/remote_value_step.py -> 
build/bdist.linux-x86_64/wheel/./xknx/remote_value
copying build/lib/xknx/remote_value/remote_value_sensor.py -> 
build/bdist.linux-x86_64/wheel/./xknx/remote_value
copying build/lib/xknx/__init__.py -> build/bdist.linux-x86_64/wheel/./xknx
creating build/bdist.linux-x86_64/wheel/xknx/dpt
copying build/lib/xknx/dpt/dpt_18.py -> 
build/bdist.linux-x86_64/wheel/./xknx/dpt
copying build/lib/xknx/dpt/payload.py -> 
build/bdist.linux-x86_64/wheel/./xknx/dpt
copying build/lib/xknx/dpt/dpt_3.py -> build/bdist.linux-x86_64/wheel/./xknx/dpt
copying build/lib/xknx/dpt/dpt_20.py -> 
build/bdist.linux-x86_64/wheel/./xknx/dpt
copying build/lib/xknx/dpt/dpt_6.py -> build/bdist.linux-x86_64/wheel/./xknx/dpt
copying build/lib/xknx/dpt/dpt_242.py -> 
build/bdist.linux-x86_64/wheel/./xknx/dpt
copying build/lib/xknx/dpt/dpt_5.py -> build/bdist.linux-x86_64/wheel/./xknx/dpt
copying build/lib/xknx/dpt/dpt_1.py -> build/bdist.linux-x86_64/wheel/./xknx/dpt
copying build/lib/xknx/dpt/dpt_9.py -> build/bdist.linux-x86_64/wheel/./xknx/dpt
copying build/lib/xknx/dpt/dpt.py -> build/bdist.linux-x86_64/wheel/./xknx/dpt
copying build/lib/xknx/dpt/dpt_7.py -> build/bdist.linux-x86_64/wheel/./xknx/dpt
copying build/lib/xknx/dpt/dpt_10.py -> 
build/bdist.linux-x86_64/wheel/./xknx/dpt
copying build/lib/xknx/dpt/dpt_14.py -> 
build/bdist.linux-x86_64/wheel/./xknx/dpt
copying build/lib/xknx/dpt/dpt_13.py -> 
build/bdist.linux-x86_64/wheel/./xknx/dpt
copying build/lib/xknx/dpt/dpt_251.py -> 
build/bdist.linux-x86_64/wheel/./xknx/dpt
copying build/lib/xknx/dpt/dpt_235.py -> 
build/bdist.linux-x86_64/wheel/./xknx/dpt
copying build/lib/xknx/dpt/__init__.py -> 
build/bdist.linux-x86_64/wheel/./xknx/dpt
copying build/lib/xknx/dpt/dpt_8.py -> build/bdist.linux-x86_64/wheel/./xknx/dpt
copying build/lib/xknx/dpt/dpt_16.py -> 
build/bdist.linux-x86_64/wheel/./xknx/dpt
copying build/lib/xknx/dpt/dpt_11.py -> 
build/bdist.linux-x86_64/wheel/./xknx/dpt
copying build/lib/xknx/dpt/dpt_19.py -> 
build/bdist.linux-x86_64/wheel/./xknx/dpt
copying build/lib/xknx/dpt/dpt_12.py -> 
build/bdist.linux-x86_64/wheel/./xknx/dpt
copying build/lib/xknx/dpt/dpt_17.py -> 
build/bdist.linux-x86_64/wheel/./xknx/dpt
copying build/lib/xknx/dpt/dpt_232.py -> 
build/bdist.linux-x86_64/wheel/./xknx/dpt
creating build/bdist.linux-x86_64/wheel/xknx/devices
copying build/lib/xknx/devices/device.py -> 
build/bdist.linux-x86_64/wheel/./xknx/devices
copying build/lib/xknx/devices/switch.py -> 
build/bdist.linux-x86_64/wheel/./xknx/devices
copying build/lib/xknx/devices/datetime.py -> 
build/bdist.linux-x86_64/wheel/./xknx/devices
copying build/lib/xknx/devices/cover.py -> 
build/bdist.linux-x86_64/wheel/./xknx/devices
copying build/lib/xknx/devices/climate_mode.py -> 
build/bdist.linux-x86_64/wheel/./xknx/devices
copying build/lib/xknx/devices/scene.py -> 
build/bdist.linux-x86_64/wheel/./xknx/devices
copying build/lib/xknx/devices/raw_value.py -> 
build/bdist.linux-x86_64/wheel/./xknx/devices
copying build/lib/xknx/devices/fan.py -> 
build/bdist.linux-x86_64/wheel/./xknx/devices
copying build/lib/xknx/devices/binary_sensor.py -> 
build/bdist.linux-x86_64/wheel/./xknx/devices
copying build/lib/xknx/devices/expose_sensor.py -> 
build/bdist.linux-x86_64/wheel/./xknx/devices
copying build/lib/xknx/devices/notification.py -> 
build/bdist.linux-x86_64/wheel/./xknx/devices
copying build/lib/xknx/devices/__init__.py -> 
build/bdist.linux-x86_64/wheel/./xknx/devices
copying build/lib/xknx/devices/sensor.py -> 
build/bdist.linux-x86_64/wheel/./xknx/devices
copying build/lib/xknx/devices/devices.py -> 
build/bdist.linux-x86_64/wheel/./xknx/devices
copying build/lib/xknx/devices/numeric_value.py -> 
build/bdist.linux-x86_64/wheel/./xknx/devices
copying build/lib/xknx/devices/climate.py -> 
build/bdist.linux-x86_64/wheel/./xknx/devices
copying build/lib/xknx/devices/weather.py -> 
build/bdist.linux-x86_64/wheel/./xknx/devices
copying build/lib/xknx/devices/travelcalculator.py -> 
build/bdist.linux-x86_64/wheel/./xknx/devices
copying build/lib/xknx/devices/light.py -> 
build/bdist.linux-x86_64/wheel/./xknx/devices
creating build/bdist.linux-x86_64/wheel/xknx/util
copying build/lib/xknx/util/__init__.py -> 
build/bdist.linux-x86_64/wheel/./xknx/util
creating build/bdist.linux-x86_64/wheel/xknx/core
copying build/lib/xknx/core/task_registry.py -> 
build/bdist.linux-x86_64/wheel/./xknx/core
copying build/lib/xknx/core/group_address_dpt.py -> 
build/bdist.linux-x86_64/wheel/./xknx/core
copying build/lib/xknx/core/connection_manager.py -> 
build/bdist.linux-x86_64/wheel/./xknx/core
copying build/lib/xknx/core/__init__.py -> 
build/bdist.linux-x86_64/wheel/./xknx/core
copying build/lib/xknx/core/value_reader.py -> 
build/bdist.linux-x86_64/wheel/./xknx/core
copying build/lib/xknx/core/connection_state.py -> 
build/bdist.linux-x86_64/wheel/./xknx/core
copying build/lib/xknx/core/telegram_queue.py -> 
build/bdist.linux-x86_64/wheel/./xknx/core
copying build/lib/xknx/core/state_updater.py -> 
build/bdist.linux-x86_64/wheel/./xknx/core
creating build/bdist.linux-x86_64/wheel/xknx/management
copying build/lib/xknx/management/management.py -> 
build/bdist.linux-x86_64/wheel/./xknx/management
copying build/lib/xknx/management/__init__.py -> 
build/bdist.linux-x86_64/wheel/./xknx/management
copying build/lib/xknx/management/procedures.py -> 
build/bdist.linux-x86_64/wheel/./xknx/management
copying build/lib/xknx/py.typed -> build/bdist.linux-x86_64/wheel/./xknx
creating build/bdist.linux-x86_64/wheel/xknx/tools
copying build/lib/xknx/tools/__init__.py -> 
build/bdist.linux-x86_64/wheel/./xknx/tools
copying build/lib/xknx/tools/group_communication.py -> 
build/bdist.linux-x86_64/wheel/./xknx/tools
copying build/lib/xknx/__version__.py -> build/bdist.linux-x86_64/wheel/./xknx
creating build/bdist.linux-x86_64/wheel/xknx/telegram
copying build/lib/xknx/telegram/address_filter.py -> 
build/bdist.linux-x86_64/wheel/./xknx/telegram
copying build/lib/xknx/telegram/apci.py -> 
build/bdist.linux-x86_64/wheel/./xknx/telegram
copying build/lib/xknx/telegram/tpci.py -> 
build/bdist.linux-x86_64/wheel/./xknx/telegram
copying build/lib/xknx/telegram/__init__.py -> 
build/bdist.linux-x86_64/wheel/./xknx/telegram
copying build/lib/xknx/telegram/address.py -> 
build/bdist.linux-x86_64/wheel/./xknx/telegram
copying build/lib/xknx/telegram/telegram.py -> 
build/bdist.linux-x86_64/wheel/./xknx/telegram
running install_egg_info
Copying xknx.egg-info to build/bdist.linux-x86_64/wheel/./xknx-3.2.0.egg-info
running install_scripts
creating build/bdist.linux-x86_64/wheel/xknx-3.2.0.dist-info/WHEEL
creating 
'/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/.tmp-zewd243g/xknx-3.2.0-py3-none-any.whl'
 and adding 'build/bdist.linux-x86_64/wheel' to it
adding 'xknx/__init__.py'
adding 'xknx/__version__.py'
adding 'xknx/py.typed'
adding 'xknx/xknx.py'
adding 'xknx/cemi/__init__.py'
adding 'xknx/cemi/cemi_frame.py'
adding 'xknx/cemi/cemi_handler.py'
adding 'xknx/cemi/const.py'
adding 'xknx/core/__init__.py'
adding 'xknx/core/connection_manager.py'
adding 'xknx/core/connection_state.py'
adding 'xknx/core/group_address_dpt.py'
adding 'xknx/core/state_updater.py'
adding 'xknx/core/task_registry.py'
adding 'xknx/core/telegram_queue.py'
adding 'xknx/core/value_reader.py'
adding 'xknx/devices/__init__.py'
adding 'xknx/devices/binary_sensor.py'
adding 'xknx/devices/climate.py'
adding 'xknx/devices/climate_mode.py'
adding 'xknx/devices/cover.py'
adding 'xknx/devices/datetime.py'
adding 'xknx/devices/device.py'
adding 'xknx/devices/devices.py'
adding 'xknx/devices/expose_sensor.py'
adding 'xknx/devices/fan.py'
adding 'xknx/devices/light.py'
adding 'xknx/devices/notification.py'
adding 'xknx/devices/numeric_value.py'
adding 'xknx/devices/raw_value.py'
adding 'xknx/devices/scene.py'
adding 'xknx/devices/sensor.py'
adding 'xknx/devices/switch.py'
adding 'xknx/devices/travelcalculator.py'
adding 'xknx/devices/weather.py'
adding 'xknx/dpt/__init__.py'
adding 'xknx/dpt/dpt.py'
adding 'xknx/dpt/dpt_1.py'
adding 'xknx/dpt/dpt_10.py'
adding 'xknx/dpt/dpt_11.py'
adding 'xknx/dpt/dpt_12.py'
adding 'xknx/dpt/dpt_13.py'
adding 'xknx/dpt/dpt_14.py'
adding 'xknx/dpt/dpt_16.py'
adding 'xknx/dpt/dpt_17.py'
adding 'xknx/dpt/dpt_18.py'
adding 'xknx/dpt/dpt_19.py'
adding 'xknx/dpt/dpt_20.py'
adding 'xknx/dpt/dpt_232.py'
adding 'xknx/dpt/dpt_235.py'
adding 'xknx/dpt/dpt_242.py'
adding 'xknx/dpt/dpt_251.py'
adding 'xknx/dpt/dpt_3.py'
adding 'xknx/dpt/dpt_5.py'
adding 'xknx/dpt/dpt_6.py'
adding 'xknx/dpt/dpt_7.py'
adding 'xknx/dpt/dpt_8.py'
adding 'xknx/dpt/dpt_9.py'
adding 'xknx/dpt/payload.py'
adding 'xknx/exceptions/__init__.py'
adding 'xknx/exceptions/exception.py'
adding 'xknx/io/__init__.py'
adding 'xknx/io/connection.py'
adding 'xknx/io/const.py'
adding 'xknx/io/gateway_scanner.py'
adding 'xknx/io/interface.py'
adding 'xknx/io/ip_secure.py'
adding 'xknx/io/knxip_interface.py'
adding 'xknx/io/routing.py'
adding 'xknx/io/self_description.py'
adding 'xknx/io/tunnel.py'
adding 'xknx/io/util.py'
adding 'xknx/io/request_response/__init__.py'
adding 'xknx/io/request_response/authenticate.py'
adding 'xknx/io/request_response/connect.py'
adding 'xknx/io/request_response/connectionstate.py'
adding 'xknx/io/request_response/device_configuration.py'
adding 'xknx/io/request_response/disconnect.py'
adding 'xknx/io/request_response/request_response.py'
adding 'xknx/io/request_response/session.py'
adding 'xknx/io/request_response/tunnelling.py'
adding 'xknx/io/transport/__init__.py'
adding 'xknx/io/transport/ip_transport.py'
adding 'xknx/io/transport/tcp_transport.py'
adding 'xknx/io/transport/udp_transport.py'
adding 'xknx/knxip/__init__.py'
adding 'xknx/knxip/body.py'
adding 'xknx/knxip/connect_request.py'
adding 'xknx/knxip/connect_response.py'
adding 'xknx/knxip/connectionstate_request.py'
adding 'xknx/knxip/connectionstate_response.py'
adding 'xknx/knxip/description_request.py'
adding 'xknx/knxip/description_response.py'
adding 'xknx/knxip/device_configuration_ack.py'
adding 'xknx/knxip/device_configuration_request.py'
adding 'xknx/knxip/dib.py'
adding 'xknx/knxip/disconnect_request.py'
adding 'xknx/knxip/disconnect_response.py'
adding 'xknx/knxip/error_code.py'
adding 'xknx/knxip/header.py'
adding 'xknx/knxip/hpai.py'
adding 'xknx/knxip/knxip.py'
adding 'xknx/knxip/knxip_enum.py'
adding 'xknx/knxip/routing_busy.py'
adding 'xknx/knxip/routing_indication.py'
adding 'xknx/knxip/routing_lost_message.py'
adding 'xknx/knxip/search_request.py'
adding 'xknx/knxip/search_request_extended.py'
adding 'xknx/knxip/search_response.py'
adding 'xknx/knxip/search_response_extended.py'
adding 'xknx/knxip/secure_wrapper.py'
adding 'xknx/knxip/session_authenticate.py'
adding 'xknx/knxip/session_request.py'
adding 'xknx/knxip/session_response.py'
adding 'xknx/knxip/session_status.py'
adding 'xknx/knxip/srp.py'
adding 'xknx/knxip/timer_notify.py'
adding 'xknx/knxip/tunnelling_ack.py'
adding 'xknx/knxip/tunnelling_feature.py'
adding 'xknx/knxip/tunnelling_request.py'
adding 'xknx/management/__init__.py'
adding 'xknx/management/management.py'
adding 'xknx/management/procedures.py'
adding 'xknx/profile/__init__.py'
adding 'xknx/profile/const.py'
adding 'xknx/remote_value/__init__.py'
adding 'xknx/remote_value/remote_value.py'
adding 'xknx/remote_value/remote_value_climate_mode.py'
adding 'xknx/remote_value/remote_value_color_rgb.py'
adding 'xknx/remote_value/remote_value_color_rgbw.py'
adding 'xknx/remote_value/remote_value_color_xyy.py'
adding 'xknx/remote_value/remote_value_datetime.py'
adding 'xknx/remote_value/remote_value_dpt_value_1_ucount.py'
adding 'xknx/remote_value/remote_value_raw.py'
adding 'xknx/remote_value/remote_value_scaling.py'
adding 'xknx/remote_value/remote_value_scene_number.py'
adding 'xknx/remote_value/remote_value_sensor.py'
adding 'xknx/remote_value/remote_value_setpoint_shift.py'
adding 'xknx/remote_value/remote_value_step.py'
adding 'xknx/remote_value/remote_value_switch.py'
adding 'xknx/remote_value/remote_value_temp.py'
adding 'xknx/remote_value/remote_value_updown.py'
adding 'xknx/secure/__init__.py'
adding 'xknx/secure/data_secure.py'
adding 'xknx/secure/data_secure_asdu.py'
adding 'xknx/secure/keyring.py'
adding 'xknx/secure/security_primitives.py'
adding 'xknx/secure/util.py'
adding 'xknx/telegram/__init__.py'
adding 'xknx/telegram/address.py'
adding 'xknx/telegram/address_filter.py'
adding 'xknx/telegram/apci.py'
adding 'xknx/telegram/telegram.py'
adding 'xknx/telegram/tpci.py'
adding 'xknx/tools/__init__.py'
adding 'xknx/tools/group_communication.py'
adding 'xknx/typing/__init__.py'
adding 'xknx/util/__init__.py'
adding 'xknx-3.2.0.dist-info/LICENSE'
adding 'xknx-3.2.0.dist-info/METADATA'
adding 'xknx-3.2.0.dist-info/WHEEL'
adding 'xknx-3.2.0.dist-info/top_level.txt'
adding 'xknx-3.2.0.dist-info/RECORD'
removing build/bdist.linux-x86_64/wheel
Successfully built xknx-3.2.0-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/build; 
python3.12 -m pytest test
/usr/lib/python3/dist-packages/pytest_asyncio/plugin.py:208: PytestDeprecationWarning: 
The configuration option "asyncio_default_fixture_loop_scope" is unset.
The event loop scope for asynchronous fixtures will default to the fixture caching scope. Future versions of pytest-asyncio will 
default the loop scope for asynchronous fixtures to function scope. Set the default fixture loop scope explicitly in order to 
avoid unexpected behavior in the future. Valid fixture loop scopes are: "function", "class", 
"module", "package", "session"

  warnings.warn(PytestDeprecationWarning(_DEFAULT_FIXTURE_LOOP_SCOPE_UNSET))
============================= test session starts ==============================
platform linux -- Python 3.12.7, pytest-8.3.3, pluggy-1.5.0
rootdir: /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build
configfile: pyproject.toml
plugins: typeguard-4.3.0, asyncio-0.24.0a1, cov-5.0.0
asyncio: mode=Mode.AUTO, default_loop_scope=None
collected 2782 items

test/cemi_tests/cemi_frame_test.py ...............................       [  1%]
test/cemi_tests/cemi_handler_test.py ........                            [  1%]
test/core_tests/connection_manager_test.py ......                        [  1%]
test/core_tests/exceptions_test.py ......                                [  1%]
test/core_tests/group_address_dpt_test.py .....                          [  2%]
test/core_tests/state_updater_test.py ............                       [  2%]
test/core_tests/task_registry_test.py .....                              [  2%]
test/core_tests/telegram_queue_test.py ..................                [  3%]
test/core_tests/value_reader_test.py .....                               [  3%]
test/devices_tests/binary_sensor_test.py ............                    [  3%]
test/devices_tests/climate_test.py ..................................... [  5%]
........................                                                 [  6%]
test/devices_tests/cover_test.py ....................................... [  7%]
.                                                                        [  7%]
test/devices_tests/datetime_test.py .............                        [  7%]
test/devices_tests/device_test.py ........                               [  8%]
test/devices_tests/devices_test.py .........                             [  8%]
test/devices_tests/expose_sensor_test.py .............                   [  9%]
test/devices_tests/fan_test.py ..............                            [  9%]
test/devices_tests/light_test.py ....................................... [ 10%]
.............................                                            [ 12%]
test/devices_tests/notification_test.py ........                         [ 12%]
test/devices_tests/numeric_value_test.py .....................           [ 13%]
test/devices_tests/raw_value_test.py ............                        [ 13%]
test/devices_tests/scene_test.py ...                                     [ 13%]
test/devices_tests/sensor_expose_loop_test.py .......................... [ 14%]
........................................................................ [ 17%]
.............................................                            [ 18%]
test/devices_tests/sensor_test.py ...................................... [ 20%]
........................................................................ [ 22%]
.........................                                                [ 23%]
test/devices_tests/switch_test.py ................                       [ 24%]
test/devices_tests/travelcalculator_test.py .............                [ 24%]
test/devices_tests/weather_test.py ..................                    [ 25%]
test/dpt_tests/dpt_10_time_test.py ...................                   [ 25%]
test/dpt_tests/dpt_11_date_test.py ....................                  [ 26%]
test/dpt_tests/dpt_12_test.py ................                           [ 27%]
test/dpt_tests/dpt_14_float_test.py .............                        [ 27%]
test/dpt_tests/dpt_16_string_test.py ................                    [ 28%]
test/dpt_tests/dpt_17_scene_number_test.py ........                      [ 28%]
test/dpt_tests/dpt_18_scene_control_test.py .................            [ 29%]
test/dpt_tests/dpt_19_datetime_test.py ............                      [ 29%]
test/dpt_tests/dpt_1_test.py ........................................... [ 31%]
........................................................................ [ 33%]
.........................................                                [ 35%]
test/dpt_tests/dpt_20_hvac_mode_test.py .............................    [ 36%]
test/dpt_tests/dpt_235_tariff_active_energy_test.py .................... [ 36%]
.................                                                        [ 37%]
test/dpt_tests/dpt_3_test.py ...........................                 [ 38%]
test/dpt_tests/dpt_5_test.py .........................                   [ 39%]
test/dpt_tests/dpt_6_test.py ............                                [ 39%]
test/dpt_tests/dpt_7_test.py .........                                   [ 40%]
test/dpt_tests/dpt_8_test.py .........                                   [ 40%]
test/dpt_tests/dpt_9_float_test.py ............................          [ 41%]
test/dpt_tests/dpt_color_test.py ....................................... [ 42%]
........................................................................ [ 45%]
................                                                         [ 46%]
test/dpt_tests/dpt_lookup_test.py ...................................... [ 47%]
........................................................................ [ 50%]
........................................................................ [ 52%]
..................                                                       [ 53%]
test/dpt_tests/dpt_test.py ............................................. [ 54%]
........................................................................ [ 57%]
........................................................................ [ 60%]
........................................................................ [ 62%]
........................................................................ [ 65%]
..................................................                       [ 67%]
test/dpt_tests/payload_test.py .........                                 [ 67%]
test/io_tests/connection_test.py ..                                      [ 67%]
test/io_tests/gateway_scanner_test.py ........F....                      [ 67%]
test/io_tests/knxip_interface_test.py ...................FF              [ 68%]
test/io_tests/request_response_tests/authenticate_test.py .              [ 68%]
test/io_tests/request_response_tests/connect_test.py ..                  [ 68%]
test/io_tests/request_response_tests/connectionstate_test.py ..          [ 68%]
test/io_tests/request_response_tests/device_configuration_test.py .      [ 68%]
test/io_tests/request_response_tests/disconnect_test.py ..               [ 68%]
test/io_tests/request_response_tests/request_response_test.py ...        [ 69%]
test/io_tests/request_response_tests/session_test.py .                   [ 69%]
test/io_tests/request_response_tests/tunnelling_test.py .                [ 69%]
test/io_tests/routing_test.py ....                                       [ 69%]
test/io_tests/secure_group_test.py .......                               [ 69%]
test/io_tests/secure_session_test.py ......                              [ 69%]
test/io_tests/self_description_test.py ...                               [ 69%]
test/io_tests/transport_tests/ip_transport_test.py .                     [ 69%]
test/io_tests/tunnel_test.py ............                                [ 70%]
test/knxip_tests/body_test.py ..                                         [ 70%]
test/knxip_tests/connect_request_test.py ........                        [ 70%]
test/knxip_tests/connect_response_test.py ..........                     [ 71%]
test/knxip_tests/connectionstate_request_test.py ..                      [ 71%]
test/knxip_tests/connectionstate_response_test.py ..                     [ 71%]
test/knxip_tests/description_request_test.py .                           [ 71%]
test/knxip_tests/description_response_test.py ..                         [ 71%]
test/knxip_tests/device_configuration_ack_test.py ...                    [ 71%]
test/knxip_tests/device_configuration_request_test.py ...                [ 71%]
test/knxip_tests/dib_test.py .......                                     [ 71%]
test/knxip_tests/disconnect_request_test.py ..                           [ 71%]
test/knxip_tests/disconnect_response_test.py ..                          [ 71%]
test/knxip_tests/header_test.py .......                                  [ 72%]
test/knxip_tests/hpai_test.py .......                                    [ 72%]
test/knxip_tests/knxip_test.py ...                                       [ 72%]
test/knxip_tests/routing_busy_test.py ...                                [ 72%]
test/knxip_tests/routing_indication_test.py .....                        [ 72%]
test/knxip_tests/routing_lost_message_test.py ...                        [ 72%]
test/knxip_tests/search_request_extended_test.py ...                     [ 73%]
test/knxip_tests/search_request_test.py .                                [ 73%]
test/knxip_tests/search_response_extended_test.py ..                     [ 73%]
test/knxip_tests/search_response_test.py ..                              [ 73%]
test/knxip_tests/secure_wrapper_test.py .                                [ 73%]
test/knxip_tests/session_authenticate_test.py .                          [ 73%]
test/knxip_tests/session_request_test.py .                               [ 73%]
test/knxip_tests/session_response_test.py .                              [ 73%]
test/knxip_tests/session_status_test.py .                                [ 73%]
test/knxip_tests/srp_test.py ........                                    [ 73%]
test/knxip_tests/timer_notify_test.py .                                  [ 73%]
test/knxip_tests/tunnelling_ack_test.py ...                              [ 73%]
test/knxip_tests/tunnelling_feature_test.py .......                      [ 74%]
test/knxip_tests/tunnelling_request_test.py ...                          [ 74%]
test/management_tests/management_test.py .......                         [ 74%]
test/management_tests/procedures_test.py ................                [ 75%]
test/remote_value_tests/remote_value_climate_mode_test.py .............. [ 75%]
............                                                             [ 75%]
test/remote_value_tests/remote_value_color_rgb_test.py ......            [ 76%]
test/remote_value_tests/remote_value_color_rgbw_test.py ......           [ 76%]
test/remote_value_tests/remote_value_color_xyy_test.py ......            [ 76%]
test/remote_value_tests/remote_value_datetime_test.py ...                [ 76%]
test/remote_value_tests/remote_value_dpt_value_1_ucount_test.py ......   [ 76%]
test/remote_value_tests/remote_value_raw_test.py ......                  [ 77%]
test/remote_value_tests/remote_value_scaling_test.py ......              [ 77%]
test/remote_value_tests/remote_value_scene_number_test.py ......         [ 77%]
test/remote_value_tests/remote_value_sensor_test.py ......               [ 77%]
test/remote_value_tests/remote_value_setepoint_shift_test.py ........    [ 78%]
test/remote_value_tests/remote_value_step_test.py ........               [ 78%]
test/remote_value_tests/remote_value_string_test.py ......               [ 78%]
test/remote_value_tests/remote_value_switch_test.py .........            [ 78%]
test/remote_value_tests/remote_value_temp_test.py .....                  [ 79%]
test/remote_value_tests/remote_value_test.py ..............              [ 79%]
test/remote_value_tests/remote_value_updown_test.py ........             [ 79%]
test/secure_tests/data_secure_test.py ................                   [ 80%]
test/secure_tests/ip_secure_test.py ......                               [ 80%]
test/secure_tests/keyring_test.py ...........                            [ 81%]
test/secure_tests/util_test.py ............                              [ 81%]
test/str_test.py .....................................................   [ 83%]
test/telegram_tests/address_filter_test.py ..............                [ 83%]
test/telegram_tests/address_test.py .................................... [ 85%]
........................................................................ [ 87%]
........................................................................ [ 90%]
.....................................................                    [ 92%]
test/telegram_tests/apci_test.py ....................................... [ 93%]
........................................................................ [ 96%]
......................................................                   [ 98%]
test/telegram_tests/telegram_test.py ..                                  [ 98%]
test/telegram_tests/tpci_test.py ......................                  [ 99%]
test/tools_tests/tools_test.py ................                          [ 99%]
test/xknx_test.py ..........                                             [100%]

=================================== FAILURES ===================================
_____________________ TestGatewayScanner.test_scan_timeout _____________________

self = <gateway_scanner_test.TestGatewayScanner object at 0x7f1060c73f20>
getsockname_mock = <MagicMock name='getsockname' id='139708311487648'>
udp_transport_send_mock = <MagicMock name='send' id='139708303899104'>
udp_transport_connect_mock = <AsyncMock name='connect' id='139708318691312'>
time_travel = <test.conftest.EventLoopClockAdvancer object at 0x7f10602abc80>

    @patch("xknx.io.gateway_scanner.UDPTransport.connect")
    @patch("xknx.io.gateway_scanner.UDPTransport.send")
    @patch(
        "xknx.io.gateway_scanner.UDPTransport.getsockname",
        return_value=("10.1.1.2", 56789),
    )
    async def test_scan_timeout(
        self,
        getsockname_mock,
        udp_transport_send_mock,
        udp_transport_connect_mock,
        time_travel,
    ):
        """Test gateway scanner timeout."""
        xknx = XKNX()
        gateway_scanner = GatewayScanner(xknx)
        timed_out_scan_task = asyncio.create_task(gateway_scanner.scan())
        await time_travel(gateway_scanner.timeout_in_seconds)
        # Unsuccessful scan() returns empty list
      assert await timed_out_scan_task == []

test/io_tests/gateway_scanner_test.py:360:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
xknx/io/gateway_scanner.py:221: in scan
    await self._scan()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <xknx.io.gateway_scanner.GatewayScanner object at 0x7f1060496000>
queue = None

    async def _scan(
        self, queue: asyncio.Queue[GatewayDescriptor | None] | None = None
    ) -> None:
        """Scan for gateways."""
        _local_ip = self.local_ip or await util.get_default_local_ip(
            remote_ip=self.xknx.multicast_group
        )
        if _local_ip is None:
            if queue is not None:
                queue.put_nowait(None)
          raise XKNXException("No usable network interface found.")
E           xknx.exceptions.exception.XKNXException: No usable network 
interface found.

xknx/io/gateway_scanner.py:250: XKNXException
------------------------------ Captured log call -------------------------------
WARNING  xknx.log:util.py:31 The system could not auto detect the source ip for 
224.0.23.12 on your operating system
____________ TestKNXIPInterface.test_start_secure_routing_knx_keys _____________

self = <knxip_interface_test.TestKNXIPInterface object at 0x7f106076ed20>

    async def test_start_secure_routing_knx_keys(self):
        """Test starting a secure routing connection from a knxkeys file."""
        backbone_key = bytes.fromhex("cf89fd0f18f4889783c7ef44ee1f5e14")
        connection_config = ConnectionConfig(
            connection_type=ConnectionType.ROUTING_SECURE,
            secure_config=SecureConfig(
                knxkeys_file_path=self.knxkeys_file, knxkeys_password="password"
            ),
        )
        with patch("xknx.io.routing.SecureRouting.connect") as connect_secure:
            interface = knx_interface_factory(self.xknx, connection_config)
          await interface.start()

test/io_tests/knxip_interface_test.py:638:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
xknx/io/knxip_interface.py:73: in start
    await self._start()
xknx/io/knxip_interface.py:96: in _start
    await self._start_secure_routing(local_ip=local_ip, keyring=keyring)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <xknx.io.knxip_interface.KNXIPInterface object at 0x7f105fd79a00>
local_ip = None
keyring = <xknx.secure.keyring.Keyring object at 0x7f105fe0e930>

    async def _start_secure_routing(
        self,
        local_ip: str | None,
        keyring: Keyring | None = None,
    ) -> None:
        """Start KNX/IP Routing."""
        if self.connection_config.secure_config is None:
            raise InvalidSecureConfiguration("SecureConfig missing in 
ConnectionConfig")
        backbone_key = self.connection_config.secure_config.backbone_key
        latency_ms = self.connection_config.secure_config.latency_ms
        multicast_group = self.connection_config.multicast_group
        multicast_port = self.connection_config.multicast_port
if keyring is not None and keyring.backbone is not None:
            # default to manually configured values
            backbone_key = backbone_key or keyring.backbone.decrypted_key
            latency_ms = latency_ms or keyring.backbone.latency
            if keyring.backbone.multicast_address:
                multicast_group = keyring.backbone.multicast_address
        if not backbone_key:
            raise InvalidSecureConfiguration(
                "No backbone key found in secure configuration"
            )
local_ip = local_ip or await util.get_default_local_ip()
        if local_ip is None:
          raise XKNXException("No network interface found.")
E           xknx.exceptions.exception.XKNXException: No network interface found.

xknx/io/knxip_interface.py:440: XKNXException
------------------------------ Captured log call -------------------------------
WARNING  xknx.log:util.py:31 The system could not auto detect the source ip for 
224.0.23.12 on your operating system
_____________ TestKNXIPInterface.test_start_secure_routing_manual ______________

self = <knxip_interface_test.TestKNXIPInterface object at 0x7f106076f080>

    async def test_start_secure_routing_manual(self):
        """Test starting a secure routing connection from a knxkeys file."""
        backbone_key_str = "cf89fd0f18f4889783c7ef44ee1f5e14"
        backbone_key = bytes.fromhex(backbone_key_str)
        connection_config = ConnectionConfig(
            connection_type=ConnectionType.ROUTING_SECURE,
            secure_config=SecureConfig(backbone_key=backbone_key_str, 
latency_ms=2000),
        )
        with patch("xknx.io.routing.SecureRouting.connect") as connect_secure:
            interface = knx_interface_factory(self.xknx, connection_config)
          await interface.start()

test/io_tests/knxip_interface_test.py:662:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
xknx/io/knxip_interface.py:73: in start
    await self._start()
xknx/io/knxip_interface.py:96: in _start
    await self._start_secure_routing(local_ip=local_ip, keyring=keyring)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <xknx.io.knxip_interface.KNXIPInterface object at 0x7f106011c230>
local_ip = None, keyring = None

    async def _start_secure_routing(
        self,
        local_ip: str | None,
        keyring: Keyring | None = None,
    ) -> None:
        """Start KNX/IP Routing."""
        if self.connection_config.secure_config is None:
            raise InvalidSecureConfiguration("SecureConfig missing in 
ConnectionConfig")
        backbone_key = self.connection_config.secure_config.backbone_key
        latency_ms = self.connection_config.secure_config.latency_ms
        multicast_group = self.connection_config.multicast_group
        multicast_port = self.connection_config.multicast_port
if keyring is not None and keyring.backbone is not None:
            # default to manually configured values
            backbone_key = backbone_key or keyring.backbone.decrypted_key
            latency_ms = latency_ms or keyring.backbone.latency
            if keyring.backbone.multicast_address:
                multicast_group = keyring.backbone.multicast_address
        if not backbone_key:
            raise InvalidSecureConfiguration(
                "No backbone key found in secure configuration"
            )
local_ip = local_ip or await util.get_default_local_ip()
        if local_ip is None:
          raise XKNXException("No network interface found.")
E           xknx.exceptions.exception.XKNXException: No network interface found.

xknx/io/knxip_interface.py:440: XKNXException
------------------------------ Captured log call -------------------------------
WARNING  xknx.log:util.py:31 The system could not auto detect the source ip for 
224.0.23.12 on your operating system
=========================== short test summary info ============================
FAILED 
test/io_tests/gateway_scanner_test.py::TestGatewayScanner::test_scan_timeout
FAILED 
test/io_tests/knxip_interface_test.py::TestKNXIPInterface::test_start_secure_routing_knx_keys
FAILED 
test/io_tests/knxip_interface_test.py::TestKNXIPInterface::test_start_secure_routing_manual
======================== 3 failed, 2779 passed in 4.89s ========================
Task was destroyed but it is pending!
task: <Task pending name='Task-1092' coro=<_Tunnel.do_heartbeat() running at 
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build/xknx/io/tunnel.py:348> wait_for=<Future 
pending cb=[Task.task_wakeup()]>>
Task was destroyed but it is pending!
task: <Task pending name='Task-1089' coro=<_Tunnel.do_heartbeat() running at 
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build/xknx/io/tunnel.py:348> wait_for=<Future 
pending cb=[Task.task_wakeup()]>>
Task was destroyed but it is pending!
task: <Task pending name='Task-1086' coro=<_Tunnel.do_heartbeat() running at 
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build/xknx/io/tunnel.py:349> wait_for=<Future 
pending cb=[Task.task_wakeup()]>>
Task was destroyed but it is pending!
task: <Task pending name='Task-1056' coro=<SecureSession._session_keepalive() running at 
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build/xknx/io/ip_secure.py:343> wait_for=<Future 
pending cb=[Task.task_wakeup()]>>
Task was destroyed but it is pending!
task: <Task pending name='Task-1067' coro=<CEMIHandler.send_telegram() running at 
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build/xknx/cemi/cemi_handler.py:83> 
wait_for=<Future pending cb=[Task.task_wakeup()]> cb=[set.discard()]>
Task was destroyed but it is pending!
task: <Task pending name='Task-1080' coro=<UDPTunnel.send_cemi() running at 
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build/xknx/io/tunnel.py:446> wait_for=<Future 
pending cb=[Task.task_wakeup()]>>
Task was destroyed but it is pending!
task: <Task pending name='Task-1075' coro=<UDPTunnel.send_cemi() running at 
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build/xknx/io/tunnel.py:446> wait_for=<Future 
pending cb=[Task.task_wakeup()]>>
E: pybuild pybuild:389: test: plugin pyproject failed with: exit code=1: cd 
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build; python3.12 -m pytest test
dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p 3.12 
returned exit code 13
make: *** [debian/rules:7: build] Error 25
dpkg-buildpackage: error: debian/rules build 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/202410/

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

The unshare backend of sbuild was used for the build. A failure usually
indicates the package is trying to access Internet.

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 affects, so that this is still visible in the BTS web
page for this package.

Thanks.

--- End Message ---
--- Begin Message ---
Source: python-xknx
Source-Version: 3.6.0-1
Done: Edward Betts <[email protected]>

We believe that the bug you reported is fixed in the latest version of
python-xknx, 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 [email protected],
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Edward Betts <[email protected]> (supplier of updated python-xknx 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 [email protected])


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

Format: 1.8
Date: Wed, 26 Mar 2025 15:37:24 +0000
Source: python-xknx
Architecture: source
Version: 3.6.0-1
Distribution: unstable
Urgency: medium
Maintainer: Home Assistant Team <[email protected]>
Changed-By: Edward Betts <[email protected]>
Closes: 1084765
Changes:
 python-xknx (3.6.0-1) unstable; urgency=medium
 .
   * New upstream release.
   * Add my name to debian/copyright and Uploaders.
   * Update debhelper-compat to version 13.
   * Update Standards-Version.
   * Set PYBUILD_TEST_ARGS=--no-cov to stop coverage report generation.
   * Skip tests that accesses the network. (Closes: #1084765)
Checksums-Sha1:
 0da661964f239cf572c4272224625eb99d3c2511 2305 python-xknx_3.6.0-1.dsc
 fb1b4e7a64e010175706508e83af62613bd47902 711972 python-xknx_3.6.0.orig.tar.gz
 d098a6bc764469b27635548cf2dc4466cf8c1ff9 2608 python-xknx_3.6.0-1.debian.tar.xz
 552c8481bd4082a53aef8d2db112e55fe8eb36e0 8089 
python-xknx_3.6.0-1_source.buildinfo
Checksums-Sha256:
 8b815609047bad2a6c690b9776925e800aa49ae8e8160a0db50e07b7c88ed6b8 2305 
python-xknx_3.6.0-1.dsc
 da656542aea978847596de8c0b6ee1a87339291c048f202bf5ae89e44ce57d8f 711972 
python-xknx_3.6.0.orig.tar.gz
 13a515a60a3a6e98e9ad4374b06ff43bd5eb8d6d004371c2c03550d282b17776 2608 
python-xknx_3.6.0-1.debian.tar.xz
 af4412837f41a1b97a9aa9434f0ff82d5e0a83b96fa440f5cbcdba73b15f708f 8089 
python-xknx_3.6.0-1_source.buildinfo
Files:
 8bdaf16d3136c3606652d8a825f50f99 2305 python optional python-xknx_3.6.0-1.dsc
 f2ddc5c39ccebf230b0f7efde0ef2627 711972 python optional 
python-xknx_3.6.0.orig.tar.gz
 9ab1195617eee49bde4b63960239e33a 2608 python optional 
python-xknx_3.6.0-1.debian.tar.xz
 461d967242bf91d6465f23bf3eb56555 8089 python optional 
python-xknx_3.6.0-1_source.buildinfo

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

iQIzBAEBCgAdFiEE+4rPp4xyYInDitAmlgWhCYxjuSoFAmfkIzYACgkQlgWhCYxj
uSoITA//e+xc/mX/QZkFiMy1Ck5MZ4xiQ0+PTKVZ3Z+aSP/pJFlYN5Hq/ypAOovs
4ZQ97VkAXdNtVSqs7mmyH3oYpCbTi3LvqBtINUnnImxJ0iIKEPeTXomSalsWdJSK
xlV6jlhD+E+lk2y4ZFSlHC1E+OijtKCeE7WGBLYBV60pe2UVd/U0mU7P3G4W1Efu
MOGuRawOfLNPtqGz5iC83GuLUgQtUDm855rjKpIado9vZfVQUUrDiBiMk14Rvmy6
v6nxVYnGKgeAiNQjUsU5ZFTd02KnISmSKsezxiqRTkTgpflhAiAoOpr0jQd8HhEy
TcQIq8fvIxbvjo02G0RvsFcdBC0KkbufXpG4zbfvbYJcJZstf/JdSMbw8jbVguec
YXzjs0UsUrEDDHkXeqQ2oaZb21DPpbWkudebX2T/zqtH6RMjGO0r/5GEAp5AokyS
g+XutUbpj3sJcgTGARLon2Gv3KbwyV1dp/ucoXkHYvH+HkPmsjh57xPD9I4g4as8
w/RQCCnwfYfz+AE9zs+V7gvWwtZFKOHKo8UNA1I0JTGAxOVOO6IOg01a1gvUukPj
gx76GkmxGlkh6SbhAAv+2jL7M8YEg60sAgNaHDWc6BK/dqp+1UhWcRFj07JjSMaE
x/hZXEo4GXpv+89czZMEyjOmZs600CvpqINQuQF1TrcaELVVNtc=
=l9rk
-----END PGP SIGNATURE-----

Attachment: pgpYLhjr0HgEv.pgp
Description: PGP signature


--- End Message ---

Reply via email to