beetbox / beets

music library manager and MusicBrainz tagger
http://beets.io/
MIT License
12.57k stars 1.8k forks source link

web plugin `readonly` and `include_paths` not working? #5294

Open iveney opened 3 weeks ago

iveney commented 3 weeks ago

Seems reproducible by other folks. Think this might worth raising as issue.

Discussed in https://github.com/beetbox/beets/discussions/5290

Originally posted by **iveney** June 7, 2024 I enabled web in the plugin list, and can successfully run it with `beet web` ``` web: host: 0.0.0.0 readonly: no include_paths: yes ``` However, I cannot edit the tag or show the path. I can play and download without any problem. How do I enable editing and show the paths? ![image](https://github.com/beetbox/beets/assets/51033/a4224ceb-cf1b-4d83-bdd6-c53c472a9d57) ``` ❯ beet --version beets version 2.0.0 Python version 3.12.3 plugins: duplicates, edit, fetchart, fromfilename, info, inline, lastgenre, mbsubmit, mbsync, plexupdate, spotify, unimported, web ```

Problem

Running this command in verbose (-vv) mode:

$ beet -vv web

Led to this problem:

Can open the web ui, but cannot see / modify tags and the path

Setup

My configuration (output of beet config) is:

directory: <redacted>
# --------------- Main ---------------

library: <redacted>

import:
    hardlink: yes
    incremental: yes
    write: no

# --------------- Plugins ---------------

plugins: fetchart lastgenre spotify fromfilename duplicates web edit info mbsubmit plexupdate unimported inline mbsync

# --------------- Tagging ---------------

per_disc_numbering: yes
paths:
    default: $albumartist/$album%aunique{}/%if{$multidisc,CD $disc/}$track $title
item_fields:
    multidisc: 1 if disctotal > 1 else 0
    disc00: u'%02i' % (disc)
spotify:
    source_weight: 0.5
    mode: list
    tiebreak: popularity
    show_failures: no
    artist_field: albumartist
    album_field: album
    track_field: title
    region_filter:
    regex: []
    client_id: REDACTED
    client_secret: REDACTED
    tokenfile: spotify_token.json
languages: en zh jp

ui:
    color: yes
web:
    host: 0.0.0.0
    readonly: no
    include_paths: yes
    port: 8337
    cors: ''
    cors_supports_credentials: no
    reverse_proxy: no
unimported:
    ignore_extensions: jpg png DS_Store
    ignore_subdirectories: NonMusic data temp
plex:
    token: REDACTED
    host: localhost
    port: 32400
    library_name: Music
    secure: no
    ignore_cert_errors: no
pathfields: {}
album_fields: {}
fetchart:
    auto: yes
    minwidth: 0
    maxwidth: 0
    quality: 0
    max_filesize: 0
    enforce_ratio: no
    cautious: no
    cover_names:
    - cover
    - front
    - art
    - album
    - folder
    sources:
    - filesystem
    - coverart
    - itunes
    - amazon
    - albumart
    - cover_art_url
    store_source: no
    high_resolution: no
    deinterlace: no
    cover_format:
    google_key: REDACTED
    google_engine: REDACTED
    fanarttv_key: REDACTED
    lastfm_key: REDACTED
duplicates:
    album: no
    checksum: ''
    copy: ''
    count: no
    delete: no
    format: ''
    full: no
    keys: []
    merge: no
    move: ''
    path: no
    tiebreak: {}
    strict: no
    tag: ''
mbsubmit:
    format: $track. $title - $artist ($length)
    threshold: medium
    picard_path: picard
edit:
    albumfields: album albumartist
    itemfields: track title artist album
    ignore_fields: id path
lastgenre:
    whitelist: yes
    min_weight: 10
    count: 1
    fallback:
    canonical: no
    source: album
    force: yes
    auto: yes
    separator: ', '
    prefer_specific: no
    title_case: yes