Releases: hbldh/bleak
Releases · hbldh/bleak
v0.21.0
Added
- Added
bleak.uuids.normalize_uuid_16()function. - Added
bleak.uuids.normalize_uuid_32()function. - Added
advertisement_data()async iterator method toBleakScanner. Merged #1361. - Added type hints for kwargs on
BleakScannerclass methods. - Added support for Python 3.12.
Changed
- Improved error messages when failing to get services in WinRT backend.
- Improved error messages with enum values in WinRT backend. Fixes #1284.
- Scanner backends modified to allow multiple advertisement callbacks. Merged #1367.
- Changed default handling of the
responseargument inBleakClient.write_gatt_char.
Fixes #909. - Bleak recipe now automatically installs bleak from GitHub release in Kivy example.
- Changed
BlueZManagermethods to raiseBleakErrorwhen device is not in BlueZ. - Optimized BlueZ backend device watchers and condition callbacks to avoid linear searches.
- Changed type hint for buffer protocol to
collections.abc.Buffer.
Fixed
- Fixed handling all access denied errors when enumerating characteristics on Windows. Fixes #1291.
- Added support for 32bit UUIDs. Fixes #1314.
- Fixed typing for
BaseBleakScannerdetection callback. - Fixed possible crash in
_stopped_handler()in WinRT backend. Fixes #1330. - Reduced expensive logging in the BlueZ backend. Merged #1376.
- Fixed race condition with
"InterfaceRemoved"when getting services in BlueZ backend. - Fixed missing permissions and requirements in android Kivy example. Fixes #1184.
- Fixed WinRT backend sometimes hanging forever when a device goes out of range during connection. Fixes #1359.
v0.20.2
v0.20.1
v0.20.0
Added
- Added
BLEAK_DBUS_AUTH_UIDenvironment variable for hardcoding D-Bus UID. Merged #1182. - Added return type
Noneto some scanner methods. - Added optional hack to use Bluetooth address instead of UUID on macOS. Merged #1073.
- Added
BleakScanner.find_device_by_name()class method. - Added optional command line argument to use debug log level to all applicable examples.
- Added
bleak.uuids.normalize_uuid_str()function. - Added optional
servicesargument toBleakClient()to filter services. Merged #654. - Added automatic retry on
le-connection-abort-by-localin BlueZ backend. Fixes #1220.
Changed
- Dropped
async-timeoutdependency on Python >= 3.11. - Deprecated
BLEDevice.rssiandBLEDevice.metadata. Fixes #1025. BLEDevicenow uses__slots__to reduce memory usage. Merged #1117.BaseBleakClient.servicesis nowNoneinstead of empty service collection
until services are discovered.- Include thread name in
BLEAK_LOGGINGoutput. Merged #1144. - Updated PyObjC dependency on macOS to v9.x.
Fixed
- Fixed invalid UTF-8 in
uuids.uuid16_dict. - Fixed
AttributeErrorin_ensure_successin WinRT backend. - Fixed
BleakScanner.stop()can raiseBleakDBusErrorwithorg.bluez.Error.NotReadyin BlueZ backend. - Fixed
BleakScanner.stop()hanging in WinRT backend when Bluetooth is disabled. - Fixed leaking services when
get_services()is cancelled in WinRT backend. - Fixed disconnect monitor task not always cancelled on the BlueZ client. Merged #1159.
- Fixed WinRT scanner never calling
detection_callbackwhen a device does
not send a scan response. Fixes #1211. - Fixed
BLEDevicename sometimes incorrectlyNone. - Fixed unhandled exception in
CentralManagerDelegatedestructor on macOS. Fixes #1219. - Fixed object passed to
disconnected_callbackis notBleakClient. Fixes #1200.
v0.19.5
v0.19.4
v0.19.3
v0.19.2
v0.19.1
v0.19.0
Added
- Added support for Python 3.11. Merged #990.
- Added better error message for Bluetooth not authorized on macOS. Merged #1033.
- Added
BleakDeviceNotFoundErrorwhich should is raised if a device can not
be found byconnect,pairandunpair. Merged #1022. - Added
rssiattribute toAdvertisementData. Merged #1047. - Added
BleakScanner.discovered_devices_and_advertisement_dataproperty. Merged #1047. - Added
return_advargument toBleakScanner.discovermethod. Merged #1047. - Added
BleakClient.unpair()implementation for BlueZ backend. Merged #1067.
Changed
- Changed
AdvertisementDatato a named tuple. Merged #1047. - A faster
unpack_variantsis now provided by dbus-fast. Merged #1055.
Fixed
- On BlueZ, support creating additional instances running on a different event
loops (i.e. multiple pytest-asyncio cases). Merged #1034. - Fixed unhandled exception in
max_pdu_size_changed_handlerin WinRT backend. Fixes #1039. - Fixed stale services in WinRT backend causing
WinError -2147483629. Fixes #1061.
Removed
Removed bleak.__version__. Use importlib.metadata.version('bleak') instead.