You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I noticed that the plugin mpdstats has problems accepting shell
parameters while invoking. Passing the parameter --host=HOST will
crash the application:
[user@HOST ~]$ beet -vv -p mpdstats mpdstats --host=localhost
no user configuration found at /home/user/.config/beets/config.yaml
data directory: /home/user/.config/beets
plugin paths:
Sending event: pluginload
library database: /home/user/.config/beets/library.db
library directory: /home/user/Music
Sending event: library_opened
Traceback (most recent call last):
File "/usr/bin/beet", line 8, in <module>
sys.exit(main())
^^^^^^
File "/usr/lib/python3.12/site-packages/beets/ui/__init__.py", line 1865, in main
_raw_main(args)
File "/usr/lib/python3.12/site-packages/beets/ui/__init__.py", line 1852, in _raw_main
subcommand.func(lib, suboptions, subargs)
File "/usr/lib/python3.12/site-packages/beetsplug/mpdstats.py", line 371, in func
mpd_config["host"] = opts.host.decode("utf-8")
^^^^^^^^^^^^^^^^
AttributeError: 'str' object has no attribute 'decode'. Did you mean: 'encode'?
If I put the parameters for this plugin into config.yml, then beets
will load the plugin just fine. But a mixture probably is not a good
idea. I thought, I'd pass the hostname to config.yml and the port
number through the CLI to bypass this error. Then I get the following
effect:
First the config:
plugins: mpdstatsmpd:
host: somehost
The Result:
[user@HOST beets]$ beet -vv -p mpdstats mpdstats --port=5000
user configuration: /home/user/.config/beets/config.yaml
data directory: /home/user/.config/beets
plugin paths:
Sending event: pluginload
library database: /home/user/.config/beets/library.db
library directory: /home/user/Music
Sending event: library_opened
mpdstats: music_directory: /home/user/Music
mpdstats: strip_path: /
configuration error: mpd.host: must be a string
I observe this behavior in v1.6.0 and v2.0.0.
Setup
OS: Arch Linux
Python version: 3.12.5
beets version: 2.0.0
Turning off plugins made problem go away: Beets is
configured with just the one plugin.
I'm surprised about the version reported by beets itself:
[user@HOST beets]$ pacman -Qs beets
local/beets 2.0.0-1
Flexible music library manager and tagger
[user@HOST beets]$ beet --version
beets version 1.6.1
Python version 3.12.5
plugins: mpdstats
Okay, that's actually a weird bug in itself. The Arch Linux beets package fetches the commit tagged v2.0.0, which is commit b88c09720c3f0782b90f83df74e65680c050392f. Within that commit, the __init__.py specifies version 1.6.1 instead of 2.0.0. @snejus do you know about this?
Yup - this issue issue had to do with the release workflow. It bumped the version and committed it, however that commit was not being taken into account in the next step where the distribution was built.
Thus all the new code was packaged under 1.6.1 and pushed upstream. Weirdly though, PyPI was happy with 😅 When I encountered the same issue last night PyPI errored out because I tried pushing 2.0.0 up which already existed.
I noticed that the plugin mpdstats has problems accepting shell
parameters while invoking. Passing the parameter --host=HOST will
crash the application:
If I put the parameters for this plugin into config.yml, then beets
will load the plugin just fine. But a mixture probably is not a good
idea. I thought, I'd pass the hostname to config.yml and the port
number through the CLI to bypass this error. Then I get the following
effect:
First the config:
The Result:
I observe this behavior in v1.6.0 and v2.0.0.
Setup
configured with just the one plugin.
I'm surprised about the version reported by beets itself:
My configuration (output of
beet config
) is:The text was updated successfully, but these errors were encountered: