@theia/preferences 1.24.0-next.45 → 1.24.0-next.46

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.
@@ -105,6 +105,7 @@ let AbstractResourcePreferenceProvider = class AbstractResourcePreferenceProvide
105
105
  if (!((_a = this.transaction) === null || _a === void 0 ? void 0 : _a.open)) {
106
106
  const current = this.transaction;
107
107
  this.transaction = this.transactionFactory(this);
108
+ this.transaction.waitFor(current === null || current === void 0 ? void 0 : current.result);
108
109
  this.transaction.onWillConclude(({ status, waitUntil }) => {
109
110
  if (status) {
110
111
  waitUntil((async () => {
@@ -114,7 +115,6 @@ let AbstractResourcePreferenceProvider = class AbstractResourcePreferenceProvide
114
115
  }
115
116
  });
116
117
  this.toDispose.push(this.transaction);
117
- await (current === null || current === void 0 ? void 0 : current.result);
118
118
  }
119
119
  return this.transaction.enqueueAction(key, path, value);
120
120
  }
@@ -1 +1 @@
1
- {"version":3,"file":"abstract-resource-preference-provider.js","sourceRoot":"","sources":["../../src/browser/abstract-resource-preference-provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"abstract-resource-preference-provider.js","sourceRoot":"","sources":["../../src/browser/abstract-resource-preference-provider.ts"],"names":[],"mappings":"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"}
@@ -40,10 +40,12 @@ export declare abstract class Transaction<Arguments extends unknown[], Result =
40
40
  */
41
41
  protected inUse: boolean;
42
42
  protected init(): Promise<void>;
43
+ waitFor(delay?: Promise<unknown>, disposeIfRejected?: boolean): Promise<void>;
43
44
  /**
44
45
  * @returns a promise reflecting the result of performing an action. Typically the promise will not resolve until the whole transaction is complete.
45
46
  */
46
47
  enqueueAction(...args: Arguments): Promise<Result | false>;
48
+ protected disposeWhenDone(): void;
47
49
  protected conclude(): Promise<void>;
48
50
  dispose(): void;
49
51
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"preference-transaction-manager.d.ts","sourceRoot":"","sources":["../../src/browser/preference-transaction-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"preference-transaction-manager.d.ts","sourceRoot":"","sources":["../../src/browser/preference-transaction-manager.ts"],"names":[],"mappings":"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"}
@@ -87,6 +87,16 @@ class Transaction {
87
87
  release();
88
88
  }
89
89
  }
90
+ async waitFor(delay, disposeIfRejected) {
91
+ try {
92
+ await this.queue.runExclusive(() => delay);
93
+ }
94
+ catch (_a) {
95
+ if (disposeIfRejected) {
96
+ this.dispose();
97
+ }
98
+ }
99
+ }
90
100
  /**
91
101
  * @returns a promise reflecting the result of performing an action. Typically the promise will not resolve until the whole transaction is complete.
92
102
  */
@@ -97,7 +107,7 @@ class Transaction {
97
107
  release = await this.queue.acquire();
98
108
  if (!this.inUse) {
99
109
  this.inUse = true;
100
- this.queue.waitForUnlock().then(() => this.dispose());
110
+ this.disposeWhenDone();
101
111
  }
102
112
  return this.act(...args);
103
113
  }
@@ -108,15 +118,25 @@ class Transaction {
108
118
  return false;
109
119
  }
110
120
  finally {
111
- if (release) {
112
- release();
113
- }
121
+ release === null || release === void 0 ? void 0 : release();
114
122
  }
115
123
  }
116
124
  else {
117
125
  throw new Error('Transaction used after disposal.');
118
126
  }
119
127
  }
128
+ disposeWhenDone() {
129
+ // Due to properties of the micro task system, it's possible for something to have been equeued between
130
+ // the resolution of the waitForUnlock() promise and the the time this code runs, so we have to check.
131
+ this.queue.waitForUnlock().then(() => {
132
+ if (!this.queue.isLocked()) {
133
+ this.dispose();
134
+ }
135
+ else {
136
+ this.disposeWhenDone();
137
+ }
138
+ });
139
+ }
120
140
  async conclude() {
121
141
  if (this._open) {
122
142
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"preference-transaction-manager.js","sourceRoot":"","sources":["../../src/browser/preference-transaction-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"preference-transaction-manager.js","sourceRoot":"","sources":["../../src/browser/preference-transaction-manager.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,14 +1,14 @@
1
1
  {
2
2
  "name": "@theia/preferences",
3
- "version": "1.24.0-next.45+76f8928eee9",
3
+ "version": "1.24.0-next.46+173e8b197a2",
4
4
  "description": "Theia - Preferences Extension",
5
5
  "dependencies": {
6
- "@theia/core": "1.24.0-next.45+76f8928eee9",
7
- "@theia/editor": "1.24.0-next.45+76f8928eee9",
8
- "@theia/filesystem": "1.24.0-next.45+76f8928eee9",
9
- "@theia/monaco": "1.24.0-next.45+76f8928eee9",
10
- "@theia/userstorage": "1.24.0-next.45+76f8928eee9",
11
- "@theia/workspace": "1.24.0-next.45+76f8928eee9",
6
+ "@theia/core": "1.24.0-next.46+173e8b197a2",
7
+ "@theia/editor": "1.24.0-next.46+173e8b197a2",
8
+ "@theia/filesystem": "1.24.0-next.46+173e8b197a2",
9
+ "@theia/monaco": "1.24.0-next.46+173e8b197a2",
10
+ "@theia/userstorage": "1.24.0-next.46+173e8b197a2",
11
+ "@theia/workspace": "1.24.0-next.46+173e8b197a2",
12
12
  "async-mutex": "^0.3.1",
13
13
  "jsonc-parser": "^2.2.0",
14
14
  "p-debounce": "^2.1.0"
@@ -51,5 +51,5 @@
51
51
  "nyc": {
52
52
  "extends": "../../configs/nyc.json"
53
53
  },
54
- "gitHead": "76f8928eee91b4ac2f3eb640f85444ab80d6c878"
54
+ "gitHead": "173e8b197a2a1bbe7f95f49509da7e53659de0c7"
55
55
  }
@@ -115,6 +115,7 @@ export abstract class AbstractResourcePreferenceProvider extends PreferenceProvi
115
115
  if (!this.transaction?.open) {
116
116
  const current = this.transaction;
117
117
  this.transaction = this.transactionFactory(this);
118
+ this.transaction.waitFor(current?.result);
118
119
  this.transaction.onWillConclude(({ status, waitUntil }) => {
119
120
  if (status) {
120
121
  waitUntil((async () => {
@@ -124,7 +125,6 @@ export abstract class AbstractResourcePreferenceProvider extends PreferenceProvi
124
125
  }
125
126
  });
126
127
  this.toDispose.push(this.transaction);
127
- await current?.result;
128
128
  }
129
129
  return this.transaction.enqueueAction(key, path, value);
130
130
  }
@@ -82,6 +82,16 @@ export abstract class Transaction<Arguments extends unknown[], Result = unknown,
82
82
  }
83
83
  }
84
84
 
85
+ async waitFor(delay?: Promise<unknown>, disposeIfRejected?: boolean): Promise<void> {
86
+ try {
87
+ await this.queue.runExclusive(() => delay);
88
+ } catch {
89
+ if (disposeIfRejected) {
90
+ this.dispose();
91
+ }
92
+ }
93
+ }
94
+
85
95
  /**
86
96
  * @returns a promise reflecting the result of performing an action. Typically the promise will not resolve until the whole transaction is complete.
87
97
  */
@@ -92,7 +102,7 @@ export abstract class Transaction<Arguments extends unknown[], Result = unknown,
92
102
  release = await this.queue.acquire();
93
103
  if (!this.inUse) {
94
104
  this.inUse = true;
95
- this.queue.waitForUnlock().then(() => this.dispose());
105
+ this.disposeWhenDone();
96
106
  }
97
107
  return this.act(...args);
98
108
  } catch (e) {
@@ -101,15 +111,25 @@ export abstract class Transaction<Arguments extends unknown[], Result = unknown,
101
111
  }
102
112
  return false;
103
113
  } finally {
104
- if (release) {
105
- release();
106
- }
114
+ release?.();
107
115
  }
108
116
  } else {
109
117
  throw new Error('Transaction used after disposal.');
110
118
  }
111
119
  }
112
120
 
121
+ protected disposeWhenDone(): void {
122
+ // Due to properties of the micro task system, it's possible for something to have been equeued between
123
+ // the resolution of the waitForUnlock() promise and the the time this code runs, so we have to check.
124
+ this.queue.waitForUnlock().then(() => {
125
+ if (!this.queue.isLocked()) {
126
+ this.dispose();
127
+ } else {
128
+ this.disposeWhenDone();
129
+ }
130
+ });
131
+ }
132
+
113
133
  protected async conclude(): Promise<void> {
114
134
  if (this._open) {
115
135
  try {