Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(34)

Side by Side Diff: tools/patch_sdk.dart

Issue 2711963002: Temporarily suppress fasta compiler hints/warnings/errors during compiling platform.dill file for t… (Closed)
Patch Set: Capture lines and report them in case an exception occurs Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 #!/usr/bin/env dart 1 #!/usr/bin/env dart
2 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file 2 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file
3 // for details. All rights reserved. Use of this source code is governed by a 3 // for details. All rights reserved. Use of this source code is governed by a
4 // BSD-style license that can be found in the LICENSE file. 4 // BSD-style license that can be found in the LICENSE file.
5 5
6 /// Command line tool to merge the SDK libraries and our patch files. 6 /// Command line tool to merge the SDK libraries and our patch files.
7 /// This is currently designed as an offline tool, but we could automate it. 7 /// This is currently designed as an offline tool, but we could automate it.
8 8
9 import 'dart:io'; 9 import 'dart:io';
10 import 'dart:async';
10 import 'dart:math' as math; 11 import 'dart:math' as math;
11 12
12 import 'package:analyzer/analyzer.dart'; 13 import 'package:analyzer/analyzer.dart';
13 import 'package:analyzer/src/generated/sdk.dart'; 14 import 'package:analyzer/src/generated/sdk.dart';
14 import 'package:path/path.dart' as path; 15 import 'package:path/path.dart' as path;
15 import 'package:front_end/src/fasta/bin/compile_platform.dart' as 16 import 'package:front_end/src/fasta/bin/compile_platform.dart' as
16 compile_platform; 17 compile_platform;
17 18
18 Future main(List<String> argv) async { 19 Future main(List<String> argv) async {
19 var base = path.fromUri(Platform.script); 20 var base = path.fromUri(Platform.script);
(...skipping 167 matching lines...) Expand 10 before | Expand all | Expand 10 after
187 _writeSync(builtinLibraryOut, new File(builtinLibraryIn).readAsStringSync( )); 188 _writeSync(builtinLibraryOut, new File(builtinLibraryIn).readAsStringSync( ));
188 } 189 }
189 190
190 for (var file in ['loader.dart', 'server.dart', 'vmservice_io.dart']) { 191 for (var file in ['loader.dart', 'server.dart', 'vmservice_io.dart']) {
191 var libraryIn = path.join(dartDir, 'runtime', 'bin', 'vmservice', file); 192 var libraryIn = path.join(dartDir, 'runtime', 'bin', 'vmservice', file);
192 var libraryOut = path.join(sdkOut, 'vmservice_io', file); 193 var libraryOut = path.join(sdkOut, 'vmservice_io', file);
193 _writeSync(libraryOut, new File(libraryIn).readAsStringSync()); 194 _writeSync(libraryOut, new File(libraryIn).readAsStringSync());
194 } 195 }
195 } 196 }
196 197
197 await compile_platform.main(<String>[ 198 // TODO(kustermann): We suppress compiler hints/warnings/errors temporarily
198 '--packages', 199 // because everyone building the `runtime` target will get these now.
199 new Uri.file(packagesFile).toString(), 200 // We should remove the suppression again once the underlying issues have
200 sdkOut, 201 // been fixed (either in fasta or the dart files in the patched_sdk).
201 path.join(sdkOut, 'platform.dill') 202 final capturedLines = <String>[];
202 ]); 203 try {
204 await runZoned(() async {
205 await compile_platform.main(<String>[
206 '--packages',
207 new Uri.file(packagesFile).toString(),
208 sdkOut,
209 path.join(sdkOut, 'platform.dill')
210 ]);
211 }, zoneSpecification: new ZoneSpecification(print: (_, _2, _3, line) {
212 capturedLines.add(line);
213 }));
214 } catch (_) {
215 for (final line in capturedLines) {
216 print(line);
217 }
218 rethrow;
219 }
203 } 220 }
204 221
205 /// Writes a file, creating the directory if needed. 222 /// Writes a file, creating the directory if needed.
206 void _writeSync(String filePath, String contents) { 223 void _writeSync(String filePath, String contents) {
207 var outDir = new Directory(path.dirname(filePath)); 224 var outDir = new Directory(path.dirname(filePath));
208 if (!outDir.existsSync()) outDir.createSync(recursive: true); 225 if (!outDir.existsSync()) outDir.createSync(recursive: true);
209 226
210 new File(filePath).writeAsStringSync(contents); 227 new File(filePath).writeAsStringSync(contents);
211 } 228 }
212 229
(...skipping 323 matching lines...) Expand 10 before | Expand all | Expand 10 after
536 if (diff != 0) return diff; 553 if (diff != 0) return diff;
537 return end - other.end; 554 return end - other.end;
538 } 555 }
539 } 556 }
540 557
541 List<SdkLibrary> _getSdkLibraries(String contents) { 558 List<SdkLibrary> _getSdkLibraries(String contents) {
542 var libraryBuilder = new SdkLibrariesReader_LibraryBuilder(true); 559 var libraryBuilder = new SdkLibrariesReader_LibraryBuilder(true);
543 parseCompilationUnit(contents).accept(libraryBuilder); 560 parseCompilationUnit(contents).accept(libraryBuilder);
544 return libraryBuilder.librariesMap.sdkLibraries; 561 return libraryBuilder.librariesMap.sdkLibraries;
545 } 562 }
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698