Files
beets/beetsplug
Aidan Epstein db4f30b230 Cast keys to list to avoid exception in optparse
In #6695, the Item and Album all_keys methods return sets now. This
causes an error when used in optparse for choices as it doesn't accept
sets:
Traceback (most recent call last):
  File "/home/user/.local/bin/beet", line 10, in <module>
    sys.exit(main())
             ~~~~^^
  File "/home/user/.local/lib/beets/beets/ui/__init__.py", line 964, in main
    _raw_main(args)
    ~~~~~~~~~^^^^^^
  File "/home/user/.local/lib/beets/beets/ui/__init__.py", line 940, in _raw_main
    subcommands, lib = _setup(options)
                       ~~~~~~^^^^^^^^^
  File "/home/user/.local/lib/beets/beets/ui/__init__.py", line 781, in _setup
    subcommands.extend(plugins.commands())
                       ~~~~~~~~~~~~~~~~^^
  File "/home/user/.local/lib/beets/beets/plugins.py", line 508, in commands
    out += plugin.commands()
           ~~~~~~~~~~~~~~~^^
  File "/home/user/.local/lib/beets/beetsplug/fish.py", line 80, in commands
    cmd.parser.add_option(
    ~~~~~~~~~~~~~~~~~~~~~^
        "-e",
        ^^^^^
    ...<4 lines>...
        help="include specified field *values* in completions",
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "/usr/lib/python3.14/optparse.py", line 990, in add_option
    option = self.option_class(*args, **kwargs)
  File "/usr/lib/python3.14/optparse.py", line 571, in __init__
    checker(self)
    ~~~~~~~^^^^^^
  File "/usr/lib/python3.14/optparse.py", line 658, in _check_choice
    raise OptionError(
        "choices must be a list of strings ('%s' supplied)"
        % str(type(self.choices)).split("'")[1], self)
optparse.OptionError: option -e/--extravalues: choices must be a list of strings ('set' supplied)
2026-06-11 01:03:13 +01:00
..
2026-06-09 00:14:06 +01:00
2026-06-09 00:14:06 +01:00
2026-06-09 00:14:06 +01:00
2026-06-09 00:14:06 +01:00
2026-05-20 16:53:06 +02:00
2026-06-09 00:14:06 +01:00
2026-06-09 00:14:06 +01:00
2026-03-06 10:57:08 +00:00
2026-06-09 00:14:06 +01:00
2026-06-09 00:14:06 +01:00
2026-05-20 16:53:06 +02:00
2026-06-09 00:14:06 +01:00
2026-06-09 00:14:06 +01:00
2026-06-09 00:14:06 +01:00
2026-05-20 16:53:06 +02:00
2026-06-09 00:14:06 +01:00
2026-06-09 00:14:06 +01:00
2026-06-09 00:14:06 +01:00
2026-06-09 00:14:06 +01:00
2026-06-09 00:14:06 +01:00
2026-05-11 22:43:53 +02:00
2026-06-09 00:14:06 +01:00
2026-05-20 16:53:06 +02:00
2026-06-09 00:14:06 +01:00
2026-06-09 00:14:06 +01:00
2026-06-09 00:14:06 +01:00
2026-06-09 00:14:06 +01:00
2024-09-21 11:57:48 +01:00
2026-05-20 16:53:06 +02:00
2026-06-09 00:14:06 +01:00
2026-05-20 16:53:06 +02:00
2025-08-30 23:10:21 +01:00
2026-06-09 00:14:06 +01:00
2026-05-20 16:53:06 +02:00
2026-06-09 00:14:06 +01:00
2026-05-20 16:53:06 +02:00
2026-05-20 16:53:06 +02:00
2026-06-09 00:14:06 +01:00
2026-06-09 00:14:06 +01:00
2026-05-20 16:53:06 +02:00
2026-06-09 00:14:06 +01:00
2026-06-09 00:14:06 +01:00
2025-07-08 11:37:34 +01:00
2026-06-09 00:14:06 +01:00
2026-06-09 00:14:06 +01:00
2026-06-09 00:14:06 +01:00
2026-06-09 00:14:06 +01:00
2026-06-09 00:14:06 +01:00
2026-06-09 00:14:06 +01:00
2026-06-09 00:14:06 +01:00
2026-05-20 16:53:06 +02:00
2026-06-09 00:14:06 +01:00
2026-05-20 16:53:06 +02:00
2026-06-09 00:14:06 +01:00
2026-05-27 20:03:54 +01:00
2026-06-09 00:14:06 +01:00
2026-06-09 00:14:06 +01:00
2026-05-20 16:53:06 +02:00
2026-05-17 07:39:13 +01:00
2026-06-09 00:14:06 +01:00
2026-05-20 16:53:06 +02:00
2026-06-09 00:14:06 +01:00
2026-06-09 00:14:06 +01:00
2026-06-09 00:14:06 +01:00
2026-06-09 00:14:06 +01:00
2025-08-30 18:42:26 +01:00
2026-04-25 16:28:06 +01:00