@crossbind/example-lib-prebuilt-matrix 2.0.0-beta.50 → 2.0.0-beta.52
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/AGENTS.md +16 -17
- package/CHANGELOG.md +7 -0
- package/crossbind-example-lib-prebuilt-matrix.xcframework/Info.plist +4 -4
- package/crossbind-example-lib-prebuilt-matrix.xcframework/ios-arm64/libcrossbind-example-lib-prebuilt-matrix.a +0 -0
- package/crossbind-example-lib-prebuilt-matrix.xcframework/ios-arm64-simulator/libcrossbind-example-lib-prebuilt-matrix.a +0 -0
- package/dist/prebuilt/ios-iphoneos-mt-release/lib/libcrossbind-example-lib-prebuilt-matrix.a +0 -0
- package/dist/prebuilt/ios-iphonesimulator-mt-release/lib/libcrossbind-example-lib-prebuilt-matrix.a +0 -0
- package/package.json +2 -2
package/AGENTS.md
CHANGED
|
@@ -1,33 +1,32 @@
|
|
|
1
1
|
# AGENTS.md — @crossbind/example-lib-prebuilt-matrix
|
|
2
2
|
|
|
3
|
-
> Canonical minimal **C++ library packaging** reference. This is
|
|
3
|
+
> Canonical minimal **application-owned C++ library packaging** reference. This is a published example package, not a `ports/*` family template.
|
|
4
4
|
|
|
5
|
-
## What this
|
|
5
|
+
## What this example is for
|
|
6
6
|
|
|
7
|
-
- Smallest
|
|
8
|
-
- Used by
|
|
7
|
+
- Smallest working example of “I have a tiny C++ project and want other examples or E2E fixtures to consume it.”
|
|
8
|
+
- Used by browser, Node and React Native examples and fixtures as a workspace dependency.
|
|
9
9
|
- Reference for `crossbind.config.js` shape with `export.type: 'cmake'`.
|
|
10
10
|
|
|
11
11
|
## Layout
|
|
12
12
|
|
|
13
13
|
```
|
|
14
14
|
examples/lib-prebuilt-matrix/
|
|
15
|
-
├── src/
|
|
15
|
+
├── src/native/ ← C++ source (matrix multiplier)
|
|
16
16
|
├── playground/ ← optional standalone test
|
|
17
17
|
├── crossbind.config.js ← export.type cmake, base + output paths
|
|
18
|
-
├──
|
|
19
|
-
├──
|
|
20
|
-
├── dist/ ← built artifacts (committed for prebuilt consumption)
|
|
18
|
+
├── crossbind-example-lib-prebuilt-matrix.podspec ← iOS package manifest
|
|
19
|
+
├── dist/ ← generated package output; do not hand-edit
|
|
21
20
|
├── package.json
|
|
22
21
|
└── README.md
|
|
23
22
|
```
|
|
24
23
|
|
|
25
|
-
`
|
|
24
|
+
`prepublishOnly` rebuilds `dist/` before publication. The directory is generated and filtered out of create-app templates.
|
|
26
25
|
|
|
27
|
-
## Why
|
|
26
|
+
## Why an example, not a port family
|
|
28
27
|
|
|
29
28
|
Two reasons:
|
|
30
|
-
1. The matrix-multiplier C++ is
|
|
29
|
+
1. The matrix-multiplier C++ is application-owned demonstration code, not a versioned upstream dependency.
|
|
31
30
|
2. Demonstrates the inline alternative to packaging: the user's own C++ wrapped in a `crossbind.config.js` and exported as a workspace dep.
|
|
32
31
|
|
|
33
32
|
If you're looking at how a real prebuilt package is shaped, see `ports/zlib/` instead — that's the canonical for new `ports/*`.
|
|
@@ -48,11 +47,11 @@ pnpm --filter=@crossbind/example-lib-prebuilt-matrix run build:ios # ma
|
|
|
48
47
|
|
|
49
48
|
## Common pitfalls
|
|
50
49
|
|
|
51
|
-
- **Treating this as a `ports/` template.** It
|
|
52
|
-
- **
|
|
50
|
+
- **Treating this as a `ports/` template.** It is an example; for port authoring follow `docs/playbooks/new-port.md` and mirror `ports/zlib/`.
|
|
51
|
+
- **Editing `dist/prebuilt/` manually.** Rebuild the example after changing its native source or config.
|
|
53
52
|
- **Forgetting `prepublishOnly`.** Without it, npm could publish a stale `dist/`. The script is the safety net.
|
|
54
53
|
- **Adding a heavy native dep** (e.g. another package). Defeats the "smallest possible" purpose. Keep it tiny.
|
|
55
|
-
- **Wrapping with extra plugins** (Metro, Vite, etc.). The
|
|
54
|
+
- **Wrapping with extra plugins** (Metro, Vite, etc.). The example is plugin-free; consumers add their own plugins.
|
|
56
55
|
|
|
57
56
|
## Validation
|
|
58
57
|
|
|
@@ -61,7 +60,7 @@ pnpm --filter=@crossbind/example-lib-prebuilt-matrix run build:ios # ma
|
|
|
61
60
|
pnpm --filter=@crossbind/example-lib-prebuilt-matrix run build
|
|
62
61
|
|
|
63
62
|
# Verify prebuilt artifacts
|
|
64
|
-
pnpm run check:dist |
|
|
63
|
+
pnpm run check:dist | rg example-lib-prebuilt-matrix
|
|
65
64
|
|
|
66
65
|
# Smoke a downstream consumer
|
|
67
66
|
pnpm --filter=@crossbind/example-backend-nodejs-wasm run build
|
|
@@ -70,9 +69,9 @@ node examples/backend-nodejs-wasm/src/index.js
|
|
|
70
69
|
|
|
71
70
|
## Reference
|
|
72
71
|
|
|
73
|
-
-
|
|
72
|
+
- Port-authoring playbook (the real flow for `ports/*`): `docs/playbooks/new-port.md`
|
|
74
73
|
- Real-package canonical template: `ports/zlib/`
|
|
75
|
-
-
|
|
74
|
+
- Representative downstream consumers of this example:
|
|
76
75
|
- `examples/mobile-reactnative-cli/`
|
|
77
76
|
- `examples/mobile-reactnative-expo/`
|
|
78
77
|
- `examples/backend-nodejs-wasm/`
|
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
# @crossbind/example-lib-prebuilt-matrix
|
|
2
2
|
|
|
3
|
+
## 2.0.0-beta.52
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- Aligned on the 2.0.0-beta.52 baseline. No source change; the version exists so every package in
|
|
8
|
+
the workspace names the same release.
|
|
9
|
+
|
|
3
10
|
## 2.0.0-beta.50
|
|
4
11
|
|
|
5
12
|
### Patch Changes
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
<key>HeadersPath</key>
|
|
11
11
|
<string>Headers</string>
|
|
12
12
|
<key>LibraryIdentifier</key>
|
|
13
|
-
<string>ios-arm64</string>
|
|
13
|
+
<string>ios-arm64-simulator</string>
|
|
14
14
|
<key>LibraryPath</key>
|
|
15
15
|
<string>libcrossbind-example-lib-prebuilt-matrix.a</string>
|
|
16
16
|
<key>SupportedArchitectures</key>
|
|
@@ -19,6 +19,8 @@
|
|
|
19
19
|
</array>
|
|
20
20
|
<key>SupportedPlatform</key>
|
|
21
21
|
<string>ios</string>
|
|
22
|
+
<key>SupportedPlatformVariant</key>
|
|
23
|
+
<string>simulator</string>
|
|
22
24
|
</dict>
|
|
23
25
|
<dict>
|
|
24
26
|
<key>BinaryPath</key>
|
|
@@ -26,7 +28,7 @@
|
|
|
26
28
|
<key>HeadersPath</key>
|
|
27
29
|
<string>Headers</string>
|
|
28
30
|
<key>LibraryIdentifier</key>
|
|
29
|
-
<string>ios-arm64
|
|
31
|
+
<string>ios-arm64</string>
|
|
30
32
|
<key>LibraryPath</key>
|
|
31
33
|
<string>libcrossbind-example-lib-prebuilt-matrix.a</string>
|
|
32
34
|
<key>SupportedArchitectures</key>
|
|
@@ -35,8 +37,6 @@
|
|
|
35
37
|
</array>
|
|
36
38
|
<key>SupportedPlatform</key>
|
|
37
39
|
<string>ios</string>
|
|
38
|
-
<key>SupportedPlatformVariant</key>
|
|
39
|
-
<string>simulator</string>
|
|
40
40
|
</dict>
|
|
41
41
|
</array>
|
|
42
42
|
<key>CFBundlePackageType</key>
|
|
Binary file
|
|
Binary file
|
package/dist/prebuilt/ios-iphoneos-mt-release/lib/libcrossbind-example-lib-prebuilt-matrix.a
CHANGED
|
Binary file
|
package/dist/prebuilt/ios-iphonesimulator-mt-release/lib/libcrossbind-example-lib-prebuilt-matrix.a
CHANGED
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@crossbind/example-lib-prebuilt-matrix",
|
|
3
|
-
"version": "2.0.0-beta.
|
|
3
|
+
"version": "2.0.0-beta.52",
|
|
4
4
|
"description": "crossbind sample prebuilt library: matrix multiplier",
|
|
5
5
|
"homepage": "https://github.com/crossbind/crossbind/tree/main/examples/lib-prebuilt-matrix#readme",
|
|
6
6
|
"repository": {
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
"license": "MIT",
|
|
11
11
|
"type": "module",
|
|
12
12
|
"devDependencies": {
|
|
13
|
-
"crossbind": "^2.0.0-beta.
|
|
13
|
+
"crossbind": "^2.0.0-beta.52"
|
|
14
14
|
},
|
|
15
15
|
"keywords": [
|
|
16
16
|
"crossbind-sample",
|