OLD | NEW |
1 library pub.global_packages; | 1 library pub.global_packages; |
2 import 'dart:async'; | 2 import 'dart:async'; |
3 import 'dart:io'; | 3 import 'dart:io'; |
4 import 'package:path/path.dart' as p; | 4 import 'package:path/path.dart' as p; |
5 import 'package:barback/barback.dart'; | 5 import 'package:barback/barback.dart'; |
6 import 'barback/asset_environment.dart'; | 6 import 'barback/asset_environment.dart'; |
7 import 'entrypoint.dart'; | 7 import 'entrypoint.dart'; |
8 import 'executable.dart' as exe; | 8 import 'executable.dart' as exe; |
9 import 'io.dart'; | 9 import 'io.dart'; |
10 import 'lock_file.dart'; | 10 import 'lock_file.dart'; |
(...skipping 208 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
219 return completer0.future; | 219 return completer0.future; |
220 } | 220 } |
221 Future<Map<String, String>> _precompileExecutables(Entrypoint entrypoint, | 221 Future<Map<String, String>> _precompileExecutables(Entrypoint entrypoint, |
222 String package) { | 222 String package) { |
223 return log.progress("Precompiling executables", () { | 223 return log.progress("Precompiling executables", () { |
224 final completer0 = new Completer(); | 224 final completer0 = new Completer(); |
225 scheduleMicrotask(() { | 225 scheduleMicrotask(() { |
226 try { | 226 try { |
227 var binDir = p.join(_directory, package, 'bin'); | 227 var binDir = p.join(_directory, package, 'bin'); |
228 cleanDir(binDir); | 228 cleanDir(binDir); |
229 AssetEnvironment.create( | 229 entrypoint.loadPackageGraph().then((x0) { |
230 entrypoint, | |
231 BarbackMode.RELEASE, | |
232 useDart2JS: false).then((x0) { | |
233 try { | 230 try { |
234 var environment = x0; | 231 var graph = x0; |
235 environment.barback.errors.listen(((error) { | 232 AssetEnvironment.create( |
236 log.error(log.red("Build error:\n$error")); | 233 entrypoint, |
237 })); | 234 BarbackMode.RELEASE, |
238 completer0.complete( | 235 entrypoints: graph.packages[package].executableIds, |
239 environment.precompileExecutables(package, binDir)); | 236 useDart2JS: false).then((x1) { |
| 237 try { |
| 238 var environment = x1; |
| 239 environment.barback.errors.listen(((error) { |
| 240 log.error(log.red("Build error:\n$error")); |
| 241 })); |
| 242 completer0.complete( |
| 243 environment.precompileExecutables(package, binDir)); |
| 244 } catch (e1) { |
| 245 completer0.completeError(e1); |
| 246 } |
| 247 }, onError: (e2) { |
| 248 completer0.completeError(e2); |
| 249 }); |
240 } catch (e0) { | 250 } catch (e0) { |
241 completer0.completeError(e0); | 251 completer0.completeError(e0); |
242 } | 252 } |
243 }, onError: (e1) { | 253 }, onError: (e3) { |
244 completer0.completeError(e1); | 254 completer0.completeError(e3); |
245 }); | 255 }); |
246 } catch (e2) { | 256 } catch (e4) { |
247 completer0.completeError(e2); | 257 completer0.completeError(e4); |
248 } | 258 } |
249 }); | 259 }); |
250 return completer0.future; | 260 return completer0.future; |
251 }); | 261 }); |
252 } | 262 } |
253 Future<PackageId> _cacheDependency(PackageId id) { | 263 Future<PackageId> _cacheDependency(PackageId id) { |
254 final completer0 = new Completer(); | 264 final completer0 = new Completer(); |
255 scheduleMicrotask(() { | 265 scheduleMicrotask(() { |
256 try { | 266 try { |
257 var source = cache.sources[id.source]; | 267 var source = cache.sources[id.source]; |
(...skipping 288 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
546 log.fine("Could not parse binstub $file:\n$contents"); | 556 log.fine("Could not parse binstub $file:\n$contents"); |
547 continue; | 557 continue; |
548 } | 558 } |
549 if (match[1] == package) { | 559 if (match[1] == package) { |
550 log.fine("Deleting old binstub $file"); | 560 log.fine("Deleting old binstub $file"); |
551 deleteEntry(file); | 561 deleteEntry(file); |
552 } | 562 } |
553 } | 563 } |
554 } | 564 } |
555 } | 565 } |
OLD | NEW |