@rnx-kit/cli 0.16.21 → 0.16.22
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/CHANGELOG.md +10 -0
- package/coverage/clover.xml +2 -2
- package/coverage/lcov-report/index.html +1 -1
- package/coverage/lcov-report/src/bundle/defaultPlugins.ts.html +1 -1
- package/coverage/lcov-report/src/bundle/index.html +1 -1
- package/coverage/lcov-report/src/bundle/kit-config.ts.html +1 -1
- package/coverage/lcov-report/src/bundle/metro.ts.html +1 -1
- package/coverage/lcov-report/src/bundle/overrides.ts.html +1 -1
- package/coverage/lcov-report/src/copy-assets.ts.html +1 -1
- package/coverage/lcov-report/src/index.html +1 -1
- package/coverage/lcov-report/src/metro-config.ts.html +1 -1
- package/coverage/lcov-report/src/test.ts.html +1 -1
- package/lib/bundle/hermes.d.ts.map +1 -1
- package/lib/bundle/hermes.js +14 -6
- package/lib/bundle/hermes.js.map +1 -1
- package/package.json +4 -3
- package/src/bundle/hermes.ts +18 -8
- package/tsconfig.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,15 @@
|
|
|
1
1
|
# Change Log - @rnx-kit/cli
|
|
2
2
|
|
|
3
|
+
## 0.16.22
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- afe49c6: Automatically compose source maps of the JS and Hermes bytecode bundles
|
|
8
|
+
- Updated dependencies [afe49c6]
|
|
9
|
+
- Updated dependencies [8083856]
|
|
10
|
+
- @rnx-kit/tools-react-native@1.3.5
|
|
11
|
+
- @rnx-kit/align-deps@2.3.3
|
|
12
|
+
|
|
3
13
|
## 0.16.21
|
|
4
14
|
|
|
5
15
|
### Patch Changes
|
package/coverage/clover.xml
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
-
<coverage generated="
|
|
3
|
-
<project timestamp="
|
|
2
|
+
<coverage generated="1705492592442" clover="3.2.0">
|
|
3
|
+
<project timestamp="1705492592442" name="All files">
|
|
4
4
|
<metrics statements="290" coveredstatements="161" conditionals="182" coveredconditionals="93" methods="35" coveredmethods="27" elements="507" coveredelements="281" complexity="0" loc="290" ncloc="290" packages="2" files="7" classes="7"/>
|
|
5
5
|
<package name="src">
|
|
6
6
|
<metrics statements="253" coveredstatements="128" conditionals="153" coveredconditionals="72" methods="27" coveredmethods="19"/>
|
|
@@ -116,7 +116,7 @@
|
|
|
116
116
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
117
117
|
Code coverage generated by
|
|
118
118
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
119
|
-
at
|
|
119
|
+
at Wed Jan 17 2024 11:56:32 GMT+0000 (Coordinated Universal Time)
|
|
120
120
|
</div>
|
|
121
121
|
<script src="prettify.js"></script>
|
|
122
122
|
<script>
|
|
@@ -118,7 +118,7 @@ export function getDefaultBundlerPlugins(): DefaultPlugins {
|
|
|
118
118
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
119
119
|
Code coverage generated by
|
|
120
120
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
121
|
-
at
|
|
121
|
+
at Wed Jan 17 2024 11:56:32 GMT+0000 (Coordinated Universal Time)
|
|
122
122
|
</div>
|
|
123
123
|
<script src="../../prettify.js"></script>
|
|
124
124
|
<script>
|
|
@@ -146,7 +146,7 @@
|
|
|
146
146
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
147
147
|
Code coverage generated by
|
|
148
148
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
149
|
-
at
|
|
149
|
+
at Wed Jan 17 2024 11:56:32 GMT+0000 (Coordinated Universal Time)
|
|
150
150
|
</div>
|
|
151
151
|
<script src="../../prettify.js"></script>
|
|
152
152
|
<script>
|
|
@@ -313,7 +313,7 @@ export function getCliPlatformBundleConfigs(
|
|
|
313
313
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
314
314
|
Code coverage generated by
|
|
315
315
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
316
|
-
at
|
|
316
|
+
at Wed Jan 17 2024 11:56:32 GMT+0000 (Coordinated Universal Time)
|
|
317
317
|
</div>
|
|
318
318
|
<script src="../../prettify.js"></script>
|
|
319
319
|
<script>
|
|
@@ -268,7 +268,7 @@ export async function metroBundle(
|
|
|
268
268
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
269
269
|
Code coverage generated by
|
|
270
270
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
271
|
-
at
|
|
271
|
+
at Wed Jan 17 2024 11:56:32 GMT+0000 (Coordinated Universal Time)
|
|
272
272
|
</div>
|
|
273
273
|
<script src="../../prettify.js"></script>
|
|
274
274
|
<script>
|
|
@@ -223,7 +223,7 @@ export function applyBundleConfigOverrides(
|
|
|
223
223
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
224
224
|
Code coverage generated by
|
|
225
225
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
226
|
-
at
|
|
226
|
+
at Wed Jan 17 2024 11:56:32 GMT+0000 (Coordinated Universal Time)
|
|
227
227
|
</div>
|
|
228
228
|
<script src="../../prettify.js"></script>
|
|
229
229
|
<script>
|
|
@@ -1705,7 +1705,7 @@ export const rnxCopyAssetsCommand = {
|
|
|
1705
1705
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
1706
1706
|
Code coverage generated by
|
|
1707
1707
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
1708
|
-
at
|
|
1708
|
+
at Wed Jan 17 2024 11:56:32 GMT+0000 (Coordinated Universal Time)
|
|
1709
1709
|
</div>
|
|
1710
1710
|
<script src="../prettify.js"></script>
|
|
1711
1711
|
<script>
|
|
@@ -131,7 +131,7 @@
|
|
|
131
131
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
132
132
|
Code coverage generated by
|
|
133
133
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
134
|
-
at
|
|
134
|
+
at Wed Jan 17 2024 11:56:32 GMT+0000 (Coordinated Universal Time)
|
|
135
135
|
</div>
|
|
136
136
|
<script src="../prettify.js"></script>
|
|
137
137
|
<script>
|
|
@@ -694,7 +694,7 @@ export function customizeMetroConfig(
|
|
|
694
694
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
695
695
|
Code coverage generated by
|
|
696
696
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
697
|
-
at
|
|
697
|
+
at Wed Jan 17 2024 11:56:32 GMT+0000 (Coordinated Universal Time)
|
|
698
698
|
</div>
|
|
699
699
|
<script src="../prettify.js"></script>
|
|
700
700
|
<script>
|
|
@@ -481,7 +481,7 @@ export const rnxTestCommand = {
|
|
|
481
481
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
482
482
|
Code coverage generated by
|
|
483
483
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
484
|
-
at
|
|
484
|
+
at Wed Jan 17 2024 11:56:32 GMT+0000 (Coordinated Universal Time)
|
|
485
485
|
</div>
|
|
486
486
|
<script src="../prettify.js"></script>
|
|
487
487
|
<script>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hermes.d.ts","sourceRoot":"","sources":["../../src/bundle/hermes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"hermes.d.ts","sourceRoot":"","sources":["../../src/bundle/hermes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AA4DrD,wBAAgB,YAAY,CAC1B,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,OAAO,EAAE,aAAa,GACrB,IAAI,CAiDN"}
|
package/lib/bundle/hermes.js
CHANGED
|
@@ -26,6 +26,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
26
26
|
exports.emitBytecode = void 0;
|
|
27
27
|
const console_1 = require("@rnx-kit/console");
|
|
28
28
|
const package_1 = require("@rnx-kit/tools-node/package");
|
|
29
|
+
const metro_1 = require("@rnx-kit/tools-react-native/metro");
|
|
29
30
|
const child_process_1 = require("child_process");
|
|
30
31
|
const fs = __importStar(require("fs"));
|
|
31
32
|
const os = __importStar(require("os"));
|
|
@@ -77,9 +78,6 @@ function getOutput(args) {
|
|
|
77
78
|
}
|
|
78
79
|
return null;
|
|
79
80
|
}
|
|
80
|
-
function isSourceMapFlag(flag) {
|
|
81
|
-
return flag === "-source-map" || flag.startsWith("-source-map=");
|
|
82
|
-
}
|
|
83
81
|
function emitBytecode(input, sourcemap, options) {
|
|
84
82
|
var _a;
|
|
85
83
|
const cmd = options.command || findHermesBinary();
|
|
@@ -103,15 +101,25 @@ function emitBytecode(input, sourcemap, options) {
|
|
|
103
101
|
output = input + ".hbc";
|
|
104
102
|
args.push("-out", output);
|
|
105
103
|
}
|
|
106
|
-
if (sourcemap && !args.some(isSourceMapFlag)) {
|
|
107
|
-
args.push("-source-map", sourcemap);
|
|
108
|
-
}
|
|
109
104
|
args.push(input);
|
|
110
105
|
(0, console_1.info)("Emitting bytecode to:", output);
|
|
111
106
|
const result = (0, child_process_1.spawnSync)(cmd, args, { stdio: "inherit" });
|
|
112
107
|
if (result.status !== 0) {
|
|
113
108
|
throw result.error;
|
|
114
109
|
}
|
|
110
|
+
if (sourcemap && args.includes("-output-source-map")) {
|
|
111
|
+
const outputMap = output + ".map";
|
|
112
|
+
(0, console_1.info)(`Combining source maps: ${sourcemap} + ${outputMap}`);
|
|
113
|
+
const options = { encoding: "utf-8" };
|
|
114
|
+
const packagerSourcemap = JSON.parse(fs.readFileSync(sourcemap, options));
|
|
115
|
+
const compilerSourcemap = JSON.parse(fs.readFileSync(outputMap, options));
|
|
116
|
+
// `composeSourceMaps` was introduced in 0.56 — see
|
|
117
|
+
// https://github.com/facebook/metro/commit/6017085bdad96ca5cec39d50038eb5622ce1097b
|
|
118
|
+
// @ts-expect-error Property 'composeSourceMaps' does not exist
|
|
119
|
+
const { composeSourceMaps } = (0, metro_1.requireModuleFromMetro)("metro-source-map");
|
|
120
|
+
const composed = composeSourceMaps([packagerSourcemap, compilerSourcemap]);
|
|
121
|
+
fs.writeFileSync(outputMap, JSON.stringify(composed));
|
|
122
|
+
}
|
|
115
123
|
}
|
|
116
124
|
exports.emitBytecode = emitBytecode;
|
|
117
125
|
//# sourceMappingURL=hermes.js.map
|
package/lib/bundle/hermes.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hermes.js","sourceRoot":"","sources":["../../src/bundle/hermes.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AACA,8CAA+C;AAC/C,yDAAuE;AACvE,iDAA0C;AAC1C,uCAAyB;AACzB,uCAAyB;AACzB,2CAA6B;AAE7B,SAAS,iBAAiB,CAAC,OAAe;IACxC,QAAQ,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC;QACtB,KAAK,QAAQ;YACX,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;QAClD,KAAK,OAAO;YACV,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC;QACtD,KAAK,OAAO;YACV,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,EAAE,aAAa,CAAC,CAAC;QACxD;YACE,OAAO,IAAI,CAAC;IAChB,CAAC;AACH,CAAC;AAED,SAAS,gBAAgB;IACvB,MAAM,SAAS,GAAG;QAChB,GAAG,EAAE;YACH,MAAM,MAAM,GAAG,IAAA,kCAAwB,EAAC,cAAc,CAAC,CAAC;YACxD,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;YACvD,CAAC;YACD,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;QAC9C,CAAC;QACD,GAAG,EAAE,CAAC,IAAA,kCAAwB,EAAC,eAAe,CAAC;KAChD,CAAC;IAEF,KAAK,MAAM,WAAW,IAAI,SAAS,EAAE,CAAC;QACpC,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;QAC/B,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,OAAO,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;YAC5C,IAAI,OAAO,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;gBACtC,OAAO,OAAO,CAAC;YACjB,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,SAAS,CAAC,IAAc;IAC/B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;IAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;QAChC,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACrB,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;YACpB,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACrB,CAAC;aAAM,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YACpC,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,
|
|
1
|
+
{"version":3,"file":"hermes.js","sourceRoot":"","sources":["../../src/bundle/hermes.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rnx-kit/cli",
|
|
3
|
-
"version": "0.16.
|
|
3
|
+
"version": "0.16.22",
|
|
4
4
|
"description": "Command-line interface for working with kit packages in your repo",
|
|
5
5
|
"homepage": "https://github.com/microsoft/rnx-kit/tree/main/packages/cli#readme",
|
|
6
6
|
"license": "MIT",
|
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
"test": "rnx-kit-scripts test"
|
|
28
28
|
},
|
|
29
29
|
"dependencies": {
|
|
30
|
-
"@rnx-kit/align-deps": "^2.
|
|
30
|
+
"@rnx-kit/align-deps": "^2.3.3",
|
|
31
31
|
"@rnx-kit/config": "^0.6.6",
|
|
32
32
|
"@rnx-kit/console": "^1.0.11",
|
|
33
33
|
"@rnx-kit/metro-plugin-cyclic-dependencies-detector": "^1.1.1",
|
|
@@ -39,7 +39,7 @@
|
|
|
39
39
|
"@rnx-kit/third-party-notices": "^1.3.4",
|
|
40
40
|
"@rnx-kit/tools-language": "^2.0.0",
|
|
41
41
|
"@rnx-kit/tools-node": "^2.1.1",
|
|
42
|
-
"@rnx-kit/tools-react-native": "^1.3.
|
|
42
|
+
"@rnx-kit/tools-react-native": "^1.3.5",
|
|
43
43
|
"chalk": "^4.1.0",
|
|
44
44
|
"fs-extra": "^10.0.0",
|
|
45
45
|
"node-fetch": "^2.6.7",
|
|
@@ -67,6 +67,7 @@
|
|
|
67
67
|
"@rnx-kit/eslint-config": "*",
|
|
68
68
|
"@rnx-kit/jest-preset": "*",
|
|
69
69
|
"@rnx-kit/scripts": "*",
|
|
70
|
+
"@rnx-kit/tsconfig": "*",
|
|
70
71
|
"@types/connect": "^3.4.36",
|
|
71
72
|
"@types/fs-extra": "^9.0.0",
|
|
72
73
|
"@types/jest": "^29.2.1",
|
package/src/bundle/hermes.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { HermesOptions } from "@rnx-kit/config";
|
|
2
2
|
import { error, info } from "@rnx-kit/console";
|
|
3
3
|
import { findPackageDependencyDir } from "@rnx-kit/tools-node/package";
|
|
4
|
+
import { requireModuleFromMetro } from "@rnx-kit/tools-react-native/metro";
|
|
4
5
|
import { spawnSync } from "child_process";
|
|
5
6
|
import * as fs from "fs";
|
|
6
7
|
import * as os from "os";
|
|
@@ -57,10 +58,6 @@ function getOutput(args: string[]): string | null {
|
|
|
57
58
|
return null;
|
|
58
59
|
}
|
|
59
60
|
|
|
60
|
-
function isSourceMapFlag(flag: string): boolean {
|
|
61
|
-
return flag === "-source-map" || flag.startsWith("-source-map=");
|
|
62
|
-
}
|
|
63
|
-
|
|
64
61
|
export function emitBytecode(
|
|
65
62
|
input: string,
|
|
66
63
|
sourcemap: string | undefined,
|
|
@@ -90,10 +87,6 @@ export function emitBytecode(
|
|
|
90
87
|
args.push("-out", output);
|
|
91
88
|
}
|
|
92
89
|
|
|
93
|
-
if (sourcemap && !args.some(isSourceMapFlag)) {
|
|
94
|
-
args.push("-source-map", sourcemap);
|
|
95
|
-
}
|
|
96
|
-
|
|
97
90
|
args.push(input);
|
|
98
91
|
|
|
99
92
|
info("Emitting bytecode to:", output);
|
|
@@ -101,4 +94,21 @@ export function emitBytecode(
|
|
|
101
94
|
if (result.status !== 0) {
|
|
102
95
|
throw result.error;
|
|
103
96
|
}
|
|
97
|
+
|
|
98
|
+
if (sourcemap && args.includes("-output-source-map")) {
|
|
99
|
+
const outputMap = output + ".map";
|
|
100
|
+
info(`Combining source maps: ${sourcemap} + ${outputMap}`);
|
|
101
|
+
|
|
102
|
+
const options = { encoding: "utf-8" } as const;
|
|
103
|
+
const packagerSourcemap = JSON.parse(fs.readFileSync(sourcemap, options));
|
|
104
|
+
const compilerSourcemap = JSON.parse(fs.readFileSync(outputMap, options));
|
|
105
|
+
|
|
106
|
+
// `composeSourceMaps` was introduced in 0.56 — see
|
|
107
|
+
// https://github.com/facebook/metro/commit/6017085bdad96ca5cec39d50038eb5622ce1097b
|
|
108
|
+
// @ts-expect-error Property 'composeSourceMaps' does not exist
|
|
109
|
+
const { composeSourceMaps } = requireModuleFromMetro("metro-source-map");
|
|
110
|
+
|
|
111
|
+
const composed = composeSourceMaps([packagerSourcemap, compilerSourcemap]);
|
|
112
|
+
fs.writeFileSync(outputMap, JSON.stringify(composed));
|
|
113
|
+
}
|
|
104
114
|
}
|
package/tsconfig.json
CHANGED