{"action":"created","issue":{"url":"https://api.github.com/repos/dart-lang/sdk/issues/32564","repository_url":"https://api.github.com/repos/dart-lang/sdk","labels_url":"https://api.github.com/repos/dart-lang/sdk/issues/32564/labels{/name}","comments_url":"https://api.github.com/repos/dart-lang/sdk/issues/32564/comments","events_url":"https://api.github.com/repos/dart-lang/sdk/issues/32564/events","html_url":"https://github.com/dart-lang/sdk/issues/32564","id":306240549,"number":32564,"title":"improve type error messages to facilitate Dart 2 migration","user":{"login":"mraleph","id":131846,"avatar_url":"https://avatars3.githubusercontent.com/u/131846?v=4","gravatar_id":"","url":"https://api.github.com/users/mraleph","html_url":"https://github.com/mraleph","followers_url":"https://api.github.com/users/mraleph/followers","following_url":"https://api.github.com/users/mraleph/following{/other_user}","gists_url":"https://api.github.com/users/mraleph/gists{/gist_id}","starred_url":"https://api.github.com/users/mraleph/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mraleph/subscriptions","organizations_url":"https://api.github.com/users/mraleph/orgs","repos_url":"https://api.github.com/users/mraleph/repos","events_url":"https://api.github.com/users/mraleph/events{/privacy}","received_events_url":"https://api.github.com/users/mraleph/received_events","type":"User","site_admin":false},"labels":[{"id":265663677,"url":"https://api.github.com/repos/dart-lang/sdk/labels/Customer-Flutter","name":"Customer-Flutter","color":"006b75","default":false},{"id":334529267,"url":"https://api.github.com/repos/dart-lang/sdk/labels/Type:%20enhancement","name":"Type: enhancement","color":"ededed","default":false},{"id":219928165,"url":"https://api.github.com/repos/dart-lang/sdk/labels/area-vm","name":"area-vm","color":"c7def8","default":false}],"state":"closed","locked":false,"assignee":{"login":"crelier","id":8620091,"avatar_url":"https://avatars3.githubusercontent.com/u/8620091?v=4","gravatar_id":"","url":"https://api.github.com/users/crelier","html_url":"https://github.com/crelier","followers_url":"https://api.github.com/users/crelier/followers","following_url":"https://api.github.com/users/crelier/following{/other_user}","gists_url":"https://api.github.com/users/crelier/gists{/gist_id}","starred_url":"https://api.github.com/users/crelier/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/crelier/subscriptions","organizations_url":"https://api.github.com/users/crelier/orgs","repos_url":"https://api.github.com/users/crelier/repos","events_url":"https://api.github.com/users/crelier/events{/privacy}","received_events_url":"https://api.github.com/users/crelier/received_events","type":"User","site_admin":false},"assignees":[{"login":"crelier","id":8620091,"avatar_url":"https://avatars3.githubusercontent.com/u/8620091?v=4","gravatar_id":"","url":"https://api.github.com/users/crelier","html_url":"https://github.com/crelier","followers_url":"https://api.github.com/users/crelier/followers","following_url":"https://api.github.com/users/crelier/following{/other_user}","gists_url":"https://api.github.com/users/crelier/gists{/gist_id}","starred_url":"https://api.github.com/users/crelier/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/crelier/subscriptions","organizations_url":"https://api.github.com/users/crelier/orgs","repos_url":"https://api.github.com/users/crelier/repos","events_url":"https://api.github.com/users/crelier/events{/privacy}","received_events_url":"https://api.github.com/users/crelier/received_events","type":"User","site_admin":false}],"milestone":null,"comments":2,"created_at":"2018-03-18T13:30:56Z","updated_at":"2018-03-28T17:27:20Z","closed_at":"2018-03-28T17:16:00Z","author_association":"CONTRIBUTOR","body":"`type '_Future' is not a subtype of type 'Future<bool>' where` errors are quite confusing for various reasons. Most common source of confusion are due to: \r\n\r\n* `<dynamic>` is omitted;\r\n* `_Future` is an internal implementation type;\r\n* why is  this not caught in compile time? \r\n\r\nI suggest we try to improve this message like this:\r\n\r\n```\r\nvalue of type '_Future<dynamic>', implements 'Future<dynamic>' and not 'Future<bool>', which is expected here.\r\n\r\nNote that in Dart 2 dynamic is no longer a wildcard type. See http://dartlang.org/xyz for more details about this issue and how to address it. \r\n```\r\n\r\nBased on flutter/flutter#15654 and other similar issues.\r\n\r\n/cc @leafpetersen @a-siva @crelier "},"comment":{"url":"https://api.github.com/repos/dart-lang/sdk/issues/comments/376968726","html_url":"https://github.com/dart-lang/sdk/issues/32564#issuecomment-376968726","issue_url":"https://api.github.com/repos/dart-lang/sdk/issues/32564","id":376968726,"user":{"login":"lovasoa","id":552629,"avatar_url":"https://avatars1.githubusercontent.com/u/552629?v=4","gravatar_id":"","url":"https://api.github.com/users/lovasoa","html_url":"https://github.com/lovasoa","followers_url":"https://api.github.com/users/lovasoa/followers","following_url":"https://api.github.com/users/lovasoa/following{/other_user}","gists_url":"https://api.github.com/users/lovasoa/gists{/gist_id}","starred_url":"https://api.github.com/users/lovasoa/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lovasoa/subscriptions","organizations_url":"https://api.github.com/users/lovasoa/orgs","repos_url":"https://api.github.com/users/lovasoa/repos","events_url":"https://api.github.com/users/lovasoa/events{/privacy}","received_events_url":"https://api.github.com/users/lovasoa/received_events","type":"User","site_admin":false},"created_at":"2018-03-28T17:27:20Z","updated_at":"2018-03-28T17:27:20Z","author_association":"NONE","body":"@crelier why not add a simple explanation or link explaining why A<dynamic> is not converted to A<MyType>? When coming from another language, it is confusing to get runtime errors about this. It would have saved me a lot of time when I first ran into this issue. "}}
{"actor":{"display_login":"lovasoa"}}