beetbox / beets

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

sqlite3 v3.45.1 breaks beets #5158

Open hastyeagle opened 3 months ago

hastyeagle commented 3 months ago

After upgrading from sqlite3 v3.45.0 to v3.45.1, beets no longer runs. Downgrading to sqlite3 v3.45.0 fixes the issue.

Traceback (most recent call last):
  File "/usr/local/bin/beet", line 33, in <module>
    sys.exit(load_entry_point('beets==1.6.0', 'console_scripts', 'beet')())
  File "/usr/local/lib/python3.9/site-packages/beets/ui/__init__.py", line 1285, in main
    _raw_main(args)
  File "/usr/local/lib/python3.9/site-packages/beets/ui/__init__.py", line 1272, in _raw_main
    subcommand.func(lib, suboptions, subargs)
  File "/usr/local/lib/python3.9/site-packages/beets/ui/commands.py", line 1089, in list_func
    list_items(lib, decargs(args), opts.album)
  File "/usr/local/lib/python3.9/site-packages/beets/ui/commands.py", line 1084, in list_items
    for item in lib.items(query):
  File "/usr/local/lib/python3.9/site-packages/beets/library.py", line 1529, in items
    return self._fetch(Item, query, sort or self.get_default_item_sort())
  File "/usr/local/lib/python3.9/site-packages/beets/library.py", line 1503, in _fetch
    return super()._fetch(
  File "/usr/local/lib/python3.9/site-packages/beets/dbcore/db.py", line 1093, in _fetch
    rows = tx.query(sql, subvals)
  File "/usr/local/lib/python3.9/site-packages/beets/dbcore/db.py", line 858, in query
    cursor = self.db._connection().execute(statement, subvals)
sqlite3.OperationalError: no such column: text

Setup

Dr-Blank commented 3 months ago

cannot reproduce bug, not enough info

hastyeagle commented 3 months ago

I found the issue. The sqlite3 FreeBSD package changed to not enabling DQS during build, which is recommended (but still not the default) by sqlite. So it looks like beets must still be using double-quoted strings.

hastyeagle commented 3 months ago

Ahh -- just found this.

sungo commented 1 month ago

beets is broken now on freebsd 13.1 and above until #4709 is fixed one way or another.