Chromium Code Reviews| Index: pkg/polymer/lib/src/build/script_compactor.dart |
| diff --git a/pkg/polymer/lib/src/build/script_compactor.dart b/pkg/polymer/lib/src/build/script_compactor.dart |
| index 1c46f1d1abe1a2aa98ccf684f08e448cd44a413c..063c61dcd58a26fd523a98a821f8c63608a8b861 100644 |
| --- a/pkg/polymer/lib/src/build/script_compactor.dart |
| +++ b/pkg/polymer/lib/src/build/script_compactor.dart |
| @@ -29,6 +29,7 @@ import 'package:polymer_expressions/visitor.dart' as pe; |
| import 'import_inliner.dart' show ImportInliner; // just for docs. |
| import 'common.dart'; |
| +import 'wrapped_logger.dart'; |
| /// Combines Dart script tags into a single script tag, and creates a new Dart |
| /// file that calls the main function of each of the original script tags. |
| @@ -142,9 +143,11 @@ class _ScriptCompactor extends PolymerTransformer { |
| _SubExpressionVisitor expressionVisitor; |
| - _ScriptCompactor(Transform transform, this.options, this.resolvers) |
| + _ScriptCompactor(Transform transform, options, this.resolvers) |
| : transform = transform, |
| - logger = transform.logger, |
| + options = options, |
| + logger = (options.releaseMode) ? transform.logger : |
| + new WrappedLogger(transform, convertErrorsToWarnings: true), |
| docId = transform.primaryInput.id, |
| bootstrapId = transform.primaryInput.id.addExtension('_bootstrap.dart'); |
| @@ -152,7 +155,11 @@ class _ScriptCompactor extends PolymerTransformer { |
| _loadDocument() |
| .then(_loadEntryLibraries) |
| .then(_processHtml) |
| - .then(_emitNewEntrypoint); |
| + .then(_emitNewEntrypoint) |
| + .then((_) { |
| + // Write out the logs collected by our [WrappedLogger]. |
| + if (logger is WrappedLogger) return logger.writeOutput(); |
| + }); |
| /// Loads the primary input as an html document. |
| Future _loadDocument() => |
| @@ -427,6 +434,9 @@ class _ScriptCompactor extends PolymerTransformer { |
| var url = assetUrlFor(id, bootstrapId, logger); |
| if (url == null) continue; |
| code.writeln("import '$url' as i$i;"); |
| + code.writeln( |
|
Siggi Cherem (dart-lang)
2014/08/01 21:31:52
guard this also with !options.releaseMode?
jakemac
2014/08/04 19:49:59
Done.
|
| + "import 'package:polymer/src/build/log_injector.dart'" |
| + " as log_injector;"); |
| prefixes[id] = 'i$i'; |
| i++; |
| } |
| @@ -438,6 +448,11 @@ class _ScriptCompactor extends PolymerTransformer { |
| code.write(' useGeneratedCode('); |
| generator.writeStaticConfiguration(code); |
| code.writeln(');'); |
| + |
| + if (!options.releaseMode) { |
| + code.write(' log_injector.injectLogs();'); |
| + } |
| + |
| if (experimentalBootstrap) { |
| code.write(' startPolymer(['); |
| } else { |
| @@ -459,6 +474,8 @@ class _ScriptCompactor extends PolymerTransformer { |
| if (!experimentalBootstrap) { |
| code.writeln(' i${entryLibraries.length - 1}.main();'); |
| } |
| + |
| + // End of main(). |
| code.writeln('}'); |
| transform.addOutput(new Asset.fromString(bootstrapId, code.toString())); |