-
Notifications
You must be signed in to change notification settings - Fork 94
Open
Description
Hello, thank you for the work on this library!
The bellows CLI scan command raises an AttributeError when no channels list is specified. When the channels list is specified, the command works properly.
Version and environment information:
bash-5.1# uname -a
Linux homeassistant 5.10.17-v8 #1 SMP PREEMPT Sat Sep 4 00:55:46 UTC 2021 aarch64 Linux
bash-5.1# python --version
Python 3.9.6
bash-5.1# pip3 --version
pip 20.2.4 from /usr/local/lib/python3.9/site-packages/pip (python 3.9)
bash-5.1# pip3 show bellows
Name: bellows
Version: 0.27.0
Summary: Library implementing EZSP
Home-page: http://github.com/zigpy/bellows
Author: Russell Cloran
Author-email: rcloran@gmail.com
License: GPL-3.0
Location: /usr/local/lib/python3.9/site-packages
Requires: pyserial-asyncio, pure-pcapy3, voluptuous, pyserial, zigpy, click-log, click
Required-by:
Example of the error:
bash-5.1# export EZSP_DEVICE=/dev/ttyUSB1
bash-5.1# bellows scan -e
Traceback (most recent call last):
File "/usr/local/bin/bellows", line 8, in <module>
sys.exit(main())
File "/usr/local/lib/python3.9/site-packages/click/core.py", line 1137, in __call__
return self.main(*args, **kwargs)
File "/usr/local/lib/python3.9/site-packages/click/core.py", line 1062, in main
rv = self.invoke(ctx)
File "/usr/local/lib/python3.9/site-packages/click/core.py", line 1666, in invoke
sub_ctx = cmd.make_context(cmd_name, args, parent=ctx)
File "/usr/local/lib/python3.9/site-packages/click/core.py", line 923, in make_context
self.parse_args(ctx, args)
File "/usr/local/lib/python3.9/site-packages/click/core.py", line 1379, in parse_args
value, args = param.handle_parse_result(ctx, opts, args)
File "/usr/local/lib/python3.9/site-packages/click/core.py", line 2364, in handle_parse_result
value = self.process_value(ctx, value)
File "/usr/local/lib/python3.9/site-packages/click/core.py", line 2320, in process_value
value = self.type_cast_value(ctx, value)
File "/usr/local/lib/python3.9/site-packages/click/core.py", line 2307, in type_cast_value
return convert(value)
File "/usr/local/lib/python3.9/site-packages/click/types.py", line 75, in __call__
return self.convert(value, param, ctx)
File "/usr/local/lib/python3.9/site-packages/bellows/cli/util.py", line 22, in convert
values = [self.intrange.convert(v, param, ctx) for v in value.split(",")]
AttributeError: 'list' object has no attribute 'split'
Example without the error:
bash-5.1# bellows scan -e -C 11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26
Scanning channels 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
[11, -70]
[12, -73]
[13, -67]
[14, -76]
[15, -73]
[16, -72]
[17, -76]
[18, -78]
[19, -73]
[20, -78]
[21, -60]
[22, -40]
[23, -40]
[24, -77]
[25, -71]
[26, -76]
Activity
Hedda commentedon Mar 8, 2024
FYI, the bellows CLI is not maintained any longer, it has been replaced by the combination of the main zigpy library (for ZCL + ZDO) and zigpy-cli (for tools and debugging):
https://github.com/zigpy/zigpy
https://github.com/zigpy/zigpy-cli