Selaa lähdekoodia

Remove another require call

Elizabeth Craig 5 vuotta sitten
vanhempi
commit
99f7b1185c

+ 15 - 1
scripts/importTypescript.js

@@ -34,10 +34,24 @@ const TYPESCRIPT_LIB_DESTINATION = path.join(__dirname, '../src/lib');
 		tsServices.replace(/\n    ts\.sys =([^]*)\n    \}\)\(\);/m, `\n    // MONACOCHANGE\n    ts.sys = undefined;\n    // END MONACOCHANGE`)
 	);
 
-	// Eliminate another require() call...
+	// Eliminate more require() calls...
 	tsServices = (
 		tsServices.replace(/return require\(fileNameToRequire\);/, `// MONACOCHANGE\n            return undefined;\n            // END MONACOCHANGE`)
 	);
+	tsServices = tsServices.replace(/^( +)etwModule = require\(.*$/m, '$1// MONACOCHANGE\n$1etwModule = undefined;\n$1// END MONACOCHANGE');
+
+	// Flag any new require calls (outside comments) so they can be corrected preemptively.
+	// To avoid missing cases (or using an even more complex regex), temporarily remove comments
+	// about require() and then check for lines actually calling require().
+	// \/[*/] matches the start of a comment (single or multi-line).
+	// ^\s+\*[^/] matches (presumably) a later line of a multi-line comment.
+	const tsServicesNoCommentedRequire = tsServices.replace(/(\/[*/]|^\s+\*[^/]).*\brequire\(.*/gm, '');
+	const linesWithRequire = tsServicesNoCommentedRequire.match(/^.*?\brequire\(.*$/gm);
+	if (linesWithRequire && linesWithRequire.length) {
+		console.error('Found new require() calls on the following lines. These should be removed to avoid breaking webpack builds.\n');
+		console.error(linesWithRequire.join('\n'));
+		process.exit(1);
+	}
 
 	// Make sure process.args don't get called in the browser, this
 	// should only happen in TS 2.6.2

+ 3 - 1
src/lib/typescriptServices-amd.js

@@ -2417,7 +2417,9 @@ var ts;
     try {
         // require() will throw an exception if the module is not installed
         // It may also return undefined if not installed properly
-        etwModule = require("@microsoft/typescript-etw"); // tslint:disable-line:no-implicit-dependencies
+        // MONACOCHANGE
+        etwModule = undefined;
+        // END MONACOCHANGE
     }
     catch (e) {
         etwModule = undefined;

+ 3 - 1
src/lib/typescriptServices.js

@@ -2417,7 +2417,9 @@ var ts;
     try {
         // require() will throw an exception if the module is not installed
         // It may also return undefined if not installed properly
-        etwModule = require("@microsoft/typescript-etw"); // tslint:disable-line:no-implicit-dependencies
+        // MONACOCHANGE
+        etwModule = undefined;
+        // END MONACOCHANGE
     }
     catch (e) {
         etwModule = undefined;

+ 1 - 1
src/lib/typescriptServicesMetadata.ts

@@ -1 +1 @@
-export const typescriptVersion = "3.5.1";
+export const typescriptVersion = "3.6.2";