PS C:\Users\AsrockB560MHDV> miiocli yeelight --help
Traceback (most recent call last):
File "C:\Users\AsrockB560MHDV\AppData\Local\Programs\Python\Python310\lib\runpy.py", line 196, in _run_module_as_main
return _run_code(code, main_globals, None,
File "C:\Users\AsrockB560MHDV\AppData\Local\Programs\Python\Python310\lib\runpy.py", line 86, in _run_code
exec(code, run_globals)
File "C:\Users\AsrockB560MHDV\AppData\Local\Programs\Python\Python310\Scripts\miiocli.exe\__main__.py", line 6, in <module>
File "C:\Users\AsrockB560MHDV\AppData\Local\Programs\Python\Python310\lib\site-packages\miio\cli.py", line 66, in create_cli
return cli(auto_envvar_prefix="MIIO")
File "C:\Users\AsrockB560MHDV\AppData\Local\Programs\Python\Python310\lib\site-packages\miio\click_common.py", line 51, in __call__
return self.main(*args, **kwargs)
File "C:\Users\AsrockB560MHDV\AppData\Local\Programs\Python\Python310\lib\site-packages\click\core.py", line 1383, in main
rv = self.invoke(ctx)
File "C:\Users\AsrockB560MHDV\AppData\Local\Programs\Python\Python310\lib\site-packages\click\core.py", line 1848, in invoke
sub_ctx = cmd.make_context(cmd_name, args, parent=ctx)
File "C:\Users\AsrockB560MHDV\AppData\Local\Programs\Python\Python310\lib\site-packages\click\core.py", line 1206, in make_context
self.parse_args(ctx, args)
File "C:\Users\AsrockB560MHDV\AppData\Local\Programs\Python\Python310\lib\site-packages\click\core.py", line 1806, in parse_args
rest = super().parse_args(ctx, args)
File "C:\Users\AsrockB560MHDV\AppData\Local\Programs\Python\Python310\lib\site-packages\click\core.py", line 1217, in parse_args
_, args = param.handle_parse_result(ctx, opts, args)
File "C:\Users\AsrockB560MHDV\AppData\Local\Programs\Python\Python310\lib\site-packages\click\core.py", line 2516, in handle_parse_result
value = self.process_value(ctx, value)
File "C:\Users\AsrockB560MHDV\AppData\Local\Programs\Python\Python310\lib\site-packages\click\core.py", line 2411, in process_value
value = self.callback(ctx, self, value)
File "C:\Users\AsrockB560MHDV\AppData\Local\Programs\Python\Python310\lib\site-packages\click\decorators.py", line 539, in show_help
echo(ctx.get_help(), color=ctx.color)
File "C:\Users\AsrockB560MHDV\AppData\Local\Programs\Python\Python310\lib\site-packages\click\core.py", line 750, in get_help
return self.command.get_help(self)
File "C:\Users\AsrockB560MHDV\AppData\Local\Programs\Python\Python310\lib\site-packages\click\core.py", line 1084, in get_help
self.format_help(ctx, formatter)
File "C:\Users\AsrockB560MHDV\AppData\Local\Programs\Python\Python310\lib\site-packages\click\core.py", line 1122, in format_help
self.format_usage(ctx, formatter)
File "C:\Users\AsrockB560MHDV\AppData\Local\Programs\Python\Python310\lib\site-packages\click\core.py", line 1023, in format_usage
formatter.write_usage(ctx.command_path, " ".join(pieces))
TypeError: sequence item 1: expected str instance, bool found
Issue Title
Compatibility issue between
python-miioandclick8.3.0 causes TypeError when usingmiiocli yeelight --help (or any other comand)Describe the bug
When running
miiocli yeelight --helpwithclickversion 8.3.0 installed, a TypeError occurs:sequence item 1: expected str instance, bool found. The issue is resolved by downgradingclickto version 8.0.0. This indicates a compatibility problem between the currentpython-miioversion and newerclickreleases.Version information
To Reproduce
python-miiousingpip install python-miioclickversion 8.3.0 is installedmiiocli yeelight --helpConsole output
Additional context
The issue appears to be related to changes in
click8.3.0 that break compatibility with howpython-miiohandles command-line interface generation. This likely affects other device commands as well, not just Yeelight.Temporary workaround