@isolated-vm/experimental 0.0.6 → 0.0.8

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.
@@ -5,7 +5,7 @@ import :transfer.visit;
5
5
  namespace isolated_vm {
6
6
  using namespace js;
7
7
 
8
- template <class Result = std::monostate>
8
+ template <class Result>
9
9
  auto value_for_function::apply(const runtime_lock& lock, auto&& args) -> Result {
10
10
  using args_type = std::vector<value_of<>>;
11
11
  auto undefined = js::transfer_in_strict<value_of<>>(std::monostate{}, lock);
@@ -14,7 +14,7 @@ auto value_for_function::apply(const runtime_lock& lock, auto&& args) -> Result
14
14
  return js::transfer_out<Result>(result, lock);
15
15
  }
16
16
 
17
- template <class Result = std::monostate>
17
+ template <class Result>
18
18
  auto value_for_function::call(const runtime_lock& lock, auto&&... args) -> Result {
19
19
  using args_type = std::array<value_of<>, sizeof...(args) + 1>;
20
20
  auto argv = js::transfer_in_strict<args_type>(
@@ -5,6 +5,7 @@ export import :support.lock_fwd;
5
5
  export import :value.array_buffer;
6
6
  export import :value.array;
7
7
  export import :value.function;
8
+ export import :value.object;
8
9
  export import :value.primitive;
9
10
  export import :value.prototype;
10
11
  export import :value.record;
@@ -26,6 +26,7 @@ declare module "#backend_v8" {
26
26
  export class Agent {
27
27
  readonly #private;
28
28
  protected constructor(secret: Secret, ...args: unknown[]);
29
+ disposeAsync(): Promise<void>;
29
30
  compileModule(code: string, options?: CompileModuleOptions | undefined): Promise<MaybeCompletionOf<_Module>>;
30
31
  compileScript(code: string, options?: CompileScriptOptions | undefined): Promise<MaybeCompletionOf<Script>>;
31
32
  createRealm(): Promise<Realm>;
@@ -35,7 +35,6 @@ export declare namespace Agent {
35
35
  }
36
36
  export declare class Agent extends backend.Agent {
37
37
  static create(options?: Agent.CreateOptions): Promise<Agent>;
38
- dispose(): Promise<boolean>;
39
38
  [Symbol.asyncDispose](): Promise<void>;
40
39
  }
41
40
  //# sourceMappingURL=agent.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../frontend/agent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,OAAO,MAAM,aAAa,CAAC;AAGvC,yBAAiB,KAAK,CAAC;IACtB,UAAiB,KAAK,CAAC;QACtB,UAAiB,aAAa;YAC7B,IAAI,EAAE,eAAe,CAAC;YACtB,KAAK,EAAE,IAAI,CAAC;YACZ,QAAQ,EAAE,MAAM,CAAC;SACjB;QAED,UAAiB,SAAS;YACzB,IAAI,EAAE,WAAW,CAAC;YAClB,KAAK,CAAC,EAAE,IAAI,GAAG,SAAS,CAAC;SACzB;QAED,UAAiB,QAAQ;YACxB,IAAI,EAAE,UAAU,CAAC;YACjB,KAAK,EAAE,IAAI,CAAC;SACZ;QAED,UAAiB,MAAM;YACtB,IAAI,EAAE,QAAQ,CAAC;SACf;KACD;IAED,UAAiB,aAAa,CAAC;QAC9B,KAAY,KAAK,GAAG,KAAK,CAAC,aAAa,GAAG,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC;KAE1F;IAED,UAAiB,aAAa;QAC7B,KAAK,CAAC,EAAE,aAAa,CAAC,KAAK,GAAG,SAAS,CAAC;QACxC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;KAChC;IAED,UAAiB,oBAAoB;QACpC,MAAM,CAAC,EAAE,YAAY,CAAC;KACtB;IAED,UAAiB,oBAAoB;QACpC,MAAM,CAAC,EAAE,YAAY,CAAC;KACtB;CACD;AAID,qBAAa,KAAM,SAAQ,OAAO,CAAC,KAAK;WACvB,MAAM,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,aAAa,GAAG,OAAO,CAAC,KAAK,CAAC;IAS/D,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC;IAK3B,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC;CAG5C"}
1
+ {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../frontend/agent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,OAAO,MAAM,aAAa,CAAC;AAGvC,yBAAiB,KAAK,CAAC;IACtB,UAAiB,KAAK,CAAC;QACtB,UAAiB,aAAa;YAC7B,IAAI,EAAE,eAAe,CAAC;YACtB,KAAK,EAAE,IAAI,CAAC;YACZ,QAAQ,EAAE,MAAM,CAAC;SACjB;QAED,UAAiB,SAAS;YACzB,IAAI,EAAE,WAAW,CAAC;YAClB,KAAK,CAAC,EAAE,IAAI,GAAG,SAAS,CAAC;SACzB;QAED,UAAiB,QAAQ;YACxB,IAAI,EAAE,UAAU,CAAC;YACjB,KAAK,EAAE,IAAI,CAAC;SACZ;QAED,UAAiB,MAAM;YACtB,IAAI,EAAE,QAAQ,CAAC;SACf;KACD;IAED,UAAiB,aAAa,CAAC;QAC9B,KAAY,KAAK,GAAG,KAAK,CAAC,aAAa,GAAG,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC;KAE1F;IAED,UAAiB,aAAa;QAC7B,KAAK,CAAC,EAAE,aAAa,CAAC,KAAK,GAAG,SAAS,CAAC;QACxC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;KAChC;IAED,UAAiB,oBAAoB;QACpC,MAAM,CAAC,EAAE,YAAY,CAAC;KACtB;IAED,UAAiB,oBAAoB;QACpC,MAAM,CAAC,EAAE,YAAY,CAAC;KACtB;CACD;AAID,qBAAa,KAAM,SAAQ,OAAO,CAAC,KAAK;WACvB,MAAM,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,aAAa,GAAG,OAAO,CAAC,KAAK,CAAC;IAQ/D,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC;CAG5C"}
@@ -9,13 +9,8 @@ export class Agent extends backend.Agent {
9
9
  }
10
10
  return backend.Agent.create(options);
11
11
  }
12
- // eslint-disable-next-line @typescript-eslint/require-await
13
- async dispose() {
14
- // :)
15
- return true;
16
- }
17
12
  async [Symbol.asyncDispose]() {
18
- await this.dispose();
13
+ await this.disposeAsync();
19
14
  }
20
15
  }
21
16
  //# sourceMappingURL=agent.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"agent.js","sourceRoot":"","sources":["../../frontend/agent.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,OAAO,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AA4CrC,IAAI,aAAa,GAAG,KAAK,CAAC;AAE1B,MAAM,OAAO,KAAM,SAAQ,OAAO,CAAC,KAAK;IACvC,MAAM,CAAU,MAAM,CAAC,OAA6B;QACnD,IAAI,CAAC,aAAa,EAAE,CAAC;YACpB,OAAO,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;YACtC,aAAa,GAAG,IAAI,CAAC;QACtB,CAAC;QACD,OAAO,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACtC,CAAC;IAED,4DAA4D;IAC5D,KAAK,CAAC,OAAO;QACZ,KAAK;QACL,OAAO,IAAI,CAAC;IACb,CAAC;IAED,KAAK,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC;QAC1B,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;IACtB,CAAC;CACD"}
1
+ {"version":3,"file":"agent.js","sourceRoot":"","sources":["../../frontend/agent.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,OAAO,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AA4CrC,IAAI,aAAa,GAAG,KAAK,CAAC;AAE1B,MAAM,OAAO,KAAM,SAAQ,OAAO,CAAC,KAAK;IACvC,MAAM,CAAU,MAAM,CAAC,OAA6B;QACnD,IAAI,CAAC,aAAa,EAAE,CAAC;YACpB,OAAO,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;YACtC,aAAa,GAAG,IAAI,CAAC;QACtB,CAAC;QACD,OAAO,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACtC,CAAC;IAED,KAAK,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC;QAC1B,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;IAC3B,CAAC;CACD"}
@@ -3,6 +3,8 @@ import * as assert from "node:assert/strict";
3
3
  import { describe, test } from "node:test";
4
4
  import * as ivm from "@isolated-vm/experimental";
5
5
  import { unsafeEvalAsStringInRealm } from "./fixtures.js";
6
+ // @ts-expect-error
7
+ const hostSupportsSharedArraySupport = process.isBun === undefined;
6
8
  async function check(agent, realm, fn) {
7
9
  const result = await unsafeEvalAsStringInRealm(agent, realm, fn);
8
10
  assert.deepStrictEqual(result, fn());
@@ -97,40 +99,68 @@ await test("transfer types", async () => {
97
99
  // });
98
100
  // });
99
101
  await describe("regressions", async () => {
100
- const env_2 = { stack: [], error: void 0, hasError: false };
101
- try {
102
- const agent = __addDisposableResource(env_2, await ivm.Agent.create(), true);
103
- await test("numeric references", async () => {
102
+ await test("numeric references", async () => {
103
+ const env_2 = { stack: [], error: void 0, hasError: false };
104
+ try {
105
+ const agent = __addDisposableResource(env_2, await ivm.Agent.create(), true);
104
106
  const realm = await agent.createRealm();
105
107
  const global = await realm.acquireGlobalObject();
106
108
  // doubles are stored as references in `value_t`, because they are bigger than 32-bit. there was
107
109
  // a failure with more than one of them in the same transfer operation.
108
110
  await global.set("xx", { zero: 0.1, one: 0.2 });
109
- });
110
- await test("numeric indices", async () => {
111
+ }
112
+ catch (e_2) {
113
+ env_2.error = e_2;
114
+ env_2.hasError = true;
115
+ }
116
+ finally {
117
+ const result_2 = __disposeResources(env_2);
118
+ if (result_2)
119
+ await result_2;
120
+ }
121
+ });
122
+ await test("numeric indices", async () => {
123
+ const env_3 = { stack: [], error: void 0, hasError: false };
124
+ try {
125
+ const agent = __addDisposableResource(env_3, await ivm.Agent.create(), true);
111
126
  const realm = await agent.createRealm();
112
127
  const global = await realm.acquireGlobalObject();
113
128
  // numeric array indices broke as part of a double to int32_t change.
114
129
  await global.set("xx", [false, true]);
115
- });
130
+ }
131
+ catch (e_3) {
132
+ env_3.error = e_3;
133
+ env_3.hasError = true;
134
+ }
135
+ finally {
136
+ const result_3 = __disposeResources(env_3);
137
+ if (result_3)
138
+ await result_3;
139
+ }
140
+ });
141
+ if (hostSupportsSharedArraySupport) {
116
142
  await test("seen index type", async () => {
117
- const realm = await agent.createRealm();
118
- const global = await realm.acquireGlobalObject();
119
- const payload = {
120
- number: 0,
121
- buffer: [new Uint8Array(new SharedArrayBuffer(0))],
122
- };
123
- await global.set("xx", [payload]);
143
+ const env_4 = { stack: [], error: void 0, hasError: false };
144
+ try {
145
+ const agent = __addDisposableResource(env_4, await ivm.Agent.create(), true);
146
+ const realm = await agent.createRealm();
147
+ const global = await realm.acquireGlobalObject();
148
+ const payload = {
149
+ number: 0,
150
+ buffer: [new Uint8Array(new SharedArrayBuffer(0))],
151
+ };
152
+ await global.set("xx", [payload]);
153
+ }
154
+ catch (e_4) {
155
+ env_4.error = e_4;
156
+ env_4.hasError = true;
157
+ }
158
+ finally {
159
+ const result_4 = __disposeResources(env_4);
160
+ if (result_4)
161
+ await result_4;
162
+ }
124
163
  });
125
164
  }
126
- catch (e_2) {
127
- env_2.error = e_2;
128
- env_2.hasError = true;
129
- }
130
- finally {
131
- const result_2 = __disposeResources(env_2);
132
- if (result_2)
133
- await result_2;
134
- }
135
165
  });
136
166
  //# sourceMappingURL=00.transfer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"00.transfer.js","sourceRoot":"","sources":["../../test/00.transfer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"00.transfer.js","sourceRoot":"","sources":["../../test/00.transfer.ts"],"names":[],"mappings":"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"}
@@ -3,27 +3,58 @@ import * as assert from "node:assert/strict";
3
3
  import { describe, test } from "node:test";
4
4
  import * as ivm from "@isolated-vm/experimental";
5
5
  import { injectAssert, unsafeEvalAsString, unsafeEvalAsStringInRealm } from "./fixtures.js";
6
+ const hostSupportsSharedArraySupport =
7
+ // @ts-expect-error
8
+ process.isBun === undefined && process.versions.deno === undefined;
6
9
  await describe("array buffer", async () => {
7
- const env_1 = { stack: [], error: void 0, hasError: false };
8
- try {
9
- const agent = __addDisposableResource(env_1, await ivm.Agent.create(), true);
10
- await describe("transfer out", async () => {
10
+ await describe("transfer out", async () => {
11
+ const env_1 = { stack: [], error: void 0, hasError: false };
12
+ try {
13
+ const agent = __addDisposableResource(env_1, await ivm.Agent.create(), true);
11
14
  const ab = await unsafeEvalAsString(agent, () => {
12
15
  const uint8 = new Uint8Array([1, 2, 3]);
13
16
  return uint8.buffer;
14
17
  });
15
18
  const uint8 = new Uint8Array(ab);
16
19
  assert.deepStrictEqual(uint8, new Uint8Array([1, 2, 3]));
17
- });
20
+ }
21
+ catch (e_1) {
22
+ env_1.error = e_1;
23
+ env_1.hasError = true;
24
+ }
25
+ finally {
26
+ const result_1 = __disposeResources(env_1);
27
+ if (result_1)
28
+ await result_1;
29
+ }
30
+ });
31
+ if (hostSupportsSharedArraySupport) {
18
32
  await test("transfer out same reference", async () => {
19
- const ab = await unsafeEvalAsString(agent, () => {
20
- // nb: also tests zero-length buffer
21
- const ab = new ArrayBuffer(0);
22
- return [ab, ab];
23
- });
24
- assert.strictEqual(ab[0], ab[1]);
33
+ const env_2 = { stack: [], error: void 0, hasError: false };
34
+ try {
35
+ const agent = __addDisposableResource(env_2, await ivm.Agent.create(), true);
36
+ const ab = await unsafeEvalAsString(agent, () => {
37
+ // nb: also tests zero-length buffer
38
+ const ab = new ArrayBuffer(0);
39
+ return [ab, ab];
40
+ });
41
+ assert.strictEqual(ab[0], ab[1]);
42
+ }
43
+ catch (e_2) {
44
+ env_2.error = e_2;
45
+ env_2.hasError = true;
46
+ }
47
+ finally {
48
+ const result_2 = __disposeResources(env_2);
49
+ if (result_2)
50
+ await result_2;
51
+ }
25
52
  });
26
- await test("transfer in", async () => {
53
+ }
54
+ await test("transfer in", async () => {
55
+ const env_3 = { stack: [], error: void 0, hasError: false };
56
+ try {
57
+ const agent = __addDisposableResource(env_3, await ivm.Agent.create(), true);
27
58
  const realm = await agent.createRealm();
28
59
  await injectAssert(agent, realm);
29
60
  const global = await realm.acquireGlobalObject();
@@ -33,8 +64,21 @@ await describe("array buffer", async () => {
33
64
  const uint8 = new Uint8Array(ab);
34
65
  assert.deepStrictEqual([...uint8], [1, 2, 3]);
35
66
  });
36
- });
37
- await test("transfer in same reference", async () => {
67
+ }
68
+ catch (e_3) {
69
+ env_3.error = e_3;
70
+ env_3.hasError = true;
71
+ }
72
+ finally {
73
+ const result_3 = __disposeResources(env_3);
74
+ if (result_3)
75
+ await result_3;
76
+ }
77
+ });
78
+ await test("transfer in same reference", async () => {
79
+ const env_4 = { stack: [], error: void 0, hasError: false };
80
+ try {
81
+ const agent = __addDisposableResource(env_4, await ivm.Agent.create(), true);
38
82
  const realm = await agent.createRealm();
39
83
  await injectAssert(agent, realm);
40
84
  const global = await realm.acquireGlobalObject();
@@ -45,102 +89,160 @@ await describe("array buffer", async () => {
45
89
  // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
46
90
  assert.strictEqual(abs[0], abs[1]);
47
91
  });
48
- });
49
- }
50
- catch (e_1) {
51
- env_1.error = e_1;
52
- env_1.hasError = true;
53
- }
54
- finally {
55
- const result_1 = __disposeResources(env_1);
56
- if (result_1)
57
- await result_1;
58
- }
92
+ }
93
+ catch (e_4) {
94
+ env_4.error = e_4;
95
+ env_4.hasError = true;
96
+ }
97
+ finally {
98
+ const result_4 = __disposeResources(env_4);
99
+ if (result_4)
100
+ await result_4;
101
+ }
102
+ });
59
103
  });
60
104
  await describe("shared array buffer", async () => {
61
- const env_2 = { stack: [], error: void 0, hasError: false };
62
- try {
63
- const agent = __addDisposableResource(env_2, await ivm.Agent.create(), true);
105
+ if (hostSupportsSharedArraySupport) {
64
106
  await describe("transfer out", async () => {
65
- const realm = await agent.createRealm();
66
- const sab = await unsafeEvalAsStringInRealm(agent, realm, () => {
67
- const sab = new SharedArrayBuffer(3);
107
+ const env_5 = { stack: [], error: void 0, hasError: false };
108
+ try {
109
+ const agent = __addDisposableResource(env_5, await ivm.Agent.create(), true);
110
+ const realm = await agent.createRealm();
111
+ const sab = await unsafeEvalAsStringInRealm(agent, realm, () => {
112
+ const sab = new SharedArrayBuffer(3);
113
+ const uint8 = new Uint8Array(sab);
114
+ uint8.set([1, 2, 3]);
115
+ // @ts-expect-error
116
+ globalThis.uint8 = uint8;
117
+ return sab;
118
+ });
119
+ assert.ok(sab instanceof SharedArrayBuffer);
68
120
  const uint8 = new Uint8Array(sab);
69
- uint8.set([1, 2, 3]);
70
- // @ts-expect-error
71
- globalThis.uint8 = uint8;
72
- return sab;
73
- });
74
- assert.ok(sab instanceof SharedArrayBuffer);
75
- const uint8 = new Uint8Array(sab);
76
- assert.deepStrictEqual(uint8, new Uint8Array([1, 2, 3]));
77
- uint8.set([3, 2, 1]);
78
- const next = await unsafeEvalAsStringInRealm(agent, realm, () => {
79
- // @ts-expect-error
80
- // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
81
- const uint8 = globalThis.uint8;
82
- return [...uint8];
83
- });
84
- assert.deepStrictEqual(next, [3, 2, 1]);
121
+ assert.deepStrictEqual(uint8, new Uint8Array([1, 2, 3]));
122
+ uint8.set([3, 2, 1]);
123
+ const next = await unsafeEvalAsStringInRealm(agent, realm, () => {
124
+ // @ts-expect-error
125
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
126
+ const uint8 = globalThis.uint8;
127
+ return [...uint8];
128
+ });
129
+ assert.deepStrictEqual(next, [3, 2, 1]);
130
+ }
131
+ catch (e_5) {
132
+ env_5.error = e_5;
133
+ env_5.hasError = true;
134
+ }
135
+ finally {
136
+ const result_5 = __disposeResources(env_5);
137
+ if (result_5)
138
+ await result_5;
139
+ }
85
140
  });
86
141
  await test("transfer out same reference", async () => {
87
- const ab = await unsafeEvalAsString(agent, () => {
88
- // nb: also tests zero-length buffer
89
- const sab = new SharedArrayBuffer(0);
90
- return [sab, sab];
91
- });
92
- assert.strictEqual(ab[0], ab[1]);
142
+ const env_6 = { stack: [], error: void 0, hasError: false };
143
+ try {
144
+ const agent = __addDisposableResource(env_6, await ivm.Agent.create(), true);
145
+ const ab = await unsafeEvalAsString(agent, () => {
146
+ // nb: also tests zero-length buffer
147
+ const sab = new SharedArrayBuffer(0);
148
+ return [sab, sab];
149
+ });
150
+ assert.strictEqual(ab[0], ab[1]);
151
+ }
152
+ catch (e_6) {
153
+ env_6.error = e_6;
154
+ env_6.hasError = true;
155
+ }
156
+ finally {
157
+ const result_6 = __disposeResources(env_6);
158
+ if (result_6)
159
+ await result_6;
160
+ }
93
161
  });
94
162
  await test("transfer in", async () => {
95
- const realm = await agent.createRealm();
96
- await injectAssert(agent, realm);
97
- const global = await realm.acquireGlobalObject();
98
- const sab = new SharedArrayBuffer(3);
99
- const uint8 = new Uint8Array(sab);
100
- uint8.set([1, 2, 3]);
101
- await global.set("sab", sab);
102
- await unsafeEvalAsStringInRealm(agent, realm, () => {
103
- // @ts-expect-error
104
- const uint8 = new Uint8Array(globalThis.sab);
105
- assert.deepStrictEqual([...uint8], [1, 2, 3]);
106
- });
163
+ const env_7 = { stack: [], error: void 0, hasError: false };
164
+ try {
165
+ const agent = __addDisposableResource(env_7, await ivm.Agent.create(), true);
166
+ const realm = await agent.createRealm();
167
+ await injectAssert(agent, realm);
168
+ const global = await realm.acquireGlobalObject();
169
+ const sab = new SharedArrayBuffer(3);
170
+ const uint8 = new Uint8Array(sab);
171
+ uint8.set([1, 2, 3]);
172
+ await global.set("sab", sab);
173
+ await unsafeEvalAsStringInRealm(agent, realm, () => {
174
+ // @ts-expect-error
175
+ const uint8 = new Uint8Array(globalThis.sab);
176
+ assert.ok(uint8.buffer instanceof SharedArrayBuffer);
177
+ assert.deepStrictEqual([...uint8], [1, 2, 3]);
178
+ });
179
+ }
180
+ catch (e_7) {
181
+ env_7.error = e_7;
182
+ env_7.hasError = true;
183
+ }
184
+ finally {
185
+ const result_7 = __disposeResources(env_7);
186
+ if (result_7)
187
+ await result_7;
188
+ }
107
189
  });
108
- await test("transfer in same reference", async () => {
190
+ }
191
+ await test("transfer in same reference", async () => {
192
+ const env_8 = { stack: [], error: void 0, hasError: false };
193
+ try {
194
+ const agent = __addDisposableResource(env_8, await ivm.Agent.create(), true);
109
195
  const realm = await agent.createRealm();
110
196
  await injectAssert(agent, realm);
111
197
  const global = await realm.acquireGlobalObject();
112
- const sab = new SharedArrayBuffer(0);
113
- await global.set("sabs", [sab, sab]);
198
+ const ab = new ArrayBuffer(0);
199
+ await global.set("abs", [ab, ab]);
114
200
  await unsafeEvalAsStringInRealm(agent, realm, () => {
115
201
  // @ts-expect-error
116
202
  // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
117
- assert.strictEqual(sabs[0], sabs[1]);
203
+ assert.strictEqual(`${abs[0]}`, "[object ArrayBuffer]");
204
+ // @ts-expect-error
205
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
206
+ assert.strictEqual(abs[0], abs[1]);
118
207
  });
119
- });
120
- }
121
- catch (e_2) {
122
- env_2.error = e_2;
123
- env_2.hasError = true;
124
- }
125
- finally {
126
- const result_2 = __disposeResources(env_2);
127
- if (result_2)
128
- await result_2;
129
- }
208
+ }
209
+ catch (e_8) {
210
+ env_8.error = e_8;
211
+ env_8.hasError = true;
212
+ }
213
+ finally {
214
+ const result_8 = __disposeResources(env_8);
215
+ if (result_8)
216
+ await result_8;
217
+ }
218
+ });
130
219
  });
131
220
  await describe("typed array", async () => {
132
- const env_3 = { stack: [], error: void 0, hasError: false };
133
- try {
134
- const agent = __addDisposableResource(env_3, await ivm.Agent.create(), true);
135
- await test("transfer out", async () => {
221
+ await test("transfer out", async () => {
222
+ const env_9 = { stack: [], error: void 0, hasError: false };
223
+ try {
224
+ const agent = __addDisposableResource(env_9, await ivm.Agent.create(), true);
136
225
  const [uint8, uint8_copy] = await unsafeEvalAsString(agent, () => {
137
226
  const uint8 = new Uint8Array([1, 2, 3]);
138
227
  return [uint8, new Uint8Array(uint8.buffer)];
139
228
  });
140
229
  assert.deepStrictEqual(uint8, new Uint8Array([1, 2, 3]));
141
230
  assert.strictEqual(uint8.buffer, uint8_copy.buffer);
142
- });
143
- await test("transfer in", async () => {
231
+ }
232
+ catch (e_9) {
233
+ env_9.error = e_9;
234
+ env_9.hasError = true;
235
+ }
236
+ finally {
237
+ const result_9 = __disposeResources(env_9);
238
+ if (result_9)
239
+ await result_9;
240
+ }
241
+ });
242
+ await test("transfer in", async () => {
243
+ const env_10 = { stack: [], error: void 0, hasError: false };
244
+ try {
245
+ const agent = __addDisposableResource(env_10, await ivm.Agent.create(), true);
144
246
  const realm = await agent.createRealm();
145
247
  await injectAssert(agent, realm);
146
248
  const global = await realm.acquireGlobalObject();
@@ -152,27 +254,42 @@ await describe("typed array", async () => {
152
254
  // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
153
255
  assert.deepStrictEqual([...globalThis.uint8], [1, 2, 3]);
154
256
  });
155
- });
257
+ }
258
+ catch (e_10) {
259
+ env_10.error = e_10;
260
+ env_10.hasError = true;
261
+ }
262
+ finally {
263
+ const result_10 = __disposeResources(env_10);
264
+ if (result_10)
265
+ await result_10;
266
+ }
267
+ });
268
+ if (hostSupportsSharedArraySupport) {
156
269
  await test("shared transfer out", async () => {
157
- const [shared_uint8, shared_uint8_copy] = await unsafeEvalAsString(agent, () => {
158
- const sab = new SharedArrayBuffer(3);
159
- const uint8 = new Uint8Array(sab);
160
- uint8.set([1, 2, 3]);
161
- return [uint8, new Uint8Array(uint8.buffer)];
162
- });
163
- assert.ok(shared_uint8.buffer instanceof SharedArrayBuffer);
164
- assert.deepStrictEqual(shared_uint8, new Uint8Array([1, 2, 3]));
165
- assert.strictEqual(shared_uint8.buffer, shared_uint8_copy.buffer);
270
+ const env_11 = { stack: [], error: void 0, hasError: false };
271
+ try {
272
+ const agent = __addDisposableResource(env_11, await ivm.Agent.create(), true);
273
+ const [shared_uint8, shared_uint8_copy] = await unsafeEvalAsString(agent, () => {
274
+ const sab = new SharedArrayBuffer(3);
275
+ const uint8 = new Uint8Array(sab);
276
+ uint8.set([1, 2, 3]);
277
+ return [uint8, new Uint8Array(uint8.buffer)];
278
+ });
279
+ assert.ok(shared_uint8.buffer instanceof SharedArrayBuffer);
280
+ assert.deepStrictEqual(shared_uint8, new Uint8Array([1, 2, 3]));
281
+ assert.strictEqual(shared_uint8.buffer, shared_uint8_copy.buffer);
282
+ }
283
+ catch (e_11) {
284
+ env_11.error = e_11;
285
+ env_11.hasError = true;
286
+ }
287
+ finally {
288
+ const result_11 = __disposeResources(env_11);
289
+ if (result_11)
290
+ await result_11;
291
+ }
166
292
  });
167
293
  }
168
- catch (e_3) {
169
- env_3.error = e_3;
170
- env_3.hasError = true;
171
- }
172
- finally {
173
- const result_3 = __disposeResources(env_3);
174
- if (result_3)
175
- await result_3;
176
- }
177
294
  });
178
295
  //# sourceMappingURL=20.array_buffer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"20.array_buffer.js","sourceRoot":"","sources":["../../test/20.array_buffer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"20.array_buffer.js","sourceRoot":"","sources":["../../test/20.array_buffer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=00.dispose.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"00.dispose.d.ts","sourceRoot":"","sources":["../../../test/90.isolation/00.dispose.ts"],"names":[],"mappings":""}