Simon Willison’s Weblog

Subscribe
Atom feed

Elsewhere

Filters: Sorted by date

Release datasette 0.42 — An open source multi-tool for exploring and publishing data
Release datasette-media 0.1a — Datasette plugin for serving media based on a SQL query
Release datasette-publish-vercel 0.5.1 — Datasette plugin for publishing data using Vercel
Release datasette 0.41 — An open source multi-tool for exploring and publishing data
TIL List all columns in a SQLite database — Here's a devious trick for listing ALL columns in a SQLite database, using a SQL query that generates another SQL query.
None
TIL Use setup.py to install platform-specific dependencies — For [photos-to-sqlite](https://github.com/dogsheep/photos-to-sqlite) I needed to install `osxphotos` as a dependency, but only if the platform is macOS - it's not available for Linux.
None
Release dogsheep-photos 0.3a — Upload your photos to S3 and import metadata about them into a SQLite database
TIL Search across all loaded resources in Firefox — You can search for a string in any resource loaded by a page (including across HTML, JavaScript and CSS) in the Debugger pane by hitting Command+Shift+F.
None
TIL Installing and upgrading Datasette plugins with pipx — If you installed `datasette` using `pipx install datasette` you can install additional plugins with `pipx inject` like so:
None
Release sqlite-utils 2.8 — Python CLI utility and library for manipulating SQLite databases
Release github-to-sqlite 2.2 — Save data from GitHub to a SQLite database
Release sqlite-utils 2.7.2 — Python CLI utility and library for manipulating SQLite databases
Release datasette-render-markdown 1.1.2 — Datasette plugin for rendering Markdown
TIL Constant-time comparison of strings in Node — When comparing secrets, passwords etc it's important to use a constant-time compare function to avoid timing attacks.
None
Release sqlite-utils 2.7.1 — Python CLI utility and library for manipulating SQLite databases
Release github-to-sqlite 2.1 — Save data from GitHub to a SQLite database
TIL Accessing repository dependencies in the GitHub GraphQL API — [Access to a Repositories Dependency Graph](https://developer.github.com/v4/previews/#access-to-a-repositories-dependency-graph) describes a preview API for accessing GitHub repository dependencies.
None
Release sqlite-utils 2.7 — Python CLI utility and library for manipulating SQLite databases
Release twitter-to-sqlite 0.21.1 — Save data from Twitter to a SQLite database
TIL Compile a new sqlite3 binary on Ubuntu — I wanted to try the `vacuum into` backup command that was released in SQLite3 3.27.0 [on 2019-02-07](https://www.sqlite.org/changes.html#version_3_27_0).
None
Release datasette-atom 0.5 — Datasette plugin that adds a .atom output format
Release conditional-get 0.2a — CLI tool for fetching data using HTTP conditional get
TIL How to mock httpx using pytest-mock — I wrote this test to exercise some [httpx](https://pypi.org/project/httpx/) code today, using [pytest-mock](https://pypi.org/project/pytest-mock/).
None
Release conditional-get 0.1.1a — CLI tool for fetching data using HTTP conditional get
Release conditional-get 0.1a — CLI tool for fetching data using HTTP conditional get
TIL Generated a summary of nested JSON data — I was trying to figure out the shape of the JSON object from https://github.com/simonw/coronavirus-data-gov-archive/blob/master/data_latest.json?raw=true - which is 3.2MB and heavily nested, so it's difficult to get a good feel for the shape.
None
TIL Session-scoped temporary directories in pytest — I habitually use the `tmpdir` fixture in pytest to get a temporary directory that will be cleaned up after each test, but that doesn't work with `scope="session"` - which can be used to ensure an expensive fixture is run only once per test session and the generated content is used for multiple tests.
None
TIL Fixing "compinit: insecure directories" error — Every time I opened a terminal on my new Mac running Catalina with zsh I got the following annoying error:
None
Release dogsheep-photos 0.2a — Upload your photos to S3 and import metadata about them into a SQLite database