Skip to content

feat: multiple versions for the wrappers extension #1663

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 19 commits into from
Jul 8, 2025
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 26 additions & 2 deletions .github/workflows/nix-build.yml
Original file line number Diff line number Diff line change
@@ -57,7 +57,7 @@ jobs:
run: |
cat << 'EOF' | sudo tee /etc/nix/upload-to-cache.sh > /dev/null
#!/usr/bin/env bash
set -eouf
set -euf
export IFS=' '
/nix/var/nix/profiles/default/bin/nix copy --to 's3://nix-postgres-artifacts?secret-key=/etc/nix/nix-secret-key' $OUT_PATHS
EOF
@@ -77,10 +77,34 @@ jobs:
extra-conf: |
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=
- name: Aggressive disk cleanup for DuckDB build
if: matrix.runner == 'macos-latest-xlarge'
run: |
echo "=== BEFORE CLEANUP ==="
df -h
# Remove major space consumers
sudo rm -rf /usr/share/dotnet || true
sudo rm -rf /usr/local/lib/android || true
sudo rm -rf /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform || true
sudo rm -rf /Applications/Xcode.app/Contents/Developer/Platforms/watchOS.platform || true
sudo rm -rf /Applications/Xcode.app/Contents/Developer/Platforms/tvOS.platform || true
# Clean everything possible
sudo rm -rf /opt/ghc || true
sudo rm -rf /usr/local/share/boost || true
sudo rm -rf /opt/homebrew || true
sudo xcrun simctl delete all 2>/dev/null || true
# Aggressive cache cleanup
sudo rm -rf /System/Library/Caches/* 2>/dev/null || true
sudo rm -rf /Library/Caches/* 2>/dev/null || true
sudo rm -rf ~/Library/Caches/* 2>/dev/null || true
sudo rm -rf /private/var/log/* 2>/dev/null || true
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
-- --skip-cached --no-nom ${{ matrix.runner == 'macos-latest-xlarge' && '--max-jobs 1' || '' }}
--flake ".#checks.$(nix eval --raw --impure --expr 'builtins.currentSystem')"
env:
AWS_ACCESS_KEY_ID: ${{ env.AWS_ACCESS_KEY_ID }}
6 changes: 3 additions & 3 deletions ansible/vars.yml
Original file line number Diff line number Diff line change
@@ -9,9 +9,9 @@ postgres_major:

# Full version strings for each major version
postgres_release:
postgresorioledb-17: "17.0.1.100-orioledb"
postgres17: "17.4.1.050"
postgres15: "15.8.1.107"
postgresorioledb-17: "17.0.1.101-orioledb"
postgres17: "17.4.1.051"
postgres15: "15.8.1.108"

# Non Postgres Extensions
pgbouncer_release: "1.19.0"
6 changes: 3 additions & 3 deletions flake.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

16 changes: 12 additions & 4 deletions nix/cargo-pgrx/buildPgrxExtension.nix
Original file line number Diff line number Diff line change
@@ -26,14 +26,13 @@
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.

{
lib,
cargo-pgrx,
pkg-config,
rustPlatform,
stdenv,
Security,
darwin,
writeShellScriptBin,
}:

@@ -94,7 +93,13 @@ let
export PGRX_HOME=$(mktemp -d)
export PGDATA="$PGRX_HOME/data-${pgrxPostgresMajor}/"
cargo-pgrx pgrx init "--pg${pgrxPostgresMajor}" ${lib.getDev postgresql}/bin/pg_config
echo "unix_socket_directories = '$(mktemp -d)'" > "$PGDATA/postgresql.conf"

# unix sockets work in sandbox, too.
export PGHOST="$(mktemp -d)"
cat > "$PGDATA/postgresql.conf" <<EOF
listen_addresses = '''
unix_socket_directories = '$PGHOST'
EOF

# This is primarily for Mac or other Nix systems that don't use the nixbld user.
export USER="$(whoami)"
@@ -112,7 +117,9 @@ let
# so we don't accidentally `(rustPlatform.buildRustPackage argsForBuildRustPackage) // { ... }` because
# we forgot parentheses
finalArgs = argsForBuildRustPackage // {
buildInputs = (args.buildInputs or [ ]) ++ lib.optionals stdenv.hostPlatform.isDarwin [ Security ];
buildInputs =
(args.buildInputs or [ ])
++ lib.optionals stdenv.hostPlatform.isDarwin [ darwin.apple_sdk.frameworks.Security ];

nativeBuildInputs =
(args.nativeBuildInputs or [ ])
@@ -156,6 +163,7 @@ let
cargo-pgrx pgrx stop all

mv $out/${postgresql}/* $out
mv $out/${postgresql.lib}/* $out
rm -rf $out/nix

${maybeLeaveBuildAndTestSubdir}
14 changes: 7 additions & 7 deletions nix/cargo-pgrx/default.nix
Original file line number Diff line number Diff line change
@@ -7,14 +7,14 @@
makeRustPlatform,
stdenv,
rust-bin,
rustVersion ? "1.85.1",
}:
let
rustVersion = "1.85.1";
rustPlatform = makeRustPlatform {
cargo = rust-bin.stable.${rustVersion}.default;
rustc = rust-bin.stable.${rustVersion}.default;
};
generic =
mkCargoPgrx =
{
version,
hash,
@@ -57,25 +57,25 @@ let
};
in
{
cargo-pgrx_0_11_3 = generic {
cargo-pgrx_0_11_3 = mkCargoPgrx {
version = "0.11.3";
hash = "sha256-UHIfwOdXoJvR4Svha6ud0FxahP1wPwUtviUwUnTmLXU=";
cargoHash = "sha256-j4HnD8Zt9uhlV5N7ldIy9564o9qFEqs5KfXHmnQ1WEw=";
};
cargo-pgrx_0_12_6 = generic {
cargo-pgrx_0_12_6 = mkCargoPgrx {
version = "0.12.6";
hash = "sha256-7aQkrApALZe6EoQGVShGBj0UIATnfOy2DytFj9IWdEA=";
cargoHash = "sha256-Di4UldQwAt3xVyvgQT1gUhdvYUVp7n/a72pnX45kP0w=";
};
cargo-pgrx_0_12_9 = generic {
cargo-pgrx_0_12_9 = mkCargoPgrx {
version = "0.12.9";
hash = "sha256-aR3DZAjeEEAjLQfZ0ZxkjLqTVMIEbU0UiZ62T4BkQq8=";
cargoHash = "sha256-KTKcol9qSNLQZGW32e6fBb6cPkUGItknyVpLdBYqrBY=";
};
cargo-pgrx_0_14_3 = generic {
cargo-pgrx_0_14_3 = mkCargoPgrx {
version = "0.14.3";
hash = "sha256-3TsNpEqNm3Uol5XPW1i0XEbP2fF2+RKB2d7lO6BDnvQ=";
cargoHash = "sha256-Ny7j56pwB+2eEK62X0nWfFKQy5fBz+Q1oyvecivxLkk=";
};
inherit rustPlatform;
inherit mkCargoPgrx;
}
38 changes: 38 additions & 0 deletions nix/cargo-pgrx/mkPgrxExtension.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
{
callPackage,
rustVersion,
pgrxVersion,
makeRustPlatform,
rust-bin,
}:
let
inherit ((callPackage ./default.nix { inherit rustVersion; })) mkCargoPgrx;

rustPlatform = makeRustPlatform {
cargo = rust-bin.stable.${rustVersion}.default;
rustc = rust-bin.stable.${rustVersion}.default;
};

versions = builtins.fromJSON (builtins.readFile ./versions.json);

cargo-pgrx =
let
pgrx =
versions.${pgrxVersion}
or (throw "Unsupported pgrx version ${pgrxVersion}. Available versions: ${builtins.toString (builtins.attrNames versions)}. Change 'nix/cargo-pgrx/versions.json' to add support for new versions.");
mapping = {
inherit (pgrx) hash;
cargoHash =
pgrx.rust."${rustVersion}".cargoHash
or (throw "Unsupported rust version ${rustVersion} for pgrx version ${pgrxVersion}. Available Rust versions: ${builtins.toString (builtins.attrNames pgrx.rust)}. Change 'nix/cargo-pgrx/versions.json' to add support for new versions.");
};
in
mkCargoPgrx {
inherit (mapping) hash cargoHash;
version = pgrxVersion;
};
in
callPackage ./buildPgrxExtension.nix {
inherit rustPlatform;
inherit cargo-pgrx;
}
61 changes: 61 additions & 0 deletions nix/cargo-pgrx/versions.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
{
"0.11.2": {
"hash": "sha256-8NlpMDFaltTIA8G4JioYm8LaPJ2RGKH5o6sd6lBHmmM=",
"rust": {
"1.70.0": {
"cargoHash": "sha256-qTb3JV3u42EilaK2jP9oa5D09mkuHyRbGGRs9Rg4TzI="
},
"1.76.0": {
"cargoHash": "sha256-qTb3JV3u42EilaK2jP9oa5D09mkuHyRbGGRs9Rg4TzI="
},
"1.85.1": {
"cargoHash": "sha256-CbU5B0pvB9ApTZOdYP/ZwuIG8bqGzk/ING2PCM0q2bQ="
}
}
},
"0.11.3": {
"hash": "sha256-UHIfwOdXoJvR4Svha6ud0FxahP1wPwUtviUwUnTmLXU=",
"rust": {
"1.76.0": {
"cargoHash": "sha256-j4HnD8Zt9uhlV5N7ldIy9564o9qFEqs5KfXHmnQ1WEw="
},
"1.85.1": {
"cargoHash": "sha256-KBlT3FARjGcbtHIGDoC6ir3aNXXfDRmIoy990SOqoFg="
}
}
},
"0.12.6": {
"hash": "sha256-7aQkrApALZe6EoQGVShGBj0UIATnfOy2DytFj9IWdEA=",
"rust": {
"1.80.0": {
"cargoHash": "sha256-Di4UldQwAt3xVyvgQT1gUhdvYUVp7n/a72pnX45kP0w="
},
"1.81.0": {
"cargoHash": "sha256-Di4UldQwAt3xVyvgQT1gUhdvYUVp7n/a72pnX45kP0w="
}
}
},
"0.12.9": {
"hash": "sha256-aR3DZAjeEEAjLQfZ0ZxkjLqTVMIEbU0UiZ62T4BkQq8=",
"rust": {
"1.81.0": {
"cargoHash": "sha256-53HKhvsKLTa2JCByLEcK3UzWXoM+LTatd98zvS1C9no="
},
"1.84.0": {
"cargoHash": "sha256-KTKcol9qSNLQZGW32e6fBb6cPkUGItknyVpLdBYqrBY="
},
"1.87.0": {
"cargoHash": "sha256-KTKcol9qSNLQZGW32e6fBb6cPkUGItknyVpLdBYqrBY="
}
}
},
"0.14.3": {
"hash": "sha256-3TsNpEqNm3Uol5XPW1i0XEbP2fF2+RKB2d7lO6BDnvQ=",
"rust": {
"1.87.0": {
"cargoHash": "sha256-Ny7j56pwB+2eEK62X0nWfFKQy5fBz+Q1oyvecivxLkk="
}
}
}

}
15 changes: 11 additions & 4 deletions nix/checks.nix
Original file line number Diff line number Diff line change
@@ -22,6 +22,7 @@
let
# Create a testing harness for a PostgreSQL package. This is used for
# 'nix flake check', and works with any PostgreSQL package you hand it.
# deadnix: skip
makeCheckHarness =
pgpkg:
let
@@ -286,16 +287,15 @@
'';
in
{
psql_15 = makeCheckHarness self'.packages."psql_15/bin";
psql_17 = makeCheckHarness self'.packages."psql_17/bin";
psql_orioledb-17 = makeCheckHarness self'.packages."psql_orioledb-17/bin";
psql_15 = self'.packages."psql_15/bin";
psql_17 = self'.packages."psql_17/bin";
psql_orioledb-17 = self'.packages."psql_orioledb-17/bin";
inherit (self'.packages)
wal-g-2
wal-g-3
dbmate-tool
pg_regress
;
devShell = self'.devShells.default;
}
// pkgs.lib.optionalAttrs (system == "aarch64-linux") {
inherit (self'.packages)
@@ -306,6 +306,13 @@
postgresql_17_debug
postgresql_17_src
;
}
// pkgs.lib.optionalAttrs (system == "x86_64-linux") {
wrappers = import ./ext/tests/wrappers.nix {
inherit self;
inherit pkgs;
};
devShell = self'.devShells.default;
};
};
}
157 changes: 157 additions & 0 deletions nix/ext/tests/wrappers.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,157 @@
{ self, pkgs }:
let
pname = "wrappers";
inherit (pkgs) lib;
installedExtension =
postgresMajorVersion: self.packages.${pkgs.system}."psql_${postgresMajorVersion}/exts/${pname}-all";
versions = postgresqlMajorVersion: (installedExtension postgresqlMajorVersion).versions;
postgresqlWithExtension =
postgresql:
let
majorVersion = lib.versions.major postgresql.version;
pkg = pkgs.buildEnv {
name = "postgresql-${majorVersion}-${pname}";
paths = [
postgresql
postgresql.lib
(installedExtension majorVersion)
];
passthru = {
inherit (postgresql) version psqlSchema;
lib = pkg;
withPackages = _: pkg;
};
nativeBuildInputs = [ pkgs.makeWrapper ];
pathsToLink = [
"/"
"/bin"
"/lib"
];
postBuild = ''
wrapProgram $out/bin/postgres --set NIX_PGLIBDIR $out/lib
wrapProgram $out/bin/pg_ctl --set NIX_PGLIBDIR $out/lib
wrapProgram $out/bin/pg_upgrade --set NIX_PGLIBDIR $out/lib
'';
};
in
pkg;
in
self.inputs.nixpkgs.lib.nixos.runTest {
name = pname;
hostPkgs = pkgs;
nodes.server =
{ config, ... }:
{
virtualisation = {
forwardPorts = [
{
from = "host";
host.port = 13022;
guest.port = 22;
}
];
};
services.openssh = {
enable = true;
};
users.users.root.openssh.authorizedKeys.keys = [
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIo+ulCUfJjnCVgfM4946Ih5Nm8DeZZiayYeABHGPEl7 jfroche"
];

services.postgresql = {
enable = true;
package = postgresqlWithExtension self.packages.${pkgs.system}.postgresql_15;
};

specialisation.postgresql17.configuration = {
services.postgresql = {
package = lib.mkForce (postgresqlWithExtension self.packages.${pkgs.system}.postgresql_17);
};

systemd.services.postgresql-migrate = {
serviceConfig = {
Type = "oneshot";
RemainAfterExit = true;
User = "postgres";
Group = "postgres";
StateDirectory = "postgresql";
WorkingDirectory = "${builtins.dirOf config.services.postgresql.dataDir}";
};
script =
let
oldPostgresql = postgresqlWithExtension self.packages.${pkgs.system}.postgresql_15;
newPostgresql = postgresqlWithExtension self.packages.${pkgs.system}.postgresql_17;
oldDataDir = "${builtins.dirOf config.services.postgresql.dataDir}/${oldPostgresql.psqlSchema}";
newDataDir = "${builtins.dirOf config.services.postgresql.dataDir}/${newPostgresql.psqlSchema}";
in
''
if [[ ! -d ${newDataDir} ]]; then
install -d -m 0700 -o postgres -g postgres "${newDataDir}"
${newPostgresql}/bin/initdb -D "${newDataDir}"
${newPostgresql}/bin/pg_upgrade --old-datadir "${oldDataDir}" --new-datadir "${newDataDir}" \
--old-bindir "${oldPostgresql}/bin" --new-bindir "${newPostgresql}/bin"
else
echo "${newDataDir} already exists"
fi
'';
};

systemd.services.postgresql = {
after = [ "postgresql-migrate.service" ];
requires = [ "postgresql-migrate.service" ];
};
};
};
testScript =
{ nodes, ... }:
let
pg17-configuration = "${nodes.server.system.build.toplevel}/specialisation/postgresql17";
in
''
versions = {
"15": [${lib.concatStringsSep ", " (map (s: ''"${s}"'') (versions "15"))}],
"17": [${lib.concatStringsSep ", " (map (s: ''"${s}"'') (versions "17"))}],
}
def run_sql(query):
return server.succeed(f"""sudo -u postgres psql -t -A -F\",\" -c \"{query}\" """).strip()
def check_upgrade_path(pg_version):
with subtest("Check ${pname} upgrade path"):
firstVersion = versions[pg_version][0]
server.succeed("sudo -u postgres psql -c 'DROP EXTENSION IF EXISTS ${pname};'")
run_sql(f"""CREATE EXTENSION ${pname} WITH VERSION '{firstVersion}';""")
installed_version = run_sql(r"""SELECT extversion FROM pg_extension WHERE extname = '${pname}';""")
assert installed_version == firstVersion, f"Expected ${pname} version {firstVersion}, but found {installed_version}"
for version in versions[pg_version][1:]:
run_sql(f"""ALTER EXTENSION ${pname} UPDATE TO '{version}';""")
installed_version = run_sql(r"""SELECT extversion FROM pg_extension WHERE extname = '${pname}';""")
assert installed_version == version, f"Expected ${pname} version {version}, but found {installed_version}"
start_all()
server.wait_for_unit("multi-user.target")
server.wait_for_unit("postgresql.service")
check_upgrade_path("15")
with subtest("Check ${pname} latest extension version"):
server.succeed("sudo -u postgres psql -c 'DROP EXTENSION ${pname};'")
server.succeed("sudo -u postgres psql -c 'CREATE EXTENSION ${pname};'")
installed_extensions=run_sql(r"""SELECT extname, extversion FROM pg_extension;""")
latestVersion = versions["15"][-1]
assert f"${pname},{latestVersion}" in installed_extensions
with subtest("switch to postgresql 17"):
server.succeed(
"${pg17-configuration}/bin/switch-to-configuration test >&2"
)
with subtest("Check ${pname} latest extension version"):
installed_extensions=run_sql(r"""SELECT extname, extversion FROM pg_extension;""")
latestVersion = versions["17"][-1]
assert f"${pname},{latestVersion}" in installed_extensions
check_upgrade_path("17")
'';
}
14 changes: 14 additions & 0 deletions nix/ext/versions.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
{
"wrappers": {
"0.5.3": {
"postgresql": [
"15",
"17",
"orioledb-17"
],
"hash": "sha256-iaJriPEa0iVLpmnuUk9R3HS545Jhz7aH1clYvHEuEvs=",
"pgrx": "0.14.3",
"rust": "1.87.0"
}
}
}
164 changes: 164 additions & 0 deletions nix/ext/wrappers/0001-bump-pgrx-to-0.11.3.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,164 @@
From 6a14bd4cf44ebfa86404aa3e0b3f12dcac3f160c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jean-Fran=C3=A7ois=20Roche?= <jfroche@pyxel.be>
Date: Thu, 12 Jun 2025 17:26:02 +0200
Subject: [PATCH] bump pgrx to 0.11.3

Backport https://github.com/supabase/wrappers/pull/254
---
Cargo.lock | 36 +++++++++++++++---------------------
supabase-wrappers/Cargo.toml | 4 ++--
wrappers/Cargo.toml | 4 ++--
3 files changed, 19 insertions(+), 25 deletions(-)

diff --git a/Cargo.lock b/Cargo.lock
index 7c6b6b2..a3ba635 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -759,16 +759,16 @@ checksum = "8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b"

[[package]]
name = "bindgen"
-version = "0.68.1"
+version = "0.69.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "726e4313eb6ec35d2730258ad4e15b547ee75d6afaa1361a922e78e59b7d8078"
+checksum = "a00dc851838a2120612785d195287475a3ac45514741da670b735818822129a0"
dependencies = [
"bitflags 2.4.0",
"cexpr",
"clang-sys",
+ "itertools",
"lazy_static",
"lazycell",
- "peeking_take_while",
"proc-macro2",
"quote",
"regex",
@@ -2815,12 +2815,6 @@ dependencies = [
"libc",
]

-[[package]]
-name = "peeking_take_while"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099"
-
[[package]]
name = "percent-encoding"
version = "2.3.0"
@@ -2849,9 +2843,9 @@ dependencies = [

[[package]]
name = "pgrx"
-version = "0.11.2"
+version = "0.11.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cb44171122605250e719ca2ae49afb357bdb2fce4b3c876fcf2225165237328a"
+checksum = "2102faa5ef4a7bf096fefcf67692b293583efd18f9236340ad3169807dfc2b73"
dependencies = [
"atomic-traits",
"bitflags 2.4.0",
@@ -2874,9 +2868,9 @@ dependencies = [

[[package]]
name = "pgrx-macros"
-version = "0.11.2"
+version = "0.11.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a18ac8628b7de2f29a93d0abdbdcaee95a0e0ef4b59fd4de99cc117e166e843b"
+checksum = "c26810d09910ec987a6708d48d243efb5f879331e01c6fec0893714d0eb12bae"
dependencies = [
"pgrx-sql-entity-graph",
"proc-macro2",
@@ -2886,9 +2880,9 @@ dependencies = [

[[package]]
name = "pgrx-pg-config"
-version = "0.11.2"
+version = "0.11.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "acd45ac6eb1142c5690df63c4e0bdfb74f27c9f93a7af84f064dc2c0a2c2d6f7"
+checksum = "0b0099ba4b635dfe1e34afc8bca8be43e9577c5d726aaf1dc7dd23a78f6c8a60"
dependencies = [
"cargo_toml",
"dirs",
@@ -2904,9 +2898,9 @@ dependencies = [

[[package]]
name = "pgrx-pg-sys"
-version = "0.11.2"
+version = "0.11.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "81c6207939582934fc26fceb651cb5338e363c06ddc6b2d50ca71867f7c70ffe"
+checksum = "3f40315259c41fede51eb23b791b48d0a112b0f47d0dcb6862b798d1fa1db6ea"
dependencies = [
"bindgen",
"clang-sys",
@@ -2928,9 +2922,9 @@ dependencies = [

[[package]]
name = "pgrx-sql-entity-graph"
-version = "0.11.2"
+version = "0.11.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a50083de83b1fac2484e8f2c2a7da5fed0193904e2578fa6c4ce02262c455c2b"
+checksum = "7d47a4e991c8c66162c5d6b0fc2bd382e43a58fc893ce05a6a15ddcb1bf7eee4"
dependencies = [
"convert_case",
"eyre",
@@ -2943,9 +2937,9 @@ dependencies = [

[[package]]
name = "pgrx-tests"
-version = "0.11.2"
+version = "0.11.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6ba0115cd80d9e3ca1d5d2a8ab8b7320d6ed614a53d025b86152696a8b3caa75"
+checksum = "ab3abc01e2bb930b072bd660d04c8eaa69a29d4727d5b2a641f946c603c1605e"
dependencies = [
"clap-cargo",
"eyre",
diff --git a/supabase-wrappers/Cargo.toml b/supabase-wrappers/Cargo.toml
index a825fea..be66f25 100644
--- a/supabase-wrappers/Cargo.toml
+++ b/supabase-wrappers/Cargo.toml
@@ -19,14 +19,14 @@ pg16 = ["pgrx/pg16", "pgrx-tests/pg16"]
pg_test = []

[dependencies]
-pgrx = { version = "=0.11.2", default-features = false }
+pgrx = { version = "=0.11.3", default-features = false }
thiserror = "1.0.48"
tokio = { version = "1.35", features = ["rt", "net"] }
uuid = { version = "1.2.2" }
supabase-wrappers-macros = { version = "0.1", path = "../supabase-wrappers-macros" }

[dev-dependencies]
-pgrx-tests = "=0.11.2"
+pgrx-tests = "=0.11.3"

[package.metadata.docs.rs]
features = ["pg15", "cshim"]
diff --git a/wrappers/Cargo.toml b/wrappers/Cargo.toml
index a6dd573..6f63519 100644
--- a/wrappers/Cargo.toml
+++ b/wrappers/Cargo.toml
@@ -134,7 +134,7 @@ all_fdws = [
]

[dependencies]
-pgrx = { version = "=0.11.2" }
+pgrx = { version = "=0.11.3" }
#supabase-wrappers = "0.1"
supabase-wrappers = { path = "../supabase-wrappers", default-features = false }

@@ -204,4 +204,4 @@ redis = { version = "0.24.0", features = ["streams"], optional = true }
thiserror = { version = "1.0.48", optional = true }

[dev-dependencies]
-pgrx-tests = "=0.11.2"
+pgrx-tests = "=0.11.3"
--
2.49.0

5,191 changes: 5,191 additions & 0 deletions nix/ext/wrappers/Cargo.lock-0.3.0

Large diffs are not rendered by default.

381 changes: 193 additions & 188 deletions nix/ext/wrappers/default.nix

Large diffs are not rendered by default.

10 changes: 8 additions & 2 deletions nix/tests/expected/z_15_ext_interface.out

Large diffs are not rendered by default.

10 changes: 8 additions & 2 deletions nix/tests/expected/z_17_ext_interface.out

Large diffs are not rendered by default.

10 changes: 8 additions & 2 deletions nix/tests/expected/z_orioledb-17_ext_interface.out

Large diffs are not rendered by default.