@matter/general 0.13.1-alpha.0-20250520-d699cd56d → 0.14.0-alpha.0-20250521-979eda05d

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.
Files changed (42) hide show
  1. package/dist/cjs/polyfills/index.d.ts +1 -0
  2. package/dist/cjs/polyfills/index.d.ts.map +1 -1
  3. package/dist/cjs/polyfills/index.js +1 -0
  4. package/dist/cjs/polyfills/index.js.map +1 -1
  5. package/dist/cjs/polyfills/suppressed-error.d.ts +7 -0
  6. package/dist/cjs/polyfills/suppressed-error.d.ts.map +1 -0
  7. package/dist/cjs/polyfills/suppressed-error.js +21 -0
  8. package/dist/cjs/polyfills/suppressed-error.js.map +6 -0
  9. package/dist/cjs/transaction/Transaction.d.ts +32 -5
  10. package/dist/cjs/transaction/Transaction.d.ts.map +1 -1
  11. package/dist/cjs/transaction/Transaction.js +22 -3
  12. package/dist/cjs/transaction/Transaction.js.map +1 -1
  13. package/dist/cjs/transaction/Tx.d.ts +9 -4
  14. package/dist/cjs/transaction/Tx.d.ts.map +1 -1
  15. package/dist/cjs/transaction/Tx.js +152 -122
  16. package/dist/cjs/transaction/Tx.js.map +2 -2
  17. package/dist/cjs/util/Observable.js +1 -1
  18. package/dist/cjs/util/Observable.js.map +1 -1
  19. package/dist/esm/polyfills/index.d.ts +1 -0
  20. package/dist/esm/polyfills/index.d.ts.map +1 -1
  21. package/dist/esm/polyfills/index.js +1 -0
  22. package/dist/esm/polyfills/index.js.map +1 -1
  23. package/dist/esm/polyfills/suppressed-error.d.ts +7 -0
  24. package/dist/esm/polyfills/suppressed-error.d.ts.map +1 -0
  25. package/dist/esm/polyfills/suppressed-error.js +20 -0
  26. package/dist/esm/polyfills/suppressed-error.js.map +6 -0
  27. package/dist/esm/transaction/Transaction.d.ts +32 -5
  28. package/dist/esm/transaction/Transaction.d.ts.map +1 -1
  29. package/dist/esm/transaction/Transaction.js +23 -4
  30. package/dist/esm/transaction/Transaction.js.map +1 -1
  31. package/dist/esm/transaction/Tx.d.ts +9 -4
  32. package/dist/esm/transaction/Tx.d.ts.map +1 -1
  33. package/dist/esm/transaction/Tx.js +152 -122
  34. package/dist/esm/transaction/Tx.js.map +2 -2
  35. package/dist/esm/util/Observable.js +1 -1
  36. package/dist/esm/util/Observable.js.map +1 -1
  37. package/package.json +2 -2
  38. package/src/polyfills/index.ts +1 -0
  39. package/src/polyfills/suppressed-error.ts +27 -0
  40. package/src/transaction/Transaction.ts +42 -4
  41. package/src/transaction/Tx.ts +202 -165
  42. package/src/util/Observable.ts +1 -1
@@ -7,6 +7,7 @@ import { Diagnostic } from "#log/Diagnostic.js";
7
7
  import { Logger } from "#log/Logger.js";
8
8
  import { ImplementationError, ReadOnlyError } from "#MatterError.js";
9
9
  import { Time } from "#time/Time.js";
10
+ import { asError } from "#util/Error.js";
10
11
  import { Observable } from "#util/Observable.js";
11
12
  import { MaybePromise } from "#util/Promises.js";
12
13
  import { describeList } from "#util/String.js";
@@ -16,74 +17,8 @@ import { Status } from "./Status.js";
16
17
  const logger = Logger.get("Transaction");
17
18
  const MAX_PRECOMMIT_CYCLES = 5;
18
19
  const MAX_CHAINED_COMMITS = 5;
19
- function act(via, actor) {
20
- const tx = new Tx(via);
21
- let commits = 0;
22
- function commitTransaction(finalResult) {
23
- commits++;
24
- if (commits > MAX_CHAINED_COMMITS) {
25
- throw new TransactionFlowError(
26
- `Transaction commits have cascaded ${MAX_CHAINED_COMMITS} times which likely indicates an infinite loop`
27
- );
28
- }
29
- const result = tx.commit();
30
- if (MaybePromise.is(result)) {
31
- return result.then(() => {
32
- if (tx.status === Status.Exclusive) {
33
- return commitTransaction(finalResult);
34
- }
35
- return finalResult;
36
- });
37
- } else if (tx.status === Status.Exclusive) {
38
- return commitTransaction(finalResult);
39
- }
40
- return finalResult;
41
- }
42
- const handleTransactionError = (error) => {
43
- if (commits) {
44
- throw error;
45
- }
46
- logger.error("Rolling back", tx.via, "due to error:", Diagnostic.weak(error?.message || `${error}`));
47
- try {
48
- const result = tx.rollback();
49
- if (MaybePromise.is(result)) {
50
- return Promise.resolve(result).catch((error2) => {
51
- if (error2 !== error) {
52
- logger.error("Secondary error in", tx.via, "rollback:", error2);
53
- }
54
- throw error;
55
- });
56
- }
57
- } catch (error2) {
58
- if (error2 !== error) {
59
- logger.error("Secondary error in", tx.via, "rollback:", error2);
60
- }
61
- }
62
- throw error;
63
- };
64
- const closeTransaction = tx.close.bind(tx);
65
- let isAsync = false;
66
- try {
67
- const actorResult = actor(tx);
68
- if (MaybePromise.is(actorResult)) {
69
- isAsync = tx.isAsync = true;
70
- return Promise.resolve(actorResult).then(commitTransaction, handleTransactionError).finally(closeTransaction);
71
- }
72
- const commitResult = commitTransaction(actorResult);
73
- if (MaybePromise.is(commitResult)) {
74
- isAsync = true;
75
- return Promise.resolve(commitResult).catch(handleTransactionError).finally(closeTransaction);
76
- }
77
- return commitResult;
78
- } catch (e) {
79
- const result = handleTransactionError(e);
80
- isAsync = true;
81
- return Promise.resolve(result).finally(closeTransaction);
82
- } finally {
83
- if (!isAsync) {
84
- tx.close();
85
- }
86
- }
20
+ function open(via) {
21
+ return new Tx(via);
87
22
  }
88
23
  class Tx {
89
24
  #participants = /* @__PURE__ */ new Set();
@@ -104,12 +39,9 @@ class Tx {
104
39
  this.#status = Status.Shared;
105
40
  }
106
41
  }
107
- close() {
108
- Monitor.delete(this);
42
+ [Symbol.dispose]() {
43
+ this.#reset("dropped");
109
44
  this.#status = Status.Destroyed;
110
- this.#resources.clear();
111
- this.#roles.clear();
112
- this.#participants.clear();
113
45
  this.#closed?.emit();
114
46
  }
115
47
  get via() {
@@ -130,6 +62,9 @@ class Tx {
130
62
  get isAsync() {
131
63
  return this.#isAsync;
132
64
  }
65
+ /**
66
+ * We set this during async processing. This enables the lock reporting when too much time ellapses.
67
+ */
133
68
  set isAsync(isAsync) {
134
69
  if (!this.#isAsync) {
135
70
  this.#locksChanged(this.#resources);
@@ -239,28 +174,97 @@ class Tx {
239
174
  return this.#roles.get(role);
240
175
  }
241
176
  commit() {
242
- this.#assertAvailable();
243
- if (this.#status === Status.Shared) {
177
+ if (this.status === Status.Shared) {
244
178
  return this.rollback();
245
179
  }
246
- const performCommit = () => {
247
- const participants = [...this.#participants];
248
- const result2 = this.#finalize(Status.CommittingPhaseOne, "committed", this.#executeCommit.bind(this));
249
- if (MaybePromise.is(result2)) {
250
- return result2.then(() => this.#executePostCommit(participants));
251
- }
252
- return this.#executePostCommit(participants);
253
- };
254
- const result = this.#executePreCommit();
180
+ this.#assertAvailable();
181
+ const result = this.#executeCommitCycle(0);
182
+ if (result) {
183
+ this.isAsync = true;
184
+ }
185
+ return result;
186
+ }
187
+ resolve(result) {
255
188
  if (MaybePromise.is(result)) {
256
- return result.then(performCommit);
189
+ this.isAsync = true;
190
+ return result.then(this.resolve.bind(this), this.reject.bind(this));
191
+ }
192
+ let promise;
193
+ try {
194
+ promise = this.commit();
195
+ } catch (e) {
196
+ return this.reject(e);
257
197
  }
258
- return performCommit();
198
+ if (MaybePromise.is(promise)) {
199
+ this.isAsync = true;
200
+ return Promise.resolve(promise).then(() => {
201
+ this[Symbol.dispose]();
202
+ return result;
203
+ }, this.reject.bind(this)).finally(this[Symbol.dispose].bind(this));
204
+ }
205
+ this[Symbol.dispose]();
206
+ return result;
259
207
  }
260
208
  rollback() {
261
209
  this.#assertAvailable();
262
210
  return this.#finalize(Status.RollingBack, "rolled back", () => this.#executeRollback());
263
211
  }
212
+ reject(cause) {
213
+ if (this.#status === Status.Shared) {
214
+ this.#reset("released");
215
+ throw cause;
216
+ }
217
+ logger.error("Rolling back", this.via, "due to error:", Diagnostic.weak(asError(cause).message));
218
+ try {
219
+ const result = this.rollback();
220
+ if (MaybePromise.is(result)) {
221
+ return Promise.resolve(result).catch((cause2) => {
222
+ if (cause2 === cause) {
223
+ return;
224
+ }
225
+ logger.error("Secondary error in", this.via, "rollback:", cause2);
226
+ }).finally(() => {
227
+ this[Symbol.dispose]();
228
+ throw cause;
229
+ });
230
+ }
231
+ } catch (cause2) {
232
+ if (cause2 !== cause) {
233
+ logger.error("Secondary error in", this.via, "rollback:", cause2);
234
+ }
235
+ }
236
+ this[Symbol.dispose]();
237
+ throw cause;
238
+ }
239
+ /**
240
+ * Execute commit logic for a single commit cycle.
241
+ *
242
+ * A "cycle" performs all commit logic and normally brings us back to shared state. But we allow post-commit
243
+ * handlers to re-enter exclusive state. If that happens, we trigger another commit cycle.
244
+ */
245
+ #executeCommitCycle(count) {
246
+ count++;
247
+ if (count > MAX_CHAINED_COMMITS) {
248
+ throw new TransactionFlowError(
249
+ `Transaction commits have cascaded ${count} times which likely indicates an infinite loop`
250
+ );
251
+ }
252
+ let result = this.#createPreCommitExecutor()();
253
+ if (MaybePromise.is(result)) {
254
+ result = result.then(this.#executeCommit.bind(this));
255
+ } else {
256
+ result = this.#executeCommit();
257
+ }
258
+ if (MaybePromise.is(result)) {
259
+ return result.then(() => {
260
+ if (this.#status === Status.Exclusive) {
261
+ return this.#executeCommitCycle(count);
262
+ }
263
+ });
264
+ } else if (this.#status === Status.Exclusive) {
265
+ return this.#executeCommitCycle(count);
266
+ }
267
+ }
264
268
  waitFor(others) {
265
269
  this.#assertAvailable();
266
270
  if (this.waitingOn) {
@@ -306,34 +310,39 @@ class Tx {
306
310
  `Illegal attempt to enter status ${status} when transaction is ${this.#status}`
307
311
  );
308
312
  }
309
- const cleanup = () => {
310
- const set = new ResourceSet(this, this.#resources);
311
- const unlocked = set.releaseLocks();
312
- this.#locksChanged(unlocked, `${why} and unlocked`);
313
- Monitor.delete(this);
314
- this.#reportingLocks = false;
315
- this.#participants.clear();
316
- this.#status = Status.Shared;
317
- this.#shared?.emit();
318
- };
319
313
  let isAsync = false;
320
314
  try {
321
315
  this.#status = status;
322
316
  const result = finalizer();
323
317
  if (MaybePromise.is(result)) {
324
318
  isAsync = true;
325
- return Promise.resolve(result).finally(cleanup);
319
+ return Promise.resolve(result).finally(() => this.#reset(why));
326
320
  }
327
321
  } finally {
328
322
  if (!isAsync) {
329
- cleanup();
323
+ this.#reset(why);
330
324
  }
331
325
  }
332
326
  }
327
+ /**
328
+ * Reset state to shared with no resources or participants.
329
+ */
330
+ #reset(why) {
331
+ const set = new ResourceSet(this, this.#resources);
332
+ const unlocked = set.releaseLocks();
333
+ this.#locksChanged(unlocked, `${why} and unlocked`);
334
+ this.#resources.clear();
335
+ Monitor.delete(this);
336
+ this.#reportingLocks = false;
337
+ this.#participants.clear();
338
+ this.#roles.clear();
339
+ this.#status = Status.Shared;
340
+ this.#shared?.emit();
341
+ }
333
342
  /**
334
343
  * Iteratively execute pre-commit until all participants "settle" and report no possible mutation.
335
344
  */
336
- #executePreCommit() {
345
+ #createPreCommitExecutor() {
337
346
  let mayHaveMutated = false;
338
347
  let abortedDueToError = false;
339
348
  let iterator = this.participants[Symbol.iterator]();
@@ -365,7 +374,7 @@ class Tx {
365
374
  mayHaveMutated = false;
366
375
  iterator = this.participants[Symbol.iterator]();
367
376
  };
368
- const nextPreCommit = (previousResult) => {
377
+ const executePreCommit = (previousResult) => {
369
378
  if (abortedDueToError) {
370
379
  return;
371
380
  }
@@ -392,7 +401,7 @@ class Tx {
392
401
  try {
393
402
  const result = participant.preCommit?.();
394
403
  if (MaybePromise.is(result)) {
395
- return Promise.resolve(result).catch(handleError).then(nextPreCommit);
404
+ return Promise.resolve(result).catch(handleError).then(executePreCommit);
396
405
  }
397
406
  if (result) {
398
407
  mayHaveMutated = true;
@@ -402,17 +411,26 @@ class Tx {
402
411
  }
403
412
  }
404
413
  };
405
- return nextPreCommit();
414
+ return executePreCommit;
406
415
  }
407
416
  /**
408
- * Commit logic passed to #finalize.
417
+ * Handle actual commit and post-commit.
409
418
  */
410
419
  #executeCommit() {
411
- const result = this.#executeCommit1();
420
+ const participants = [...this.#participants];
421
+ const executeCommit = () => {
422
+ const result2 = this.#executeCommit1();
423
+ if (MaybePromise.is(result2)) {
424
+ return Promise.resolve(result2).then(this.#executeCommit2.bind(this));
425
+ }
426
+ return this.#executeCommit2();
427
+ };
428
+ const result = this.#finalize(Status.CommittingPhaseOne, "committed", executeCommit);
429
+ const executePostCommit = this.#createPostCommitExecutor(participants);
412
430
  if (MaybePromise.is(result)) {
413
- return Promise.resolve(result).then(this.#executeCommit2.bind(this));
431
+ return result.then(executePostCommit);
414
432
  }
415
- return this.#executeCommit2();
433
+ return executePostCommit();
416
434
  }
417
435
  #executeCommit1() {
418
436
  let needRollback = false;
@@ -482,23 +500,35 @@ class Tx {
482
500
  throwIfErrored(errored, "in commit phase 2");
483
501
  }
484
502
  }
485
- #executePostCommit(participants) {
486
- const participantIterator = participants[Symbol.iterator]();
487
- const postCommitNextParticipant = () => {
488
- const next = participantIterator.next();
489
- if (next.done) {
490
- return;
491
- }
492
- const participant = next.value;
493
- return MaybePromise.then(
494
- () => participant.postCommit?.(),
495
- () => postCommitNextParticipant(),
496
- (error) => {
497
- logger.error(`Error post-commit of ${participant}:`, error);
503
+ /**
504
+ * Execute post-commit phase.
505
+ *
506
+ * We notify each participant sequentially. If a participant throws, we log the error and move on to the next
507
+ * participant.
508
+ */
509
+ #createPostCommitExecutor(participants) {
510
+ let i = 0;
511
+ const executePostCommit = () => {
512
+ for (; i < participants.length; i++) {
513
+ let reportParticipantError2 = function(e) {
514
+ logger.error(`Error post-commit of ${participant}:`, e);
515
+ };
516
+ var reportParticipantError = reportParticipantError2;
517
+ const participant = participants[i];
518
+ try {
519
+ const promise = participant.postCommit?.();
520
+ if (MaybePromise.is(promise)) {
521
+ return Promise.resolve(promise).then(executePostCommit, (e) => {
522
+ reportParticipantError2(e);
523
+ executePostCommit();
524
+ });
525
+ }
526
+ } catch (e) {
527
+ reportParticipantError2(e);
498
528
  }
499
- );
529
+ }
500
530
  };
501
- return postCommitNextParticipant();
531
+ return executePostCommit;
502
532
  }
503
533
  /**
504
534
  * Rollback logic passed to #finish.
@@ -622,6 +652,6 @@ const Monitor = /* @__PURE__ */ function() {
622
652
  }();
623
653
  export {
624
654
  ReadOnlyTransaction,
625
- act
655
+ open
626
656
  };
627
657
  //# sourceMappingURL=Tx.js.map
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/transaction/Tx.ts"],
4
- "mappings": "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",
5
- "names": ["result"]
4
+ "mappings": "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",
5
+ "names": ["result", "reportParticipantError"]
6
6
  }
@@ -450,7 +450,7 @@ class QuietObservable extends BasicObservable {
450
450
  if (this.#source && this.#sourceObserver) {
451
451
  this.#source.off(this.#sourceObserver);
452
452
  } else if (this.#sourceObserver === void 0) {
453
- this.#sourceObserver = (...payload) => this.emit(...payload);
453
+ this.#sourceObserver = this.emit.bind(this);
454
454
  }
455
455
  this.#source = source;
456
456
  if (source) {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/util/Observable.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["result", "event", "observers", "QuietObservable"]
6
6
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@matter/general",
3
- "version": "0.13.1-alpha.0-20250520-d699cd56d",
3
+ "version": "0.14.0-alpha.0-20250521-979eda05d",
4
4
  "description": "Non-Matter support for Matter.js",
5
5
  "keywords": [
6
6
  "iot",
@@ -36,7 +36,7 @@
36
36
  "@noble/curves": "^1.9.1"
37
37
  },
38
38
  "devDependencies": {
39
- "@matter/testing": "0.13.1-alpha.0-20250520-d699cd56d"
39
+ "@matter/testing": "0.14.0-alpha.0-20250521-979eda05d"
40
40
  },
41
41
  "files": [
42
42
  "dist/**/*",
@@ -5,3 +5,4 @@
5
5
  */
6
6
 
7
7
  import "./disposable.js";
8
+ import "./suppressed-error.js";
@@ -0,0 +1,27 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2022-2025 Project CHIP Authors
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+
7
+ if (globalThis.SuppressedError === undefined) {
8
+ /**
9
+ * Polyfill for ES SuppressedError which is widely supported but only available in Node.js as of version 24.
10
+ */
11
+ class SuppressedError extends Error {
12
+ error: any;
13
+ suppressed: any;
14
+
15
+ constructor(error: any, suppressed: any, message?: string) {
16
+ super(message);
17
+
18
+ this.error = error;
19
+ this.suppressed = suppressed;
20
+ }
21
+ }
22
+
23
+ const factory = (error: any, suppressed: any, message?: string) => new SuppressedError(error, suppressed, message);
24
+ factory.prototype = SuppressedError.prototype;
25
+
26
+ globalThis.SuppressedError = factory as typeof globalThis.SuppressedError;
27
+ }
@@ -9,7 +9,7 @@ import { Participant } from "./Participant.js";
9
9
  import { Resource } from "./Resource.js";
10
10
  import { ResourceSet } from "./ResourceSet.js";
11
11
  import { Status } from "./Status.js";
12
- import { ReadOnlyTransaction, act } from "./Tx.js";
12
+ import { ReadOnlyTransaction, open } from "./Tx.js";
13
13
 
14
14
  /**
15
15
  * Two-phase commit implementation.
@@ -154,7 +154,9 @@ type ParticipantType = Participant;
154
154
 
155
155
  export const Transaction = {
156
156
  /**
157
- * Perform a transactional operation. This is the only way to obtain a read/write transaction.
157
+ * Perform a transactional operation.
158
+ *
159
+ * This creates a read/write transaction scoped to the life of an optionally async function call.
158
160
  *
159
161
  * The transaction will commit automatically if it is exclusive (write mode) after the actor returns.
160
162
  *
@@ -162,8 +164,28 @@ export const Transaction = {
162
164
  * destroyed.
163
165
  */
164
166
  act<T>(via: string, actor: (transaction: Transaction) => MaybePromise<T>): MaybePromise<T> {
167
+ const tx = open(via);
168
+
169
+ let result;
170
+ try {
171
+ result = actor(tx);
172
+ } catch (e) {
173
+ return tx.reject(e);
174
+ }
175
+
176
+ return tx.resolve(result);
177
+ },
178
+
179
+ /**
180
+ * Create a transaction.
181
+ *
182
+ * Transactions must be closed using {@link Finalization#resolve} or {@link Finalization#reject}.
183
+ *
184
+ * When closed the transaction commits automatically if exclusive.
185
+ */
186
+ open(via: string) {
165
187
  // This function is replaced below so do not edit
166
- return act(via, actor);
188
+ return open(via);
167
189
  },
168
190
 
169
191
  ReadOnly: ReadOnlyTransaction,
@@ -176,7 +198,7 @@ export const Transaction = {
176
198
  };
177
199
 
178
200
  // This is functionally equivalent to the definition above but removes a stack frame
179
- Transaction.act = act;
201
+ Transaction.open = open;
180
202
 
181
203
  export namespace Transaction {
182
204
  export type Status = StatusType;
@@ -186,4 +208,20 @@ export namespace Transaction {
186
208
  export type ResourceSet = ResourceSetType;
187
209
 
188
210
  export type Participant = ParticipantType;
211
+
212
+ export interface Disposable extends Transaction, AsyncDisposable {
213
+ close(): MaybePromise<void>;
214
+ }
215
+
216
+ export interface Finalization {
217
+ /**
218
+ * Finish the transaction. If {@link result} is a promise this may result on commit or rollback.
219
+ */
220
+ resolve<T>(result: T): MaybePromise<Awaited<T>>;
221
+
222
+ /**
223
+ * Roll back, close the transaction and throw an error.
224
+ */
225
+ reject(cause: unknown): MaybePromise<never>;
226
+ }
189
227
  }