@supabase/pg-delta 1.0.0-alpha.19 → 1.0.0-alpha.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -143,14 +143,29 @@ export const supabase = {
143
143
  skipAuthorization: true,
144
144
  },
145
145
  },
146
- // pgmq extensions creates it's own schema on install doing a `CREATE EXTENSION pgmq WITH SCHEMA pgmq;`
147
- // will cause an error because the schema will create extension and extension refer to unexisting schema
146
+ // Extensions whose install script creates its own target schema cannot
147
+ // tolerate `CREATE EXTENSION WITH SCHEMA <self>` against a fresh
148
+ // database: Postgres resolves WITH SCHEMA before running the extension's
149
+ // script, so the schema referenced by the clause does not exist yet.
150
+ // These extensions also install into schemas listed in
151
+ // SUPABASE_SYSTEM_SCHEMAS, so pg-delta filters their CREATE SCHEMA out
152
+ // of the declarative plan — nothing else will pre-create the schema.
153
+ // Emitting a bare `CREATE EXTENSION <name>` lets the extension's own
154
+ // install script create the schema it expects.
155
+ //
156
+ // Note: other extensions install into SUPABASE_SYSTEM_SCHEMAS too
157
+ // (`pg_graphql` → `graphql`, `supabase_vault` → `vault`,
158
+ // `uuid-ossp`/`pgcrypto`/`pg_net`/`pg_stat_statements` → `extensions`),
159
+ // but those schemas are created by the supabase/postgres image baseline
160
+ // and survive `DROP EXTENSION … CASCADE`, so `CREATE EXTENSION … WITH
161
+ // SCHEMA <schema>` finds the schema and succeeds. Only the three below
162
+ // have self-created schemas that are absent from the baseline.
148
163
  {
149
164
  when: {
150
165
  objectType: "extension",
151
166
  operation: "create",
152
167
  scope: "object",
153
- "extension/schema": ["pgmq"],
168
+ "extension/schema": ["pgmq", "pgsodium", "pgtle"],
154
169
  },
155
170
  options: {
156
171
  skipSchema: true,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@supabase/pg-delta",
3
- "version": "1.0.0-alpha.19",
3
+ "version": "1.0.0-alpha.20",
4
4
  "description": "PostgreSQL migrations made easy",
5
5
  "type": "module",
6
6
  "sideEffects": false,
@@ -148,14 +148,29 @@ export const supabase: IntegrationDSL = {
148
148
  skipAuthorization: true,
149
149
  },
150
150
  },
151
- // pgmq extensions creates it's own schema on install doing a `CREATE EXTENSION pgmq WITH SCHEMA pgmq;`
152
- // will cause an error because the schema will create extension and extension refer to unexisting schema
151
+ // Extensions whose install script creates its own target schema cannot
152
+ // tolerate `CREATE EXTENSION WITH SCHEMA <self>` against a fresh
153
+ // database: Postgres resolves WITH SCHEMA before running the extension's
154
+ // script, so the schema referenced by the clause does not exist yet.
155
+ // These extensions also install into schemas listed in
156
+ // SUPABASE_SYSTEM_SCHEMAS, so pg-delta filters their CREATE SCHEMA out
157
+ // of the declarative plan — nothing else will pre-create the schema.
158
+ // Emitting a bare `CREATE EXTENSION <name>` lets the extension's own
159
+ // install script create the schema it expects.
160
+ //
161
+ // Note: other extensions install into SUPABASE_SYSTEM_SCHEMAS too
162
+ // (`pg_graphql` → `graphql`, `supabase_vault` → `vault`,
163
+ // `uuid-ossp`/`pgcrypto`/`pg_net`/`pg_stat_statements` → `extensions`),
164
+ // but those schemas are created by the supabase/postgres image baseline
165
+ // and survive `DROP EXTENSION … CASCADE`, so `CREATE EXTENSION … WITH
166
+ // SCHEMA <schema>` finds the schema and succeeds. Only the three below
167
+ // have self-created schemas that are absent from the baseline.
153
168
  {
154
169
  when: {
155
170
  objectType: "extension",
156
171
  operation: "create",
157
172
  scope: "object",
158
- "extension/schema": ["pgmq"],
173
+ "extension/schema": ["pgmq", "pgsodium", "pgtle"],
159
174
  },
160
175
  options: {
161
176
  skipSchema: true,