| OLD | NEW |
| 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file |
| 2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
| 3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
| 4 | 4 |
| 5 /** | 5 /** |
| 6 * Temporary deploy command used to create a version of the app that can be | 6 * Temporary deploy command used to create a version of the app that can be |
| 7 * compiled with dart2js and deployed. This library should go away once `pub | 7 * compiled with dart2js and deployed. This library should go away once `pub |
| 8 * deploy` can be configured to run barback transformers. | 8 * deploy` can be configured to run barback transformers. |
| 9 * | 9 * |
| 10 * From an application package you can run this program by calling dart with a | 10 * From an application package you can run this program by calling dart with a |
| 11 * 'package:' url to this file: | 11 * 'package:' url to this file: |
| 12 * | 12 * |
| 13 * dart package:polymer/deploy.dart | 13 * dart package:polymer/deploy.dart |
| 14 */ | 14 */ |
| 15 library polymer.deploy; | 15 library polymer.deploy; |
| 16 | 16 |
| 17 import 'dart:async'; | 17 import 'dart:async'; |
| 18 import 'dart:convert'; |
| 18 import 'dart:io'; | 19 import 'dart:io'; |
| 19 import 'dart:json' as json; | |
| 20 | 20 |
| 21 import 'package:barback/barback.dart'; | 21 import 'package:barback/barback.dart'; |
| 22 import 'package:path/path.dart' as path; | 22 import 'package:path/path.dart' as path; |
| 23 import 'package:polymer/src/transform.dart' show phases; | 23 import 'package:polymer/src/transform.dart' show phases; |
| 24 import 'package:stack_trace/stack_trace.dart'; | 24 import 'package:stack_trace/stack_trace.dart'; |
| 25 import 'package:yaml/yaml.dart'; | 25 import 'package:yaml/yaml.dart'; |
| 26 import 'package:args/args.dart'; | 26 import 'package:args/args.dart'; |
| 27 | 27 |
| 28 main() { | 28 main() { |
| 29 var args = _parseArgs(); | 29 var args = _parseArgs(); |
| (...skipping 145 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 175 Map<String, String> _packageDirs = () { | 175 Map<String, String> _packageDirs = () { |
| 176 var pub = path.join(path.dirname(new Options().executable), | 176 var pub = path.join(path.dirname(new Options().executable), |
| 177 Platform.isWindows ? 'pub.bat' : 'pub'); | 177 Platform.isWindows ? 'pub.bat' : 'pub'); |
| 178 var result = Process.runSync(pub, ['list-package-dirs']); | 178 var result = Process.runSync(pub, ['list-package-dirs']); |
| 179 if (result.exitCode != 0) { | 179 if (result.exitCode != 0) { |
| 180 print("unexpected error invoking 'pub':"); | 180 print("unexpected error invoking 'pub':"); |
| 181 print(result.stdout); | 181 print(result.stdout); |
| 182 print(result.stderr); | 182 print(result.stderr); |
| 183 exit(result.exitCode); | 183 exit(result.exitCode); |
| 184 } | 184 } |
| 185 var map = json.parse(result.stdout)["packages"]; | 185 var map = JSON.decode(result.stdout)["packages"]; |
| 186 map.forEach((k, v) { map[k] = path.dirname(v); }); | 186 map.forEach((k, v) { map[k] = path.dirname(v); }); |
| 187 map[_currentPackage] = '.'; | 187 map[_currentPackage] = '.'; |
| 188 return map; | 188 return map; |
| 189 }(); | 189 }(); |
| 190 | 190 |
| 191 /** | 191 /** |
| 192 * Internal packages used by polymer which we can copy directly to the output | 192 * Internal packages used by polymer which we can copy directly to the output |
| 193 * folder without having to process them with barback. | 193 * folder without having to process them with barback. |
| 194 */ | 194 */ |
| 195 // TODO(sigmund): consider computing this list by recursively parsing | 195 // TODO(sigmund): consider computing this list by recursively parsing |
| (...skipping 24 matching lines...) Expand all Loading... |
| 220 print(e.message); | 220 print(e.message); |
| 221 _showUsage(parser); | 221 _showUsage(parser); |
| 222 return null; | 222 return null; |
| 223 } | 223 } |
| 224 } | 224 } |
| 225 | 225 |
| 226 _showUsage(parser) { | 226 _showUsage(parser) { |
| 227 print('Usage: dart package:polymer/deploy.dart [options]'); | 227 print('Usage: dart package:polymer/deploy.dart [options]'); |
| 228 print(parser.getUsage()); | 228 print(parser.getUsage()); |
| 229 } | 229 } |
| OLD | NEW |