File tree 3 files changed +18
-3
lines changed
3 files changed +18
-3
lines changed Original file line number Diff line number Diff line change @@ -305,12 +305,12 @@ class CompilerServer {
305
305
.addHandler (shelf_static.createStaticHandler (outDir,
306
306
defaultDocument: _entryPath));
307
307
await shelf.serve (handler, host, port);
308
- _log. fine ('Serving $_entryPath at http://$host :$port /' );
308
+ print ('Serving $_entryPath at http://$host :$port /' );
309
309
compiler.run ();
310
310
}
311
311
312
312
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 ' );
314
314
// Trigger recompile only when requesting the HTML page.
315
315
var segments = request.url.pathSegments;
316
316
bool isEntryPage = segments.length == 0 || segments[0 ] == _entryPath;
Original file line number Diff line number Diff line change @@ -63,7 +63,21 @@ UriResolver _createImplicitEntryResolver(ResolverOptions options) {
63
63
var provider = new MemoryResourceProvider ();
64
64
provider.newFile (
65
65
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);
67
81
}
68
82
69
83
/// Creates an analysis context that contains our restricted typing rules.
Original file line number Diff line number Diff line change @@ -260,6 +260,7 @@ CompilerOptions parseOptions(List<String> argv) {
260
260
if (enableHashing == null ) {
261
261
enableHashing = serverMode;
262
262
}
263
+ // TODO(jmesserly): shouldn't level always default to warning?
263
264
var logLevel = serverMode ? Level .WARNING : Level .SEVERE ;
264
265
var levelName = args['log' ];
265
266
if (levelName != null ) {
You can’t perform that action at this time.
0 commit comments