@samitouri / QOS-React-1 / commits / 97047a810c

Revert "Build: use content hash for facebook-react-native build" (#27584)

Reverts facebook/react#27577. We also sync React Native OSS bundles which means this didn't work as hoped unless we abandon the commit hash in OSS which seems useful.

Jan Kassens committed Oct 25, 2023 at 15:07 UTC 97047a810cb19e3041a3ec163f4fde85f495bdc1
1 file changed +7 -25
scripts/rollup/build-all-release-channels.js
+7 -25
@@ -8,7 +8,6 @@ const fse = require('fs-extra');
8 const {spawnSync} = require('child_process');
9 const path = require('path');
10 const tmp = require('tmp');
11 -const glob = require('glob');
11
12 const {
13 ReactVersion,
@@ -236,28 +235,19 @@ function processExperimental(buildDir, version) {
235 );
236 }
237
239 - const facebookWwwDir = path.join(buildDir, 'facebook-www');
240 - if (fs.existsSync(facebookWwwDir)) {
241 - for (const fileName of fs.readdirSync(facebookWwwDir).sort()) {
242 - const filePath = path.join(facebookWwwDir, fileName);
238 + if (fs.existsSync(buildDir + '/facebook-www')) {
239 + const hash = crypto.createHash('sha1');
240 + for (const fileName of fs.readdirSync(buildDir + '/facebook-www').sort()) {
241 + const filePath = buildDir + '/facebook-www/' + fileName;
242 const stats = fs.statSync(filePath);
243 if (!stats.isDirectory()) {
244 + hash.update(fs.readFileSync(filePath));
245 fs.renameSync(filePath, filePath.replace('.js', '.modern.js'));
246 }
247 }
248 - const contentHash = hashJSFilesInDirectory(facebookWwwDir);
248 updatePlaceholderReactVersionInCompiledArtifacts(
250 - facebookWwwDir,
251 - ReactVersion + '-www-modern-' + contentHash
252 - );
253 - }
254 -
255 - const facebookReactNativeDir = path.join(buildDir, 'facebook-react-native');
256 - if (fs.existsSync(facebookReactNativeDir)) {
257 - const contentHash = hashJSFilesInDirectory(facebookReactNativeDir);
258 - updatePlaceholderReactVersionInCompiledArtifacts(
259 - facebookReactNativeDir,
260 - ReactVersion + '-react-native-' + contentHash
249 + buildDir + '/facebook-www',
250 + ReactVersion + '-www-modern-' + hash.digest('hex').slice(0, 8)
251 );
252 }
253
@@ -356,14 +346,6 @@ function updatePackageVersions(
346 }
347 }
348
359 -function hashJSFilesInDirectory(directory) {
360 - const hash = crypto.createHash('sha1');
361 - for (const filePath of glob.sync(directory + '/**/*.js').sort()) {
362 - hash.update(fs.readFileSync(filePath));
363 - }
364 - return hash.digest('hex').slice(0, 8);
365 -}
366 -
349 function updatePlaceholderReactVersionInCompiledArtifacts(
350 artifactsDirectory,
351 newVersion