@supacloud/lite 0.8.1 → 0.8.2

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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,12 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.8.2](https://github.com/zuohuadong/supacloud/compare/supacloud-lite-v0.8.1...supacloud-lite-v0.8.2) (2026-08-15)
4
+
5
+
6
+ ### Bug Fixes
7
+
8
+ * **lite:** support mirrored native postgres downloads ([#916](https://github.com/zuohuadong/supacloud/issues/916)) ([48224b7](https://github.com/zuohuadong/supacloud/commit/48224b7b067fcc56b3be8059301525cebeefb98d))
9
+
3
10
  ## [0.8.1](https://github.com/zuohuadong/supacloud/compare/supacloud-lite-v0.8.0...supacloud-lite-v0.8.1) (2026-08-15)
4
11
 
5
12
 
package/README.md CHANGED
@@ -135,9 +135,16 @@ supacloud-lite version
135
135
  - `SUPACLOUD_LITE_STORAGE_DIR`
136
136
  - `SUPACLOUD_LITE_STORAGE_BACKEND`:`fs`(默认)、`memory` 或 `s3`
137
137
  - `SUPACLOUD_LITE_S3_PREFIX`:S3 对象 key 前缀,可被 `--s3-prefix` 覆盖
138
+ - `SUPACLOUD_LITE_POSTGRES_MIRROR`:native 引擎下载 PostgreSQL 发布包时使用的 HTTPS 镜像前缀,例如 `https://ghproxy.net/`
138
139
  - `SUPACLOUD_LITE_JWT_SECRET`
139
140
  - `SUPACLOUD_LITE_VAULT_KEY`
140
141
 
142
+ native 引擎首次运行会下载约 12 MB 的 Theseus PostgreSQL 发布包并缓存在 `~/.cache/supacloud-lite`。网络无法直连 GitHub 时,可设置镜像前缀;Lite 会把完整上游 URL 追加到该前缀,并在解压执行前继续校验固定或上游发布的 SHA-256。镜像不能包含 URL 凭据、query 或 fragment;除 loopback 测试地址外必须使用 HTTPS。
143
+
144
+ ```bash
145
+ SUPACLOUD_LITE_POSTGRES_MIRROR=https://ghproxy.net/ supacloud-lite migrate --engine native
146
+ ```
147
+
141
148
  使用远端 S3 时,启动前设置 `SUPACLOUD_LITE_STORAGE_BACKEND=s3`,并按 Bun S3 约定提供 `S3_BUCKET`、`S3_ACCESS_KEY_ID`、`S3_SECRET_ACCESS_KEY`、`S3_ENDPOINT`、`S3_REGION` 等变量;也支持对应的 `AWS_*` 变量。CLI 不接受密钥参数,避免凭据出现在进程列表中。
142
149
 
143
150
  S3 模式下 `db reset` 会被拒绝,因为 Lite 不能把数据库元数据清理与远端对象删除做成原子操作;需要先明确处理远端 bucket/prefix,再切回本地或内存存储执行重置。
@@ -469,9 +476,16 @@ Environment variables:
469
476
  - `SUPACLOUD_LITE_STORAGE_DIR`
470
477
  - `SUPACLOUD_LITE_STORAGE_BACKEND`: `fs` (default), `memory`, or `s3`
471
478
  - `SUPACLOUD_LITE_S3_PREFIX`: S3 object key prefix, can be overridden by `--s3-prefix`
479
+ - `SUPACLOUD_LITE_POSTGRES_MIRROR`: HTTPS prefix used to proxy native-engine PostgreSQL release downloads, for example `https://ghproxy.net/`
472
480
  - `SUPACLOUD_LITE_JWT_SECRET`
473
481
  - `SUPACLOUD_LITE_VAULT_KEY`
474
482
 
483
+ On its first run, the native engine downloads an approximately 12 MB Theseus PostgreSQL release into `~/.cache/supacloud-lite`. If GitHub is not directly reachable, set a mirror prefix; Lite appends the complete upstream URL and still verifies the pinned or published SHA-256 before extracting or executing the archive. The mirror must not contain URL credentials, a query, or a fragment, and must use HTTPS except for loopback test endpoints.
484
+
485
+ ```bash
486
+ SUPACLOUD_LITE_POSTGRES_MIRROR=https://ghproxy.net/ supacloud-lite migrate --engine native
487
+ ```
488
+
475
489
  When using remote S3, set `SUPACLOUD_LITE_STORAGE_BACKEND=s3` before starting, and provide variables such as `S3_BUCKET`, `S3_ACCESS_KEY_ID`, `S3_SECRET_ACCESS_KEY`, `S3_ENDPOINT`, and `S3_REGION` according to Bun S3 conventions; the corresponding `AWS_*` variables are also supported. The CLI does not accept secret parameters to avoid credentials appearing in the process list.
476
490
 
477
491
  In S3 mode, `db reset` is rejected because Lite cannot make database metadata cleanup and remote object deletion an atomic operation; you must explicitly handle the remote bucket/prefix first, then switch back to local or memory storage to perform the reset.
package/dist/cli.js CHANGED
@@ -8,7 +8,7 @@ import { dirname as dirname7, join as join10, resolve as resolve4 } from "path";
8
8
  // package.json
9
9
  var package_default = {
10
10
  name: "@supacloud/lite",
11
- version: "0.8.1",
11
+ version: "0.8.2",
12
12
  description: "Bun-native, single-project Supabase-compatible backend powered by PGlite or native PostgreSQL",
13
13
  type: "module",
14
14
  license: "Apache-2.0",
@@ -10796,6 +10796,7 @@ function toPgArrayLiteral(array) {
10796
10796
 
10797
10797
  // src/runtime/node/native/engine.ts
10798
10798
  var DEFAULT_PG_VERSION = "17.7.0";
10799
+ var POSTGRES_MIRROR_URL_ERROR = "SUPACLOUD_LITE_POSTGRES_MIRROR must be an absolute HTTPS URL or a loopback HTTP URL";
10799
10800
  var NATIVE_POSTGRES_MAJOR = DEFAULT_PG_VERSION.split(".")[0];
10800
10801
  function isNativeEngineSupported() {
10801
10802
  return (process.platform === "darwin" || process.platform === "linux") && (process.arch === "arm64" || process.arch === "x64") && (process.platform !== "linux" || isGlibcLinux());
@@ -10827,7 +10828,7 @@ var PINNED_SHA256 = {
10827
10828
  "postgresql-17.7.0-x86_64-apple-darwin": "0dd8c25173524bad4ae8ef6b970da1ac40f4c1f231150c416ccb8cd06feff8f2",
10828
10829
  "postgresql-17.7.0-aarch64-apple-darwin": "727ac08d20a704014a0d51eb3300aa0c8e292c1cf0a1c99d4f4b1002e1420220"
10829
10830
  };
10830
- async function verifyTarball(tarball, key, url) {
10831
+ async function verifyTarball(tarball, key, upstreamUrl, downloadMirror) {
10831
10832
  const actual = createHash2("sha256").update(readFileSync(tarball)).digest("hex");
10832
10833
  const pinned = PINNED_SHA256[key];
10833
10834
  if (pinned) {
@@ -10836,7 +10837,8 @@ async function verifyTarball(tarball, key, url) {
10836
10837
  }
10837
10838
  return;
10838
10839
  }
10839
- const res = await fetchRelease(`${url}.sha256`);
10840
+ const checksumUrl = resolvePostgresDownloadUrl(`${upstreamUrl}.sha256`, downloadMirror);
10841
+ const res = await fetchRelease(checksumUrl);
10840
10842
  if (!res.ok)
10841
10843
  throw new Error(`could not fetch checksum for ${key}: HTTP ${res.status}`);
10842
10844
  const expected = (await res.text()).trim().split(/\s+/)[0].toLowerCase();
@@ -10846,13 +10848,14 @@ async function verifyTarball(tarball, key, url) {
10846
10848
  throw new Error(`postgres binary checksum mismatch for ${key}: expected ${expected}, got ${actual}`);
10847
10849
  }
10848
10850
  }
10849
- async function ensurePostgres(version = DEFAULT_PG_VERSION, cacheDir, log) {
10851
+ async function ensurePostgres(version = DEFAULT_PG_VERSION, cacheDir, log, downloadMirror) {
10850
10852
  const t = target();
10851
10853
  const root = cacheDir ?? join(homedir(), ".cache", "supacloud-lite");
10852
10854
  const dir = join(root, `postgresql-${version}-${t}`);
10853
10855
  if (isCompleteInstall(dir))
10854
10856
  return dir;
10855
- const url = `https://github.com/theseus-rs/postgresql-binaries/releases/download/${version}/postgresql-${version}-${t}.tar.gz`;
10857
+ const upstreamUrl = `https://github.com/theseus-rs/postgresql-binaries/releases/download/${version}/postgresql-${version}-${t}.tar.gz`;
10858
+ const url = resolvePostgresDownloadUrl(upstreamUrl, downloadMirror);
10856
10859
  mkdirSync(root, { recursive: true });
10857
10860
  const uniq = `${process.pid}-${randomBytes2(6).toString("hex")}`;
10858
10861
  const tarball = join(root, `pg-${version}-${uniq}.tar.gz`);
@@ -10865,7 +10868,7 @@ async function ensurePostgres(version = DEFAULT_PG_VERSION, cacheDir, log) {
10865
10868
  if (!res.ok)
10866
10869
  throw new Error(`failed to download ${url}: HTTP ${res.status}`);
10867
10870
  await writeFile(tarball, Buffer.from(await res.arrayBuffer()));
10868
- await verifyTarball(tarball, `postgresql-${version}-${t}`, url);
10871
+ await verifyTarball(tarball, `postgresql-${version}-${t}`, upstreamUrl, downloadMirror);
10869
10872
  mkdirSync(tmpDir, { recursive: true });
10870
10873
  await extractTar({ cwd: tmpDir, file: tarball, gzip: true, preserveOwner: false, strict: true, strip: 1 });
10871
10874
  if (!isCompleteInstall(tmpDir))
@@ -10885,6 +10888,32 @@ async function ensurePostgres(version = DEFAULT_PG_VERSION, cacheDir, log) {
10885
10888
  rmSync(tmpDir, { recursive: true, force: true });
10886
10889
  }
10887
10890
  }
10891
+ function resolvePostgresDownloadUrl(upstreamUrl, downloadMirror) {
10892
+ const mirror = postgresDownloadMirror(downloadMirror);
10893
+ return mirror ? `${mirror.toString().replace(/\/+$/, "")}/${upstreamUrl}` : upstreamUrl;
10894
+ }
10895
+ function postgresDownloadMirror(downloadMirror) {
10896
+ const configuredMirror = downloadMirror ?? process.env.SUPACLOUD_LITE_POSTGRES_MIRROR;
10897
+ const mirrorText = configuredMirror?.trim();
10898
+ if (!mirrorText)
10899
+ return;
10900
+ let mirror;
10901
+ try {
10902
+ mirror = new URL(mirrorText);
10903
+ } catch {
10904
+ throw new Error(POSTGRES_MIRROR_URL_ERROR);
10905
+ }
10906
+ const loopbackHttp = mirror.protocol === "http:" && (mirror.hostname === "127.0.0.1" || mirror.hostname === "localhost" || mirror.hostname === "[::1]");
10907
+ if (mirror.protocol !== "https:" && !loopbackHttp)
10908
+ throw new Error(POSTGRES_MIRROR_URL_ERROR);
10909
+ if (mirror.username || mirror.password) {
10910
+ throw new Error("SUPACLOUD_LITE_POSTGRES_MIRROR must not contain credentials");
10911
+ }
10912
+ if (mirrorText.includes("?") || mirrorText.includes("#")) {
10913
+ throw new Error("SUPACLOUD_LITE_POSTGRES_MIRROR must not contain a query or fragment");
10914
+ }
10915
+ return mirror;
10916
+ }
10888
10917
  async function fetchRelease(url) {
10889
10918
  let lastError;
10890
10919
  for (let attempt = 1;attempt <= 3; attempt++) {
@@ -10917,7 +10946,7 @@ async function createNativeEngine(opts) {
10917
10946
  let postgres;
10918
10947
  let removeExitHandler;
10919
10948
  try {
10920
- const installDir = await ensurePostgres(opts.version, opts.cacheDir, opts.log);
10949
+ const installDir = await ensurePostgres(opts.version, opts.cacheDir, opts.log, opts.downloadMirror);
10921
10950
  const bin = (name) => join(installDir, "bin", name);
10922
10951
  if (!existsSync(join(opts.dataDir, "PG_VERSION"))) {
10923
10952
  mkdirSync(opts.dataDir, { recursive: true });
package/dist/index.js CHANGED
@@ -85,7 +85,7 @@ function randomToken(bytes = 32) {
85
85
  // package.json
86
86
  var package_default = {
87
87
  name: "@supacloud/lite",
88
- version: "0.8.1",
88
+ version: "0.8.2",
89
89
  description: "Bun-native, single-project Supabase-compatible backend powered by PGlite or native PostgreSQL",
90
90
  type: "module",
91
91
  license: "Apache-2.0",
@@ -10809,6 +10809,7 @@ function toPgArrayLiteral(array) {
10809
10809
 
10810
10810
  // src/runtime/node/native/engine.ts
10811
10811
  var DEFAULT_PG_VERSION = "17.7.0";
10812
+ var POSTGRES_MIRROR_URL_ERROR = "SUPACLOUD_LITE_POSTGRES_MIRROR must be an absolute HTTPS URL or a loopback HTTP URL";
10812
10813
  var NATIVE_POSTGRES_MAJOR = DEFAULT_PG_VERSION.split(".")[0];
10813
10814
  function isNativeEngineSupported() {
10814
10815
  return (process.platform === "darwin" || process.platform === "linux") && (process.arch === "arm64" || process.arch === "x64") && (process.platform !== "linux" || isGlibcLinux());
@@ -10840,7 +10841,7 @@ var PINNED_SHA256 = {
10840
10841
  "postgresql-17.7.0-x86_64-apple-darwin": "0dd8c25173524bad4ae8ef6b970da1ac40f4c1f231150c416ccb8cd06feff8f2",
10841
10842
  "postgresql-17.7.0-aarch64-apple-darwin": "727ac08d20a704014a0d51eb3300aa0c8e292c1cf0a1c99d4f4b1002e1420220"
10842
10843
  };
10843
- async function verifyTarball(tarball, key, url) {
10844
+ async function verifyTarball(tarball, key, upstreamUrl, downloadMirror) {
10844
10845
  const actual = createHash2("sha256").update(readFileSync(tarball)).digest("hex");
10845
10846
  const pinned = PINNED_SHA256[key];
10846
10847
  if (pinned) {
@@ -10849,7 +10850,8 @@ async function verifyTarball(tarball, key, url) {
10849
10850
  }
10850
10851
  return;
10851
10852
  }
10852
- const res = await fetchRelease(`${url}.sha256`);
10853
+ const checksumUrl = resolvePostgresDownloadUrl(`${upstreamUrl}.sha256`, downloadMirror);
10854
+ const res = await fetchRelease(checksumUrl);
10853
10855
  if (!res.ok)
10854
10856
  throw new Error(`could not fetch checksum for ${key}: HTTP ${res.status}`);
10855
10857
  const expected = (await res.text()).trim().split(/\s+/)[0].toLowerCase();
@@ -10859,13 +10861,14 @@ async function verifyTarball(tarball, key, url) {
10859
10861
  throw new Error(`postgres binary checksum mismatch for ${key}: expected ${expected}, got ${actual}`);
10860
10862
  }
10861
10863
  }
10862
- async function ensurePostgres(version = DEFAULT_PG_VERSION, cacheDir, log) {
10864
+ async function ensurePostgres(version = DEFAULT_PG_VERSION, cacheDir, log, downloadMirror) {
10863
10865
  const t = target();
10864
10866
  const root = cacheDir ?? join2(homedir(), ".cache", "supacloud-lite");
10865
10867
  const dir = join2(root, `postgresql-${version}-${t}`);
10866
10868
  if (isCompleteInstall(dir))
10867
10869
  return dir;
10868
- const url = `https://github.com/theseus-rs/postgresql-binaries/releases/download/${version}/postgresql-${version}-${t}.tar.gz`;
10870
+ const upstreamUrl = `https://github.com/theseus-rs/postgresql-binaries/releases/download/${version}/postgresql-${version}-${t}.tar.gz`;
10871
+ const url = resolvePostgresDownloadUrl(upstreamUrl, downloadMirror);
10869
10872
  mkdirSync(root, { recursive: true });
10870
10873
  const uniq = `${process.pid}-${randomBytes2(6).toString("hex")}`;
10871
10874
  const tarball = join2(root, `pg-${version}-${uniq}.tar.gz`);
@@ -10878,7 +10881,7 @@ async function ensurePostgres(version = DEFAULT_PG_VERSION, cacheDir, log) {
10878
10881
  if (!res.ok)
10879
10882
  throw new Error(`failed to download ${url}: HTTP ${res.status}`);
10880
10883
  await writeFile2(tarball, Buffer.from(await res.arrayBuffer()));
10881
- await verifyTarball(tarball, `postgresql-${version}-${t}`, url);
10884
+ await verifyTarball(tarball, `postgresql-${version}-${t}`, upstreamUrl, downloadMirror);
10882
10885
  mkdirSync(tmpDir, { recursive: true });
10883
10886
  await extractTar({ cwd: tmpDir, file: tarball, gzip: true, preserveOwner: false, strict: true, strip: 1 });
10884
10887
  if (!isCompleteInstall(tmpDir))
@@ -10898,6 +10901,32 @@ async function ensurePostgres(version = DEFAULT_PG_VERSION, cacheDir, log) {
10898
10901
  rmSync(tmpDir, { recursive: true, force: true });
10899
10902
  }
10900
10903
  }
10904
+ function resolvePostgresDownloadUrl(upstreamUrl, downloadMirror) {
10905
+ const mirror = postgresDownloadMirror(downloadMirror);
10906
+ return mirror ? `${mirror.toString().replace(/\/+$/, "")}/${upstreamUrl}` : upstreamUrl;
10907
+ }
10908
+ function postgresDownloadMirror(downloadMirror) {
10909
+ const configuredMirror = downloadMirror ?? process.env.SUPACLOUD_LITE_POSTGRES_MIRROR;
10910
+ const mirrorText = configuredMirror?.trim();
10911
+ if (!mirrorText)
10912
+ return;
10913
+ let mirror;
10914
+ try {
10915
+ mirror = new URL(mirrorText);
10916
+ } catch {
10917
+ throw new Error(POSTGRES_MIRROR_URL_ERROR);
10918
+ }
10919
+ const loopbackHttp = mirror.protocol === "http:" && (mirror.hostname === "127.0.0.1" || mirror.hostname === "localhost" || mirror.hostname === "[::1]");
10920
+ if (mirror.protocol !== "https:" && !loopbackHttp)
10921
+ throw new Error(POSTGRES_MIRROR_URL_ERROR);
10922
+ if (mirror.username || mirror.password) {
10923
+ throw new Error("SUPACLOUD_LITE_POSTGRES_MIRROR must not contain credentials");
10924
+ }
10925
+ if (mirrorText.includes("?") || mirrorText.includes("#")) {
10926
+ throw new Error("SUPACLOUD_LITE_POSTGRES_MIRROR must not contain a query or fragment");
10927
+ }
10928
+ return mirror;
10929
+ }
10901
10930
  async function fetchRelease(url) {
10902
10931
  let lastError;
10903
10932
  for (let attempt = 1;attempt <= 3; attempt++) {
@@ -10930,7 +10959,7 @@ async function createNativeEngine(opts) {
10930
10959
  let postgres;
10931
10960
  let removeExitHandler;
10932
10961
  try {
10933
- const installDir = await ensurePostgres(opts.version, opts.cacheDir, opts.log);
10962
+ const installDir = await ensurePostgres(opts.version, opts.cacheDir, opts.log, opts.downloadMirror);
10934
10963
  const bin = (name) => join2(installDir, "bin", name);
10935
10964
  if (!existsSync(join2(opts.dataDir, "PG_VERSION"))) {
10936
10965
  mkdirSync(opts.dataDir, { recursive: true });
@@ -10,10 +10,17 @@ export interface NativeEngineOptions {
10
10
  cacheDir?: string;
11
11
  /** sink for progress lines (download, install); no-op when omitted */
12
12
  log?: (msg: string) => void;
13
+ /** Optional HTTPS or loopback HTTP prefix for proxying the PostgreSQL release download. */
14
+ downloadMirror?: string;
13
15
  }
14
16
  export declare function isNativeEngineSupported(): boolean;
15
17
  /** Download + unpack Postgres binaries if not already cached (concurrency-safe). Returns the install dir. */
16
- export declare function ensurePostgres(version?: string, cacheDir?: string, log?: (m: string) => void): Promise<string>;
18
+ export declare function ensurePostgres(version?: string, cacheDir?: string, log?: (m: string) => void, downloadMirror?: string): Promise<string>;
19
+ /**
20
+ * Prefix a trusted GitHub release URL with an operator-selected mirror. The
21
+ * archive is still checked against the pinned or published SHA-256 before use.
22
+ */
23
+ export declare function resolvePostgresDownloadUrl(upstreamUrl: string, downloadMirror?: string): string;
17
24
  /**
18
25
  * Boot the embedded Postgres child (initdb on first run) and return a {@link DbEngine}
19
26
  * backed by two wire connections: one for queries/transactions (serialized by a mutex),
@@ -1 +1 @@
1
- {"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../../../src/runtime/node/native/engine.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAKlD,eAAO,MAAM,qBAAqB,QAAoC,CAAA;AAEtE,8CAA8C;AAC9C,MAAM,WAAW,mBAAmB;IAClC,+DAA+D;IAC/D,OAAO,EAAE,MAAM,CAAA;IACf,gEAAgE;IAChE,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,4EAA4E;IAC5E,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,sEAAsE;IACtE,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAA;CAC5B;AAED,wBAAgB,uBAAuB,IAAI,OAAO,CAIjD;AA4DD,6GAA6G;AAC7G,wBAAsB,cAAc,CAAC,OAAO,SAAqB,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CA2ChI;AA4BD;;;;GAIG;AACH,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,mBAAmB,GAAG,OAAO,CAAC,QAAQ,CAAC,CAiFrF"}
1
+ {"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../../../src/runtime/node/native/engine.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAOlD,eAAO,MAAM,qBAAqB,QAAoC,CAAA;AAEtE,8CAA8C;AAC9C,MAAM,WAAW,mBAAmB;IAClC,+DAA+D;IAC/D,OAAO,EAAE,MAAM,CAAA;IACf,gEAAgE;IAChE,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,4EAA4E;IAC5E,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,sEAAsE;IACtE,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAA;IAC3B,2FAA2F;IAC3F,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB;AAED,wBAAgB,uBAAuB,IAAI,OAAO,CAIjD;AA6DD,6GAA6G;AAC7G,wBAAsB,cAAc,CAClC,OAAO,SAAqB,EAC5B,QAAQ,CAAC,EAAE,MAAM,EACjB,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,EACzB,cAAc,CAAC,EAAE,MAAM,GACtB,OAAO,CAAC,MAAM,CAAC,CA4CjB;AAED;;;GAGG;AACH,wBAAgB,0BAA0B,CAAC,WAAW,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM,GAAG,MAAM,CAG/F;AAkDD;;;;GAIG;AACH,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,mBAAmB,GAAG,OAAO,CAAC,QAAQ,CAAC,CAiFrF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@supacloud/lite",
3
- "version": "0.8.1",
3
+ "version": "0.8.2",
4
4
  "description": "Bun-native, single-project Supabase-compatible backend powered by PGlite or native PostgreSQL",
5
5
  "type": "module",
6
6
  "license": "Apache-2.0",