ATRIUMsearch → argument graph
AnecdoteArticle

sqlite-utils's automatic transaction handling was fundamentally incompatible with connections created using Python 3.12's new autocommit=True/False options, which broke nearly the entire test suite once discovered.

Simon Willison admits he hadn't considered Python 3.12's new autocommit connection modes; testing with Fable revealed that db.atomic() and per-method auto-commits broke almost the whole test suite on such connections, requiring a fix so the library would explicitly reject them. ✦ AI generated

Simon Willison · Simon Willison's Weblog · 2026-07-05 · original ↗

I admit I hadn't thought about how sqlite-utils would react to the more recent autocommit setting, added in Python 3.12. It turns out "behave differently on those connections" equated to almost the entire test suite failing, so I worked with the model to ensure that this difference would not break how the library works.

Read full article ↗excerpt · fair-use quotation

Around this claim