OLD | NEW |
---|---|
1 import 'dart:io'; | 1 import 'dart:io'; |
2 import 'package:args/args.dart'; | 2 import 'package:args/args.dart'; |
3 import 'package:analyzer/src/services/formatter_impl.dart'; | 3 import 'package:analyzer/src/services/formatter_impl.dart'; |
4 import 'package:async_await/async_await.dart' as async_await; | 4 import 'package:async_await/async_await.dart' as async_await; |
5 import 'package:path/path.dart' as p; | 5 import 'package:path/path.dart' as p; |
6 final sourceDir = p.dirname(p.dirname(p.fromUri(Platform.script))); | 6 final sourceDir = p.dirname(p.dirname(p.fromUri(Platform.script))); |
7 final sourceUrl = p.toUri(sourceDir).toString(); | 7 final sourceUrl = p.toUri(sourceDir).toString(); |
8 final generatedDir = p.join(p.dirname(sourceDir), 'pub_generated'); | 8 final generatedDir = p.join(p.dirname(sourceDir), 'pub_generated'); |
9 bool hadFailure = false; | 9 bool hadFailure = false; |
10 bool verbose = false; | 10 bool verbose = false; |
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
96 var result = new CodeFormatter().format(CodeKind.COMPILATION_UNIT, source); | 96 var result = new CodeFormatter().format(CodeKind.COMPILATION_UNIT, source); |
97 return result.source; | 97 return result.source; |
98 } catch (ex) { | 98 } catch (ex) { |
99 stderr.writeln("Async compile failed on $sourcePath:\n$ex"); | 99 stderr.writeln("Async compile failed on $sourcePath:\n$ex"); |
100 hadFailure = true; | 100 hadFailure = true; |
101 return null; | 101 return null; |
102 } | 102 } |
103 } | 103 } |
104 String _fixDart2jsImports(String sourcePath, String source, String destPath) { | 104 String _fixDart2jsImports(String sourcePath, String source, String destPath) { |
105 var compilerDir = p.url.join(sourceUrl, "../compiler"); | 105 var compilerDir = p.url.join(sourceUrl, "../compiler"); |
106 var relative = p.url.relative(compilerDir, from: p.dirname(destPath)); | 106 var relative = |
107 p.url.relative(compilerDir, from: p.dirname(p.toUri(destPath).toString())) ; | |
nweiz
2014/09/09 19:21:31
Same here. Also long line.
| |
107 return source.replaceAll(_compilerPattern, "import '$relative"); | 108 return source.replaceAll(_compilerPattern, "import '$relative"); |
108 } | 109 } |
109 void _generateSnapshot(String buildDir) { | 110 void _generateSnapshot(String buildDir) { |
110 buildDir = p.normalize(buildDir); | 111 buildDir = p.normalize(buildDir); |
111 var entrypoint = p.join(generatedDir, 'bin/pub.dart'); | 112 var entrypoint = p.join(generatedDir, 'bin/pub.dart'); |
112 var packageRoot = p.join(buildDir, 'packages'); | 113 var packageRoot = p.join(buildDir, 'packages'); |
113 var snapshot = p.join(buildDir, 'dart-sdk/bin/snapshots/pub.dart.snapshot'); | 114 var snapshot = p.join(buildDir, 'dart-sdk/bin/snapshots/pub.dart.snapshot'); |
114 var result = Process.runSync( | 115 var result = Process.runSync( |
115 Platform.executable, | 116 Platform.executable, |
116 ["--package-root=$packageRoot", "--snapshot=$snapshot", entrypoint]); | 117 ["--package-root=$packageRoot", "--snapshot=$snapshot", entrypoint]); |
117 if (result.exitCode != 0) { | 118 if (result.exitCode != 0) { |
118 stderr.writeln("Failed to generate snapshot:"); | 119 stderr.writeln("Failed to generate snapshot:"); |
119 if (result.stderr.trim().isNotEmpty) stderr.writeln(result.stderr); | 120 if (result.stderr.trim().isNotEmpty) stderr.writeln(result.stderr); |
120 if (result.stdout.trim().isNotEmpty) stderr.writeln(result.stdout); | 121 if (result.stdout.trim().isNotEmpty) stderr.writeln(result.stdout); |
121 exit(result.exitCode); | 122 exit(result.exitCode); |
122 } | 123 } |
123 if (verbose) print("Created pub snapshot"); | 124 if (verbose) print("Created pub snapshot"); |
124 } | 125 } |
125 void _deleteFile(String path) { | 126 void _deleteFile(String path) { |
126 try { | 127 try { |
127 new File(path).deleteSync(); | 128 new File(path).deleteSync(); |
128 } on IOException catch (ex) {} | 129 } on IOException catch (ex) {} |
129 } | 130 } |
130 void _writeFile(String path, String contents) { | 131 void _writeFile(String path, String contents) { |
131 try { | 132 try { |
132 new File(path).writeAsStringSync(contents); | 133 new File(path).writeAsStringSync(contents); |
133 } on IOException catch (ex) {} | 134 } on IOException catch (ex) {} |
134 } | 135 } |
OLD | NEW |