Simon Willison’s Weblog

Subscribe
Atom feed for datasette Random

1,455 posts tagged “datasette”

Datasette is an open source tool for exploring and publishing data.

2024

Release datasette 1.0a11 — An open source multi-tool for exploring and publishing data
Release datasette-edit-schema 0.8a0 — Datasette plugin for modifying table schemas

datasette-studio. I've been thinking for a while that it might be interesting to have a version of Datasette that comes bundled with a set of useful plugins, aimed at expanding Datasette's default functionality to cover things like importing data and editing schemas.

This morning I built the very first experimental preview of what that could look like. Install it using pipx:

pipx install datasette-studio

I recommend pipx because it will ensure datasette-studio gets its own isolated environment, independent of any other Datasette installations you might have.

Now running datasette-studio instead of datasette will get you the version with the bundled plugins.

The implementation of this is fun - it's a single pyproject.toml file defining the dependencies and setting up the datasette-studio CLI hook, which is enough to provide the full set of functionality.

Is this a good idea? I don't know yet, but it's certainly an interesting initial experiment.

# 18th February 2024, 8:38 pm / datasette, python, pypi, plugins, projects, cli

Release datasette-studio 0.1a0 — Datasette pre-configured with useful plugins. Experimental alpha.

Datasette 1.0a10. The only changes in this alpha release concern the way Datasette handles database transactions. The database.execute_write_fn() internal method used to leave functions to implement transactions on their own—it now defaults to wrapping them in a transaction unless they opt out with the new transaction=False parameter.

In implementing this I found several places inside Datasette—in particular parts of the JSON write API—which had not been handling transactions correctly. Those are all now fixed.

# 18th February 2024, 5:10 am / projects, transactions, datasette, sqlite

Release datasette 1.0a10 — An open source multi-tool for exploring and publishing data

Datasette 1.0a9. A new Datasette alpha release today. This adds basic alter table support API support, so you can request Datasette modify a table to add new columns needed for JSON objects submitted to the insert, upsert or update APIs.

It also makes some permission changes—fixing a minor bug with upsert permissions, and introducing a new rule where every permission plugin gets consulted for a permission check, with just one refusal vetoing that check.

# 16th February 2024, 11:20 pm / projects, datasette

Release datasette 1.0a9 — An open source multi-tool for exploring and publishing data
Release datasette-enrichments-opencage 0.1.1 — Geocoding and reverse geocoding using OpenCage
Release datasette-auth-tokens 0.4a8 — Datasette plugin for authenticating access using API tokens

Weeknotes: a Datasette release, an LLM release and a bunch of new plugins

I wrote extensive annotated release notes for Datasette 1.0a8 and LLM 0.13 already. Here’s what else I’ve been up to this past three weeks.

[... 1,074 words]

Release datasette-enrichments-quickjs 0.1a0 — Enrich data with a custom JavaScript function
Release datasette-events-db 0.1a0 — Log Datasette events to a database table

Datasette 1.0a8: JavaScript plugins, new plugin hooks and plugin configuration in datasette.yaml

I just released Datasette 1.0a8. These are the annotated release notes.

[... 1,709 words]

Release datasette 1.0a8 — An open source multi-tool for exploring and publishing data
Release datasette-homepage-table 0.2 — Show a specific Datasette table on the homepage
Release datasette-homepage-table 0.1 — Show a specific Datasette table on the homepage
Release datasette-upload-csvs 0.9 — Datasette plugin for uploading CSV files and converting them to database tables
Release datasette-granian 0.1 — Run Datasette using the Granian HTTP server
Release datasette-proxy-url 0.1.1 — Proxy a URL through a Datasette instance
Release datasette-proxy-url 0.1 — Proxy a URL through a Datasette instance

Weeknotes: datasette-test, datasette-build, PSF board retreat

I wrote about Page caching and custom templates in my last weeknotes. This week I wrapped up that work, modifying datasette-edit-templates to be compatible with the jinja2_environment_from_request() plugin hook. This means you can edit templates directly in Datasette itself and have those served either for the full instance or just for the instance when served from a specific domain (the Datasette Cloud case).

[... 757 words]

Release datasette-edit-templates 0.4.3 — Plugin allowing Datasette templates to be edited within Datasette
Release datasette-edit-templates 0.4.2 — Plugin allowing Datasette templates to be edited within Datasette
Release datasette-test 0.2 — Utilities to help write tests for Datasette plugins and applications
Release datasette-test 0.1.1 — Utilities to help write tests for Datasette plugins and applications
Release datasette-test 0.1 — Utilities to help write tests for Datasette plugins and applications
Release datasette-edit-templates 0.4.1 — Plugin allowing Datasette templates to be edited within Datasette
Release datasette-edit-templates 0.4 — Plugin allowing Datasette templates to be edited within Datasette
Release datasette-cluster-map 0.18.1 — Datasette plugin that shows a map for any data with latitude/longitude columns