cojson-storage-sqlite 0.9.11 → 0.9.12

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,4 +1,4 @@
1
1
 
2
- > cojson-storage-sqlite@0.9.11 build /home/runner/work/jazz/jazz/packages/cojson-storage-sqlite
2
+ > cojson-storage-sqlite@0.9.12 build /home/runner/work/jazz/jazz/packages/cojson-storage-sqlite
3
3
  > rm -rf ./dist && tsc --sourceMap --outDir dist
4
4
 
package/CHANGELOG.md CHANGED
@@ -1,5 +1,14 @@
1
1
  # cojson-storage-sqlite
2
2
 
3
+ ## 0.9.12
4
+
5
+ ### Patch Changes
6
+
7
+ - 15d4b2a: Revert the custom logger
8
+ - Updated dependencies [15d4b2a]
9
+ - cojson-storage@0.9.12
10
+ - cojson@0.9.12
11
+
3
12
  ## 0.9.11
4
13
 
5
14
  ### Patch Changes
@@ -1,4 +1,3 @@
1
- import { logger, } from "cojson";
2
1
  export class SQLiteClient {
3
2
  constructor(db, toLocalNode) {
4
3
  this.db = db;
@@ -19,7 +18,7 @@ export class SQLiteClient {
19
18
  };
20
19
  }
21
20
  catch (e) {
22
- logger.warn(coValueId, "Invalid JSON in header", e, coValueRow?.header);
21
+ console.warn(coValueId, "Invalid JSON in header", e, coValueRow?.header);
23
22
  return;
24
23
  }
25
24
  }
@@ -39,7 +38,7 @@ export class SQLiteClient {
39
38
  }));
40
39
  }
41
40
  catch (e) {
42
- logger.warn("Invalid JSON in transaction", e);
41
+ console.warn("Invalid JSON in transaction", e);
43
42
  return [];
44
43
  }
45
44
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sqliteClient.js","sourceRoot":"","sources":["../src/sqliteClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sqliteClient.js","sourceRoot":"","sources":["../src/sqliteClient.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import Database from "better-sqlite3";
2
- import { cojsonInternals, logger, } from "cojson";
2
+ import { cojsonInternals, } from "cojson";
3
3
  import { SyncManager } from "cojson-storage";
4
4
  import { SQLiteClient } from "./sqliteClient.js";
5
5
  export class SQLiteNode {
@@ -24,13 +24,13 @@ export class SQLiteNode {
24
24
  }
25
25
  }
26
26
  catch (e) {
27
- logger.error(`Error reading from localNode, handling msg\n\n${JSON.stringify(msg, (k, v) => k === "changes" || k === "encryptedChanges"
27
+ console.error(new Error(`Error reading from localNode, handling msg\n\n${JSON.stringify(msg, (k, v) => k === "changes" || k === "encryptedChanges"
28
28
  ? v.slice(0, 20) + "..."
29
- : v)}`, e);
29
+ : v)}`, { cause: e }));
30
30
  }
31
31
  }
32
- processMessages().catch((e) => logger.error("Error in processMessages in sqlite", e));
33
32
  };
33
+ processMessages().catch((e) => console.error("Error in processMessages in sqlite", e));
34
34
  }
35
35
  static async asPeer({ filename, trace, localNodeName = "local", }) {
36
36
  const [localNodeAsPeer, storageAsPeer] = cojsonInternals.connectedPeers(localNodeName, "storage", { peer1role: "client", peer2role: "storage", trace, crashOnClose: true });
@@ -41,7 +41,9 @@ export class SQLiteNode {
41
41
  const db = Database(filename);
42
42
  db.pragma("journal_mode = WAL");
43
43
  const oldVersion = db.pragma("user_version")[0].user_version;
44
+ console.log("DB version", oldVersion);
44
45
  if (oldVersion === 0) {
46
+ console.log("Migration 0 -> 1: Basic schema");
45
47
  db.prepare(`CREATE TABLE IF NOT EXISTS transactions (
46
48
  ses INTEGER,
47
49
  idx INTEGER,
@@ -64,9 +66,11 @@ export class SQLiteNode {
64
66
  );`).run();
65
67
  db.prepare(`CREATE INDEX IF NOT EXISTS coValuesByID ON coValues (id);`).run();
66
68
  db.pragma("user_version = 1");
69
+ console.log("Migration 0 -> 1: Basic schema - done");
67
70
  }
68
71
  if (oldVersion <= 1) {
69
72
  // fix embarrassing off-by-one error for transaction indices
73
+ console.log("Migration 1 -> 2: Fix off-by-one error for transaction indices");
70
74
  const txs = db
71
75
  .prepare(`SELECT * FROM transactions`)
72
76
  .all();
@@ -76,8 +80,10 @@ export class SQLiteNode {
76
80
  db.prepare(`INSERT INTO transactions (ses, idx, tx) VALUES (?, ?, ?)`).run(tx.ses, tx.idx, tx.tx);
77
81
  }
78
82
  db.pragma("user_version = 2");
83
+ console.log("Migration 1 -> 2: Fix off-by-one error for transaction indices - done");
79
84
  }
80
85
  if (oldVersion <= 2) {
86
+ console.log("Migration 2 -> 3: Add signatureAfter");
81
87
  db.prepare(`CREATE TABLE IF NOT EXISTS signatureAfter (
82
88
  ses INTEGER,
83
89
  idx INTEGER,
@@ -86,6 +92,7 @@ export class SQLiteNode {
86
92
  ) WITHOUT ROWID;`).run();
87
93
  db.prepare(`ALTER TABLE sessions ADD COLUMN bytesSinceLastSignature INTEGER;`).run();
88
94
  db.pragma("user_version = 3");
95
+ console.log("Migration 2 -> 3: Add signatureAfter - done!!");
89
96
  }
90
97
  return new SQLiteNode(db, fromLocalNode, toLocalNode);
91
98
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sqliteNode.js","sourceRoot":"","sources":["../src/sqliteNode.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sqliteNode.js","sourceRoot":"","sources":["../src/sqliteNode.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,14 +1,14 @@
1
1
  {
2
2
  "name": "cojson-storage-sqlite",
3
3
  "type": "module",
4
- "version": "0.9.11",
4
+ "version": "0.9.12",
5
5
  "main": "dist/index.js",
6
6
  "types": "src/index.ts",
7
7
  "license": "MIT",
8
8
  "dependencies": {
9
9
  "better-sqlite3": "^11.7.0",
10
- "cojson": "0.9.11",
11
- "cojson-storage": "0.9.11"
10
+ "cojson": "0.9.12",
11
+ "cojson-storage": "0.9.12"
12
12
  },
13
13
  "devDependencies": {
14
14
  "@types/better-sqlite3": "^7.6.12",
@@ -1,10 +1,5 @@
1
1
  import { Database as DatabaseT } from "better-sqlite3";
2
- import {
3
- CojsonInternalTypes,
4
- OutgoingSyncQueue,
5
- SessionID,
6
- logger,
7
- } from "cojson";
2
+ import { CojsonInternalTypes, OutgoingSyncQueue, SessionID } from "cojson";
8
3
  import RawCoID = CojsonInternalTypes.RawCoID;
9
4
  import Signature = CojsonInternalTypes.Signature;
10
5
  import Transaction = CojsonInternalTypes.Transaction;
@@ -53,7 +48,7 @@ export class SQLiteClient implements DBClientInterface {
53
48
  header: parsedHeader,
54
49
  };
55
50
  } catch (e) {
56
- logger.warn(coValueId, "Invalid JSON in header", e, coValueRow?.header);
51
+ console.warn(coValueId, "Invalid JSON in header", e, coValueRow?.header);
57
52
  return;
58
53
  }
59
54
  }
@@ -80,7 +75,7 @@ export class SQLiteClient implements DBClientInterface {
80
75
  tx: JSON.parse(transactionRow.tx) as Transaction,
81
76
  }));
82
77
  } catch (e) {
83
- logger.warn("Invalid JSON in transaction", e);
78
+ console.warn("Invalid JSON in transaction", e);
84
79
  return [];
85
80
  }
86
81
  }
package/src/sqliteNode.ts CHANGED
@@ -4,7 +4,6 @@ import {
4
4
  OutgoingSyncQueue,
5
5
  Peer,
6
6
  cojsonInternals,
7
- logger,
8
7
  } from "cojson";
9
8
  import { SyncManager, TransactionRow } from "cojson-storage";
10
9
  import { SQLiteClient } from "./sqliteClient.js";
@@ -41,23 +40,25 @@ export class SQLiteNode {
41
40
  await new Promise((resolve) => setTimeout(resolve, 0));
42
41
  }
43
42
  } catch (e) {
44
- logger.error(
45
- `Error reading from localNode, handling msg\n\n${JSON.stringify(
46
- msg,
47
- (k, v) =>
48
- k === "changes" || k === "encryptedChanges"
49
- ? v.slice(0, 20) + "..."
50
- : v,
51
- )}`,
52
- e,
43
+ console.error(
44
+ new Error(
45
+ `Error reading from localNode, handling msg\n\n${JSON.stringify(
46
+ msg,
47
+ (k, v) =>
48
+ k === "changes" || k === "encryptedChanges"
49
+ ? v.slice(0, 20) + "..."
50
+ : v,
51
+ )}`,
52
+ { cause: e },
53
+ ),
53
54
  );
54
55
  }
55
56
  }
56
-
57
- processMessages().catch((e) =>
58
- logger.error("Error in processMessages in sqlite", e),
59
- );
60
57
  };
58
+
59
+ processMessages().catch((e) =>
60
+ console.error("Error in processMessages in sqlite", e),
61
+ );
61
62
  }
62
63
 
63
64
  static async asPeer({
@@ -96,7 +97,10 @@ export class SQLiteNode {
96
97
  db.pragma("user_version") as [{ user_version: number }]
97
98
  )[0].user_version as number;
98
99
 
100
+ console.log("DB version", oldVersion);
101
+
99
102
  if (oldVersion === 0) {
103
+ console.log("Migration 0 -> 1: Basic schema");
100
104
  db.prepare(
101
105
  `CREATE TABLE IF NOT EXISTS transactions (
102
106
  ses INTEGER,
@@ -134,10 +138,15 @@ export class SQLiteNode {
134
138
  ).run();
135
139
 
136
140
  db.pragma("user_version = 1");
141
+ console.log("Migration 0 -> 1: Basic schema - done");
137
142
  }
138
143
 
139
144
  if (oldVersion <= 1) {
140
145
  // fix embarrassing off-by-one error for transaction indices
146
+ console.log(
147
+ "Migration 1 -> 2: Fix off-by-one error for transaction indices",
148
+ );
149
+
141
150
  const txs = db
142
151
  .prepare(`SELECT * FROM transactions`)
143
152
  .all() as TransactionRow[];
@@ -154,9 +163,14 @@ export class SQLiteNode {
154
163
  }
155
164
 
156
165
  db.pragma("user_version = 2");
166
+ console.log(
167
+ "Migration 1 -> 2: Fix off-by-one error for transaction indices - done",
168
+ );
157
169
  }
158
170
 
159
171
  if (oldVersion <= 2) {
172
+ console.log("Migration 2 -> 3: Add signatureAfter");
173
+
160
174
  db.prepare(
161
175
  `CREATE TABLE IF NOT EXISTS signatureAfter (
162
176
  ses INTEGER,
@@ -171,6 +185,7 @@ export class SQLiteNode {
171
185
  ).run();
172
186
 
173
187
  db.pragma("user_version = 3");
188
+ console.log("Migration 2 -> 3: Add signatureAfter - done!!");
174
189
  }
175
190
 
176
191
  return new SQLiteNode(db, fromLocalNode, toLocalNode);