@tamagui/native-ci 2.0.0-rc.10 → 2.0.0-rc.11
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/dist/metro.js +10 -2
- package/dist/metro.js.map +1 -1
- package/dist/metro.mjs +14 -2
- package/dist/metro.mjs.map +1 -1
- package/package.json +2 -2
- package/src/metro.ts +26 -1
- package/types/metro.d.ts.map +1 -1
package/dist/metro.js
CHANGED
|
@@ -38,11 +38,19 @@ async function prewarmBundle(platform) {
|
|
|
38
38
|
console.info("Bundle pre-warm completed (with error, continuing)");
|
|
39
39
|
}
|
|
40
40
|
}
|
|
41
|
+
function projectUsesDevClient() {
|
|
42
|
+
try {
|
|
43
|
+
const pkg = JSON.parse(require("fs").readFileSync("package.json", "utf-8"));
|
|
44
|
+
return !!({ ...pkg.dependencies, ...pkg.devDependencies }["expo-dev-client"] || typeof pkg.scripts?.start == "string" && pkg.scripts.start.includes("--dev-client"));
|
|
45
|
+
} catch {
|
|
46
|
+
return !1;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
41
49
|
function startMetro() {
|
|
42
50
|
console.info(`
|
|
43
51
|
--- Starting Metro bundler ---`);
|
|
44
|
-
const isCI = !!process.env.CI, args = ["bun", "expo", "start", "--
|
|
45
|
-
isCI && (args.push("--clear"), console.info("CI detected: clearing Metro cache"));
|
|
52
|
+
const isCI = !!process.env.CI, useDevClient = projectUsesDevClient(), args = ["bun", "expo", "start", "--offline"];
|
|
53
|
+
useDevClient && (args.splice(3, 0, "--dev-client"), console.info("Dev client detected")), isCI && (args.push("--clear"), console.info("CI detected: clearing Metro cache"));
|
|
46
54
|
const proc = Bun.spawn(args, {
|
|
47
55
|
env: { ...process.env, EXPO_NO_TELEMETRY: "true" },
|
|
48
56
|
stdout: "inherit",
|
package/dist/metro.js.map
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/metro.ts"],
|
|
4
|
-
"mappings": "AAQA,SAAS,gBAAgB;AACzB;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OAGK;AAuBP,eAAsB,aAAa,SAAyC;AAC1E,QAAM;AAAA,IACJ;AAAA,IACA,cAAc;AAAA,IACd,aAAa;AAAA,EACf,IAAI;AAEJ,UAAQ,KAAK,+BAA+B;AAE5C,WAAS,IAAI,GAAG,KAAK,aAAa,KAAK;AACrC,QAAI;AAIF,WAHiB,MAAM,MAAM,GAAG,SAAS,KAAK;AAAA,QAC5C,SAAS,EAAE,iBAAiB,SAAS;AAAA,MACvC,CAAC,GACY;AACX,uBAAQ,KAAK,sBAAsB,GAC5B;AAAA,IAEX,QAAQ;AAAA,IAER;AACA,YAAQ,KAAK,yBAAyB,CAAC,IAAI,WAAW,GAAG,GACzD,MAAM,IAAI,MAAM,UAAU;AAAA,EAC5B;AAEA,SAAO;AACT;AAMA,eAAsB,cAAc,UAAmC;AACrE,UAAQ,KAAK,uBAAuB;AAEpC,MAAI;AACF,UAAM,WAAW,MAAM,MAAM,GAAG,SAAS,KAAK;AAAA,MAC5C,SAAS,EAAE,iBAAiB,SAAS;AAAA,IACvC,CAAC;AAED,QAAI,SAAS,IAAI;AAEf,YAAM,aADY,MAAM,SAAS,KAAK,IACV,aAAa;AAEzC,MAAI,aACF,QAAQ,KAAK,yBAAyB,SAAS,EAAE,GACjD,MAAM,MAAM,SAAS,GACrB,QAAQ,KAAK,oBAAoB,KAEjC,QAAQ,KAAK,oDAAoD;AAAA,IAErE;AAAA,EACF,QAAgB;AAEd,YAAQ,KAAK,oDAAoD;AAAA,EACnE;AACF;AAOO,SAAS,aAA2B;AACzC,UAAQ,KAAK;AAAA,+BAAkC;AAG/C,QAAM,OAAO,CAAC,CAAC,QAAQ,IAAI,IACrB,OAAO,CAAC,OAAO,QAAQ,SAAS,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
package/dist/metro.mjs
CHANGED
|
@@ -35,12 +35,24 @@ async function prewarmBundle(platform) {
|
|
|
35
35
|
console.info("Bundle pre-warm completed (with error, continuing)");
|
|
36
36
|
}
|
|
37
37
|
}
|
|
38
|
+
function projectUsesDevClient() {
|
|
39
|
+
try {
|
|
40
|
+
const pkg = JSON.parse(require("fs").readFileSync("package.json", "utf-8"));
|
|
41
|
+
return !!({
|
|
42
|
+
...pkg.dependencies,
|
|
43
|
+
...pkg.devDependencies
|
|
44
|
+
}["expo-dev-client"] || typeof pkg.scripts?.start == "string" && pkg.scripts.start.includes("--dev-client"));
|
|
45
|
+
} catch {
|
|
46
|
+
return !1;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
38
49
|
function startMetro() {
|
|
39
50
|
console.info(`
|
|
40
51
|
--- Starting Metro bundler ---`);
|
|
41
52
|
const isCI = !!process.env.CI,
|
|
42
|
-
|
|
43
|
-
|
|
53
|
+
useDevClient = projectUsesDevClient(),
|
|
54
|
+
args = ["bun", "expo", "start", "--offline"];
|
|
55
|
+
useDevClient && (args.splice(3, 0, "--dev-client"), console.info("Dev client detected")), isCI && (args.push("--clear"), console.info("CI detected: clearing Metro cache"));
|
|
44
56
|
const proc = Bun.spawn(args, {
|
|
45
57
|
env: {
|
|
46
58
|
...process.env,
|
package/dist/metro.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["execSync","METRO_URL","METRO_PORT","DEFAULT_METRO_WAIT_ATTEMPTS","DEFAULT_METRO_WAIT_INTERVAL_MS","waitForMetro","options","platform","maxAttempts","intervalMs","console","info","i","fetch","headers","ok","Bun","sleep","prewarmBundle","response","bundleUrl","json","launchAsset","url","startMetro","isCI","process","env","CI","args","push","proc","spawn","EXPO_NO_TELEMETRY","stdout","stderr","kill","pid","String","exited","setupSignalHandlers","metro","cleanup","signal","exit","on","isMetroRunning","killPortProcess","encoding","trim","Number","withMetro","fn","Error"],"sources":["../src/metro.ts"],"sourcesContent":[null],"mappings":"AAQA,SAASA,QAAA,QAAgB;AACzB,SACEC,SAAA,EACAC,UAAA,EACAC,2BAAA,EACAC,8BAAA,QAGK;AAuBP,eAAsBC,aAAaC,OAAA,EAAyC;EAC1E,MAAM;IACJC,QAAA;IACAC,WAAA,GAAcL,2BAAA;IACdM,UAAA,GAAaL;EACf,IAAIE,OAAA;EAEJI,OAAA,CAAQC,IAAA,CAAK,+BAA+B;EAE5C,SAASC,CAAA,GAAI,GAAGA,CAAA,IAAKJ,WAAA,EAAaI,CAAA,IAAK;IACrC,IAAI;MAIF,KAHiB,MAAMC,KAAA,CAAM,GAAGZ,SAAS,KAAK;QAC5Ca,OAAA,EAAS;UAAE,iBAAiBP;QAAS;MACvC,CAAC,GACYQ,EAAA,EACX,OAAAL,OAAA,CAAQC,IAAA,CAAK,sBAAsB,GAC5B;IAEX,QAAQ,CAER;IACAD,OAAA,CAAQC,IAAA,CAAK,yBAAyBC,CAAC,IAAIJ,WAAW,GAAG,GACzD,MAAMQ,GAAA,CAAIC,KAAA,CAAMR,UAAU;EAC5B;EAEA,OAAO;AACT;AAMA,eAAsBS,cAAcX,QAAA,EAAmC;EACrEG,OAAA,CAAQC,IAAA,CAAK,uBAAuB;EAEpC,IAAI;IACF,MAAMQ,QAAA,GAAW,MAAMN,KAAA,CAAM,GAAGZ,SAAS,KAAK;MAC5Ca,OAAA,EAAS;QAAE,iBAAiBP;MAAS;IACvC,CAAC;IAED,IAAIY,QAAA,CAASJ,EAAA,EAAI;MAEf,MAAMK,SAAA,IADY,MAAMD,QAAA,CAASE,IAAA,CAAK,IACVC,WAAA,EAAaC,GAAA;MAErCH,SAAA,IACFV,OAAA,CAAQC,IAAA,CAAK,yBAAyBS,SAAS,EAAE,GACjD,MAAMP,KAAA,CAAMO,SAAS,GACrBV,OAAA,CAAQC,IAAA,CAAK,oBAAoB,KAEjCD,OAAA,CAAQC,IAAA,CAAK,oDAAoD;IAErE;EACF,QAAgB;IAEdD,OAAA,CAAQC,IAAA,CAAK,oDAAoD;EACnE;AACF;
|
|
1
|
+
{"version":3,"names":["execSync","METRO_URL","METRO_PORT","DEFAULT_METRO_WAIT_ATTEMPTS","DEFAULT_METRO_WAIT_INTERVAL_MS","waitForMetro","options","platform","maxAttempts","intervalMs","console","info","i","fetch","headers","ok","Bun","sleep","prewarmBundle","response","bundleUrl","json","launchAsset","url","projectUsesDevClient","pkg","JSON","parse","require","readFileSync","dependencies","devDependencies","scripts","start","includes","startMetro","isCI","process","env","CI","useDevClient","args","splice","push","proc","spawn","EXPO_NO_TELEMETRY","stdout","stderr","kill","pid","String","exited","setupSignalHandlers","metro","cleanup","signal","exit","on","isMetroRunning","killPortProcess","encoding","trim","Number","withMetro","fn","Error"],"sources":["../src/metro.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tamagui/native-ci",
|
|
3
|
-
"version": "2.0.0-rc.
|
|
3
|
+
"version": "2.0.0-rc.11",
|
|
4
4
|
"description": "Native CI/CD helpers for React Native apps with Expo - fingerprinting, caching, and build optimization",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
"@expo/fingerprint": "^0.15.3"
|
|
42
42
|
},
|
|
43
43
|
"devDependencies": {
|
|
44
|
-
"@tamagui/build": "2.0.0-rc.
|
|
44
|
+
"@tamagui/build": "2.0.0-rc.11",
|
|
45
45
|
"@types/bun": "^1.1.0",
|
|
46
46
|
"@types/node": "^22.1.0"
|
|
47
47
|
},
|
package/src/metro.ts
CHANGED
|
@@ -95,6 +95,26 @@ export async function prewarmBundle(platform: Platform): Promise<void> {
|
|
|
95
95
|
}
|
|
96
96
|
}
|
|
97
97
|
|
|
98
|
+
/**
|
|
99
|
+
* Detect if the current project uses expo-dev-client by checking package.json.
|
|
100
|
+
*/
|
|
101
|
+
function projectUsesDevClient(): boolean {
|
|
102
|
+
try {
|
|
103
|
+
const pkg = JSON.parse(require('fs').readFileSync('package.json', 'utf-8'))
|
|
104
|
+
const deps = { ...pkg.dependencies, ...pkg.devDependencies }
|
|
105
|
+
// check for expo-dev-client dep, or --dev-client in the start script
|
|
106
|
+
if (deps['expo-dev-client']) return true
|
|
107
|
+
if (
|
|
108
|
+
typeof pkg.scripts?.start === 'string' &&
|
|
109
|
+
pkg.scripts.start.includes('--dev-client')
|
|
110
|
+
)
|
|
111
|
+
return true
|
|
112
|
+
return false
|
|
113
|
+
} catch {
|
|
114
|
+
return false
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
|
|
98
118
|
/**
|
|
99
119
|
* Start Metro bundler as a background process.
|
|
100
120
|
*
|
|
@@ -105,7 +125,12 @@ export function startMetro(): MetroProcess {
|
|
|
105
125
|
|
|
106
126
|
// Only clear cache in CI - locally we want fast startup using cached transforms
|
|
107
127
|
const isCI = !!process.env.CI
|
|
108
|
-
const
|
|
128
|
+
const useDevClient = projectUsesDevClient()
|
|
129
|
+
const args = ['bun', 'expo', 'start', '--offline']
|
|
130
|
+
if (useDevClient) {
|
|
131
|
+
args.splice(3, 0, '--dev-client')
|
|
132
|
+
console.info('Dev client detected')
|
|
133
|
+
}
|
|
109
134
|
if (isCI) {
|
|
110
135
|
args.push('--clear')
|
|
111
136
|
console.info('CI detected: clearing Metro cache')
|
package/types/metro.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metro.d.ts","sourceRoot":"","sources":["../src/metro.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,KAAK,CAAA;AAErC,OAAO,EAKL,KAAK,QAAQ,EAEd,MAAM,aAAa,CAAA;AAEpB,MAAM,WAAW,YAAY;IAC3B,wCAAwC;IACxC,QAAQ,EAAE,QAAQ,CAAA;IAClB,yCAAyC;IACzC,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,gDAAgD;IAChD,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAED,MAAM,WAAW,YAAY;IAC3B,oCAAoC;IACpC,IAAI,EAAE,UAAU,CAAA;IAChB,8CAA8C;IAC9C,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAC1B;AAED;;;;GAIG;AACH,wBAAsB,YAAY,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,CA0B1E;AAED;;;GAGG;AACH,wBAAsB,aAAa,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAwBrE;
|
|
1
|
+
{"version":3,"file":"metro.d.ts","sourceRoot":"","sources":["../src/metro.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,KAAK,CAAA;AAErC,OAAO,EAKL,KAAK,QAAQ,EAEd,MAAM,aAAa,CAAA;AAEpB,MAAM,WAAW,YAAY;IAC3B,wCAAwC;IACxC,QAAQ,EAAE,QAAQ,CAAA;IAClB,yCAAyC;IACzC,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,gDAAgD;IAChD,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAED,MAAM,WAAW,YAAY;IAC3B,oCAAoC;IACpC,IAAI,EAAE,UAAU,CAAA;IAChB,8CAA8C;IAC9C,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAC1B;AAED;;;;GAIG;AACH,wBAAsB,YAAY,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,CA0B1E;AAED;;;GAGG;AACH,wBAAsB,aAAa,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAwBrE;AAsBD;;;;GAIG;AACH,wBAAgB,UAAU,IAAI,YAAY,CA2CzC;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI,CAS7D;AAkCD;;;;;;;GAOG;AACH,wBAAsB,SAAS,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CA4BvF"}
|