datasette 1.0a29

Simon Willison's Blog Tools

Summary

Datasette 1.0a29 is released with new utility methods, UI improvements for empty tables, and bug fixes including a race condition resolved with help from Codex CLI.

No content available
Original Article
View Cached Full Text

Cached at: 05/13/26, 12:15 AM

# Release: datasette 1.0a29 Source: [https://simonwillison.net/2026/May/12/datasette/](https://simonwillison.net/2026/May/12/datasette/) Release[datasette 1\.0a29](https://github.com/simonw/datasette/releases/tag/1.0a29)— An open source multi\-tool for exploring and publishing data > - New`TokenRestrictions\.abbreviated\(datasette\)`[utility method](https://docs.datasette.io/en/latest/internals.html#tokenrestrictions)for creating`"\_r"`dictionaries\.[\#2695](https://github.com/simonw/datasette/issues/2695) - Table headers and column options are now visible even if a table contains zero rows\.[\#2701](https://github.com/simonw/datasette/issues/2701) - Fixed bug with display of column actions dialog on Mobile Safari\.[\#2708](https://github.com/simonw/datasette/issues/2708) - Fixed bug where tests could crash with a segfault due to a race condition between`Datasette\.close\(\)`and`Datasette\.close\(\)`\.[\#2709](https://github.com/simonw/datasette/issues/2709) That segfault bug was*gnarly*\. I added a mechanism to Datasette recently that would automatically close connections at the end of each test, but it turned out that introduced a race condition where an in\-flight query could sometimes be executing in a thread against a connection while it was being closed\. I ended up solving that by having Codex CLI \(with GPT\-5\.5 xhigh\) create[a minimal Dockerfile](https://github.com/simonw/datasette/issues/2709#issuecomment-4435604727)that recreated the bug\.

Similar Articles

datasette 1.0a27

Simon Willison's Blog

Datasette 1.0a27 released with major security improvements (modern CSRF headers), new RenameTableEvent for plugin compatibility, and various API enhancements including improved upsert handling and database locking fixes.

datasette 1.0a28

Simon Willison's Blog

Datasette 1.0a28 alpha release fixes compatibility bugs and resource management issues discovered in the previous alpha, including fixes for execute_write_fn() callbacks, database cleanup methods, and a new pytest plugin for automatic cleanup in tests.

datasette-ports 0.3

Simon Willison's Blog

datasette-ports 0.3 released with improvements to show working directories and full paths to database files for running Datasette instances on a machine.

datasette-export-database 0.3a1

Simon Willison's Blog

datasette-export-database version 0.3a1 released, providing database export functionality as part of the Datasette ecosystem.

datasette-llm 0.1a7

Simon Willison's Blog

Datasette-llm 0.1a7 is a new alpha release of a plugin that provides LLM integration for Datasette, enabling plugins to configure default options for specific models.