Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(198)

Unified Diff: sdk/lib/_internal/pub/lib/src/command/deploy.dart

Issue 18399004: Make pub deploy copy over interop.js. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Revise. Created 7 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | sdk/lib/_internal/pub/test/deploy/copies_browser_js_next_to_entrypoints_test.dart » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: sdk/lib/_internal/pub/lib/src/command/deploy.dart
diff --git a/sdk/lib/_internal/pub/lib/src/command/deploy.dart b/sdk/lib/_internal/pub/lib/src/command/deploy.dart
index 76904a8b9c433bb742a9a56b45c694f3381fe394..da4dfb9d55b6daa50219733c0f27b95764539f11 100644
--- a/sdk/lib/_internal/pub/lib/src/command/deploy.dart
+++ b/sdk/lib/_internal/pub/lib/src/command/deploy.dart
@@ -71,10 +71,11 @@ class DeployCommand extends PubCommand {
packageRoot: entrypoint.packagesDir, toDart: true);
}).then((dart) {
writeTextFile(targetFile, dart, dontLogContents: true);
- // TODO(nweiz): we should put dart.js files next to any HTML file
+ // TODO(nweiz): we should put browser JS files next to any HTML file
// rather than any entrypoint. An HTML file could import an entrypoint
// that's not adjacent.
- _maybeAddDartJs(path.dirname(targetFile));
+ _maybeAddBrowserJs(path.dirname(targetFile), "dart");
+ _maybeAddBrowserJs(path.dirname(targetFile), "interop");
});
});
});
@@ -106,7 +107,9 @@ class DeployCommand extends PubCommand {
var sourceLengths = new List.from(
_entrypoints.map((file) => path.relative(file).length))
..add("${path.relative(source)}${path.separator}".length);
- if (_shouldAddDartJs) sourceLengths.add("package:browser/dart.js".length);
+ if (_shouldAddBrowserJs) {
+ sourceLengths.add("package:browser/interop.js".length);
+ }
_maxSourceLength = sourceLengths.reduce(math.max);
}
@@ -119,21 +122,21 @@ class DeployCommand extends PubCommand {
// TODO(nweiz): do something more principled when issue 6101 is fixed.
/// If this package depends non-transitively on the `browser` package, this
- /// ensures that the `dart.js` file is copied into [directory], under
+ /// ensures that the [name].js file is copied into [directory], under
/// `packages/browser/`.
- void _maybeAddDartJs(String directory) {
- var jsPath = path.join(directory, 'packages', 'browser', 'dart.js');
+ void _maybeAddBrowserJs(String directory, String name) {
+ var jsPath = path.join(directory, 'packages', 'browser', '$name.js');
// TODO(nweiz): warn if they don't depend on browser?
- if (!_shouldAddDartJs || fileExists(jsPath)) return;
+ if (!_shouldAddBrowserJs || fileExists(jsPath)) return;
- _logAction("Copying", "package:browser/dart.js", path.relative(jsPath));
+ _logAction("Copying", "package:browser/$name.js", path.relative(jsPath));
ensureDir(path.dirname(jsPath));
- copyFile(path.join(entrypoint.packagesDir, 'browser', 'dart.js'), jsPath);
+ copyFile(path.join(entrypoint.packagesDir, 'browser', '$name.js'), jsPath);
}
- /// Whether we should copy the browser package's dart.js file into the
- /// deployed app.
- bool get _shouldAddDartJs {
+ /// Whether we should copy the browser package's JS files into the deployed
+ /// app.
+ bool get _shouldAddBrowserJs {
return !_entrypoints.isEmpty &&
entrypoint.root.dependencies.any((dep) =>
dep.name == 'browser' && dep.source == 'hosted');
« no previous file with comments | « no previous file | sdk/lib/_internal/pub/test/deploy/copies_browser_js_next_to_entrypoints_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698