{"action":"opened","issue":{"url":"https://api.github.com/repos/dart-lang/pub/issues/601","labels_url":"https://api.github.com/repos/dart-lang/pub/issues/601/labels{/name}","comments_url":"https://api.github.com/repos/dart-lang/pub/issues/601/comments","events_url":"https://api.github.com/repos/dart-lang/pub/issues/601/events","html_url":"https://github.com/dart-lang/pub/issues/601","id":85643955,"number":601,"title":"'pub install' dies with stack trace for bad version number","user":{"login":"DartBot","id":8958862,"avatar_url":"https://avatars.githubusercontent.com/u/8958862?v=3","gravatar_id":"","url":"https://api.github.com/users/DartBot","html_url":"https://github.com/DartBot","followers_url":"https://api.github.com/users/DartBot/followers","following_url":"https://api.github.com/users/DartBot/following{/other_user}","gists_url":"https://api.github.com/users/DartBot/gists{/gist_id}","starred_url":"https://api.github.com/users/DartBot/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/DartBot/subscriptions","organizations_url":"https://api.github.com/users/DartBot/orgs","repos_url":"https://api.github.com/users/DartBot/repos","events_url":"https://api.github.com/users/DartBot/events{/privacy}","received_events_url":"https://api.github.com/users/DartBot/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/dart-lang/pub/labels/bug","name":"bug","color":"fc2929"},{"url":"https://api.github.com/repos/dart-lang/pub/labels/Fixed","name":"Fixed","color":"ededed"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":0,"created_at":"2015-06-05T22:09:52Z","updated_at":"2015-06-05T22:09:53Z","closed_at":null,"body":"_Originally opened as dart-lang/sdk#12056_\n\n*This issue was originally filed by bslesin...&#064;gmail.com*\n_____\nI created a empty directory with the following pubspec.yaml file:\n\nname: gifencoder\nversion: 0.1\ndescription: Creates an animated gif.\nauthor: Brian Slesinsky &lt;brian-web@slesinsky.org&gt;\nhomepage: https://github.com/google/dart-gif-encoder\n\nThen selected &quot;Open Existing Folder&quot; in the Dart Editor and it died with a rather unfriendly error. I was able to confirm this running from the command line:\n\nMacintosh:~/dart/dart-gif-encoder skybrian\n$ ~/software/dart/dart-sdk/bin/pub --trace install\n0.1\n#­0      \\_JSSyntaxRegExp._ExecuteMatch (dart:core-patch/regexp_patch.dart:89:1)\n#­1      \\_JSSyntaxRegExp.firstMatch (dart:core-patch/regexp_patch.dart:54:31)\n#­2      Version.Version.parse (file:///Volumes/data/b/build/slave/dart-editor-mac-trunk/build/dart/sdk/lib/_internal/pub/lib/src/version.dart:21:47)\n#­3      \\_parseMap (file:///Volumes/data/b/build/slave/dart-editor-mac-trunk/build/dart/sdk/lib/_internal/pub/lib/src/pubspec.dart:70:19)\n#­4      Pubspec.Pubspec.parse (file:///Volumes/data/b/build/slave/dart-editor-mac-trunk/build/dart/sdk/lib/_internal/pub/lib/src/pubspec.dart:46:21)\n#­5      Pubspec.Pubspec.load (file:///Volumes/data/b/build/slave/dart-editor-mac-trunk/build/dart/sdk/lib/_internal/pub/lib/src/pubspec.dart:21:25)\n#­6      Pubspec.Pubspec.load (file:///Volumes/data/b/build/slave/dart-editor-mac-trunk/build/dart/sdk/lib/_internal/pub/lib/src/pubspec.dart:30:5)\n#­7      Package.Package.load (file:///Volumes/data/b/build/slave/dart-editor-mac-trunk/build/dart/sdk/lib/_internal/pub/lib/src/package.dart:31:106)\n#­8      Entrypoint.Entrypoint (file:///Volumes/data/b/build/slave/dart-editor-mac-trunk/build/dart/sdk/lib/_internal/pub/lib/src/entrypoint.dart:19:62)\n#­9      PubCommand.run.&lt;anonymous closure&gt; (file:///Volumes/data/b/build/slave/dart-editor-mac-trunk/build/dart/sdk/lib/_internal/pub/lib/src/command.dart:68:26)\n#­10     Future.Future.sync (dart:async/future.dart:10:31)\n#­11     PubCommand.run (file:///Volumes/data/b/build/slave/dart-editor-mac-trunk/build/dart/sdk/lib/_internal/pub/lib/src/command.dart:66:9)\n#­12     main.&lt;anonymous closure&gt; (file:///Volumes/data/b/build/slave/dart-editor-mac-trunk/build/dart/sdk/lib/_internal/pub/bin/pub.dart:72:50)\n#­13     \\_ThenFuture._zonedSendValue (dart:async/future_impl.dart:371:24)\n#­14     \\_TransformFuture._sendValue.&lt;anonymous closure&gt; (dart:async/future_impl.dart:348:48)\n#­15     \\_ZoneBase._runInZone (dart:async/zone.dart:82:17)\n#­16     \\_ZoneBase._runUnguarded (dart:async/zone.dart:102:22)\n#­17     \\_ZoneBase.executeCallback (dart:async/zone.dart:58:23)\n#­18     \\_TransformFuture._sendValue (dart:async/future_impl.dart:348:26)\n#­19     \\_FutureImpl._addListener.&lt;anonymous closure&gt; (dart:async/future_impl.dart:255:30)\n#­20     \\_asyncRunCallback (dart:async/event_loop.dart:9:15)\n#­21     \\_createTimer.&lt;anonymous closure&gt; (dart:async-patch/timer_patch.dart:8:13)\n#­22     \\_Timer._createTimerHandler._handleTimeout (timer_impl.dart:96:21)\n#­23     \\_Timer._createTimerHandler.&lt;anonymous closure&gt; (timer_impl.dart:112:23)\n#­24     \\_ReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:81:92)\n\n\n---- Log transcript ----\nFINE: Pub 0.6.9+2.r25388\nFINE: Clean up system cache temp directory /Users/skybrian/.pub-cache/_temp.\nERR : 0.1\nERR : #­0      \\_JSSyntaxRegExp._ExecuteMatch (dart:core-patch/regexp_patch.dart:89:1)\n&nbsp;&nbsp;&nbsp;&nbsp;| #­1      \\_JSSyntaxRegExp.firstMatch (dart:core-patch/regexp_patch.dart:54:31)\n&nbsp;&nbsp;&nbsp;&nbsp;| #­2      Version.Version.parse (file:///Volumes/data/b/build/slave/dart-editor-mac-trunk/build/dart/sdk/lib/_internal/pub/lib/src/version.dart:21:47)\n&nbsp;&nbsp;&nbsp;&nbsp;| #­3      \\_parseMap (file:///Volumes/data/b/build/slave/dart-editor-mac-trunk/build/dart/sdk/lib/_internal/pub/lib/src/pubspec.dart:70:19)\n&nbsp;&nbsp;&nbsp;&nbsp;| #­4      Pubspec.Pubspec.parse (file:///Volumes/data/b/build/slave/dart-editor-mac-trunk/build/dart/sdk/lib/_internal/pub/lib/src/pubspec.dart:46:21)\n&nbsp;&nbsp;&nbsp;&nbsp;| #­5      Pubspec.Pubspec.load (file:///Volumes/data/b/build/slave/dart-editor-mac-trunk/build/dart/sdk/lib/_internal/pub/lib/src/pubspec.dart:21:25)\n&nbsp;&nbsp;&nbsp;&nbsp;| #­6      Pubspec.Pubspec.load (file:///Volumes/data/b/build/slave/dart-editor-mac-trunk/build/dart/sdk/lib/_internal/pub/lib/src/pubspec.dart:30:5)\n&nbsp;&nbsp;&nbsp;&nbsp;| #­7      Package.Package.load (file:///Volumes/data/b/build/slave/dart-editor-mac-trunk/build/dart/sdk/lib/_internal/pub/lib/src/package.dart:31:106)\n&nbsp;&nbsp;&nbsp;&nbsp;| #­8      Entrypoint.Entrypoint (file:///Volumes/data/b/build/slave/dart-editor-mac-trunk/build/dart/sdk/lib/_internal/pub/lib/src/entrypoint.dart:19:62)\n&nbsp;&nbsp;&nbsp;&nbsp;| #­9      PubCommand.run.&lt;anonymous closure&gt; (file:///Volumes/data/b/build/slave/dart-editor-mac-trunk/build/dart/sdk/lib/_internal/pub/lib/src/command.dart:68:26)\n&nbsp;&nbsp;&nbsp;&nbsp;| #­10     Future.Future.sync (dart:async/future.dart:10:31)\n&nbsp;&nbsp;&nbsp;&nbsp;| #­11     PubCommand.run (file:///Volumes/data/b/build/slave/dart-editor-mac-trunk/build/dart/sdk/lib/_internal/pub/lib/src/command.dart:66:9)\n&nbsp;&nbsp;&nbsp;&nbsp;| #­12     main.&lt;anonymous closure&gt; (file:///Volumes/data/b/build/slave/dart-editor-mac-trunk/build/dart/sdk/lib/_internal/pub/bin/pub.dart:72:50)\n&nbsp;&nbsp;&nbsp;&nbsp;| #­13     \\_ThenFuture._zonedSendValue (dart:async/future_impl.dart:371:24)\n&nbsp;&nbsp;&nbsp;&nbsp;| #­14     \\_TransformFuture._sendValue.&lt;anonymous closure&gt; (dart:async/future_impl.dart:348:48)\n&nbsp;&nbsp;&nbsp;&nbsp;| #­15     \\_ZoneBase._runInZone (dart:async/zone.dart:82:17)\n&nbsp;&nbsp;&nbsp;&nbsp;| #­16     \\_ZoneBase._runUnguarded (dart:async/zone.dart:102:22)\n&nbsp;&nbsp;&nbsp;&nbsp;| #­17     \\_ZoneBase.executeCallback (dart:async/zone.dart:58:23)\n&nbsp;&nbsp;&nbsp;&nbsp;| #­18     \\_TransformFuture._sendValue (dart:async/future_impl.dart:348:26)\n&nbsp;&nbsp;&nbsp;&nbsp;| #­19     \\_FutureImpl._addListener.&lt;anonymous closure&gt; (dart:async/future_impl.dart:255:30)\n&nbsp;&nbsp;&nbsp;&nbsp;| #­20     \\_asyncRunCallback (dart:async/event_loop.dart:9:15)\n&nbsp;&nbsp;&nbsp;&nbsp;| #­21     \\_createTimer.&lt;anonymous closure&gt; (dart:async-patch/timer_patch.dart:8:13)\n&nbsp;&nbsp;&nbsp;&nbsp;| #­22     \\_Timer._createTimerHandler._handleTimeout (timer_impl.dart:96:21)\n&nbsp;&nbsp;&nbsp;&nbsp;| #­23     \\_Timer._createTimerHandler.&lt;anonymous closure&gt; (timer_impl.dart:112:23)\n&nbsp;&nbsp;&nbsp;&nbsp;| #­24     \\_ReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:81:92)\n&nbsp;&nbsp;&nbsp;&nbsp;| \n\nA bad pubspec.yaml should never result in a stack trace; it should print a line number and error message, much like a compiler does for a syntax error."}}