Index: pkg/barback/lib/src/package_graph.dart |
diff --git a/pkg/barback/lib/src/package_graph.dart b/pkg/barback/lib/src/package_graph.dart |
index 68753f652f88cfd960caf244ec032cb59c8a178c..dcc3d7f5bb1a9eb9bfc8215929e5e728500dc1d9 100644 |
--- a/pkg/barback/lib/src/package_graph.dart |
+++ b/pkg/barback/lib/src/package_graph.dart |
@@ -14,6 +14,7 @@ import 'barback_logger.dart'; |
import 'build_result.dart'; |
import 'errors.dart'; |
import 'package_provider.dart'; |
+import 'pool.dart'; |
import 'transformer.dart'; |
import 'utils.dart'; |
@@ -65,6 +66,13 @@ class PackageGraph { |
/// [Future] returned by [getAllAssets]. |
var _lastUnexpectedError; |
+ // TODO(nweiz): Allow transformers to declare themselves as "lightweight" or |
+ // "heavyweight" and adjust their restrictions appropriately. Simple |
+ // transformers may be very efficient to run in parallel, whereas dart2js uses |
+ // a lot of memory and should be run more sequentially. |
+ /// A pool that controls how many transformers may be applied at once. |
+ final Pool transformPool = new Pool(10); |
+ |
/// Creates a new [PackageGraph] that will transform assets in all packages |
/// made available by [provider]. |
PackageGraph(this.provider, {BarbackLogger logger}) |