@stim-cli/expo-build-cache 1.0.0-rc.3 → 1.0.0-rc.5
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/README.md +19 -37
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -1,50 +1,32 @@
|
|
|
1
1
|
# @stim-cli/expo-build-cache
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
3
|
+
A local Expo build-cache provider that shares `.app` and `.apk` artifacts across
|
|
4
|
+
worktrees and direct Expo builds.
|
|
5
5
|
|
|
6
|
-
|
|
7
|
-
installs a cached `.app` / `.apk` instead of compiling — which is the difference
|
|
8
|
-
between a JS-only change costing a simulator boot and costing a full native
|
|
9
|
-
build.
|
|
10
|
-
|
|
11
|
-
Local on purpose: a directory under `$HOME` shared by every worktree on the
|
|
12
|
-
machine. No account, no network, and a second worktree building the same commit
|
|
13
|
-
is a hit rather than a second five-minute build.
|
|
6
|
+
If Stim is not installed globally, replace `stim` with `npx stim-cli`.
|
|
14
7
|
|
|
15
8
|
```bash
|
|
16
|
-
npm
|
|
9
|
+
npm install --save-dev @stim-cli/expo-build-cache
|
|
17
10
|
```
|
|
18
11
|
|
|
19
|
-
|
|
20
|
-
is a silent no-op rather than an error:**
|
|
21
|
-
|
|
22
|
-
```jsonc
|
|
23
|
-
// SDK 54+
|
|
24
|
-
{ "expo": { "buildCacheProvider": { "plugin": "@stim-cli/expo-build-cache" } } }
|
|
12
|
+
For current Expo SDK versions:
|
|
25
13
|
|
|
26
|
-
|
|
27
|
-
{
|
|
14
|
+
```json
|
|
15
|
+
{
|
|
16
|
+
"expo": {
|
|
17
|
+
"buildCacheProvider": {
|
|
18
|
+
"plugin": "@stim-cli/expo-build-cache"
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
}
|
|
28
22
|
```
|
|
29
23
|
|
|
30
|
-
|
|
31
|
-
`ios/Podfile.lock` is the usual culprit: pod checksums can embed absolute paths,
|
|
32
|
-
which makes the fingerprint differ per machine and the cache never hit.
|
|
33
|
-
|
|
34
|
-
Watch for `[build-cache] hit` or `miss` in the output. A miss means you changed
|
|
35
|
-
something native — or that you are the first workspace on this commit.
|
|
36
|
-
|
|
37
|
-
### Housekeeping
|
|
24
|
+
Expo SDK 53 reads this value under `expo.experiments.buildCacheProvider`.
|
|
38
25
|
|
|
39
|
-
The
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
```bash
|
|
43
|
-
stim gc # what it has grown to (reported on every run)
|
|
44
|
-
stim gc --delete --older-than 30 # drop entries unused for 30 days
|
|
45
|
-
```
|
|
26
|
+
The provider works without the `stim-cli` npm package. When Stim is available,
|
|
27
|
+
the provider registers its cache so `stim gc` can report and trim it.
|
|
46
28
|
|
|
47
|
-
|
|
48
|
-
just invisible to housekeeping.
|
|
29
|
+
Set `STIM_BUILD_CACHE` to override the cache location.
|
|
49
30
|
|
|
50
|
-
|
|
31
|
+
See the [cache package documentation](https://appandflow.github.io/stim/docs/cache-packages)
|
|
32
|
+
for current setup and cleanup guidance.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@stim-cli/expo-build-cache",
|
|
3
|
-
"version": "1.0.0-rc.
|
|
3
|
+
"version": "1.0.0-rc.5",
|
|
4
4
|
"description": "Local Expo build cache provider: installs a cached .app/.apk instead of compiling when no native input changed.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
"build": "tsdown"
|
|
29
29
|
},
|
|
30
30
|
"dependencies": {
|
|
31
|
-
"@stim-cli/core": "^1.0.0-rc.
|
|
31
|
+
"@stim-cli/core": "^1.0.0-rc.5"
|
|
32
32
|
},
|
|
33
33
|
"engines": {
|
|
34
34
|
"node": "^20.19.4 || >=22.12.0"
|