@expo/fingerprint 0.21.5 → 0.21.7

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.
@@ -12,7 +12,9 @@ export declare function getExpoConfigAsync(projectRoot: string, options: Normali
12
12
  * Keep only the config-plugin modules attributable to applying plugins.
13
13
  *
14
14
  * Anything that also loads when plugins are skipped is the config-loading framework and is dropped.
15
- * In-repo files are always kept regardless of the diff, so a local plugin imported at the top of
16
- * `app.config` (which loads during config evaluation, not plugin application) is never lost.
15
+ * In-repo files and files of linked dependencies are always kept regardless of the diff, so a local
16
+ * or workspace plugin imported at the top of `app.config` (which loads during config evaluation,
17
+ * not plugin application) is never lost. `isLinkedDependencyFile` runs only for a file the diff
18
+ * would drop.
17
19
  */
18
- export declare function diffLoadedModules(withPlugins: LoadedModuleSource[], withoutPlugins: LoadedModuleSource[]): LoadedModuleSource[];
20
+ export declare function diffLoadedModules(withPlugins: LoadedModuleSource[], withoutPlugins: LoadedModuleSource[], isLinkedDependencyFile?: (relativePosixPath: string) => boolean): LoadedModuleSource[];
@@ -56,6 +56,7 @@ function _resolvefrom() {
56
56
  return data;
57
57
  }
58
58
  const _ExpoConfigLoader = require("./ExpoConfigLoader");
59
+ const _LinkedDependencies = require("./utils/LinkedDependencies");
59
60
  const _SpawnIPC = require("./utils/SpawnIPC");
60
61
  function _interop_require_default(obj) {
61
62
  return obj && obj.__esModule ? obj : {
@@ -79,7 +80,7 @@ async function getExpoConfigAsync(projectRoot, options) {
79
80
  spawnConfigLoaderAsync(projectRoot, ignoredFile, /* skipPlugins */ true)
80
81
  ]);
81
82
  result.config = config;
82
- result.loadedModules = diffLoadedModules(modulesWithPlugins ?? [], modulesWithoutPlugins ?? []);
83
+ result.loadedModules = diffLoadedModules(modulesWithPlugins ?? [], modulesWithoutPlugins ?? [], (0, _LinkedDependencies.createLinkedDependencyMatcher)(_path().default.resolve(projectRoot)));
83
84
  } catch (e) {
84
85
  if (e instanceof Error) {
85
86
  console.warn(`Cannot get Expo config from an Expo project - ${e.message}: `, e.stack);
@@ -114,9 +115,12 @@ async function spawnConfigLoaderAsync(projectRoot, ignoredFile, skipPlugins) {
114
115
  });
115
116
  return JSON.parse(message);
116
117
  }
117
- function diffLoadedModules(withPlugins, withoutPlugins) {
118
+ function diffLoadedModules(withPlugins, withoutPlugins, isLinkedDependencyFile = ()=>false) {
118
119
  const skippedKeys = new Set(withoutPlugins.map(getLoadedModuleKey));
119
- return withPlugins.filter((source)=>isInRepoLoadedModule(source) || !skippedKeys.has(getLoadedModuleKey(source)));
120
+ return withPlugins.filter((source)=>{
121
+ const key = getLoadedModuleKey(source);
122
+ return isInRepoLoadedModule(source) || !skippedKeys.has(key) || source.type === 'file' && isLinkedDependencyFile(key);
123
+ });
120
124
  }
121
125
  /** Stable identity of a loaded module: its file path, or its id for a virtual module. */ function getLoadedModuleKey(source) {
122
126
  return source.type === 'file' ? source.path : source.id;
@@ -1 +1 @@
1
- {"version":3,"sources":["ExpoConfig.ts"],"sourcesContent":[null],"names":["diffLoadedModules","getExpoConfigAsync","FINGERPRINT_ENV_MODE","projectRoot","options","result","config","loadedModules","resolveFrom","silent","path","resolve","tmpDir","fs","mkdtemp","join","os","tmpdir","ignoredFile","createTempIgnoredFileAsync","modulesWithPlugins","modulesWithoutPlugins","Promise","all","spawnConfigLoaderAsync","e","Error","console","warn","message","stack","rm","recursive","skipPlugins","args","getExpoConfigLoaderPath","push","childEnv","setNodeEnv","systemEnv","getOriginalEnv","__EXPO_CONFIG_MODE","spawnWithIpcAsync","cwd","env","JSON","parse","withPlugins","withoutPlugins","skippedKeys","Set","map","getLoadedModuleKey","filter","source","isInRepoLoadedModule","has","type","id","key","startsWith","includes","ignorePaths","ignorePathMatchObjects","match","pattern","writeFile"],"mappings":"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"}
1
+ {"version":3,"sources":["ExpoConfig.ts"],"sourcesContent":[null],"names":["diffLoadedModules","getExpoConfigAsync","FINGERPRINT_ENV_MODE","projectRoot","options","result","config","loadedModules","resolveFrom","silent","path","resolve","tmpDir","fs","mkdtemp","join","os","tmpdir","ignoredFile","createTempIgnoredFileAsync","modulesWithPlugins","modulesWithoutPlugins","Promise","all","spawnConfigLoaderAsync","createLinkedDependencyMatcher","e","Error","console","warn","message","stack","rm","recursive","skipPlugins","args","getExpoConfigLoaderPath","push","childEnv","setNodeEnv","systemEnv","getOriginalEnv","__EXPO_CONFIG_MODE","spawnWithIpcAsync","cwd","env","JSON","parse","withPlugins","withoutPlugins","isLinkedDependencyFile","skippedKeys","Set","map","getLoadedModuleKey","filter","source","key","isInRepoLoadedModule","has","type","id","startsWith","includes","ignorePaths","ignorePathMatchObjects","match","pattern","writeFile"],"mappings":"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"}
@@ -1,15 +1,16 @@
1
1
  /**
2
2
  * A helper script to load the Expo config and loaded plugins from a project
3
3
  */
4
+ import module from 'module';
4
5
  /**
5
- * A CommonJS module observed while `installModuleCaptureHook()` was active.
6
+ * A module observed while `installModuleCaptureHook()` was active.
6
7
  */
7
8
  export interface CapturedModule {
8
- /** The module id (cache key). May diverge from `filename` for virtual modules. */
9
+ /** The CommonJS cache key, or an ES module's filename. May diverge from `filename` if virtual. */
9
10
  id: string;
10
11
  /** The filename Node compiled the module under. Authoritative even for transpiled sources. */
11
12
  filename: string;
12
- /** The source content Node executed for the module. */
13
+ /** The source content Node received for the module, before Node strips any types. */
13
14
  content: string;
14
15
  }
15
16
  /**
@@ -27,15 +28,24 @@ export type LoadedModuleSource = {
27
28
  contents: string;
28
29
  };
29
30
  /**
30
- * Observe every CommonJS module compiled while the hook is installed.
31
- * We hook `Module.prototype._compile` to keep each module's authoritative filename and source
32
- * content. Every argument is forwarded: Node 22.18+ passes a `format` argument that tells it to
33
- * strip types from a `.ts` file.
31
+ * Observe the JavaScript and TypeScript modules that `require()` evaluates while the hook is
32
+ * installed.
33
+ * We hook `Module.prototype._compile` to keep each CommonJS module's authoritative filename and
34
+ * source content. Every argument is forwarded: Node 22.18+ passes a `format` argument that tells it
35
+ * to strip types from a `.ts` file.
36
+ * The ES modules that an ES module imports never reach `_compile`, so a `module.registerHooks`
37
+ * load hook (Node 22.15+) records each ES module file that Node's loader evaluates.
34
38
  */
35
39
  export declare function installModuleCaptureHook(): {
36
40
  getCapturedModules: () => CapturedModule[];
37
41
  uninstall: () => void;
38
42
  };
43
+ /**
44
+ * A `module.registerHooks` load hook that records each ES module loaded from a file.
45
+ * CommonJS is left to the `_compile` hook, which also sees a module that a transpiler compiles
46
+ * from a string.
47
+ */
48
+ export declare function createESModuleLoadHook(capturedModules: CapturedModule[]): module.LoadHookSync;
39
49
  /**
40
50
  * Turn captured modules into config-plugin sources, dropping ignored paths.
41
51
  * A real file becomes a `file` source; a module with no file on disk (virtual / compiled from a
@@ -5,6 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  0 && (module.exports = {
8
+ createESModuleLoadHook: null,
8
9
  getExpoConfigLoaderPath: null,
9
10
  installModuleCaptureHook: null,
10
11
  resolveLoadedModuleSourcesAsync: null
@@ -16,6 +17,9 @@ function _export(target, all) {
16
17
  });
17
18
  }
18
19
  _export(exports, {
20
+ get createESModuleLoadHook () {
21
+ return createESModuleLoadHook;
22
+ },
19
23
  get getExpoConfigLoaderPath () {
20
24
  return getExpoConfigLoaderPath;
21
25
  },
@@ -68,6 +72,13 @@ function _resolvefrom() {
68
72
  };
69
73
  return data;
70
74
  }
75
+ function _url() {
76
+ const data = require("url");
77
+ _url = function() {
78
+ return data;
79
+ };
80
+ return data;
81
+ }
71
82
  const _Options = require("./Options");
72
83
  const _Path = require("./utils/Path");
73
84
  function _interop_require_default(obj) {
@@ -154,8 +165,11 @@ if (require.main?.filename === __filename) {
154
165
  return ignorePaths;
155
166
  }
156
167
  function installModuleCaptureHook() {
157
- const moduleProto = _module().default.prototype;
158
168
  const capturedModules = [];
169
+ const loadHooks = typeof _module().default.registerHooks === 'function' ? _module().default.registerHooks({
170
+ load: createESModuleLoadHook(capturedModules)
171
+ }) : null;
172
+ const moduleProto = _module().default.prototype;
159
173
  const originalCompile = moduleProto._compile;
160
174
  moduleProto._compile = function(content, filename, ...rest) {
161
175
  capturedModules.push({
@@ -169,7 +183,24 @@ function installModuleCaptureHook() {
169
183
  getCapturedModules: ()=>capturedModules,
170
184
  uninstall: ()=>{
171
185
  moduleProto._compile = originalCompile;
186
+ loadHooks?.deregister();
187
+ }
188
+ };
189
+ }
190
+ function createESModuleLoadHook(capturedModules) {
191
+ return (url, context, nextLoad)=>{
192
+ const result = nextLoad(url, context);
193
+ const isESModule = result.format === 'module' || result.format === 'module-typescript';
194
+ if (isESModule && url.startsWith('file:') && result.source != null) {
195
+ const filename = (0, _url().fileURLToPath)(url);
196
+ const content = typeof result.source === 'string' ? result.source : new TextDecoder().decode(result.source);
197
+ capturedModules.push({
198
+ id: filename,
199
+ filename,
200
+ content
201
+ });
172
202
  }
203
+ return result;
173
204
  };
174
205
  }
175
206
  async function resolveLoadedModuleSourcesAsync(capturedModules, projectRoot, ignoredPaths) {
@@ -1 +1 @@
1
- {"version":3,"sources":["ExpoConfigLoader.ts"],"sourcesContent":[null],"names":["getExpoConfigLoaderPath","installModuleCaptureHook","resolveLoadedModuleSourcesAsync","runAsync","programName","args","console","log","projectRoot","path","resolve","skipPlugins","includes","ignoredFileArg","startsWith","ignoredFile","modeFlagIndex","indexOf","mode","undefined","Error","consumeConfigEnvMode","globalThis","__DEV__","loadProjectEnv","getCapturedModules","uninstall","config","getConfig","require","resolveFrom","skipSDKVersionRequirement","ignoredPaths","DEFAULT_CONFIG_LOADING_IGNORE_PATHS","loadIgnoredPathsAsync","loadedModules","result","JSON","stringify","process","send","main","filename","__filename","programIndex","argv","findIndex","arg","slice","e","error","exit","DEFAULT_IGNORE_PATHS","ignorePaths","fingerprintIgnore","fs","readFile","fingerprintIgnoreLines","split","line","trimmedLine","trim","push","moduleProto","module","prototype","capturedModules","originalCompile","_compile","content","rest","id","call","seen","Set","ignoredPathMatchObjects","buildPathMatchObjects","candidates","map","relativePath","toPosixPath","relative","filter","has","isIgnoredPathWithMatchObjects","add","sources","Promise","all","stat","isFile","type","code","contents","source","join","__dirname"],"mappings":"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"}
1
+ {"version":3,"sources":["ExpoConfigLoader.ts"],"sourcesContent":[null],"names":["createESModuleLoadHook","getExpoConfigLoaderPath","installModuleCaptureHook","resolveLoadedModuleSourcesAsync","runAsync","programName","args","console","log","projectRoot","path","resolve","skipPlugins","includes","ignoredFileArg","startsWith","ignoredFile","modeFlagIndex","indexOf","mode","undefined","Error","consumeConfigEnvMode","globalThis","__DEV__","loadProjectEnv","getCapturedModules","uninstall","config","getConfig","require","resolveFrom","skipSDKVersionRequirement","ignoredPaths","DEFAULT_CONFIG_LOADING_IGNORE_PATHS","loadIgnoredPathsAsync","loadedModules","result","JSON","stringify","process","send","main","filename","__filename","programIndex","argv","findIndex","arg","slice","e","error","exit","DEFAULT_IGNORE_PATHS","ignorePaths","fingerprintIgnore","fs","readFile","fingerprintIgnoreLines","split","line","trimmedLine","trim","push","capturedModules","loadHooks","module","registerHooks","load","moduleProto","prototype","originalCompile","_compile","content","rest","id","call","deregister","url","context","nextLoad","isESModule","format","source","fileURLToPath","TextDecoder","decode","seen","Set","ignoredPathMatchObjects","buildPathMatchObjects","candidates","map","relativePath","toPosixPath","relative","filter","has","isIgnoredPathWithMatchObjects","add","sources","Promise","all","stat","isFile","type","code","contents","join","__dirname"],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Create a test for a file of a dependency that the project declares and that lives outside
3
+ * `node_modules`, such as a linked workspace package in a monorepo. The nearest `package.json`
4
+ * above the file names its package. Lookups are cached per directory.
5
+ */
6
+ export declare function createLinkedDependencyMatcher(projectRoot: string): (relativePosixPath: string) => boolean;
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "createLinkedDependencyMatcher", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return createLinkedDependencyMatcher;
9
+ }
10
+ });
11
+ function _fs() {
12
+ const data = /*#__PURE__*/ _interop_require_default(require("fs"));
13
+ _fs = function() {
14
+ return data;
15
+ };
16
+ return data;
17
+ }
18
+ function _path() {
19
+ const data = /*#__PURE__*/ _interop_require_default(require("path"));
20
+ _path = function() {
21
+ return data;
22
+ };
23
+ return data;
24
+ }
25
+ function _interop_require_default(obj) {
26
+ return obj && obj.__esModule ? obj : {
27
+ default: obj
28
+ };
29
+ }
30
+ const DEPENDENCY_FIELDS = [
31
+ 'dependencies',
32
+ 'devDependencies',
33
+ 'peerDependencies',
34
+ 'optionalDependencies'
35
+ ];
36
+ function createLinkedDependencyMatcher(projectRoot) {
37
+ const dependencyNames = new Set(readDependencyNames(projectRoot));
38
+ const packageNameCache = new Map();
39
+ return (relativePosixPath)=>{
40
+ if (dependencyNames.size === 0 || relativePosixPath.split('/').includes('node_modules')) {
41
+ return false;
42
+ }
43
+ const dir = _path().default.dirname(_path().default.resolve(projectRoot, relativePosixPath));
44
+ const packageName = findPackageName(dir, packageNameCache);
45
+ return packageName !== null && dependencyNames.has(packageName);
46
+ };
47
+ }
48
+ function readDependencyNames(projectRoot) {
49
+ let packageJson;
50
+ try {
51
+ packageJson = JSON.parse(_fs().default.readFileSync(_path().default.join(projectRoot, 'package.json'), 'utf8'));
52
+ } catch {
53
+ return [];
54
+ }
55
+ return DEPENDENCY_FIELDS.flatMap((field)=>Object.keys(packageJson[field] ?? {}));
56
+ }
57
+ function findPackageName(dir, cache) {
58
+ const cached = cache.get(dir);
59
+ if (cached !== undefined) {
60
+ return cached;
61
+ }
62
+ let packageName = null;
63
+ try {
64
+ // The sync read is fine: the result is cached per directory and few files reach this point.
65
+ const { name } = JSON.parse(_fs().default.readFileSync(_path().default.join(dir, 'package.json'), 'utf8'));
66
+ packageName = typeof name === 'string' ? name : null;
67
+ } catch {}
68
+ const parentDir = _path().default.dirname(dir);
69
+ if (packageName === null && parentDir !== dir) {
70
+ packageName = findPackageName(parentDir, cache);
71
+ }
72
+ cache.set(dir, packageName);
73
+ return packageName;
74
+ }
75
+
76
+ //# sourceMappingURL=LinkedDependencies.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["utils/LinkedDependencies.ts"],"sourcesContent":[null],"names":["createLinkedDependencyMatcher","DEPENDENCY_FIELDS","projectRoot","dependencyNames","Set","readDependencyNames","packageNameCache","Map","relativePosixPath","size","split","includes","dir","path","dirname","resolve","packageName","findPackageName","has","packageJson","JSON","parse","fs","readFileSync","join","flatMap","field","Object","keys","cache","cached","get","undefined","name","parentDir","set"],"mappings":";;;;+BAegBA;;;eAAAA;;;;gEAfD;;;;;;;gEACE;;;;;;;;;;;AAEjB,MAAMC,oBAAoB;IACxB;IACA;IACA;IACA;CACD;AAOM,SAASD,8BACdE,WAAmB;IAEnB,MAAMC,kBAAkB,IAAIC,IAAIC,oBAAoBH;IACpD,MAAMI,mBAAmB,IAAIC;IAC7B,OAAO,CAACC;QACN,IAAIL,gBAAgBM,IAAI,KAAK,KAAKD,kBAAkBE,KAAK,CAAC,KAAKC,QAAQ,CAAC,iBAAiB;YACvF,OAAO;QACT;QACA,MAAMC,MAAMC,eAAI,CAACC,OAAO,CAACD,eAAI,CAACE,OAAO,CAACb,aAAaM;QACnD,MAAMQ,cAAcC,gBAAgBL,KAAKN;QACzC,OAAOU,gBAAgB,QAAQb,gBAAgBe,GAAG,CAACF;IACrD;AACF;AAEA,SAASX,oBAAoBH,WAAmB;IAC9C,IAAIiB;IACJ,IAAI;QACFA,cAAcC,KAAKC,KAAK,CAACC,aAAE,CAACC,YAAY,CAACV,eAAI,CAACW,IAAI,CAACtB,aAAa,iBAAiB;IACnF,EAAE,OAAM;QACN,OAAO,EAAE;IACX;IACA,OAAOD,kBAAkBwB,OAAO,CAAC,CAACC,QAAUC,OAAOC,IAAI,CAACT,WAAW,CAACO,MAAM,IAAI,CAAC;AACjF;AAEA,SAAST,gBAAgBL,GAAW,EAAEiB,KAAiC;IACrE,MAAMC,SAASD,MAAME,GAAG,CAACnB;IACzB,IAAIkB,WAAWE,WAAW;QACxB,OAAOF;IACT;IACA,IAAId,cAA6B;IACjC,IAAI;QACF,4FAA4F;QAC5F,MAAM,EAAEiB,IAAI,EAAE,GAAGb,KAAKC,KAAK,CAACC,aAAE,CAACC,YAAY,CAACV,eAAI,CAACW,IAAI,CAACZ,KAAK,iBAAiB;QAC5EI,cAAc,OAAOiB,SAAS,WAAWA,OAAO;IAClD,EAAE,OAAM,CAAC;IACT,MAAMC,YAAYrB,eAAI,CAACC,OAAO,CAACF;IAC/B,IAAII,gBAAgB,QAAQkB,cAActB,KAAK;QAC7CI,cAAcC,gBAAgBiB,WAAWL;IAC3C;IACAA,MAAMM,GAAG,CAACvB,KAAKI;IACf,OAAOA;AACT"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@expo/fingerprint",
3
- "version": "0.21.5",
3
+ "version": "0.21.7",
4
4
  "description": "A library to generate a fingerprint from a React Native project",
5
5
  "keywords": [
6
6
  "expo",
@@ -31,7 +31,7 @@
31
31
  "main": "build/index.js",
32
32
  "types": "build/index.d.ts",
33
33
  "dependencies": {
34
- "@expo/env": "^2.5.2",
34
+ "@expo/env": "^2.5.3",
35
35
  "@expo/spawn-async": "^1.8.0",
36
36
  "arg": "^5.0.2",
37
37
  "chalk": "^4.1.2",
@@ -44,15 +44,15 @@
44
44
  "semver": "^7.7.4"
45
45
  },
46
46
  "devDependencies": {
47
- "@expo/config": "~58.0.5",
48
- "@expo/internal-scripts": "58.0.1",
49
- "@expo/require-utils": "~58.0.3",
47
+ "@expo/config": "~58.0.8",
48
+ "@expo/internal-scripts": "58.0.4",
49
+ "@expo/require-utils": "~58.0.4",
50
50
  "@types/debug": "^4.1.5",
51
51
  "@types/getenv": "^1.0.3",
52
52
  "@types/node": "^22.14.0",
53
53
  "@types/require-from-string": "^1.2.3",
54
54
  "@types/semver": "^7.7.1",
55
- "expo-splash-screen": "58.0.8",
55
+ "expo-splash-screen": "58.0.11",
56
56
  "memfs": "^3.6.0",
57
57
  "require-from-string": "^2.0.2",
58
58
  "temp-dir": "^2.0.0"