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.
# Release: datasette 1.0a28
Source: https://simonwillison.net/2026/Apr/17/datasette/
[Datasette 1.0a28](https://github.com/simonw/datasette/releases/tag/1.0a28) — An open source multi-tool for exploring and publishing data
I was upgrading Datasette Cloud to [1.0a27](https://simonwillison.net/2026/Apr/15/datasette/) and discovered a nasty collection of accidental breakages caused by changes in that alpha. This new alpha addresses those directly:
> - Fixed a compatibility bug introduced in 1.0a27 where `execute_write_fn()` callbacks with a parameter name other than `conn` were seeing errors. ([#2691](https://github.com/simonw/datasette/issues/2691))
> - The [database.close()](https://docs.datasette.io/en/latest/internals.html#database-close) method now also shuts down the write connection for that database.
> - New [datasette.close()](https://docs.datasette.io/en/latest/internals.html#datasette-close) method for closing down all databases and resources associated with a Datasette instance. This is called automatically when the server shuts down. ([#2693](https://github.com/simonw/datasette/pull/2693))
> - Datasette now includes a pytest plugin which automatically calls `datasette.close()` on temporary instances created in function-scoped fixtures and during tests. See [Automatic cleanup of Datasette instances](https://docs.datasette.io/en/latest/testing_plugins.html#testing-plugins-autoclose) for details. This helps avoid running out of file descriptors in plugin test suites that were written before the `Database(is_temp_disk=True)` feature introduced in Datasette 1.0a27. ([#2692](https://github.com/simonw/datasette/issues/2692))
Most of the changes in this release were implemented using Claude Code and the newly released Claude Opus 4.7.
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.
Datasette releases version 1.0a40 with security fixes, new background task features for plugins, migration to httpx2, and various bug fixes towards a stable 1.0 release.
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.