Scorpiion / vane

Server-side framework for Dart/Dartlang with a built-in middleware system.
BSD 3-Clause "New" or "Revised" License
59 stars 11 forks source link

Issues with Platform.script.toFilePath(), from "pub run" and Windows #18

Open Scorpiion opened 9 years ago

Scorpiion commented 9 years ago

See: https://github.com/DartVoid/Vane/blob/master/lib/src/generate_client_routes.dart#L15

This works: dart bin/server.dart

This fails: pub run bin/server.dart

Error on Linux using pub run: Unhandled exception: Unsupported operation: Cannot extract a file path from a http URI

0 Uri.toFilePath (dart:core/uri.dart:1612)

1 generateClientRoutes (package:vane/src/generate_client_routes.dart:15:43)

2 Router.Router (package:vane/src/router.dart:22:39)

3 serve (package:vane/src/serve.dart:27:23)

4 main (http://localhost:53899/server.dart:8:21)

5 _startIsolate (dart:isolate-patch/isolate_patch.dart:239)

6 _startMainIsolate. (dart:isolate-patch/isolate_patch.dart:192)

7 _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:130)

Error on Windows (assuming DartEditor, info from email report): Unhandled exception: RangeError: index (-1) must be in the range [0..0)

0 List.

1 List.removeLast (dart:core-patch/growable_array.dart:207)

2 generateClientRoutes (package:vane/src/generate_client_routes.dart:18:22)

3 Router.Router (package:vane/src/router.dart:22:39)

4 serve (package:vane/src/serve.dart:27:23)

5 main (file:///C:/Users/jacob/Documents/Vane-Angular-Chat/server/server.dart:8:21)

6 _startIsolate (dart:isolate-patch/isolate_patch.dart:239)

7 _startMainIsolate. (dart:isolate-patch/isolate_patch.dart:192)

8 _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:130)

Check how to replace Platform.script.toFilePath() in a more platform agnostic way.

Temporary fix, run with production environment variable set (see https://github.com/DartVoid/Vane/blob/master/lib/src/generate_client_routes.dart#L10): DART_PRODUCTION=true pub run bin/server.dart