@mostajs/backup 0.3.0 → 0.4.0

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/dist/cjs/index.js CHANGED
@@ -300,8 +300,8 @@ async function testRestore(buffer, opts) {
300
300
  const db = path.join(dir, 'jetable.sqlite');
301
301
  try {
302
302
  return await restoreBackup(buffer, {
303
- dialect: 'sqljs',
304
- uri: db,
303
+ dialect: opts.dialect ?? 'sqljs',
304
+ uri: opts.uri ?? db,
305
305
  schemas: opts.schemas,
306
306
  privateKey: opts.privateKey,
307
307
  expectedPublicKey: opts.expectedPublicKey,
package/dist/index.d.ts CHANGED
@@ -175,6 +175,22 @@ export declare function testRestore(buffer: Buffer, opts: {
175
175
  schemas: DbSource['schemas'];
176
176
  privateKey?: Uint8Array;
177
177
  expectedPublicKey?: Uint8Array;
178
+ /**
179
+ * Moteur de la base jetable. Défaut `sqljs` : autonome, sans binaire natif, donc l'essai
180
+ * tourne partout sans rien installer ni joindre.
181
+ *
182
+ * ⚠️ **Le défaut prouve moins qu'il n'y paraît.** Restaurer dans SQLite/WASM une archive
183
+ * issue de PostgreSQL établit que l'archive se relit — pas qu'elle se restaure dans le
184
+ * moteur de production : types, contraintes, séquences et collations diffèrent. Une
185
+ * application non-SQLite devrait passer SON dialecte ici, quitte à ce que l'essai exige
186
+ * une base joignable.
187
+ *
188
+ * Ce choix appartient à l'appelant, pas à ce module : il ne lit aucune variable
189
+ * d'environnement, et n'en lira pas. La configuration vient de qui appelle.
190
+ */
191
+ dialect?: string;
192
+ /** URI de la base jetable. Défaut : un fichier temporaire, effacé à la fin. */
193
+ uri?: string;
178
194
  }): Promise<RestoreResult>;
179
195
  export interface RetentionPolicy {
180
196
  /** Nombre de sauvegardes à CONSERVER (les plus récentes). 0 = tout garder. */
package/dist/index.js CHANGED
@@ -255,8 +255,8 @@ export async function testRestore(buffer, opts) {
255
255
  const db = path.join(dir, 'jetable.sqlite');
256
256
  try {
257
257
  return await restoreBackup(buffer, {
258
- dialect: 'sqljs',
259
- uri: db,
258
+ dialect: opts.dialect ?? 'sqljs',
259
+ uri: opts.uri ?? db,
260
260
  schemas: opts.schemas,
261
261
  privateKey: opts.privateKey,
262
262
  expectedPublicKey: opts.expectedPublicKey,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mostajs/backup",
3
- "version": "0.3.0",
3
+ "version": "0.4.0",
4
4
  "description": "Sauvegarder, vérifier, restaurer — pour de vrai. Artefact daté, signé, chiffrable par enveloppe. Sauvegardes PLANIFIÉES avec test de restauration automatique et rétention qui ne purge JAMAIS après un échec. Compose archive-box, orm-copy-data, crypto-box, blob-store et scheduler.",
5
5
  "type": "module",
6
6
  "main": "./dist/cjs/index.js",
@@ -40,7 +40,8 @@
40
40
  "@mostajs/blob-store": "^0.4.0",
41
41
  "@mostajs/crypto-box": "^0.2.1",
42
42
  "@mostajs/orm-copy-data": "^0.5.0",
43
- "@mostajs/scheduler": "^0.2.0"
43
+ "@mostajs/scheduler": "^0.2.0",
44
+ "sql.js": "^1.14.1"
44
45
  },
45
46
  "peerDependencies": {
46
47
  "@mostajs/orm": ">=2.0.0"
@@ -54,7 +55,19 @@
54
55
  "@mostajs/mjs-unit": "^0.4.1",
55
56
  "@mostajs/orm": "^2.11.0",
56
57
  "@types/node": "^20",
57
- "sql.js": "^1.14.1",
58
58
  "typescript": "^5.6.0"
59
+ },
60
+ "mostajs": {
61
+ "niveau": "N1",
62
+ "nature": "generique",
63
+ "reutilisabilite": "transverse",
64
+ "depend_de": [
65
+ "@mostajs/archive-box",
66
+ "@mostajs/blob-store",
67
+ "@mostajs/crypto-box",
68
+ "@mostajs/orm-copy-data",
69
+ "@mostajs/scheduler",
70
+ "@mostajs/orm"
71
+ ]
59
72
  }
60
73
  }