This alpha introduces significant changes to Datasette's Metadata system, some of which represent breaking changes in advance of the full 1.0 release. The new Upgrade guide document provides detailed coverage of those breaking changes and how they affect plugin authors and Datasette API consumers.
- The
/databasename?sql=
interface and JSON API for executing arbitrary SQL queries can now be found at/databasename/-/query?sql=
. Requests with a?sql=
parameter to the old endpoints will be redirected. Thanks, Alex Garcia. (#2360) - Metadata about tables, databases, instances and columns is now stored in Datasette's internal database. Thanks, Alex Garcia. (#2341)
- Database write connections now execute using the
IMMEDIATE
isolation level for SQLite. This should help avoid a rareSQLITE_BUSY
error that could occur when a transaction upgraded to a write mid-flight. (#2358) - Fix for a bug where canned queries with named parameters could fail against SQLite 3.46. (#2353)
- Datasette now serves
E-Tag
headers for static files. Thanks, Agustin Bacigalup. (#2306) - Dropdown menus now use a
z-index
that should avoid them being hidden by plugins. (#2311) - Incorrect table and row names are no longer reflected back on the resulting 404 page. (#2359)
- Improved documentation for async usage of the track_event(datasette, event) hook. (#2319)
- Fixed some HTTPX deprecation warnings. (#2307)
- Datasette now serves a
<html lange="en">
attribute. Thanks, Charles Nepote. (#2348) - Datasette's automated tests now run against the maximum and minimum supported versions of SQLite: 3.25 (from September 2018) and 3.46 (from May 2024). Thanks, Alex Garcia. (#2352)
- Fixed an issue where clicking twice on the URL output by
datasette --root
produced a confusing error. (#2375)