Fix build by not counting pseudo private props as part of the isVarUsed result and accounting for findWhere.

Former-commit-id: 974c3a31de0222b9239be0a5a9c4a7b5c5e41913
This commit is contained in:
John-David Dalton
2013-06-16 18:45:51 -07:00
parent ef40a8a925
commit 8791a4f696
2 changed files with 11 additions and 6 deletions

View File

@@ -357,7 +357,7 @@
]; ];
/** List of Lo-Dash methods */ /** List of Lo-Dash methods */
var lodashMethods = _.without.apply(_, [allMethods].concat(privateMethods)); var lodashMethods = _.without.apply(_, [allMethods, 'findWhere'].concat(privateMethods));
/** List of Underscore methods */ /** List of Underscore methods */
var underscoreMethods = _.without.apply(_, [allMethods].concat(lodashOnlyMethods, privateMethods)); var underscoreMethods = _.without.apply(_, [allMethods].concat(lodashOnlyMethods, privateMethods));
@@ -1062,8 +1062,13 @@
isShallow = isRemoved(source, 'runInContext'); isShallow = isRemoved(source, 'runInContext');
} }
var indentA = isShallow ? ' {2}' : ' {2,4}', var indentA = isShallow ? ' {2}' : ' {2,4}',
indentB = isShallow ? ' {6}' : ' {6,8}', indentB = isShallow ? ' {6}' : ' {6,8}';
snippet = source.replace(/^ *(?:\/\*[^*]*\*+(?:[^\/][^*]*\*+)*\/|\/\/.+)\n/gm, '');
var snippet = source
// remove comments
.replace(/^ *(?:\/\*[^*]*\*+(?:[^\/][^*]*\*+)*\/|\/\/.+)\n/gm, '')
// remove pseudo private properties
.replace(/^ *lodash\._[^=]+=.+\n/gm, '');
var match = RegExp( var match = RegExp(
'^(' + indentA + ')var ' + varName + ' *(?:|= *(?:.+?(?:|&&\\n[^;]+)|(?:\\w+\\(|[{[(]\\n)[\\s\\S]+?\\n\\1[^\\n ]+?));\\n|' + '^(' + indentA + ')var ' + varName + ' *(?:|= *(?:.+?(?:|&&\\n[^;]+)|(?:\\w+\\(|[{[(]\\n)[\\s\\S]+?\\n\\1[^\\n ]+?));\\n|' +
@@ -3109,7 +3114,7 @@
source = removeFunction(source, 'basicEach'); source = removeFunction(source, 'basicEach');
// remove `lodash._basicEach` pseudo property // remove `lodash._basicEach` pseudo property
source = source.replace(/^ *lodash\._basicEach *=.+\n/m, ''); source = source.replace(/^ *lodash\._basicEach *=[\s\S]+?;\n/m, '');
// replace `basicEach` with `_.forOwn` in "Collections" methods // replace `basicEach` with `_.forOwn` in "Collections" methods
source = source.replace(/\bbasicEach(?=\(collection)/g, 'forOwn'); source = source.replace(/\bbasicEach(?=\(collection)/g, 'forOwn');
@@ -3139,7 +3144,8 @@
else { else {
// remove methods from the build // remove methods from the build
allMethods.forEach(function(otherName) { allMethods.forEach(function(otherName) {
if (!_.contains(buildMethods, otherName)) { if (!_.contains(buildMethods, otherName) &&
!(otherName == 'findWhere' && !isUnderscore)) {
source = removeFunction(source, otherName); source = removeFunction(source, otherName);
} }
}); });

View File

@@ -318,7 +318,6 @@
'unzip' 'unzip'
]; ];
/** List of all Lo-Dash methods */ /** List of all Lo-Dash methods */
var lodashMethods = allMethods.slice(); var lodashMethods = allMethods.slice();