Skip to content

Commit

Permalink
Change to content hash for RN canary VERSION strings
Browse files Browse the repository at this point in the history
  • Loading branch information
kassens committed Mar 18, 2024
1 parent 9c75cd5 commit 175a079
Showing 1 changed file with 13 additions and 19 deletions.
32 changes: 13 additions & 19 deletions scripts/rollup/build-all-release-channels.js
Original file line number Diff line number Diff line change
Expand Up @@ -173,25 +173,17 @@ function processStable(buildDir) {
);
}

const reactNativeBuildDir = buildDir + '/react-native/implementations/';
if (fs.existsSync(reactNativeBuildDir)) {
const hash = crypto.createHash('sha1');
for (const fileName of fs.readdirSync(reactNativeBuildDir).sort()) {
const filePath = reactNativeBuildDir + fileName;
const stats = fs.statSync(filePath);
if (!stats.isDirectory()) {
hash.update(fs.readFileSync(filePath));
}
[
buildDir + '/react-native/implementations/',
buildDir + '/facebook-react-native/',
].forEach(reactNativeBuildDir => {
if (fs.existsSync(reactNativeBuildDir)) {
updatePlaceholderReactVersionInCompiledArtifacts(
reactNativeBuildDir,
ReactVersion + '-' + canaryChannelLabel + '-%FILEHASH%'
);
}
updatePlaceholderReactVersionInCompiledArtifacts(
reactNativeBuildDir,
ReactVersion +
'-' +
canaryChannelLabel +
'-' +
hash.digest('hex').slice(0, 8)
);
}
});

// Update remaining placeholders with canary channel version
updatePlaceholderReactVersionInCompiledArtifacts(
Expand Down Expand Up @@ -362,9 +354,11 @@ function updatePlaceholderReactVersionInCompiledArtifacts(

for (const artifactFilename of artifactFilenames) {
const originalText = fs.readFileSync(artifactFilename, 'utf8');
const fileHash = crypto.createHash('sha1');
fileHash.update(originalText);
const replacedText = originalText.replaceAll(
PLACEHOLDER_REACT_VERSION,
newVersion
newVersion.replace(/%FILEHASH%/g, fileHash.digest('hex').slice(0, 8))
);
fs.writeFileSync(artifactFilename, replacedText);
}
Expand Down

0 comments on commit 175a079

Please sign in to comment.