ATRIUMsearch → argument graph
Article · 2026-08-11 · 4 moments

datasette-upload-dbs 0.5a0

Release: datasette-upload-dbs 0.5a0 This plugin has been around for a while - it lets users upload a brand new SQLite database to a hosted Datasette instance, at which point that database will start being served by that instance. It can also be used to atomically swap a database with a more recent version. The uploaded database is saved to a file, verified, then swapped in so /name starts serving the new one. The new release adds a formalized API, so you can replace an existing databa ✦ AI generated

01
Definition

The datasette-upload-dbs plugin lets users upload a brand new SQLite database to a hosted Datasette instance, at which point that database starts being served by that instance.

Introduces the plugin's core purpose: uploading a new SQLite database to a hosted Datasette instance where it is then served.

transcript

Simon Willison: This plugin has been around for a while - it lets users upload a brand new SQLite database to a hosted Datasette instance, at which point that database will start being served by that instance.

02
Prediction

The formalized API enables building fresh databases in an environment such as GitHub Actions and swapping them into production as soon as the build has completed.

Highlights the practical use case: building databases in GitHub Actions and swapping them to production immediately after the build finishes.

transcript

Simon Willison: This means you can build fresh databases in an environment such as GitHub Actions and swap them in production as soon as that build has completed.

extends · 1supports · 1

03
Mechanism

The new release adds a formalized API that lets you replace an existing database or add a new one via a curl POST request to the /-/upload-dbs endpoint.

Describes the new formalized API added in the release, showing the curl command used to replace or add a database.

transcript

Simon Willison: The new release adds a formalized API, so you can replace an existing database (or add a new one) like this: curl -X POST \ -H "Authorization: Bearer $API_TOKEN" \ -H "Accept: application/json" \ -F "db=@content.db" \ -F "db_name=content" \ https://your-instance.example.com/-/upload-dbs

extends · 1

04
Mechanism

The plugin can also be used to atomically swap a database with a more recent version, where the uploaded database is saved to a file, verified, then swapped in so /name starts serving the new one.

Explains the atomic swap mechanism: upload is saved to a file, verified, then swapped in so /name serves the new database version.

transcript

Simon Willison: It can also be used to atomically swap a database with a more recent version. The uploaded database is saved to a file, verified, then swapped in so /name starts serving the new one.

extends · 1

Highlight slides
Related episodes