@thi.ng/wasm-api 2.4.3 → 2.4.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.
- package/package.json +129 -129
- package/CHANGELOG.md +0 -623
package/package.json
CHANGED
|
@@ -1,130 +1,130 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
}
|
|
2
|
+
"name": "@thi.ng/wasm-api",
|
|
3
|
+
"version": "2.4.8",
|
|
4
|
+
"description": "Generic, modular, extensible API bridge and infrastructure for hybrid JS & WebAssembly projects",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"module": "./index.js",
|
|
7
|
+
"typings": "./index.d.ts",
|
|
8
|
+
"sideEffects": false,
|
|
9
|
+
"repository": {
|
|
10
|
+
"type": "git",
|
|
11
|
+
"url": "https://github.com/thi-ng/umbrella.git"
|
|
12
|
+
},
|
|
13
|
+
"homepage": "https://thi.ng/wasm-api",
|
|
14
|
+
"funding": [
|
|
15
|
+
{
|
|
16
|
+
"type": "github",
|
|
17
|
+
"url": "https://github.com/sponsors/postspectacular"
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
"type": "patreon",
|
|
21
|
+
"url": "https://patreon.com/thing_umbrella"
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
"type": "liberapay",
|
|
25
|
+
"url": "https://liberapay.com/thi.ng"
|
|
26
|
+
}
|
|
27
|
+
],
|
|
28
|
+
"author": "Karsten Schmidt (https://thi.ng)",
|
|
29
|
+
"license": "Apache-2.0",
|
|
30
|
+
"scripts": {
|
|
31
|
+
"build": "yarn build:esbuild && yarn build:decl",
|
|
32
|
+
"build:decl": "tsc --declaration --emitDeclarationOnly",
|
|
33
|
+
"build:esbuild": "esbuild --format=esm --platform=neutral --target=es2022 --tsconfig=tsconfig.json --outdir=. src/**/*.ts",
|
|
34
|
+
"clean": "bun ../../tools/src/clean-package.ts",
|
|
35
|
+
"doc": "typedoc --options ../../typedoc.json --out doc src/index.ts",
|
|
36
|
+
"doc:readme": "bun ../../tools/src/module-stats.ts && bun ../../tools/src/readme.ts",
|
|
37
|
+
"pub": "npm publish --access public",
|
|
38
|
+
"test": "zig test zig/tests.zig && yarn test:prepare && bun test",
|
|
39
|
+
"test:build-zig-allocators": "zig build-exe -fno-entry -fstrip --stack 4096 -OReleaseSmall -target wasm32-freestanding --dep wasm-api -Mroot=test/allocators.zig -Mwasm-api=zig/lib.zig --name allocators -rdynamic --import-symbols && mv allocators.wasm test",
|
|
40
|
+
"test:build-zig-custom": "zig build-exe -fno-entry -fstrip --stack 4096 -OReleaseSmall -target wasm32-freestanding --dep wasm-api -Mroot=test/custom.zig -Mwasm-api=zig/lib.zig --name custom -rdynamic --import-symbols && mv custom.wasm test",
|
|
41
|
+
"test:prepare": "yarn test:build-zig-allocators && yarn test:build-zig-custom",
|
|
42
|
+
"tool:tangle": "../../node_modules/.bin/tangle src/**/*.ts"
|
|
43
|
+
},
|
|
44
|
+
"dependencies": {
|
|
45
|
+
"@thi.ng/api": "^8.12.7",
|
|
46
|
+
"@thi.ng/arrays": "^2.13.16",
|
|
47
|
+
"@thi.ng/checks": "^3.7.23",
|
|
48
|
+
"@thi.ng/errors": "^2.5.47",
|
|
49
|
+
"@thi.ng/hex": "^2.3.85",
|
|
50
|
+
"@thi.ng/idgen": "^2.2.81",
|
|
51
|
+
"@thi.ng/logger": "^3.2.6"
|
|
52
|
+
},
|
|
53
|
+
"devDependencies": {
|
|
54
|
+
"esbuild": "^0.25.11",
|
|
55
|
+
"typedoc": "^0.28.14",
|
|
56
|
+
"typescript": "^5.9.3"
|
|
57
|
+
},
|
|
58
|
+
"keywords": [
|
|
59
|
+
"allocator",
|
|
60
|
+
"api",
|
|
61
|
+
"bigint",
|
|
62
|
+
"bindings",
|
|
63
|
+
"browser",
|
|
64
|
+
"c",
|
|
65
|
+
"event",
|
|
66
|
+
"free-list",
|
|
67
|
+
"hex",
|
|
68
|
+
"interop",
|
|
69
|
+
"logger",
|
|
70
|
+
"memory",
|
|
71
|
+
"memory-mapped",
|
|
72
|
+
"modular",
|
|
73
|
+
"polyglot",
|
|
74
|
+
"shared-memory",
|
|
75
|
+
"string",
|
|
76
|
+
"typedarray",
|
|
77
|
+
"typescript",
|
|
78
|
+
"utf8",
|
|
79
|
+
"wasm",
|
|
80
|
+
"zig"
|
|
81
|
+
],
|
|
82
|
+
"publishConfig": {
|
|
83
|
+
"access": "public"
|
|
84
|
+
},
|
|
85
|
+
"browser": {
|
|
86
|
+
"process": false,
|
|
87
|
+
"setTimeout": false
|
|
88
|
+
},
|
|
89
|
+
"engines": {
|
|
90
|
+
"node": ">=18"
|
|
91
|
+
},
|
|
92
|
+
"files": [
|
|
93
|
+
"./*.js",
|
|
94
|
+
"./*.d.ts",
|
|
95
|
+
"include",
|
|
96
|
+
"zig/*.zig"
|
|
97
|
+
],
|
|
98
|
+
"exports": {
|
|
99
|
+
".": {
|
|
100
|
+
"default": "./index.js"
|
|
101
|
+
},
|
|
102
|
+
"./api": {
|
|
103
|
+
"default": "./api.js"
|
|
104
|
+
},
|
|
105
|
+
"./bridge": {
|
|
106
|
+
"default": "./bridge.js"
|
|
107
|
+
},
|
|
108
|
+
"./deftype": {
|
|
109
|
+
"default": "./deftype.js"
|
|
110
|
+
},
|
|
111
|
+
"./memory": {
|
|
112
|
+
"default": "./memory.js"
|
|
113
|
+
},
|
|
114
|
+
"./object-index": {
|
|
115
|
+
"default": "./object-index.js"
|
|
116
|
+
},
|
|
117
|
+
"./pointer": {
|
|
118
|
+
"default": "./pointer.js"
|
|
119
|
+
},
|
|
120
|
+
"./string": {
|
|
121
|
+
"default": "./string.js"
|
|
122
|
+
}
|
|
123
|
+
},
|
|
124
|
+
"thi.ng": {
|
|
125
|
+
"status": "alpha",
|
|
126
|
+
"tag": "wasm",
|
|
127
|
+
"year": 2022
|
|
128
|
+
},
|
|
129
|
+
"gitHead": "d977f819bcafdcb2b24c45f8d01a167fe29fc85a\n"
|
|
130
|
+
}
|
package/CHANGELOG.md
DELETED
|
@@ -1,623 +0,0 @@
|
|
|
1
|
-
# Change Log
|
|
2
|
-
|
|
3
|
-
- **Last updated**: 2025-09-02T13:15:31Z
|
|
4
|
-
- **Generator**: [thi.ng/monopub](https://thi.ng/monopub)
|
|
5
|
-
|
|
6
|
-
All notable changes to this project will be documented in this file.
|
|
7
|
-
Only versions published since **2022-01-01** are listed here.
|
|
8
|
-
Please consult the Git history for older version information.
|
|
9
|
-
See [Conventional Commits](https://conventionalcommits.org/) for commit guidelines.
|
|
10
|
-
|
|
11
|
-
**Note:** Unlisted _patch_ versions only involve non-code or otherwise excluded changes
|
|
12
|
-
and/or version bumps of transitive dependencies.
|
|
13
|
-
|
|
14
|
-
### [2.4.1](https://github.com/thi-ng/umbrella/tree/@thi.ng/wasm-api@2.4.1) (2025-09-02)
|
|
15
|
-
|
|
16
|
-
#### ♻️ Refactoring
|
|
17
|
-
|
|
18
|
-
- update zig `_wasm_allocate()` & `ManagedIndex` ([3e8870c](https://github.com/thi-ng/umbrella/commit/3e8870c))
|
|
19
|
-
- store allocator in `ManagedIndex` due to Zig ArrayList defaulting to unmanaged in 0.15.1
|
|
20
|
-
and managed versions will be removed in future
|
|
21
|
-
- fix alignment param in `_wasm_allocate()`
|
|
22
|
-
|
|
23
|
-
## [2.4.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/wasm-api@2.4.0) (2025-09-01)
|
|
24
|
-
|
|
25
|
-
#### 🚀 Features
|
|
26
|
-
|
|
27
|
-
- update Zig build file for Zig v0.15.1 ([ddb2402](https://github.com/thi-ng/umbrella/commit/ddb2402))
|
|
28
|
-
- set Zig workspace version to 0.15.1
|
|
29
|
-
|
|
30
|
-
### [2.3.12](https://github.com/thi-ng/umbrella/tree/@thi.ng/wasm-api@2.3.12) (2025-03-11)
|
|
31
|
-
|
|
32
|
-
#### ♻️ Refactoring
|
|
33
|
-
|
|
34
|
-
- minor update core lib (Zig v0.14.0) ([ebe1533](https://github.com/thi-ng/umbrella/commit/ebe1533))
|
|
35
|
-
|
|
36
|
-
### [2.3.1](https://github.com/thi-ng/umbrella/tree/@thi.ng/wasm-api@2.3.1) (2025-01-14)
|
|
37
|
-
|
|
38
|
-
#### ♻️ Refactoring
|
|
39
|
-
|
|
40
|
-
- use optional chaining & nullish coalescing ([c5a0a13](https://github.com/thi-ng/umbrella/commit/c5a0a13))
|
|
41
|
-
|
|
42
|
-
## [2.3.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/wasm-api@2.3.0) (2025-01-10)
|
|
43
|
-
|
|
44
|
-
#### 🚀 Features
|
|
45
|
-
|
|
46
|
-
- add WasmTypeKeys helper type ([7e293ce](https://github.com/thi-ng/umbrella/commit/7e293ce))
|
|
47
|
-
|
|
48
|
-
### [2.2.1](https://github.com/thi-ng/umbrella/tree/@thi.ng/wasm-api@2.2.1) (2024-11-10)
|
|
49
|
-
|
|
50
|
-
#### 🩹 Bug fixes
|
|
51
|
-
|
|
52
|
-
- fix defType() property handling ([37bebee](https://github.com/thi-ng/umbrella/commit/37bebee))
|
|
53
|
-
- inject `__base` and `__bytes` getters using `Object.defineProperties()`
|
|
54
|
-
|
|
55
|
-
## [2.2.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/wasm-api@2.2.0) (2024-11-10)
|
|
56
|
-
|
|
57
|
-
#### 🚀 Features
|
|
58
|
-
|
|
59
|
-
- add defType() construction helper ([947e3fc](https://github.com/thi-ng/umbrella/commit/947e3fc))
|
|
60
|
-
|
|
61
|
-
## [2.1.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/wasm-api@2.1.0) (2024-11-09)
|
|
62
|
-
|
|
63
|
-
#### 🚀 Features
|
|
64
|
-
|
|
65
|
-
- add null handling in WasmStringPtr ([e8a094d](https://github.com/thi-ng/umbrella/commit/e8a094d))
|
|
66
|
-
- update logic to interpret as null pointer if addr=0
|
|
67
|
-
- update doc strings
|
|
68
|
-
- add null pointer checks, update tests ([247cbbf](https://github.com/thi-ng/umbrella/commit/247cbbf))
|
|
69
|
-
- update Pointer/Pointer64 deref logic to return undefined for null pointers
|
|
70
|
-
- add `.isNull` getter for all pointer types (incl. `WasmStringPtr`)
|
|
71
|
-
- update tests
|
|
72
|
-
|
|
73
|
-
# [2.0.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/wasm-api@2.0.0) (2024-08-18)
|
|
74
|
-
|
|
75
|
-
#### 🛑 Breaking changes
|
|
76
|
-
|
|
77
|
-
- update WASM module dependency handling ([31f0358](https://github.com/thi-ng/umbrella/commit/31f0358))
|
|
78
|
-
- BREAKING CHANGE: update WASM module dependency handling
|
|
79
|
-
- add `WasmModuleSpec` interface to declare WASM modules with their deps
|
|
80
|
-
- update `WasmBridge` ctor to accept array of module specs
|
|
81
|
-
- add buildModuleGraph() to process dependencies & init modules from specs
|
|
82
|
-
- add/update docstrings
|
|
83
|
-
- update tests
|
|
84
|
-
|
|
85
|
-
#### 🚀 Features
|
|
86
|
-
|
|
87
|
-
- add ObjectIndex.addUnique() ([e79275d](https://github.com/thi-ng/umbrella/commit/e79275d))
|
|
88
|
-
- add MemoryView types ([b621adc](https://github.com/thi-ng/umbrella/commit/b621adc))
|
|
89
|
-
- add internal memory view accessors ([6830337](https://github.com/thi-ng/umbrella/commit/6830337))
|
|
90
|
-
- these accessors are shared by various types generated via [@thi.ng/wasm-api-bindgen](https://github.com/thi-ng/umbrella/tree/main/packages/wasm-api-bindgen)
|
|
91
|
-
and help to drastically cut down filesize of generated code
|
|
92
|
-
- update pkg exports
|
|
93
|
-
- update ObjectIndex ctor, make opts fully optional ([564e0f3](https://github.com/thi-ng/umbrella/commit/564e0f3))
|
|
94
|
-
|
|
95
|
-
#### ♻️ Refactoring
|
|
96
|
-
|
|
97
|
-
- update internal array mem accessors ([b442d92](https://github.com/thi-ng/umbrella/commit/b442d92))
|
|
98
|
-
|
|
99
|
-
## [1.6.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/wasm-api@1.6.0) (2024-06-21)
|
|
100
|
-
|
|
101
|
-
#### 🚀 Features
|
|
102
|
-
|
|
103
|
-
- update build script & readme for Zig v0.13.0 ([cd401b2](https://github.com/thi-ng/umbrella/commit/cd401b2))
|
|
104
|
-
|
|
105
|
-
## [1.5.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/wasm-api@1.5.0) (2024-04-22)
|
|
106
|
-
|
|
107
|
-
#### 🚀 Features
|
|
108
|
-
|
|
109
|
-
- update build script for zig v0.12.0 (incomplete) ([99a1916](https://github.com/thi-ng/umbrella/commit/99a1916))
|
|
110
|
-
- store existing script as build-v0.11.zig
|
|
111
|
-
- update build script for zig v0.12.0 (incomplete) ([d4fcc54](https://github.com/thi-ng/umbrella/commit/d4fcc54))
|
|
112
|
-
- store existing script as build-v0.11.zig
|
|
113
|
-
|
|
114
|
-
#### 🩹 Bug fixes
|
|
115
|
-
|
|
116
|
-
- re-add -rdynamic flag in build.zig ([f509d1e](https://github.com/thi-ng/umbrella/commit/f509d1e))
|
|
117
|
-
|
|
118
|
-
#### ♻️ Refactoring
|
|
119
|
-
|
|
120
|
-
- minor zig v0.12.0 updates ([4a0751c](https://github.com/thi-ng/umbrella/commit/4a0751c))
|
|
121
|
-
- minor zig v0.12.0 updates ([e3e074d](https://github.com/thi-ng/umbrella/commit/e3e074d))
|
|
122
|
-
|
|
123
|
-
### [1.4.69](https://github.com/thi-ng/umbrella/tree/@thi.ng/wasm-api@1.4.69) (2024-04-20)
|
|
124
|
-
|
|
125
|
-
#### ♻️ Refactoring
|
|
126
|
-
|
|
127
|
-
- update type usage ([ab27740](https://github.com/thi-ng/umbrella/commit/ab27740))
|
|
128
|
-
|
|
129
|
-
### [1.4.54](https://github.com/thi-ng/umbrella/tree/@thi.ng/wasm-api@1.4.54) (2024-02-22)
|
|
130
|
-
|
|
131
|
-
#### ♻️ Refactoring
|
|
132
|
-
|
|
133
|
-
- update all `node:*` imports ([c71a526](https://github.com/thi-ng/umbrella/commit/c71a526))
|
|
134
|
-
|
|
135
|
-
### [1.4.32](https://github.com/thi-ng/umbrella/tree/@thi.ng/wasm-api@1.4.32) (2023-11-09)
|
|
136
|
-
|
|
137
|
-
#### ♻️ Refactoring
|
|
138
|
-
|
|
139
|
-
- update all tests (packages T-Z) ([020ef6c](https://github.com/thi-ng/umbrella/commit/020ef6c))
|
|
140
|
-
|
|
141
|
-
### [1.4.13](https://github.com/thi-ng/umbrella/tree/@thi.ng/wasm-api@1.4.13) (2023-08-04)
|
|
142
|
-
|
|
143
|
-
#### ♻️ Refactoring
|
|
144
|
-
|
|
145
|
-
- update INotify impl ([07e884f](https://github.com/thi-ng/umbrella/commit/07e884f))
|
|
146
|
-
- update INotify impls ([cbdc527](https://github.com/thi-ng/umbrella/commit/cbdc527))
|
|
147
|
-
|
|
148
|
-
### [1.4.12](https://github.com/thi-ng/umbrella/tree/@thi.ng/wasm-api@1.4.12) (2023-07-14)
|
|
149
|
-
|
|
150
|
-
#### ♻️ Refactoring
|
|
151
|
-
|
|
152
|
-
- update zig build script ([ac0f375](https://github.com/thi-ng/umbrella/commit/ac0f375))
|
|
153
|
-
- use non-deprecated `std.Build.Step.Compile` type
|
|
154
|
-
|
|
155
|
-
### [1.4.10](https://github.com/thi-ng/umbrella/tree/@thi.ng/wasm-api@1.4.10) (2023-06-29)
|
|
156
|
-
|
|
157
|
-
#### 🩹 Bug fixes
|
|
158
|
-
|
|
159
|
-
- temporarily disable `WasmLibOpts.out` due to Zig build updates ([cf63c04](https://github.com/thi-ng/umbrella/commit/cf63c04))
|
|
160
|
-
|
|
161
|
-
#### ♻️ Refactoring
|
|
162
|
-
|
|
163
|
-
- Zig v0.11-dev syntax updates ([83a1c7b](https://github.com/thi-ng/umbrella/commit/83a1c7b))
|
|
164
|
-
|
|
165
|
-
## [1.4.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/wasm-api@1.4.0) (2023-02-17)
|
|
166
|
-
|
|
167
|
-
#### 🚀 Features
|
|
168
|
-
|
|
169
|
-
- add build script for Zig v0.11.0-dev ([4c8abcb](https://github.com/thi-ng/umbrella/commit/4c8abcb))
|
|
170
|
-
|
|
171
|
-
#### ♻️ Refactoring
|
|
172
|
-
|
|
173
|
-
- update build-v0.11.zig build script ([fe7c24c](https://github.com/thi-ng/umbrella/commit/fe7c24c))
|
|
174
|
-
- single source of truth for core module names
|
|
175
|
-
- rename .mode => .optimize (as per new zig nomenclature)
|
|
176
|
-
- add autodoc generation option
|
|
177
|
-
|
|
178
|
-
## [1.3.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/wasm-api@1.3.0) (2023-02-05)
|
|
179
|
-
|
|
180
|
-
#### 🚀 Features
|
|
181
|
-
|
|
182
|
-
- add ManagedIndex.initCapacity() ([788dfa2](https://github.com/thi-ng/umbrella/commit/788dfa2))
|
|
183
|
-
- add WasmType.instanceArray(), add docs ([2adf65f](https://github.com/thi-ng/umbrella/commit/2adf65f))
|
|
184
|
-
|
|
185
|
-
## [1.2.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/wasm-api@1.2.0) (2022-12-01)
|
|
186
|
-
|
|
187
|
-
#### 🚀 Features
|
|
188
|
-
|
|
189
|
-
- add build script for user projects ([7164f5e](https://github.com/thi-ng/umbrella/commit/7164f5e))
|
|
190
|
-
|
|
191
|
-
## [1.1.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/wasm-api@1.1.0) (2022-11-28)
|
|
192
|
-
|
|
193
|
-
#### 🚀 Features
|
|
194
|
-
|
|
195
|
-
- update panic handler, add event support ([ab940d9](https://github.com/thi-ng/umbrella/commit/ab940d9))
|
|
196
|
-
- update panic handler to broadcast event w/ panic message
|
|
197
|
-
- only throw Panic error if no listeners could be notified
|
|
198
|
-
- add `EVENT_PANIC` constant
|
|
199
|
-
|
|
200
|
-
# [1.0.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/wasm-api@1.0.0) (2022-11-23)
|
|
201
|
-
|
|
202
|
-
#### 🛑 Breaking changes
|
|
203
|
-
|
|
204
|
-
- remove codegen parts ([188f56b](https://github.com/thi-ng/umbrella/commit/188f56b))
|
|
205
|
-
- BREAKING CHANGE: all codegen parts migrated to new pkg: [@thi.ng/wasm-api-bindgen](https://github.com/thi-ng/umbrella/tree/main/packages/wasm-api-bindgen)
|
|
206
|
-
- remove all obsolete types, deps & files
|
|
207
|
-
- see [2c02dc674](https://github.com/thi-ng/umbrella/commit/2c02dc674) for start of new pkg
|
|
208
|
-
|
|
209
|
-
#### 🚀 Features
|
|
210
|
-
|
|
211
|
-
- add hexdump methods ([95c91ed](https://github.com/thi-ng/umbrella/commit/95c91ed))
|
|
212
|
-
- add printHexdump()/hexdump()
|
|
213
|
-
- add/update printHexdump() ([65efaf4](https://github.com/thi-ng/umbrella/commit/65efaf4))
|
|
214
|
-
- migrate printHexdump() to WASM core API
|
|
215
|
-
- add WasmStringSlice.setAlloc() ([b0f6f9d](https://github.com/thi-ng/umbrella/commit/b0f6f9d))
|
|
216
|
-
- add function pointer & i/usize codegen support ([2e67bc5](https://github.com/thi-ng/umbrella/commit/2e67bc5))
|
|
217
|
-
- add FuncPointer top-level type for codegen
|
|
218
|
-
- add isize/usize type aliases
|
|
219
|
-
- extend/refactor all codegens
|
|
220
|
-
- update WasmTarget & presets
|
|
221
|
-
- add opaque pointer support ([83d4b94](https://github.com/thi-ng/umbrella/commit/83d4b94))
|
|
222
|
-
- add optional pointer support ([92a28e7](https://github.com/thi-ng/umbrella/commit/92a28e7))
|
|
223
|
-
- update ZIG codegen
|
|
224
|
-
- add codegen IDs, conditionally skip code generation ([7146cae](https://github.com/thi-ng/umbrella/commit/7146cae))
|
|
225
|
-
- add ICodeGen.id & update codegens
|
|
226
|
-
- add TopLevelType.skip option to suppress generation for some langs
|
|
227
|
-
- update generateTypes()
|
|
228
|
-
- update & rename pkg (formerly wasm-api-timer) ([668f3dd](https://github.com/thi-ng/umbrella/commit/668f3dd))
|
|
229
|
-
- rename types form `TimerXXX` => `ScheduleXXX`
|
|
230
|
-
- add WASM auto-initializer hook
|
|
231
|
-
- update readmes
|
|
232
|
-
- update string handling & default string type ([86dee41](https://github.com/thi-ng/umbrella/commit/86dee41))
|
|
233
|
-
- update WasmStringSlice & WasmStringPtr
|
|
234
|
-
- update .setAlloc() impls
|
|
235
|
-
- update Zig code gen to use `[:0]const u8` as default string format
|
|
236
|
-
for easier interop and compatibility w/ `extern struct`s
|
|
237
|
-
- update generated types & string handling ([686f867](https://github.com/thi-ng/umbrella/commit/686f867))
|
|
238
|
-
- switch to extern structs for generated types
|
|
239
|
-
- switch to zero-terminated pointers for string values
|
|
240
|
-
- update/rename/simplify API methods, remove obsolete
|
|
241
|
-
- fix string attrib handling/alloc sizes
|
|
242
|
-
- add JSON schema for codegen typedefs ([1291c5c](https://github.com/thi-ng/umbrella/commit/1291c5c))
|
|
243
|
-
- switch to `extern struct/union` only, add slice polyfills ([ca65edc](https://github.com/thi-ng/umbrella/commit/ca65edc))
|
|
244
|
-
- [zig] emit only `extern` structs/unions
|
|
245
|
-
- [zig] remove (somewhat obsolete) support for packed structs/unions (KISS)
|
|
246
|
-
- remove `.tag` option from `Struct`/`Union`
|
|
247
|
-
- [zig/c] update codegens preludes
|
|
248
|
-
- add declarations of `XXSlice`/`XXMutSlice` type aliases
|
|
249
|
-
- rename `Field.tag`: `scalar` => `single`
|
|
250
|
-
- [ts] add `Field.skip` to suppress codegen for individual fields
|
|
251
|
-
- update JSON schema
|
|
252
|
-
- set default `string` impl to `ptr` (previously `slice`)
|
|
253
|
-
- add internal `clasifyField()` helper to simplify conditionals in codegens
|
|
254
|
-
- add/update various internal type predicates
|
|
255
|
-
- update CodeGenOpts.pre/post to support string arrays
|
|
256
|
-
- use new backend in all codegens ([33fc814](https://github.com/thi-ng/umbrella/commit/33fc814))
|
|
257
|
-
- update slice handling using auto-generated wrapper structs
|
|
258
|
-
- add support for multi-item pointers
|
|
259
|
-
- add support for enum pointers/arrays/slices
|
|
260
|
-
- add slice types to wasmapi.h & types.zig
|
|
261
|
-
- add more cases to FieldClass
|
|
262
|
-
- update classifyField()
|
|
263
|
-
- update all codegens to use new classifier based code templates
|
|
264
|
-
- add/update codegen tests/fixtures
|
|
265
|
-
- add Pointer64 (still unused) ([f1eef25](https://github.com/thi-ng/umbrella/commit/f1eef25))
|
|
266
|
-
|
|
267
|
-
#### 🩹 Bug fixes
|
|
268
|
-
|
|
269
|
-
- update CLI type checks ([1d4cc59](https://github.com/thi-ng/umbrella/commit/1d4cc59))
|
|
270
|
-
- re-add missing optional type `?` prefix [zig] ([3e3b4cd](https://github.com/thi-ng/umbrella/commit/3e3b4cd))
|
|
271
|
-
- fix user code handling in TS codegen prelude ([c435caa](https://github.com/thi-ng/umbrella/commit/c435caa))
|
|
272
|
-
|
|
273
|
-
#### ♻️ Refactoring
|
|
274
|
-
|
|
275
|
-
- update WasmStringSlice.setSlice() ([f278cfd](https://github.com/thi-ng/umbrella/commit/f278cfd))
|
|
276
|
-
- rename _printStr0() => printStrZ() ([666546c](https://github.com/thi-ng/umbrella/commit/666546c))
|
|
277
|
-
- update/extract C types & core API ([9eb827e](https://github.com/thi-ng/umbrella/commit/9eb827e))
|
|
278
|
-
- migrate JSON schema, update readme & pkg ([a6d9c3a](https://github.com/thi-ng/umbrella/commit/a6d9c3a))
|
|
279
|
-
|
|
280
|
-
### [0.18.1](https://github.com/thi-ng/umbrella/tree/@thi.ng/wasm-api@0.18.1) (2022-11-01)
|
|
281
|
-
|
|
282
|
-
#### 🩹 Bug fixes
|
|
283
|
-
|
|
284
|
-
- fix TS code gen array mem mapping ([a0e7132](https://github.com/thi-ng/umbrella/commit/a0e7132))
|
|
285
|
-
- use correct type size for array mem mapping
|
|
286
|
-
- update test fixtures
|
|
287
|
-
|
|
288
|
-
## [0.18.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/wasm-api@0.18.0) (2022-10-31)
|
|
289
|
-
|
|
290
|
-
#### 🚀 Features
|
|
291
|
-
|
|
292
|
-
- update WasmBridge & child API module specs ([6773494](https://github.com/thi-ng/umbrella/commit/6773494))
|
|
293
|
-
- update IWasmAPI interface to declare import ID & module dependencies
|
|
294
|
-
- update WasmBridge ctor (array instead of object of sub-modules)
|
|
295
|
-
- update WasmBridge.init() to initialize modules in dependency order
|
|
296
|
-
- replace illegalArgs() with assert()
|
|
297
|
-
- add [@thi.ng/arrays](https://github.com/thi-ng/umbrella/tree/main/packages/arrays) as dependency, update pkg
|
|
298
|
-
|
|
299
|
-
### [0.17.3](https://github.com/thi-ng/umbrella/tree/@thi.ng/wasm-api@0.17.3) (2022-10-31)
|
|
300
|
-
|
|
301
|
-
#### ♻️ Refactoring
|
|
302
|
-
|
|
303
|
-
- restructure/rename zig files, update readdme ([c63ca10](https://github.com/thi-ng/umbrella/commit/c63ca10))
|
|
304
|
-
- enforce uniform project structure for all `[@thi.ng/wasm-api-](https://github.com/thi-ng/umbrella/tree/main/packages/wasm-api-)*` packages
|
|
305
|
-
- rename /zig/wasmapi.zig => /zig/lib.zig
|
|
306
|
-
- update readme w/ further info
|
|
307
|
-
|
|
308
|
-
### [0.17.1](https://github.com/thi-ng/umbrella/tree/@thi.ng/wasm-api@0.17.1) (2022-10-30)
|
|
309
|
-
|
|
310
|
-
#### ♻️ Refactoring
|
|
311
|
-
|
|
312
|
-
- update zig codegen to ignore uppercase enum config ([3258f91](https://github.com/thi-ng/umbrella/commit/3258f91))
|
|
313
|
-
- idiomatic zig enums are lowercase
|
|
314
|
-
- update config docs
|
|
315
|
-
|
|
316
|
-
## [0.17.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/wasm-api@0.17.0) (2022-10-29)
|
|
317
|
-
|
|
318
|
-
#### 🚀 Features
|
|
319
|
-
|
|
320
|
-
- update default value format & handling ([c7752fb](https://github.com/thi-ng/umbrella/commit/c7752fb))
|
|
321
|
-
- update Field.default to support lang-specific alts
|
|
322
|
-
- add defaultValue() helper
|
|
323
|
-
- update zig codegen
|
|
324
|
-
|
|
325
|
-
#### 🩹 Bug fixes
|
|
326
|
-
|
|
327
|
-
- fix idempotence checks for self-referential types ([2c3f670](https://github.com/thi-ng/umbrella/commit/2c3f670))
|
|
328
|
-
- update prepareType()
|
|
329
|
-
|
|
330
|
-
## [0.16.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/wasm-api@0.16.0) (2022-10-28)
|
|
331
|
-
|
|
332
|
-
#### 🚀 Features
|
|
333
|
-
|
|
334
|
-
- update docstring & user code codegen config ([68694ba](https://github.com/thi-ng/umbrella/commit/68694ba))
|
|
335
|
-
- allow doc strings & user codes to be given as string array (lines)
|
|
336
|
-
- add InjectedBody type to support multiple injection sites
|
|
337
|
-
(e.g. TS interface declarations vs. wrapper impls)
|
|
338
|
-
- update TS & Zig codegens
|
|
339
|
-
- add internal ensureLines() helper
|
|
340
|
-
- update IWasmMemoryAccess & impls ([bb8a3ca](https://github.com/thi-ng/umbrella/commit/bb8a3ca))
|
|
341
|
-
- add MemorySlice tuple to describe a memory region
|
|
342
|
-
- update allocate() & free() to use MemorySlice, migrate to IWasmMemoryAccess
|
|
343
|
-
- migrate growMemory() to IWasmMemoryAccess
|
|
344
|
-
- add MemorySlice to default imports in TS codegen
|
|
345
|
-
- update TS docstring generator ([5a060b6](https://github.com/thi-ng/umbrella/commit/5a060b6))
|
|
346
|
-
- include native/WASM type in docstring (use Zig type sigs)
|
|
347
|
-
- update ensureLines() helper
|
|
348
|
-
- update test fixtures
|
|
349
|
-
|
|
350
|
-
#### 🩹 Bug fixes
|
|
351
|
-
|
|
352
|
-
- fix ensureLines(), update tests & fixtures ([f8a4668](https://github.com/thi-ng/umbrella/commit/f8a4668))
|
|
353
|
-
|
|
354
|
-
## [0.15.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/wasm-api@0.15.0) (2022-10-26)
|
|
355
|
-
|
|
356
|
-
#### 🚀 Features
|
|
357
|
-
|
|
358
|
-
- add WasmTarget codegen opt & usize support ([62c049b](https://github.com/thi-ng/umbrella/commit/62c049b))
|
|
359
|
-
- add/update codegen alignment logic ([9c19ad9](https://github.com/thi-ng/umbrella/commit/9c19ad9))
|
|
360
|
-
- add AlignmentStrategy & impls
|
|
361
|
-
- update alignOf(), sizeOf(), prepareType()
|
|
362
|
-
- extract DEFAULT_CODEGEN_OPTS
|
|
363
|
-
- add Struct.align config option
|
|
364
|
-
- add codegen support for union types ([bbc1f98](https://github.com/thi-ng/umbrella/commit/bbc1f98))
|
|
365
|
-
- add Union type, update TopLevelType
|
|
366
|
-
- update all codegens (C,TS,Zig)
|
|
367
|
-
- update alignOf(), sizeOf()
|
|
368
|
-
- update selectAlignment()
|
|
369
|
-
- import ManagedIndex, migrate Zig API ([d8bb3ee](https://github.com/thi-ng/umbrella/commit/d8bb3ee))
|
|
370
|
-
- migrate ManagedIndex from [@thi.ng/wasm-api-dom](https://github.com/thi-ng/umbrella/tree/main/packages/wasm-api-dom)
|
|
371
|
-
- move all Zig sources from /include => /zig
|
|
372
|
-
- update pkg
|
|
373
|
-
|
|
374
|
-
#### 🩹 Bug fixes
|
|
375
|
-
|
|
376
|
-
- fix padding in Zig packed structs ([8d70cf6](https://github.com/thi-ng/umbrella/commit/8d70cf6))
|
|
377
|
-
- since packed structs can't contain `[n]u8` types,
|
|
378
|
-
generate padding as potentially multiple `uXXX` fields
|
|
379
|
-
- fix i64/u64 handling in sizeof() ([825add3](https://github.com/thi-ng/umbrella/commit/825add3))
|
|
380
|
-
- update CLI wrapper to allow unions ([904716c](https://github.com/thi-ng/umbrella/commit/904716c))
|
|
381
|
-
|
|
382
|
-
#### ♻️ Refactoring
|
|
383
|
-
|
|
384
|
-
- minor updates C & Zig codegens ([a94e1cc](https://github.com/thi-ng/umbrella/commit/a94e1cc))
|
|
385
|
-
- rename types, use predicates ([4148e1e](https://github.com/thi-ng/umbrella/commit/4148e1e))
|
|
386
|
-
- rename StructField => Field
|
|
387
|
-
- update codegens to use more predicates instead of inline checks
|
|
388
|
-
|
|
389
|
-
## [0.14.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/wasm-api@0.14.0) (2022-10-17)
|
|
390
|
-
|
|
391
|
-
#### 🚀 Features
|
|
392
|
-
|
|
393
|
-
- update IWasmMemoryAccess ([28bfff6](https://github.com/thi-ng/umbrella/commit/28bfff6))
|
|
394
|
-
- add IWasmMemoryAccess.ensureMemory()
|
|
395
|
-
- update WasmBridge.setString() to ensure memory
|
|
396
|
-
- ensure memory in WasmStringSlice/Ptr ([c55c6f0](https://github.com/thi-ng/umbrella/commit/c55c6f0))
|
|
397
|
-
- add Zig Slice & String wrappers ([28d057e](https://github.com/thi-ng/umbrella/commit/28d057e))
|
|
398
|
-
- allows expressing & converting slices for `extern struct`s
|
|
399
|
-
- add ptrCast() zig helper ([72a9406](https://github.com/thi-ng/umbrella/commit/72a9406))
|
|
400
|
-
|
|
401
|
-
## [0.13.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/wasm-api@0.13.0) (2022-10-04)
|
|
402
|
-
|
|
403
|
-
#### 🚀 Features
|
|
404
|
-
|
|
405
|
-
- add WasmStringSlice.setSlice() ([50cc798](https://github.com/thi-ng/umbrella/commit/50cc798))
|
|
406
|
-
- update C11 code gen ([ff8037f](https://github.com/thi-ng/umbrella/commit/ff8037f))
|
|
407
|
-
- add `#ifdef __cplusplus` guards to pre/post
|
|
408
|
-
|
|
409
|
-
#### ⏱ Performance improvements
|
|
410
|
-
|
|
411
|
-
- lazy eval log message args ([3e13397](https://github.com/thi-ng/umbrella/commit/3e13397))
|
|
412
|
-
|
|
413
|
-
## [0.12.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/wasm-api@0.12.0) (2022-10-03)
|
|
414
|
-
|
|
415
|
-
#### 🚀 Features
|
|
416
|
-
|
|
417
|
-
- add doc string word wrapping ([c0b8e15](https://github.com/thi-ng/umbrella/commit/c0b8e15))
|
|
418
|
-
- update prefixLines(), add target line width arg
|
|
419
|
-
- update ICodeGen & CodeGenOpts
|
|
420
|
-
- update all codegens
|
|
421
|
-
- update deps
|
|
422
|
-
- add default value support for Zig codegen ([3c37ae7](https://github.com/thi-ng/umbrella/commit/3c37ae7))
|
|
423
|
-
- add ReadonlyWasmString, update impls ([240a148](https://github.com/thi-ng/umbrella/commit/240a148))
|
|
424
|
-
- add support for sentinels & user type body injection ([d240046](https://github.com/thi-ng/umbrella/commit/d240046))
|
|
425
|
-
- update sizeOf() to include sentinels
|
|
426
|
-
- add TopLevelType.body for extra user code
|
|
427
|
-
- update Zig codegen to:
|
|
428
|
-
- support array/slice sentinels
|
|
429
|
-
- add optional user code injection
|
|
430
|
-
- add `std` import header
|
|
431
|
-
- update CLI ([98d2414](https://github.com/thi-ng/umbrella/commit/98d2414))
|
|
432
|
-
- add optional type analytics JSON output
|
|
433
|
-
- add support for including user code via `@`-file references
|
|
434
|
-
- update config `@`-file refs to resolve relative to config file
|
|
435
|
-
|
|
436
|
-
#### 🩹 Bug fixes
|
|
437
|
-
|
|
438
|
-
- minor fix word wrap line width ([053ba0f](https://github.com/thi-ng/umbrella/commit/053ba0f))
|
|
439
|
-
- update zig panic handler sig for latest zig master version ([cb51bf6](https://github.com/thi-ng/umbrella/commit/cb51bf6))
|
|
440
|
-
- see https://github.com/ziglang/zig/commit/694fab484805088030fa36efe3e6b6e7ee385852
|
|
441
|
-
|
|
442
|
-
## [0.11.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/wasm-api@0.11.0) (2022-09-21)
|
|
443
|
-
|
|
444
|
-
#### 🚀 Features
|
|
445
|
-
|
|
446
|
-
- update core API & bindings ([b185ea5](https://github.com/thi-ng/umbrella/commit/b185ea5))
|
|
447
|
-
- add _panic(), timer(), epoch() core API fns
|
|
448
|
-
- update printI/U64() fns to accept bigint
|
|
449
|
-
- update C & Zig bindings
|
|
450
|
-
- update tests
|
|
451
|
-
- add clang-format
|
|
452
|
-
- add WasmString wrappers ([18d8fcb](https://github.com/thi-ng/umbrella/commit/18d8fcb))
|
|
453
|
-
- still unused (to be added to TS codegen)
|
|
454
|
-
- WasmString codegen integration ([97fc318](https://github.com/thi-ng/umbrella/commit/97fc318))
|
|
455
|
-
- update TS codegen to wrap strings using new `WasmString` or `WasmStringPtr`
|
|
456
|
-
- update global codegen options handling, now passed to each codegen
|
|
457
|
-
- update TSOpts & ZigOpts to include custom pre/post
|
|
458
|
-
- major update codegens, string & pointer handling ([4f02295](https://github.com/thi-ng/umbrella/commit/4f02295))
|
|
459
|
-
- update/fix string wrappers (`WasmStringSlice/Ptr`)
|
|
460
|
-
- add generic `Pointer` wrapper
|
|
461
|
-
- add `const` field type support
|
|
462
|
-
- add applyIndents() formatter fn, simplify all codegens
|
|
463
|
-
- major update TS & Zig codegens
|
|
464
|
-
- update CodeGenOpts ([b9fd7ff](https://github.com/thi-ng/umbrella/commit/b9fd7ff))
|
|
465
|
-
- update TS codegen (array pointers) ([30360f2](https://github.com/thi-ng/umbrella/commit/30360f2))
|
|
466
|
-
- add C11 support, update codegens & config ([590311e](https://github.com/thi-ng/umbrella/commit/590311e))
|
|
467
|
-
- add preliminary C11 codegen
|
|
468
|
-
- add optional `tag` field for structs (extern/packed)
|
|
469
|
-
- add support for auto-labeled padding fields
|
|
470
|
-
- i.e. defined via unnamed fields with `pad` value
|
|
471
|
-
- move debug config option to global `CodeGenOpts`
|
|
472
|
-
- update codegen CLI ([435ad2b](https://github.com/thi-ng/umbrella/commit/435ad2b))
|
|
473
|
-
- add C11 support
|
|
474
|
-
- add support for padding fields (in `validateTypeRefs()`)
|
|
475
|
-
- add CLI arg for forcing string type impl
|
|
476
|
-
- update deps
|
|
477
|
-
- update/fix codegens & config ([87def23](https://github.com/thi-ng/umbrella/commit/87def23))
|
|
478
|
-
- add global `CodeGenOpts.uppercaseEnums` option (migrate from TSOpts)
|
|
479
|
-
- set `i32` as enum default tag (for C compatibility)
|
|
480
|
-
- update C11 codegen, add `typePrefix` option
|
|
481
|
-
- fix C11 enum codegen (use `typedef enum`)
|
|
482
|
-
- add internal enumName() helper
|
|
483
|
-
- minor updates Zig codegen
|
|
484
|
-
- refactor CodeGenOpts, update CLI config handling ([fa2e30f](https://github.com/thi-ng/umbrella/commit/fa2e30f))
|
|
485
|
-
- extract CodeGenOptsBase interface for common pre/post config
|
|
486
|
-
- update CLI config loading to support loading pre/post contents
|
|
487
|
-
from separate files (if value given as `@path/to-file.ext`)
|
|
488
|
-
|
|
489
|
-
## [0.10.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/wasm-api@0.10.0) (2022-08-24)
|
|
490
|
-
|
|
491
|
-
#### 🚀 Features
|
|
492
|
-
|
|
493
|
-
- add events, update allocator handling ([89416b1](https://github.com/thi-ng/umbrella/commit/89416b1))
|
|
494
|
-
- add INotify impl for WasmBridge
|
|
495
|
-
- emit event when WASM memory has changed (e.g. to recreate user views)
|
|
496
|
-
- reverse logic so that NO allocator is used by default and instead must
|
|
497
|
-
be explicitly enabled (rather than disabled)
|
|
498
|
-
- update Zig & C bindings
|
|
499
|
-
- add/update docstrings
|
|
500
|
-
|
|
501
|
-
## [0.9.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/wasm-api@0.9.0) (2022-08-23)
|
|
502
|
-
|
|
503
|
-
#### 🚀 Features
|
|
504
|
-
|
|
505
|
-
- add debug() core API function ([ca01978](https://github.com/thi-ng/umbrella/commit/ca01978))
|
|
506
|
-
|
|
507
|
-
#### 🩹 Bug fixes
|
|
508
|
-
|
|
509
|
-
- update setString() return value ([116dd0b](https://github.com/thi-ng/umbrella/commit/116dd0b))
|
|
510
|
-
- always only return num bytes written w/o sentinel
|
|
511
|
-
|
|
512
|
-
## [0.8.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/wasm-api@0.8.0) (2022-08-16)
|
|
513
|
-
|
|
514
|
-
#### 🚀 Features
|
|
515
|
-
|
|
516
|
-
- add preliminary string handling support ([3da4efe](https://github.com/thi-ng/umbrella/commit/3da4efe))
|
|
517
|
-
- update/rename IWasmMemoryAccess (add string getter/setter)
|
|
518
|
-
- update StructField.type (add `string`)
|
|
519
|
-
- add CodeGenOpts.stringType option
|
|
520
|
-
- update codegen fns
|
|
521
|
-
- update TS & Zig codegen impls
|
|
522
|
-
|
|
523
|
-
## [0.7.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/wasm-api@0.7.0) (2022-08-15)
|
|
524
|
-
|
|
525
|
-
#### 🚀 Features
|
|
526
|
-
|
|
527
|
-
- update helper predicates ([65b23d4](https://github.com/thi-ng/umbrella/commit/65b23d4))
|
|
528
|
-
- update TSOpts & TS codegen ([4f6bbbf](https://github.com/thi-ng/umbrella/commit/4f6bbbf))
|
|
529
|
-
- add `uppercaseEnum` option to force UC enum IDs
|
|
530
|
-
- add CLI wrapper for codegens ([683a560](https://github.com/thi-ng/umbrella/commit/683a560))
|
|
531
|
-
|
|
532
|
-
#### 🩹 Bug fixes
|
|
533
|
-
|
|
534
|
-
- correct TS __mapArray codegen ([289b137](https://github.com/thi-ng/umbrella/commit/289b137))
|
|
535
|
-
- allow signed ints for enum tags ([78d0822](https://github.com/thi-ng/umbrella/commit/78d0822))
|
|
536
|
-
|
|
537
|
-
## [0.6.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/wasm-api@0.6.0) (2022-08-15)
|
|
538
|
-
|
|
539
|
-
#### 🚀 Features
|
|
540
|
-
|
|
541
|
-
- update allocate/free() fns, update Zig core API ([8a55989](https://github.com/thi-ng/umbrella/commit/8a55989))
|
|
542
|
-
- add _wasm_free() Zig impl
|
|
543
|
-
- add printFmt() Zig fn
|
|
544
|
-
- update WasmBridge.allocate() (add clear option)
|
|
545
|
-
- update WasmBridge.free()
|
|
546
|
-
- ensure memory in WasmBridge.getString()
|
|
547
|
-
- add/update docstrings
|
|
548
|
-
- add bindings code generator framework ([17ee06f](https://github.com/thi-ng/umbrella/commit/17ee06f))
|
|
549
|
-
- add/update deps
|
|
550
|
-
- add preliminary codegens for Zig & TS
|
|
551
|
-
- add supporting types & utils
|
|
552
|
-
- add generateTypes() codegen facade fn
|
|
553
|
-
- update codegens, add opts, fix alignments ([5c1fec5](https://github.com/thi-ng/umbrella/commit/5c1fec5))
|
|
554
|
-
- add global CodeGenOpts
|
|
555
|
-
- update generateTypes() to consider new opts
|
|
556
|
-
- add global USIZE type (for pointer sizes & codegens)
|
|
557
|
-
- add options for Zig codegen (extra debug helpers)
|
|
558
|
-
- simplify TS codegen
|
|
559
|
-
- fix sizeOf() for struct fields
|
|
560
|
-
- make prepareType() idempotent
|
|
561
|
-
- add C11 header/include file, update WasmBridge ([a67dc00](https://github.com/thi-ng/umbrella/commit/a67dc00))
|
|
562
|
-
- migrate headers/includes to /include
|
|
563
|
-
- rename "core" import section => "wasmapi"
|
|
564
|
-
- rename WasmBridge.core => WasmBridge.api
|
|
565
|
-
- update pkg file
|
|
566
|
-
|
|
567
|
-
#### ♻️ Refactoring
|
|
568
|
-
|
|
569
|
-
- extract WasmMemViews interface, update test WASM ([4c73e65](https://github.com/thi-ng/umbrella/commit/4c73e65))
|
|
570
|
-
|
|
571
|
-
## [0.5.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/wasm-api@0.5.0) (2022-08-08)
|
|
572
|
-
|
|
573
|
-
#### 🚀 Features
|
|
574
|
-
|
|
575
|
-
- add memory allocation ([980c1f2](https://github.com/thi-ng/umbrella/commit/980c1f2))
|
|
576
|
-
- add WasmBridge.allocate()/free()
|
|
577
|
-
- add WasmBridge.growMemory()
|
|
578
|
-
- extract WasmBridge.ensureMemory()
|
|
579
|
-
- update WasmExports
|
|
580
|
-
- update Zig bindings (configurable allocator, GPA as default)
|
|
581
|
-
|
|
582
|
-
## [0.4.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/wasm-api@0.4.0) (2022-08-07)
|
|
583
|
-
|
|
584
|
-
#### 🚀 Features
|
|
585
|
-
|
|
586
|
-
- use named import objects ([4965f20](https://github.com/thi-ng/umbrella/commit/4965f20))
|
|
587
|
-
- switch to name import objects to avoid merging into flat namespace
|
|
588
|
-
- update externs in core.zig
|
|
589
|
-
- update docstrings
|
|
590
|
-
|
|
591
|
-
## [0.3.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/wasm-api@0.3.0) (2022-08-04)
|
|
592
|
-
|
|
593
|
-
#### 🚀 Features
|
|
594
|
-
|
|
595
|
-
- major update WasmBridge, add types ([47aa222](https://github.com/thi-ng/umbrella/commit/47aa222))
|
|
596
|
-
- add WasmExports base interface
|
|
597
|
-
- add generics for WasmBridge & IWasmAPI
|
|
598
|
-
- update WasmBridge.init() arg (full WASM exports, not just mem)
|
|
599
|
-
- add WasmBridge.exports field to store WASM module exports
|
|
600
|
-
- add naming conflict check in WasmBridge.getImports()
|
|
601
|
-
- add WasmBridge.instantiate, add/update accessors ([0698bae](https://github.com/thi-ng/umbrella/commit/0698bae))
|
|
602
|
-
- add WasmBridge.instantiate() boilerplate
|
|
603
|
-
- add setters for typed scalars & arrays
|
|
604
|
-
- rename derefXX() => getXX() getters
|
|
605
|
-
- update tests
|
|
606
|
-
- add i64/u64 support/accessors ([768c8bd](https://github.com/thi-ng/umbrella/commit/768c8bd))
|
|
607
|
-
|
|
608
|
-
## [0.2.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/wasm-api@0.2.0) (2022-08-01)
|
|
609
|
-
|
|
610
|
-
#### 🚀 Features
|
|
611
|
-
|
|
612
|
-
- fix zig slice pointer handling, use named child modules ([bd7905a](https://github.com/thi-ng/umbrella/commit/bd7905a))
|
|
613
|
-
- major update ObjectIndex ([4547f1f](https://github.com/thi-ng/umbrella/commit/4547f1f))
|
|
614
|
-
- add ObjectIndexOpts ctor options
|
|
615
|
-
- add IDGen for internal ID generation/recycling
|
|
616
|
-
- add iterators
|
|
617
|
-
- rename existing methods
|
|
618
|
-
|
|
619
|
-
## [0.1.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/wasm-api@0.1.0) (2022-08-01)
|
|
620
|
-
|
|
621
|
-
#### 🚀 Features
|
|
622
|
-
|
|
623
|
-
- import as new pkg ([eda4840](https://github.com/thi-ng/umbrella/commit/eda4840))
|