orez 0.1.49 → 0.1.50

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.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAMH,OAAO,EAGL,KAAK,YAAY,EAClB,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAkB,KAAK,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AA+BpE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AACjD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAIlD,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AAC1E,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAC7E,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAA;AAoIvE,wBAAsB,aAAa,CAAC,SAAS,GAAE,OAAO,CAAC,cAAc,CAAM;;;;;;;;;;;;;;GAme1E"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAMH,OAAO,EAGL,KAAK,YAAY,EAClB,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAkB,KAAK,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAiCpE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AACjD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAIlD,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AAC1E,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAC7E,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAA;AAoIvE,wBAAsB,aAAa,CAAC,SAAS,GAAE,OAAO,CAAC,cAAc,CAAM;;;;;;;;;;;;;;GAme1E"}
package/dist/index.js CHANGED
@@ -19,7 +19,7 @@ import { orezTitle } from './process-title.js';
19
19
  import { cleanCdcStateOnStartup, hasCdcCorruptionSignature, recoverFromCdcCorruption, } from './recovery.js';
20
20
  import { installChangeTracking } from './replication/change-tracker.js';
21
21
  import { resetReplicationState } from './replication/handler.js';
22
- import { formatNativeBootstrapInstructions, hasMissingNativeBinarySignature, inspectNativeSqliteBinary, resolveSqliteMode, resolveSqliteModeConfig, } from './sqlite-mode/index.js';
22
+ import { applySqliteMode, cleanupShim, formatNativeBootstrapInstructions, hasMissingNativeBinarySignature, inspectNativeSqliteBinary, resolveSqliteMode, resolveSqliteModeConfig, } from './sqlite-mode/index.js';
23
23
  export { defineConfig, getConfig, getConnectionString } from './config.js';
24
24
  export { installChangeTracking } from './replication/change-tracker.js';
25
25
  // helper to run a hook (string command or callback function)
@@ -586,95 +586,6 @@ async function seedIfNeeded(db, config) {
586
586
  }
587
587
  log.orez('seeded');
588
588
  }
589
- // install wasm shim into node_modules/@rocicorp/zero-sqlite3
590
- // backs up original and writes a conditional loader that switches based on env
591
- function installWasmShim(bedrockPath, zeroEntry) {
592
- // find node_modules where @rocicorp/zero is installed
593
- const nodeModulesMatch = zeroEntry.match(/^(.+\/node_modules)\/@rocicorp\/zero\//);
594
- if (!nodeModulesMatch) {
595
- throw new Error(`cannot determine node_modules path from ${zeroEntry}`);
596
- }
597
- const nodeModules = nodeModulesMatch[1];
598
- const shimDir = resolve(nodeModules, '@rocicorp', 'zero-sqlite3');
599
- const indexPath = resolve(shimDir, 'index.js');
600
- const originalPath = resolve(shimDir, 'index.original.js');
601
- const wasmPath = resolve(shimDir, 'index.wasm.js');
602
- // if directory doesn't exist, create it with just the wasm shim
603
- if (!existsSync(shimDir)) {
604
- mkdirSync(shimDir, { recursive: true });
605
- }
606
- // backup original if it exists and hasn't been backed up
607
- if (existsSync(indexPath) && !existsSync(originalPath)) {
608
- const content = readFileSync(indexPath, 'utf-8');
609
- // only backup if it's not already our shim
610
- if (!content.includes('orez-sqlite-shim')) {
611
- writeFileSync(originalPath, content);
612
- log.debug.orez('backed up original zero-sqlite3/index.js');
613
- }
614
- }
615
- // write wasm implementation
616
- writeFileSync(wasmPath, `// orez wasm sqlite implementation
617
- import bedrockSqlite from '${bedrockPath}';
618
- const { Database: OrigDatabase, SqliteError } = bedrockSqlite;
619
-
620
- function Database(...args) {
621
- const db = new OrigDatabase(...args);
622
- try {
623
- db.pragma('journal_mode = wal2');
624
- db.pragma('synchronous = off');
625
- db.pragma('temp_store = memory');
626
- db.pragma('busy_timeout = 30000');
627
- } catch(e) {}
628
- return db;
629
- }
630
- Database.prototype = OrigDatabase.prototype;
631
- Database.prototype.constructor = Database;
632
- Object.keys(OrigDatabase).forEach(k => { Database[k] = OrigDatabase[k]; });
633
- Database.prototype.unsafeMode = function() { return this; };
634
- if (!Database.prototype.defaultSafeIntegers) Database.prototype.defaultSafeIntegers = function() { return this; };
635
- if (!Database.prototype.serialize) Database.prototype.serialize = function() { throw new Error('not supported in wasm'); };
636
- if (!Database.prototype.backup) Database.prototype.backup = function() { throw new Error('not supported in wasm'); };
637
-
638
- const tmpDb = new OrigDatabase(':memory:');
639
- const tmpStmt = tmpDb.prepare('SELECT 1');
640
- const SP = Object.getPrototypeOf(tmpStmt);
641
- if (!SP.safeIntegers) SP.safeIntegers = function() { return this; };
642
- SP.scanStatus = function() { return undefined; };
643
- SP.scanStatusV2 = function() { return []; };
644
- SP.scanStatusReset = function() {};
645
- tmpDb.close();
646
-
647
- Database.SQLITE_SCANSTAT_NLOOP = 0;
648
- Database.SQLITE_SCANSTAT_NVISIT = 1;
649
- Database.SQLITE_SCANSTAT_EST = 2;
650
- Database.SQLITE_SCANSTAT_NAME = 3;
651
- Database.SQLITE_SCANSTAT_EXPLAIN = 4;
652
- Database.SQLITE_SCANSTAT_SELECTID = 5;
653
- Database.SQLITE_SCANSTAT_PARENTID = 6;
654
- Database.SQLITE_SCANSTAT_NCYCLE = 7;
655
- Database.SQLITE_SCANSTAT_COMPLEX = 8;
656
-
657
- export default Database;
658
- export { SqliteError };
659
- `);
660
- // write esm loader - always uses wasm since native requires compiled binary
661
- // users who want native should use --disable-wasm-sqlite flag which skips this
662
- writeFileSync(indexPath, `// orez-sqlite-shim: wasm sqlite for zero-cache
663
- // this file was generated by orez - original backed up to index.original.js
664
- export * from './index.wasm.js';
665
- export { default } from './index.wasm.js';
666
- `);
667
- // ensure package.json exists with correct config
668
- const pkgPath = resolve(shimDir, 'package.json');
669
- if (!existsSync(pkgPath)) {
670
- writeFileSync(pkgPath, JSON.stringify({
671
- name: '@rocicorp/zero-sqlite3',
672
- version: '0.0.0-orez-shim',
673
- main: './index.js',
674
- }, null, 2) + '\n');
675
- }
676
- log.debug.orez(`installed wasm shim to ${shimDir}`);
677
- }
678
589
  async function startZeroCache(config, logStore, sqliteMode = resolveSqliteMode(config.disableWasmSqlite), sqliteModeConfig) {
679
590
  // resolve @rocicorp/zero entry for finding zero-cache modules
680
591
  const zeroEntry = resolvePackage('@rocicorp/zero');
@@ -719,9 +630,12 @@ async function startZeroCache(config, logStore, sqliteMode = resolveSqliteMode(c
719
630
  if (!existsSync(zeroCacheBin)) {
720
631
  throw new Error('zero-cache cli.js not found. install @rocicorp/zero');
721
632
  }
722
- // install wasm shim into node_modules/@rocicorp/zero-sqlite3
723
- if (sqliteMode === 'wasm' && sqliteModeConfig?.bedrockPath) {
724
- installWasmShim(sqliteModeConfig.bedrockPath, zeroEntry);
633
+ // apply sqlite mode shim (wasm: patches lib/index.js, native: restores original)
634
+ if (sqliteModeConfig) {
635
+ const shimResult = applySqliteMode(sqliteModeConfig);
636
+ if (!shimResult.success) {
637
+ log.orez(`warning: sqlite shim failed: ${shimResult.error}`);
638
+ }
725
639
  }
726
640
  // preload script to label the zero-cache child process
727
641
  const preloadPath = resolve(config.dataDir, '.orez-zero-title.cjs');
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "orez",
3
- "version": "0.1.49",
3
+ "version": "0.1.50",
4
4
  "description": "PGlite-powered zero-sync development backend. No Docker required.",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -64,7 +64,7 @@
64
64
  "dependencies": {
65
65
  "@electric-sql/pglite": "0.4.1",
66
66
  "@electric-sql/pglite-tools": "^0.3.1",
67
- "bedrock-sqlite": "0.1.49",
67
+ "bedrock-sqlite": "0.1.50",
68
68
  "citty": "^0.2.0",
69
69
  "pg-gateway": "0.3.0-beta.4",
70
70
  "pgsql-parser": "^17.9.11",
package/src/index.ts CHANGED
@@ -37,6 +37,8 @@ import {
37
37
  import { installChangeTracking } from './replication/change-tracker.js'
38
38
  import { resetReplicationState } from './replication/handler.js'
39
39
  import {
40
+ applySqliteMode,
41
+ cleanupShim,
40
42
  formatNativeBootstrapInstructions,
41
43
  hasMissingNativeBinarySignature,
42
44
  inspectNativeSqliteBinary,
@@ -720,115 +722,6 @@ async function seedIfNeeded(db: PGlite, config: ZeroLiteConfig): Promise<void> {
720
722
  log.orez('seeded')
721
723
  }
722
724
 
723
- // install wasm shim into node_modules/@rocicorp/zero-sqlite3
724
- // backs up original and writes a conditional loader that switches based on env
725
- function installWasmShim(bedrockPath: string, zeroEntry: string): void {
726
- // find node_modules where @rocicorp/zero is installed
727
- const nodeModulesMatch = zeroEntry.match(/^(.+\/node_modules)\/@rocicorp\/zero\//)
728
- if (!nodeModulesMatch) {
729
- throw new Error(`cannot determine node_modules path from ${zeroEntry}`)
730
- }
731
- const nodeModules = nodeModulesMatch[1]
732
- const shimDir = resolve(nodeModules, '@rocicorp', 'zero-sqlite3')
733
- const indexPath = resolve(shimDir, 'index.js')
734
- const originalPath = resolve(shimDir, 'index.original.js')
735
- const wasmPath = resolve(shimDir, 'index.wasm.js')
736
-
737
- // if directory doesn't exist, create it with just the wasm shim
738
- if (!existsSync(shimDir)) {
739
- mkdirSync(shimDir, { recursive: true })
740
- }
741
-
742
- // backup original if it exists and hasn't been backed up
743
- if (existsSync(indexPath) && !existsSync(originalPath)) {
744
- const content = readFileSync(indexPath, 'utf-8')
745
- // only backup if it's not already our shim
746
- if (!content.includes('orez-sqlite-shim')) {
747
- writeFileSync(originalPath, content)
748
- log.debug.orez('backed up original zero-sqlite3/index.js')
749
- }
750
- }
751
-
752
- // write wasm implementation
753
- writeFileSync(
754
- wasmPath,
755
- `// orez wasm sqlite implementation
756
- import bedrockSqlite from '${bedrockPath}';
757
- const { Database: OrigDatabase, SqliteError } = bedrockSqlite;
758
-
759
- function Database(...args) {
760
- const db = new OrigDatabase(...args);
761
- try {
762
- db.pragma('journal_mode = wal2');
763
- db.pragma('synchronous = off');
764
- db.pragma('temp_store = memory');
765
- db.pragma('busy_timeout = 30000');
766
- } catch(e) {}
767
- return db;
768
- }
769
- Database.prototype = OrigDatabase.prototype;
770
- Database.prototype.constructor = Database;
771
- Object.keys(OrigDatabase).forEach(k => { Database[k] = OrigDatabase[k]; });
772
- Database.prototype.unsafeMode = function() { return this; };
773
- if (!Database.prototype.defaultSafeIntegers) Database.prototype.defaultSafeIntegers = function() { return this; };
774
- if (!Database.prototype.serialize) Database.prototype.serialize = function() { throw new Error('not supported in wasm'); };
775
- if (!Database.prototype.backup) Database.prototype.backup = function() { throw new Error('not supported in wasm'); };
776
-
777
- const tmpDb = new OrigDatabase(':memory:');
778
- const tmpStmt = tmpDb.prepare('SELECT 1');
779
- const SP = Object.getPrototypeOf(tmpStmt);
780
- if (!SP.safeIntegers) SP.safeIntegers = function() { return this; };
781
- SP.scanStatus = function() { return undefined; };
782
- SP.scanStatusV2 = function() { return []; };
783
- SP.scanStatusReset = function() {};
784
- tmpDb.close();
785
-
786
- Database.SQLITE_SCANSTAT_NLOOP = 0;
787
- Database.SQLITE_SCANSTAT_NVISIT = 1;
788
- Database.SQLITE_SCANSTAT_EST = 2;
789
- Database.SQLITE_SCANSTAT_NAME = 3;
790
- Database.SQLITE_SCANSTAT_EXPLAIN = 4;
791
- Database.SQLITE_SCANSTAT_SELECTID = 5;
792
- Database.SQLITE_SCANSTAT_PARENTID = 6;
793
- Database.SQLITE_SCANSTAT_NCYCLE = 7;
794
- Database.SQLITE_SCANSTAT_COMPLEX = 8;
795
-
796
- export default Database;
797
- export { SqliteError };
798
- `
799
- )
800
-
801
- // write esm loader - always uses wasm since native requires compiled binary
802
- // users who want native should use --disable-wasm-sqlite flag which skips this
803
- writeFileSync(
804
- indexPath,
805
- `// orez-sqlite-shim: wasm sqlite for zero-cache
806
- // this file was generated by orez - original backed up to index.original.js
807
- export * from './index.wasm.js';
808
- export { default } from './index.wasm.js';
809
- `
810
- )
811
-
812
- // ensure package.json exists with correct config
813
- const pkgPath = resolve(shimDir, 'package.json')
814
- if (!existsSync(pkgPath)) {
815
- writeFileSync(
816
- pkgPath,
817
- JSON.stringify(
818
- {
819
- name: '@rocicorp/zero-sqlite3',
820
- version: '0.0.0-orez-shim',
821
- main: './index.js',
822
- },
823
- null,
824
- 2
825
- ) + '\n'
826
- )
827
- }
828
-
829
- log.debug.orez(`installed wasm shim to ${shimDir}`)
830
- }
831
-
832
725
  async function startZeroCache(
833
726
  config: ZeroLiteConfig,
834
727
  logStore?: LogStore,
@@ -886,9 +779,12 @@ async function startZeroCache(
886
779
  throw new Error('zero-cache cli.js not found. install @rocicorp/zero')
887
780
  }
888
781
 
889
- // install wasm shim into node_modules/@rocicorp/zero-sqlite3
890
- if (sqliteMode === 'wasm' && sqliteModeConfig?.bedrockPath) {
891
- installWasmShim(sqliteModeConfig.bedrockPath, zeroEntry)
782
+ // apply sqlite mode shim (wasm: patches lib/index.js, native: restores original)
783
+ if (sqliteModeConfig) {
784
+ const shimResult = applySqliteMode(sqliteModeConfig)
785
+ if (!shimResult.success) {
786
+ log.orez(`warning: sqlite shim failed: ${shimResult.error}`)
787
+ }
892
788
  }
893
789
 
894
790
  // preload script to label the zero-cache child process