- 
                Notifications
    
You must be signed in to change notification settings  - Fork 95
 
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: [email protected]
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]
Metadata
Metadata
Assignees
Labels
No labels