Periodically irregular technology and culture blogging since 2002. By David E. Wheeler.| ❖ Just a Theory
A proof of concept for “trunk”, the proposed binary distribution format for Postgres extensions.| ❖ Just a Theory
Details for extension authors for how to use the new PG_MODULE_MAGIC_EXT macro introduced in PostgreSQL 18.| ❖ Just a Theory
Narrative version of a PGConf.dev talk covering the many issues I stumbled upon while designing a universal packaging format for PostgreSQL extensions, maintaining pgt.dev packages, and experimenting with CloudNativePG immutability.| Just a Theory
Step-by-step instructions to publish PostgreSQL extensions and utilities on the PostgreSQL Extension Network (PGXN).| Just a Theory
At the final Mini-Summit of 2025, Gabriele Bartolini gave an overview of PostgreSQL extension management in CloudNativePG.| Just a Theory
Use the new IANA-registered tag to preserve JSON numbers represented as strings when encoding in Concise Binary Object Representation.| Just a Theory
Please welcome 2025 Google Summer of Code contributor Mankirat Singh, who will be developing an ABI compliance checker for the PostgreSQL maintenance branches.| ❖ Just a Theory
The last Mini-Summit of the year features Gabriele Bartolini talking about extension management in CloudNativePG.| ❖ Just a Theory
Last week Floor Drees moderated a panel on “The User POV” at the fourth Extension Mini-Summit. Read on for the transcript and link to the video.| Just a Theory
Suggestions to PostgreSQL extension maintainers to make some tweaks to your .control files and Makefiles.| ❖ Just a Theory
Join our fine panel on Wednesday at Extension Mini Summit #4 to hear all about “The User POV” — for better and for worse!| ❖ Just a Theory
A fix for the error: 'strchrnul' is only available on macOS 15.4 or newer Postgres compile error.| ❖ Just a Theory
Last week Christoph Berg, who maintains PostgreSQL’s APT packaging system, gave a very nice talk on that system. Herein lie the transcript and links to the slides and video.| ❖ Just a Theory
Join us at PostgresSQL Extension Mini Summit #3 this week, where PostgreSQL Debian packaging maintainer Christoph Berg will takes on a tour of APT extension packaging.| ❖ Just a Theory
{~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~} { } { [Orange card with large black text reading "Implementing an Extension Search Patch". Smaller text below reads "Peter Eisentraut, EDB" and "03.26.2025". A photo of Peter speaking into a mic at a conference appears on the right. ] } { https://justatheory.com...| Just a Theory
Link: https://www.perlmonks.org/?node_id=11163487 I seek the wisdom of the Perl Monks: > The Sqitch project got [a request][sqitch-825] to switch from [DBD::mysql] > to [DBD::MariaDB]. DBD::mysql 5's requirement to build from the MySQL 8 > client library provides the impetus for the request, but in poking around, I > found a [blogs.perl.org post] highlighting some Unicode fixes in > DBD::MariaDB, as well. > > Now, Sqitch likely doesn't have the Unicode issue (it always works with Perl > Unico...| Just a Theory
Link: https://theory.github.io/sqljson/ Based on the recently-released Go [JSONPath] and [JSONTree] playgrounds, I've updated the design and of the [SQL/JSON Playground][play]. It now comes populated with sample JSON borrowed from [RFC 9535], as well as a selection of queries that randomly populate the query field on each reload. I believe this makes the playground nicer to start using, not to mention more pleasing to the eye. The playground has also been updated to use the recently-released ...| Just a Theory
Link: https://tembo.io/blog/pgxn-v2-update Speaking of PGXN news, I neglected to link to [this post] I wrote for the [Tembo Blog] last month, a fairly detailed accounting of what's been happening on the [PGXN v2] project: > Forgive me Postgres community, for it has been five months since [my last > PGXN v2 Update]. In my defense, it has been super busy! The time went into > ongoing community discussions, planning, designs, and the start of > implementation. Join me below for the lowdown. A fe...| Just a Theory
When should a Postgres extension be pre-loaded and when should it not? Should it be loaded in user sessions or at server startup? For the Tembo blog, I dug into this question and wrote up my findings.| ❖ Just a Theory
A transcript of from the second PostgreSQL Extension Mini Summit, “Implementing an Extension Search Path”, by Peter Eisentraut.| Just a Theory
A rough transcript of my talk “State of the Extension Ecosystem”.| ❖ Just a Theory
We’re doing it again! The PostgreSQL Extension Ecosystem Summit returns to PGConf.dev. We’ll again be looking at indexing, discovery, packaging, and core support. And we’ll once again be hosting a series of “Mini Summits” leading up to the event. Join us!| ❖ Just a Theory
New in the jsonpath Go package and Playground: “Located” results that pair selected values with normalized paths to their locations.| Just a Theory
I’m happy to announce the release of the JSONTree Go module and Wasm-powered in-browser playground.| Just a Theory
A proposal to modify the PostgreSQL core so that all files required for an extension live in a directory named for the extension, along with a search path to find extension directories.| Just a Theory
I finally deleted all my Twitter accounts, notably @theory. If you see that username, it’s not me.| Just a Theory
I’ve made a RFC 9535 JSONPath JSONPath Go package, and compiled it into Wasm to build an in-browser playground for it.| Just a Theory
My former colleagues in the New York Times Tech Guild have gone on strike in response to a number of unfair labor practice violations and management’s inability to bargain in good faith.| Just a Theory
Notes and links from the Extension Ecosystem Summit EU 2024 and my first time at PGConf EU. Plus thoughts and photos from ancient sites and archeological museums I visited.| Just a Theory
A request for comments on a new PGXN RFC for signing releases, plus a link to an initial implementation.| Just a Theory
The sequel to the successful PGConf.dev event, the Extension Ecosystem Summit EU will showcases some exemplary extension use cases.| Just a Theory
Today I released pgxn_meta v0.1.0, a Rust crate and executable for validating PGXN Meta v1 and v2 META.json files.| ❖ Just a Theory
Would it be possible to distribute Postgres extension binaries via Open Container Registries? Tune in to find out!| ❖ Just a Theory
Links, notes, and commentary from Jonathan Katz’s presentation at the fourth Postgres Extension Ecosystem Mini-Summit, “Trusted Language Extensions for PostgreSQL”.| ❖ Just a Theory
A rough transcript my Ian Stanton’s talk, “Building Trunk: A Postgres Extension Registry and CLI”, along with interspersed chat comments.| ❖ Just a Theory
Request for comments on a sketch of a new metadata standard for Postgres extension packaging, distribution, and delivery, building on the PGXN Meta Spec to address its shortcomings and emerging use cases 12 years on.| ❖ Just a Theory
A proposal for an additional level of name uniqueness for Postgres extension packaging and distribution, based on URIs.| ❖ Just a Theory
The Go package ecosystem uses distributed publishing to release modules without authentication or uploads. Could we do something similar for Postgres extensions?| ❖ Just a Theory