beets
beets copied to clipboard
sqlite3 v3.45.1 breaks beets
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
- OS: FreeBSD 14
- Python version: 3.9.18
- beets version: 1.6.0
- Turning off plugins made problem go away (yes/no): no
cannot reproduce bug, not enough info
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.
Ahh -- just found this.
beets is broken now on freebsd 13.1 and above until #4709 is fixed one way or another.