Skip to content

Commit 918ee66

Browse files
author
John Messerly
committed
fixes #187, implicit html, as well as server messages not printing
R=vsm@google.com Review URL: https://codereview.chromium.org/1136293005
1 parent 08fb216 commit 918ee66

File tree

3 files changed

+18
-3
lines changed

3 files changed

+18
-3
lines changed

pkg/dev_compiler/lib/devc.dart

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -305,12 +305,12 @@ class CompilerServer {
305305
.addHandler(shelf_static.createStaticHandler(outDir,
306306
defaultDocument: _entryPath));
307307
await shelf.serve(handler, host, port);
308-
_log.fine('Serving $_entryPath at http://$host:$port/');
308+
print('Serving $_entryPath at http://$host:$port/');
309309
compiler.run();
310310
}
311311

312312
shelf.Handler rebuildAndCache(shelf.Handler handler) => (request) {
313-
_log.fine('requested $GREEN_COLOR${request.url}$NO_COLOR');
313+
print('requested $GREEN_COLOR${request.url}$NO_COLOR');
314314
// Trigger recompile only when requesting the HTML page.
315315
var segments = request.url.pathSegments;
316316
bool isEntryPage = segments.length == 0 || segments[0] == _entryPath;

pkg/dev_compiler/lib/src/analysis_context.dart

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,21 @@ UriResolver _createImplicitEntryResolver(ResolverOptions options) {
6363
var provider = new MemoryResourceProvider();
6464
provider.newFile(
6565
entry, '<body><script type="application/dart" src="$src"></script>');
66-
return new ResourceUriResolver(provider);
66+
return new ExistingSourceUriResolver(new ResourceUriResolver(provider));
67+
}
68+
69+
/// A UriResolver that continues to the next one if it fails to find an existing
70+
/// source file. This is unlike normal URI resolvers, that always return
71+
/// something, even if it is a non-existing file.
72+
class ExistingSourceUriResolver implements UriResolver {
73+
final UriResolver resolver;
74+
ExistingSourceUriResolver(this.resolver);
75+
76+
Source resolveAbsolute(Uri uri) {
77+
var src = resolver.resolveAbsolute(uri);
78+
return src.exists() ? src : null;
79+
}
80+
Uri restoreAbsolute(Source source) => resolver.restoreAbsolute(source);
6781
}
6882

6983
/// Creates an analysis context that contains our restricted typing rules.

pkg/dev_compiler/lib/src/options.dart

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -260,6 +260,7 @@ CompilerOptions parseOptions(List<String> argv) {
260260
if (enableHashing == null) {
261261
enableHashing = serverMode;
262262
}
263+
// TODO(jmesserly): shouldn't level always default to warning?
263264
var logLevel = serverMode ? Level.WARNING : Level.SEVERE;
264265
var levelName = args['log'];
265266
if (levelName != null) {

0 commit comments

Comments
 (0)