diff --git a/packages/react-devtools-extensions/utils.js b/packages/react-devtools-extensions/utils.js index 3b06bb71f7..9f02e98d19 100644 --- a/packages/react-devtools-extensions/utils.js +++ b/packages/react-devtools-extensions/utils.js @@ -6,7 +6,7 @@ */ const {execSync} = require('child_process'); -const {readFileSync} = require('fs'); +const {existsSync, readFileSync} = require('fs'); const {resolve} = require('path'); const GITHUB_URL = 'https://github.com/facebook/react'; @@ -18,8 +18,26 @@ function getGitCommit() { .trim(); } catch (error) { // Mozilla runs this command from a git archive. - // In that context, there is no Git revision. - return null; + // In that context, there is no Git context. + // Using the commit hash specified to download-experimental-build.js script as a fallback. + + // Try to read from build/COMMIT_SHA file + const commitShaPath = resolve(__dirname, '..', '..', 'build', 'COMMIT_SHA'); + if (!existsSync(commitShaPath)) { + throw new Error( + 'Could not find build/COMMIT_SHA file. Did you run scripts/release/download-experimental-build.js script?', + ); + } + + try { + const commitHash = readFileSync(commitShaPath, 'utf8').trim(); + // Return short hash (first 7 characters) to match abbreviated commit hash format + return commitHash.slice(0, 7); + } catch (readError) { + throw new Error( + `Failed to read build/COMMIT_SHA file: ${readError.message}`, + ); + } } }