Tweak Rollup setup (#9364)

* Remove unused Rollup shim and exports

* Add a way to build multiple bundles
This commit is contained in:
Dan Abramov
2017-04-07 16:17:36 +01:00
committed by GitHub
parent a8d37a7aa0
commit e303e00d06
3 changed files with 44 additions and 61 deletions
+24 -8
View File
@@ -31,8 +31,12 @@ const RN_DEV = Bundles.bundleTypes.RN_DEV;
const RN_PROD = Bundles.bundleTypes.RN_PROD;
const reactVersion = require('../../package.json').version;
const inputBundleType = argv.type;
const inputBundleName = argv._ && argv._[0];
const requestedBundleTypes = (argv.type || '')
.split(',')
.map(type => type.toUpperCase());
const requestedBundleNames = (argv._[0] || '')
.split(',')
.map(type => type.toLowerCase());
// used for when we property mangle with uglify/gcc
const mangleRegex = new RegExp(
@@ -294,14 +298,26 @@ function getPlugins(
}
function createBundle(bundle, bundleType) {
if (
(inputBundleType && bundleType.indexOf(inputBundleType) === -1) ||
bundle.bundleTypes.indexOf(bundleType) === -1 ||
(inputBundleName && bundle.label.indexOf(inputBundleName) === -1)
) {
// Skip this bundle because its config doesn't specify this target.
const shouldSkipBundleType = bundle.bundleTypes.indexOf(bundleType) === -1;
if (shouldSkipBundleType) {
return Promise.resolve();
}
if (requestedBundleTypes.length > 0) {
const isAskingForDifferentType = requestedBundleTypes.every(
requestedType => bundleType.indexOf(requestedType) === -1
);
if (isAskingForDifferentType) {
return Promise.resolve();
}
}
if (requestedBundleNames.length > 0) {
const isAskingForDifferentNames = requestedBundleNames.every(
requestedName => bundle.label.indexOf(requestedName) === -1
);
if (isAskingForDifferentNames) {
return Promise.resolve();
}
}
const filename = getFilename(bundle.name, bundle.hasteName, bundleType);
const logKey = chalk.white.bold(filename) +
-33
View File
@@ -255,28 +255,6 @@ function getReactCurrentOwnerModuleAlias(bundleType, isRenderer) {
}
}
// this works almost identically to the ReactCurrentOwner shim above
const shimReactCheckPropTypes = resolve(
'./scripts/rollup/shims/rollup/ReactCheckPropTypesRollupShim.js'
);
const realCheckPropTypes = resolve(
'./src/isomorphic/classic/types/checkPropTypes.js'
);
function getReactCheckPropTypesModuleAlias(bundleType, isRenderer) {
if (isRenderer) {
return {
checkPropTypes: shimReactCheckPropTypes,
'react/lib/checkPropTypes': shimReactCheckPropTypes,
};
} else {
return {
checkPropTypes: realCheckPropTypes,
'react/lib/checkPropTypes': realCheckPropTypes,
};
}
}
// this works almost identically to the ReactCurrentOwner shim above
const shimReactComponentTreeHook = resolve(
'./scripts/rollup/shims/rollup/ReactComponentTreeHookRollupShim.js'
@@ -323,7 +301,6 @@ function replaceDevOnlyStubbedModules(bundleType) {
function getAliases(paths, bundleType, isRenderer, extractErrors) {
return Object.assign(
getReactCurrentOwnerModuleAlias(bundleType, isRenderer),
getReactCheckPropTypesModuleAlias(bundleType, isRenderer),
getReactComponentTreeHookModuleAlias(bundleType, isRenderer),
createModuleMap(
paths,
@@ -353,17 +330,7 @@ module.exports = {
getExcludedHasteGlobs,
getDefaultReplaceModules,
getAliases,
createModuleMap,
getNodeModules,
replaceInternalModules,
getInternalModules,
getFbjsModuleAliases,
replaceFbjsModuleAliases,
ignoreFBModules,
ignoreReactNativeModules,
getExternalModules,
getReactCurrentOwnerModuleAlias,
getReactCheckPropTypesModuleAlias,
getReactComponentTreeHookModuleAlias,
replaceDevOnlyStubbedModules,
};
+20 -20
View File
@@ -2,24 +2,24 @@
"branch": "master",
"bundleSizes": {
"react.development.js (UMD_DEV)": {
"size": 116402,
"gzip": 29598
"size": 116208,
"gzip": 29564
},
"react.production.min.js (UMD_PROD)": {
"size": 13719,
"gzip": 5080
},
"react-dom.development.js (UMD_DEV)": {
"size": 564925,
"gzip": 130471
"size": 564771,
"gzip": 130439
},
"react-dom.production.min.js (UMD_PROD)": {
"size": 120123,
"gzip": 37844
},
"react-dom-server.development.js (UMD_DEV)": {
"size": 477377,
"gzip": 115561
"size": 477021,
"gzip": 115494
},
"react-dom-server.production.min.js (UMD_PROD)": {
"size": 106349,
@@ -34,56 +34,56 @@
"gzip": 28976
},
"react.development.js (NODE_DEV)": {
"size": 109416,
"gzip": 27554
"size": 109222,
"gzip": 27519
},
"react.production.min.js (NODE_PROD)": {
"size": 12615,
"gzip": 4659
},
"React-dev.js (FB_DEV)": {
"size": 110901,
"gzip": 28115
"size": 110705,
"gzip": 28075
},
"React-prod.js (FB_PROD)": {
"size": 56205,
"gzip": 14329
},
"ReactDOMStack-dev.js (FB_DEV)": {
"size": 523568,
"gzip": 124900
"size": 523202,
"gzip": 124830
},
"ReactDOMStack-prod.js (FB_PROD)": {
"size": 351707,
"gzip": 84367
},
"react-dom.development.js (NODE_DEV)": {
"size": 543299,
"gzip": 125435
"size": 543145,
"gzip": 125402
},
"react-dom.production.min.js (NODE_PROD)": {
"size": 116802,
"gzip": 36707
},
"ReactDOMFiber-dev.js (FB_DEV)": {
"size": 797779,
"gzip": 184190
"size": 797617,
"gzip": 184146
},
"ReactDOMFiber-prod.js (FB_PROD)": {
"size": 407360,
"gzip": 93460
},
"react-dom-server.development.js (NODE_DEV)": {
"size": 446778,
"gzip": 107862
"size": 446422,
"gzip": 107796
},
"react-dom-server.production.min.js (NODE_PROD)": {
"size": 101204,
"gzip": 31227
},
"ReactDOMServerStack-dev.js (FB_DEV)": {
"size": 445529,
"gzip": 107719
"size": 445173,
"gzip": 107652
},
"ReactDOMServerStack-prod.js (FB_PROD)": {
"size": 332974,