supabase-postgres.git / summary / log / commit / refs
commit 75c8517c4254ec9ce3c8d4850c175ae86a57ce84
Author: Bo Lu <burmecia@users.noreply.github.com>
Commit: GitHub <noreply@github.com>
Date: Thu Nov 27 18:34:40 2025 +0000
chore: bump Wrappers version to 0.5.7 (#1945)
* chore: bump Wrappers version to 0.5.7
* add new pgrx and rust version
* feat: support 1.88 rust 0.16.1 pgrx 0.57 wrappers
* docs: update docs
* fix: reduce pressure on CI runners
Updating the dependency helping us build all our rust extensions has put
a lot of pressure on our CI runners, causing timeouts and failed builds.
We are currently working on a more permanent solution in #1745 but in
the meantime, we cap the number of parallel nix builds to 2, which
should reduce the load on our CI runners.
* fix: pg_regress test for wrappers extension
pg_regress tests always test the latest update of our extensions.
Add the wrappers renamed types to the expected output files.
* fix: increase parallelism for build process
We have reduced the pressure on CI runner, now the build process is timing out after 3h.
By increasing the parallelism from 2 to 4, we can better utilize the available resources and speed up the build process without overwhelming the system like before.
* fix: delegate copying artifacts to nix-fast-build
Copying built artifacts to S3 should be done by nix-fast-build itself
while building instead of relying on nix-daemon's post-build hooks and
the end of the build.
* chore: bump to release
---------
Co-authored-by: Sam Rose <samuel@supabase.io>
Co-authored-by: Jean-François Roche <jfroche@pyxel.be>
.github/actions/nix-install-ephemeral/action.yml | 2 +-
.github/workflows/nix-build.yml | 8 +-
Dockerfile-15 | 2 +-
Dockerfile-17 | 2 +-
Dockerfile-orioledb-17 | 2 +-
ansible/vars.yml | 6 +-
flake.lock | 6 +-
nix/cargo-pgrx/versions.json | 8 +
nix/docs/update-extension.md | 4 +-
nix/docs/updating-pgrx-extensions.md | 373 +++++++++++++++++++++
nix/ext/versions.json | 12 +-
nix/ext/wrappers/default.nix | 6 +
nix/tests/expected/z_15_ext_interface.out | 8 +-
nix/tests/expected/z_17_ext_interface.out | 8 +-
nix/tests/expected/z_orioledb-17_ext_interface.out | 8 +-
15 files changed, 427 insertions(+), 28 deletions(-)
diff --git a/.github/actions/nix-install-ephemeral/action.yml b/.github/actions/nix-install-ephemeral/action.yml
index 82eaa32b..047fb9be 100644
--- a/.github/actions/nix-install-ephemeral/action.yml
+++ b/.github/actions/nix-install-ephemeral/action.yml
@@ -44,4 +44,4 @@ runs:
substituters = https://cache.nixos.org https://nix-postgres-artifacts.s3.amazonaws.com
trusted-public-keys = nix-postgres-artifacts:dGZlQOvKcNEjvT7QEAJbcV6b6uk7VF/hWMjhYleiaLI= cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
${{ inputs.push-to-cache == 'true' && 'post-build-hook = /etc/nix/upload-to-cache.sh' || '' }}
- max-jobs = 8
+ max-jobs = 4
diff --git a/.github/workflows/nix-build.yml b/.github/workflows/nix-build.yml
index 6a416709..0a5d5180 100644
--- a/.github/workflows/nix-build.yml
+++ b/.github/workflows/nix-build.yml
@@ -24,7 +24,7 @@ jobs:
fail-fast: false
matrix:
include:
- - runner: blacksmith-32vcpu-ubuntu-2404
+ - runner: blacksmith-32vcpu-ubuntu-2404
arch: amd64
- runner: blacksmith-32vcpu-ubuntu-2404-arm
arch: arm64
@@ -66,11 +66,11 @@ jobs:
sudo rm -rf /tmp/* 2>/dev/null || true
echo "=== AFTER CLEANUP ==="
df -h
- -
+ -
name: Build psql bundle
run: >
- nix run "github:Mic92/nix-fast-build?rev=b1dae483ab7d4139a6297e02b6de9e5d30e43d48"
- -- --skip-cached --no-nom ${{ matrix.runner == 'macos-latest-xlarge' && '--max-jobs 1' || '' }}
+ nix run "github:Mic92/nix-fast-build?rev=b1dae483ab7d4139a6297e02b6de9e5d30e43d48"
+ -- --skip-cached --no-nom ${{ matrix.runner == 'macos-latest-xlarge' && '--max-jobs 1' || '' }} --copy-to "s3://nix-postgres-artifacts?secret-key=/etc/nix/nix-secret-key"
--flake ".#checks.$(nix eval --raw --impure --expr 'builtins.currentSystem')"
env:
AWS_ACCESS_KEY_ID: ${{ env.AWS_ACCESS_KEY_ID }}
diff --git a/Dockerfile-15 b/Dockerfile-15
index e79cb2e5..7347fbe4 100644
--- a/Dockerfile-15
+++ b/Dockerfile-15
@@ -30,7 +30,7 @@ ARG pg_repack_release=1.4.8
ARG vault_release=0.2.8
ARG groonga_release=12.0.8
ARG pgroonga_release=2.4.0
-ARG wrappers_release=0.5.6
+ARG wrappers_release=0.5.7
ARG hypopg_release=1.3.1
ARG pgvector_release=0.4.0
ARG pg_tle_release=1.3.2
diff --git a/Dockerfile-17 b/Dockerfile-17
index cad7b76b..24042007 100644
--- a/Dockerfile-17
+++ b/Dockerfile-17
@@ -31,7 +31,7 @@ ARG pg_repack_release=1.4.8
ARG vault_release=0.2.8
ARG groonga_release=12.0.8
ARG pgroonga_release=2.4.0
-ARG wrappers_release=0.5.6
+ARG wrappers_release=0.5.7
ARG hypopg_release=1.3.1
ARG pgvector_release=0.4.0
ARG pg_tle_release=1.3.2
diff --git a/Dockerfile-orioledb-17 b/Dockerfile-orioledb-17
index 19fae02b..9387c099 100644
--- a/Dockerfile-orioledb-17
+++ b/Dockerfile-orioledb-17
@@ -31,7 +31,7 @@ ARG pg_repack_release=1.4.8
ARG vault_release=0.2.8
ARG groonga_release=12.0.8
ARG pgroonga_release=2.4.0
-ARG wrappers_release=0.5.6
+ARG wrappers_release=0.5.7
ARG hypopg_release=1.3.1
ARG pgvector_release=0.4.0
ARG pg_tle_release=1.3.2
diff --git a/ansible/vars.yml b/ansible/vars.yml
index 716a9b8b..84035bca 100644
--- a/ansible/vars.yml
+++ b/ansible/vars.yml
@@ -10,9 +10,9 @@ postgres_major:
# Full version strings for each major version
postgres_release:
- postgresorioledb-17: "17.6.0.013-orioledb"
- postgres17: "17.6.1.056"
- postgres15: "15.14.1.056"
+ postgresorioledb-17: "17.6.0.014-orioledb"
+ postgres17: "17.6.1.057"
+ postgres15: "15.14.1.057"
# Non Postgres Extensions
pgbouncer_release: 1.19.0
diff --git a/flake.lock b/flake.lock
index 0b1ec819..b2d4ff6e 100644
--- a/flake.lock
+++ b/flake.lock
@@ -252,11 +252,11 @@
]
},
"locked": {
- "lastModified": 1749609482,
- "narHash": "sha256-R+Y3tXIUAMosrgo/ynhIUPEONZ+cM0ScbgN7KA8OkoE=",
+ "lastModified": 1764038373,
+ "narHash": "sha256-M6w2wNBRelcavoDAyFL2iO4NeWknD40ASkH1S3C0YGM=",
"owner": "oxalica",
"repo": "rust-overlay",
- "rev": "a17da8deb943e7c8b4151914abbfe33d5a4e5b0d",
+ "rev": "ab3536fe850211a96673c6ffb2cb88aab8071cc9",
"type": "github"
},
"original": {
diff --git a/nix/cargo-pgrx/versions.json b/nix/cargo-pgrx/versions.json
index 53b2c378..422bd749 100644
--- a/nix/cargo-pgrx/versions.json
+++ b/nix/cargo-pgrx/versions.json
@@ -107,6 +107,14 @@
"cargoHash": "sha256-pK6OxRNubcWhohLvIJIliRtaHSIQOhQp7Q9brPygZYA="
}
}
+ },
+ "0.16.1": {
+ "hash": "sha256-AjoBr+/sEPdzbD0wLUNVm2syCySkGaFOFQ70TST1U9w=",
+ "rust": {
+ "1.88.0": {
+ "cargoHash": "sha256-uWj/V2lJa6HF2GlHX+i5RbSMZFOxZsBzOf6okKDb0j8="
+ }
+ }
}
}
diff --git a/nix/docs/update-extension.md b/nix/docs/update-extension.md
index 464ff288..d9fd9ba3 100644
--- a/nix/docs/update-extension.md
+++ b/nix/docs/update-extension.md
@@ -5,7 +5,7 @@
There are two types of extension package structures in our codebase:
-1. **Old structure (deprecated, soon to be replaced)**: Extensions like `supautils.nix` that directly define a single version
+1. **Old structure (deprecated)**: Extensions like `supautils.nix` that directly define a single version in the nix expression for the package
2. **New structure (current standard)**: Extensions that load multiple versions from `nix/ext/versions.json`
Most extensions now use the new structure, which supports multiple versions via the `versions.json` file. The instructions below cover both approaches.
@@ -143,6 +143,8 @@ These extensions use `mkPgrxExtension` and require additional Rust and pgrx vers
10. **Once approved**: Update `common-nix.vars.yml` if releasing
+> **Need to update pgrx or Rust versions?** See [Updating cargo-pgrx Extensions](./updating-pgrx-extensions.md) for the complete guide covering pgrx version updates, Rust toolchain updates (including `nix flake update rust-overlay`), and troubleshooting.
+
---
## Updating an Extension (Old Structure - Deprecated)
diff --git a/nix/docs/updating-pgrx-extensions.md b/nix/docs/updating-pgrx-extensions.md
new file mode 100644
index 00000000..ed615bd9
--- /dev/null
+++ b/nix/docs/updating-pgrx-extensions.md
@@ -0,0 +1,373 @@
+# Updating cargo-pgrx Extensions
+
+This guide covers the complete process for updating Rust-based PostgreSQL extensions that use `pgrx` (formerly `pgx`). These extensions include `wrappers`, `pg_graphql`, and `pg_jsonschema`.
+
+## Overview
+
+Updating a pgrx extension can involve one or more of these changes:
+
+1. **Extension version only** - New release of the extension with same Rust/pgrx versions
+2. **Extension + pgrx version** - Extension requires a newer pgrx version
+3. **Extension + pgrx + Rust version** - Full stack update including the Rust toolchain
+
+Each scenario requires different file changes. This guide covers all three.
+
+
+## Quick Reference: File Locations
+
+| Purpose | File |
+|---------|------|
+| Extension versions | `nix/ext/versions.json` |
+| Extension-specific config | `nix/ext/<name>/default.nix` |
+| pgrx versions + Rust mappings | `nix/cargo-pgrx/versions.json` |
+| cargo-pgrx package definitions | `nix/cargo-pgrx/default.nix` |
+| pgrx extension builder | `nix/cargo-pgrx/mkPgrxExtension.nix` |
+| Overlays (buildPgrxExtension_*) | `nix/overlays/default.nix` |
+| Rust toolchain source | `flake.nix` (rust-overlay input) |
+| Pinned rust-overlay version | `flake.lock` |
+
+---
+
+## Summary: Which Scenario Am I In?
+
+| Situation | Scenario |
+|-----------|----------|
+| Same pgrx and Rust as previous version | 1 - Extension only |
+| Extension's Cargo.toml has newer pgrx | 2 - Extension + pgrx |
+| Extension requires Rust version not in rust-overlay | 3 - Full stack update |
+| "attribute missing" error for Rust version | 3 - Need `nix flake update rust-overlay` |
+
+---
+
+## 1. Updating Extension Version Only
+
+Use this when the extension has a new release but uses the same pgrx and Rust versions as a previous version.
+
+### Files to Change
+
+| File | Change |
+|------|--------|
+| `nix/ext/versions.json` | Add new version entry |
+| `nix/ext/<extension>/default.nix` | Add old version to `allPreviouslyPackagedVersions` |
+
+### Steps
+
+1. **Edit `nix/ext/versions.json`** - Add the new version entry:
+
+ ```json
+ "wrappers": {
+ "0.5.6": {
+ "postgresql": ["15", "17", "orioledb-17"],
+ "hash": "sha256-...",
+ "pgrx": "0.16.0",
+ "rust": "1.87.0"
+ },
+ "0.5.7": {
+ "postgresql": ["15", "17", "orioledb-17"],
+ "hash": "",
+ "pgrx": "0.16.0",
+ "rust": "1.87.0"
+ }
+ }
+ ```
+
+ - Copy the `pgrx` and `rust` values from the previous version
+ - Set `hash` to `""` initially
+
+2. **Update `allPreviouslyPackagedVersions`** in `nix/ext/<extension>/default.nix`:
+
+ ```nix
+ allPreviouslyPackagedVersions = [
+ "0.5.6" # Add the previous version here
+ "0.5.5"
+ # ... older versions
+ ];
+ ```
+
+ This ensures migration SQL files are created for users upgrading from older versions.
+
+3. **Stage your changes**:
+
+ ```bash
+ git add .
+ ```
+
+4. **Build to get the hash**:
+
+ ```bash
+ nix build .#psql_17/exts/wrappers-all -L
+ ```
+
+ The build will fail and print the correct hash. Copy it to `versions.json`.
+
+5. **Rebuild to verify**:
+
+ ```bash
+ nix build .#psql_17/exts/wrappers-all -L
+ ```
+
+---
+
+## 2. Updating Extension + pgrx Version
+
+Use this when the extension requires a newer pgrx version.
+
+### Files to Change
+
+| File | Change |
+|------|--------|
+| `nix/ext/versions.json` | Add new version with new pgrx version |
+| `nix/ext/<extension>/default.nix` | Add old version to `allPreviouslyPackagedVersions` |
+| `nix/cargo-pgrx/versions.json` | Add new pgrx version (if not already present) |
+| `nix/cargo-pgrx/default.nix` | Add new `cargo-pgrx_x_y_z` entry (if not already present) |
+| `nix/overlays/default.nix` | Add new `buildPgrxExtension_x_y_z` (if not already present) |
+
+### Steps
+
+1. **Check if the pgrx version exists** in `nix/cargo-pgrx/versions.json`:
+
+ ```bash
+ cat nix/cargo-pgrx/versions.json | grep "0.16.1"
+ ```
+
+2. **If pgrx version doesn't exist**, add it to `nix/cargo-pgrx/versions.json`:
+
+ ```json
+ "0.16.1": {
+ "hash": "",
+ "rust": {
+ "1.88.0": {
+ "cargoHash": ""
+ }
+ }
+ }
+ ```
+
+ The `rust` object maps Rust versions to their corresponding `cargoHash`. You'll need to calculate both the `hash` (for the pgrx crate) and `cargoHash` (for cargo dependencies).
+
+3. **Add cargo-pgrx entry** in `nix/cargo-pgrx/default.nix`:
+
+ ```nix
+ cargo-pgrx_0_16_1 = mkCargoPgrx {
+ version = "0.16.1";
+ hash = "";
+ cargoHash = "";
+ };
+ ```
+
+4. **Add overlay entry** in `nix/overlays/default.nix`:
+
+ ```nix
+ buildPgrxExtension_0_16_1 = prev.buildPgrxExtension.override {
+ cargo-pgrx = final.cargo-pgrx.cargo-pgrx_0_16_1;
+ };
+ ```
+
+5. **Update `nix/ext/versions.json`** with the new extension version:
+
+ ```json
+ "0.5.7": {
+ "postgresql": ["15", "17", "orioledb-17"],
+ "hash": "",
+ "pgrx": "0.16.1",
+ "rust": "1.88.0"
+ }
+ ```
+
+6. **Stage and build** to calculate hashes:
+
+ ```bash
+ git add .
+ nix build .#psql_17/exts/wrappers-all -L
+ ```
+
+ You'll need to run this multiple times, updating hashes as they're calculated:
+ - First failure: pgrx crate hash
+ - Second failure: cargoHash for pgrx
+ - Third failure: extension hash
+
+---
+
+## 3. Updating Extension + pgrx + Rust Version
+
+Use this when you need a newer Rust toolchain version.
+
+### Files to Change
+
+All files from scenario 2, plus:
+
+| File | Change |
+|------|--------|
+| `flake.lock` | Update rust-overlay input |
+
+### Understanding rust-overlay
+
+The Rust toolchain comes from the `rust-overlay` flake input. This overlay provides pre-built Rust versions with hashes already calculated. The overlay is updated daily on GitHub, but your local `flake.lock` pins a specific version.
+
+### Steps
+
+1. **Check if your Rust version is available**:
+
+ ```bash
+ nix eval --raw --impure --expr '
+ let
+ flake = builtins.getFlake (toString ./.);
+ pkgs = import flake.inputs.nixpkgs {
+ system = builtins.currentSystem;
+ overlays = [ (import flake.inputs.rust-overlay) ];
+ };
+ in
+ builtins.concatStringsSep "\n" (builtins.attrNames pkgs.rust-bin.stable)
+ '
+ ```
+
+ This lists all available stable Rust versions.
+
+2. **If your Rust version is missing, update rust-overlay**:
+
+ ```bash
+ nix flake update rust-overlay
+ ```
+
+ > **IMPORTANT**: Use `nix flake update rust-overlay` (with the input name) to update ONLY the rust-overlay input. Running `nix flake update` without arguments updates ALL inputs, which WILL cause unintended changes.
+
+3. **Verify the version is now available**:
+
+ ```bash
+ nix eval --raw --impure --expr '
+ let
+ flake = builtins.getFlake (toString ./.);
+ pkgs = import flake.inputs.nixpkgs {
+ system = builtins.currentSystem;
+ overlays = [ (import flake.inputs.rust-overlay) ];
+ };
+ in
+ builtins.concatStringsSep "\n" (builtins.attrNames pkgs.rust-bin.stable)
+ ' | grep "1.88.0"
+ ```
+
+4. **Add the new Rust version to pgrx mappings** in `nix/cargo-pgrx/versions.json`:
+
+ ```json
+ "0.16.1": {
+ "hash": "sha256-...",
+ "rust": {
+ "1.87.0": {
+ "cargoHash": "sha256-..."
+ },
+ "1.88.0": {
+ "cargoHash": ""
+ }
+ }
+ }
+ ```
+
+ Each pgrx version can support multiple Rust versions. The `cargoHash` may differ between Rust versions.
+
+5. **Continue with extension update** as in scenario 2.
+
+---
+
+## 4. Verification with `nix flake check`
+
+After making changes, verify everything works:
+
+```bash
+nix flake check -L
+```
+
+The `-L` flag shows full build logs, which is essential for debugging.
+
+### What `nix flake check` verifies:
+
+- All extension builds for all PostgreSQL versions
+- Extension test suites
+- Migration path validity (upgrade scripts between versions)
+- Package structure integrity
+
+### Testing a specific extension first:
+
+For faster iteration, test just your extension before running full checks:
+
+```bash
+# Build for one PostgreSQL version
+nix build .#psql_17/exts/wrappers-all -L
+
+# Build for all PostgreSQL versions
+nix build .#psql_15/exts/wrappers-all -L
+nix build .#psql_17/exts/wrappers-all -L
+```
+
+---
+
+## 5. Troubleshooting
+
+### Error: `attribute '"X.Y.Z"' missing`
+
+**Example:**
+```
+error: attribute '"1.88.0"' missing
+at /nix/store/.../nix/ext/wrappers/default.nix:19:15:
+ cargo = rust-bin.stable.${rustVersion}.default;
+Did you mean one of 1.38.0, 1.48.0, 1.58.0, 1.68.0 or 1.78.0?
+```
+
+**Cause:** The Rust version specified in `versions.json` isn't available in your pinned `rust-overlay`.
+
+**Solution:**
+```bash
+nix flake update rust-overlay
+```
+
+Then verify the version is available (see section 3).
+
+### Error: `Unsupported pgrx version X.Y.Z`
+
+**Cause:** The pgrx version in `versions.json` isn't defined in `nix/cargo-pgrx/versions.json`.
+
+**Solution:** Add the pgrx version entry to `nix/cargo-pgrx/versions.json` with appropriate Rust version mappings.
+
+### Error: `Unsupported rust version X.Y.Z for pgrx version A.B.C`
+
+**Cause:** The Rust version isn't mapped for this pgrx version in `nix/cargo-pgrx/versions.json`.
+
+**Solution:** Add the Rust version to the pgrx entry:
+
+```json
+"0.16.1": {
+ "hash": "sha256-...",
+ "rust": {
+ "1.87.0": { "cargoHash": "sha256-..." },
+ "1.88.0": { "cargoHash": "" } // Add this
+ }
+}
+```
+
+### Hash Calculation Failures
+
+When calculating hashes, you'll see errors like:
+
+```
+hash mismatch in fixed-output derivation:
+ wanted: sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
+ got: sha256-xYz123ActualHashValue...=
+```
+
+Copy the `got` value to replace the empty or incorrect hash.
+
+### Build Fails After Hash Update
+
+If the build still fails after updating hashes:
+
+1. **Stage all changes**: `git add .`
+2. **Clean Nix cache** (if necessary): `nix store gc`
+3. **Rebuild**: `nix build .#psql_17/exts/<extension> -L`
+
+### CargoLock outputHashes
+
+Some extensions (like wrappers) have git dependencies that require `outputHashes` in their `cargoLock` configuration. If you see errors about missing hashes for git dependencies:
+
+1. Check the extension's `default.nix` for the `cargoLock.outputHashes` section
+2. Add any new git dependencies with their calculated hashes
+
+---
diff --git a/nix/ext/versions.json b/nix/ext/versions.json
index d1a78336..5bfc1f30 100644
--- a/nix/ext/versions.json
+++ b/nix/ext/versions.json
@@ -679,6 +679,16 @@
"hash": "sha256-WanKlNY65KORzyCSV5hsYCVjQp/s23IUfzHMdpMhn1M=",
"pgrx": "0.16.0",
"rust": "1.87.0"
+ },
+ "0.5.7": {
+ "postgresql": [
+ "15",
+ "17",
+ "orioledb-17"
+ ],
+ "hash": "sha256-B46ie4qlfD1Wxd7QRv1fIuRmmSrb5s5A7KpQVwadazo=",
+ "pgrx": "0.16.1",
+ "rust": "1.88.0"
}
},
"pg_hashids": {
@@ -813,4 +823,4 @@
"hash": "sha256-+QoACPCKiFfuT2lJfSUmgfzC5MXf75KpSoc2PzPxKyM="
}
}
-}
\ No newline at end of file
+}
diff --git a/nix/ext/wrappers/default.nix b/nix/ext/wrappers/default.nix
index 89effcfb..b3798084 100644
--- a/nix/ext/wrappers/default.nix
+++ b/nix/ext/wrappers/default.nix
@@ -44,6 +44,7 @@ let
]
++ lib.optionals stdenv.isDarwin [
darwin.apple_sdk.frameworks.CoreFoundation
+ darwin.apple_sdk.frameworks.CoreServices
darwin.apple_sdk.frameworks.Security
darwin.apple_sdk.frameworks.SystemConfiguration
];
@@ -98,6 +99,11 @@ let
"clickhouse-rs-1.1.0-alpha.1" = "sha256-nKiGzdsAgJej8NgyVOqHaD1sZLrNF1RPfEhu2pRwZ6o=";
"iceberg-catalog-s3tables-0.6.0" = "sha256-AUK7B0wMqQZwJho91woLs8uOC4k1RdUEEN5Khw2OoqQ=";
}
+ else if builtins.compareVersions "0.5.7" version == 0 then
+ {
+ "clickhouse-rs-1.1.0-alpha.1" = "sha256-nKiGzdsAgJej8NgyVOqHaD1sZLrNF1RPfEhu2pRwZ6o=";
+ "iceberg-catalog-s3tables-0.6.0" = "sha256-AUK7B0wMqQZwJho91woLs8uOC4k1RdUEEN5Khw2OoqQ=";
+ }
else
{
"clickhouse-rs-1.1.0-alpha.1" = "sha256-nKiGzdsAgJej8NgyVOqHaD1sZLrNF1RPfEhu2pRwZ6o=";
diff --git a/nix/tests/expected/z_15_ext_interface.out b/nix/tests/expected/z_15_ext_interface.out
index f2b5672a..e07b6e60 100644
--- a/nix/tests/expected/z_15_ext_interface.out
+++ b/nix/tests/expected/z_15_ext_interface.out
@@ -5202,10 +5202,6 @@ order by
wrappers | public | duckdb_fdw_handler | | fdw_handler
wrappers | public | duckdb_fdw_meta | | TABLE(name text, version text, author text, website text)
wrappers | public | duckdb_fdw_validator | options text[], catalog oid | void
- wrappers | public | embd_distance | embd embd | real
- wrappers | public | embd_in | input cstring | embd
- wrappers | public | embd_knn | _left embd, _right embd | boolean
- wrappers | public | embd_out | input embd | cstring
wrappers | public | firebase_fdw_handler | | fdw_handler
wrappers | public | firebase_fdw_meta | | TABLE(name text, version text, author text, website text)
wrappers | public | firebase_fdw_validator | options text[], catalog oid | void
@@ -5231,6 +5227,10 @@ order by
wrappers | public | s3_vectors_fdw_handler | | fdw_handler
wrappers | public | s3_vectors_fdw_meta | | TABLE(name text, version text, author text, website text)
wrappers | public | s3_vectors_fdw_validator | options text[], catalog oid | void
+ wrappers | public | s3vec_distance | s3vec s3vec | real
+ wrappers | public | s3vec_in | input cstring | s3vec
+ wrappers | public | s3vec_knn | _left s3vec, _right s3vec | boolean
+ wrappers | public | s3vec_out | input s3vec | cstring
wrappers | public | stripe_fdw_handler | | fdw_handler
wrappers | public | stripe_fdw_meta | | TABLE(name text, version text, author text, website text)
wrappers | public | stripe_fdw_validator | options text[], catalog oid | void
diff --git a/nix/tests/expected/z_17_ext_interface.out b/nix/tests/expected/z_17_ext_interface.out
index 57f68aa1..0d932ec2 100644
--- a/nix/tests/expected/z_17_ext_interface.out
+++ b/nix/tests/expected/z_17_ext_interface.out
@@ -4846,10 +4846,6 @@ order by
wrappers | public | duckdb_fdw_handler | | fdw_handler
wrappers | public | duckdb_fdw_meta | | TABLE(name text, version text, author text, website text)
wrappers | public | duckdb_fdw_validator | options text[], catalog oid | void
- wrappers | public | embd_distance | embd embd | real
- wrappers | public | embd_in | input cstring | embd
- wrappers | public | embd_knn | _left embd, _right embd | boolean
- wrappers | public | embd_out | input embd | cstring
wrappers | public | firebase_fdw_handler | | fdw_handler
wrappers | public | firebase_fdw_meta | | TABLE(name text, version text, author text, website text)
wrappers | public | firebase_fdw_validator | options text[], catalog oid | void
@@ -4875,6 +4871,10 @@ order by
wrappers | public | s3_vectors_fdw_handler | | fdw_handler
wrappers | public | s3_vectors_fdw_meta | | TABLE(name text, version text, author text, website text)
wrappers | public | s3_vectors_fdw_validator | options text[], catalog oid | void
+ wrappers | public | s3vec_distance | s3vec s3vec | real
+ wrappers | public | s3vec_in | input cstring | s3vec
+ wrappers | public | s3vec_knn | _left s3vec, _right s3vec | boolean
+ wrappers | public | s3vec_out | input s3vec | cstring
wrappers | public | stripe_fdw_handler | | fdw_handler
wrappers | public | stripe_fdw_meta | | TABLE(name text, version text, author text, website text)
wrappers | public | stripe_fdw_validator | options text[], catalog oid | void
diff --git a/nix/tests/expected/z_orioledb-17_ext_interface.out b/nix/tests/expected/z_orioledb-17_ext_interface.out
index 57f68aa1..0d932ec2 100644
--- a/nix/tests/expected/z_orioledb-17_ext_interface.out
+++ b/nix/tests/expected/z_orioledb-17_ext_interface.out
@@ -4846,10 +4846,6 @@ order by
wrappers | public | duckdb_fdw_handler | | fdw_handler
wrappers | public | duckdb_fdw_meta | | TABLE(name text, version text, author text, website text)
wrappers | public | duckdb_fdw_validator | options text[], catalog oid | void
- wrappers | public | embd_distance | embd embd | real
- wrappers | public | embd_in | input cstring | embd
- wrappers | public | embd_knn | _left embd, _right embd | boolean
- wrappers | public | embd_out | input embd | cstring
wrappers | public | firebase_fdw_handler | | fdw_handler
wrappers | public | firebase_fdw_meta | | TABLE(name text, version text, author text, website text)
wrappers | public | firebase_fdw_validator | options text[], catalog oid | void
@@ -4875,6 +4871,10 @@ order by
wrappers | public | s3_vectors_fdw_handler | | fdw_handler
wrappers | public | s3_vectors_fdw_meta | | TABLE(name text, version text, author text, website text)
wrappers | public | s3_vectors_fdw_validator | options text[], catalog oid | void
+ wrappers | public | s3vec_distance | s3vec s3vec | real
+ wrappers | public | s3vec_in | input cstring | s3vec
+ wrappers | public | s3vec_knn | _left s3vec, _right s3vec | boolean
+ wrappers | public | s3vec_out | input s3vec | cstring
wrappers | public | stripe_fdw_handler | | fdw_handler
wrappers | public | stripe_fdw_meta | | TABLE(name text, version text, author text, website text)
wrappers | public | stripe_fdw_validator | options text[], catalog oid | void
[parent: 6b3b5c733d11]