Package Details: sqlite-utils 3.39-2

Git Clone URL: https://aur.archlinux.org/sqlite-utils.git (read-only, click to copy)
Package Base: sqlite-utils
Description: CLI tool and Python utility functions for manipulating SQLite databases
Upstream URL: https://sqlite-utils.datasette.io/
Licenses: Apache-2.0
Conflicts: sqlite-utils
Submitter: NBonaparte
Maintainer: raxod502
Last Packager: micwoj92
Votes: 7
Popularity: 0.87
First Submitted: 2021-07-01 21:06 (UTC)
Last Updated: 2026-02-17 06:16 (UTC)

Pinned Comments

raxod502 commented on 2026-05-02 02:26 (UTC)

Tests for this package may fail if you have other packages installed that use sqlite-utils, because the test suite for sqlite-utils incorrectly fails to limit its testing to its own code and accidentally pulls in other packages' subcommands that don't meet the standards it's testing for.

This is a bug in sqlite-utils and has been reported upstream: https://github.com/simonw/sqlite-utils/issues/713

As a workaround, you can uninstall dependent packages (e.g. python-sqlite-migrate) while running checks, or disable checks when building.

Latest Comments

1 2 Next › Last »

raxod502 commented on 2026-05-02 02:26 (UTC)

Tests for this package may fail if you have other packages installed that use sqlite-utils, because the test suite for sqlite-utils incorrectly fails to limit its testing to its own code and accidentally pulls in other packages' subcommands that don't meet the standards it's testing for.

This is a bug in sqlite-utils and has been reported upstream: https://github.com/simonw/sqlite-utils/issues/713

As a workaround, you can uninstall dependent packages (e.g. python-sqlite-migrate) while running checks, or disable checks when building.

cotsuka commented on 2026-05-02 01:45 (UTC)

Getting some test errors:

======================================================================================== FAILURES =========================================================================================
__________________________________________________________________________ test_commands_are_documented[migrate] __________________________________________________________________________

documented_commands = {'add-column', 'add-foreign-key', 'add-foreign-keys', 'add-geometry-column', 'analyze', 'analyze-tables', ...}, command = 'migrate'

    @pytest.mark.parametrize("command", cli.cli.commands.keys())
    def test_commands_are_documented(documented_commands, command):
>       assert command in documented_commands
E       AssertionError: assert 'migrate' in {'add-column', 'add-foreign-key', 'add-foreign-keys', 'add-geometry-column', 'analyze', 'analyze-tables', ...}

tests/test_docs.py:32: AssertionError
_________________________________________________________________________________ test_register_commands __________________________________________________________________________________

    def test_register_commands():
        importlib.reload(cli)
>       assert plugins.get_plugins() == []
E       AssertionError: assert [{'hooks': ['...on': '0.1b0'}] == []
E         
E         Left contains one more item: {'hooks': ['register_commands'], 'name': 'sqlite-migrate', 'version': '0.1b0'}
E         Use -v to get more diff

tests/test_plugins.py:9: AssertionError
_________________________________________________________________________________ test_prepare_connection _________________________________________________________________________________

    def test_prepare_connection():
        importlib.reload(cli)
>       assert plugins.get_plugins() == []
E       AssertionError: assert [{'hooks': ['...on': '0.1b0'}] == []
E         
E         Left contains one more item: {'hooks': ['register_commands'], 'name': 'sqlite-migrate', 'version': '0.1b0'}
E         Use -v to get more diff

tests/test_plugins.py:42: AssertionError
================================================================================= short test summary info =================================================================================
FAILED tests/test_docs.py::test_commands_are_documented[migrate] - AssertionError: assert 'migrate' in {'add-column', 'add-foreign-key', 'add-foreign-keys', 'add-geometry-column', 'analyze', 'analyze-tables', ...}
FAILED tests/test_plugins.py::test_register_commands - AssertionError: assert [{'hooks': ['...on': '0.1b0'}] == []
FAILED tests/test_plugins.py::test_prepare_connection - AssertionError: assert [{'hooks': ['...on': '0.1b0'}] == []
======================================================================== 3 failed, 996 passed, 17 skipped in 7.14s ========================================================================
==> ERROR: A failure occurred in check().
    Aborting...
error: failed to build 'sqlite-utils-3.39-2'

kivissimo commented on 2026-04-27 08:50 (UTC)

Can confirm that installing python-sqlite-fts4 and python-click-default-group fixed the issue for me. I'm speculating, but since this issue has been around for a few weeks and I didn't do any explicit CleanBuild stuff, maybe the already-downloaded/half-built(?) failed package didn't properly check the dependencies anymore.

raxod502 commented on 2026-04-03 00:36 (UTC)

Hmmm, something sounds off there - the current PKGBUILD does specify both python-sqlite-fts4 and python-click-default-group as dependencies already.

I tested in a fresh archlinux Docker image just installing Yay and running yay -S sqlite-utils, it seemed to build and run fine. Maybe there is something else amiss on your system?

gitpocalypse commented on 2026-04-02 12:28 (UTC)

Looks like python-sqlite-fts4 and python-click-default-group might be missing as dependencies. Had to manually install them to get this to install with yay.

raxod502 commented on 2026-03-13 23:58 (UTC)

I've taken over maintenance of this package since it was disowned by the previous maintainer and it is a transitive dependency of https://aur.archlinux.org/packages/objection which I also maintain (and use).

radonatbeeper commented on 2026-03-02 17:06 (UTC)

This is because you have python-sqlite-migrate installed, as a workaround you can uninstall it and then rerun

This appears to be an upstream bug, I have filed https://github.com/simonw/sqlite-utils/issues/713. Another workaround is to skip running checks when running makepkg.

micwoj92 commented on 2026-02-08 21:31 (UTC) (edited on 2026-02-08 21:31 (UTC) by micwoj92)

@oncomouse you need to rebuild python-sqlite-fts4

oncomouse commented on 2026-02-06 16:37 (UTC)

I am having trouble upgrading to 3.39. I get the following error:

Successfully built sqlite_utils-3.39-py3-none-any.whl
==> Starting check()...
ImportError while loading conftest '/home/andrew/.cache/paru/clone/sqlite-utils/src/sqlite_utils-3.39/tests/conftest.py'.
tests/conftest.py:1: in <module>
    from sqlite_utils import Database
sqlite_utils/__init__.py:4: in <module>
    from .db import Database
sqlite_utils/db.py:25: in <module>
    from sqlite_fts4 import rank_bm25  # type: ignore
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
E   ModuleNotFoundError: No module named 'sqlite_fts4'
==> ERROR: A failure occurred in check().
    Aborting...
error: failed to build 'sqlite-utils-3.39-1': 
error: packages failed to build: sqlite-utils-3.39-1

I have python-sqlite-fts4 installed from the AUR but also get this error when I try to run import sqlite_fts4 in the python CLI. Anyone know how to fix this?