Sync from internal repo. (#101)
* Dart 2 fix.
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 9bb9fde..1ae3eb3 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,7 @@
+## 0.7.11 - 2018-04-09
+
+* Dart 2 fix.
+
## 0.7.10 - 2018-02-22
* Small performance tweak for DDC.
diff --git a/lib/grpc_generator.dart b/lib/grpc_generator.dart
index 7a7ec32..e1eaa6c 100644
--- a/lib/grpc_generator.dart
+++ b/lib/grpc_generator.dart
@@ -250,10 +250,11 @@
if (_clientStreaming) return;
out.addBlock(
- '$_serverReturnType ${_dartName}_Pre(ServiceCall call, Future<$_requestType> request) async${_serverStreaming ? '*' : ''} {',
+ '$_serverReturnType ${_dartName}_Pre(ServiceCall call, Future request) async${_serverStreaming ? '*' : ''} {',
'}', () {
if (_serverStreaming) {
- out.println('yield* $_dartName(call, await request);');
+ out.println(
+ 'yield* $_dartName(call, (await request) as $_requestType);');
} else {
out.println('return $_dartName(call, await request);');
}
diff --git a/pubspec.yaml b/pubspec.yaml
index 127215d..b7597ff 100644
--- a/pubspec.yaml
+++ b/pubspec.yaml
@@ -1,5 +1,5 @@
name: protoc_plugin
-version: 0.7.10
+version: 0.7.11
author: Dart Team <misc@dartlang.org>
description: Protoc compiler plugin to generate Dart code
homepage: https://github.com/dart-lang/dart-protoc-plugin
diff --git a/test/file_generator_test.dart b/test/file_generator_test.dart
index 66bd9ce..2106147 100644
--- a/test/file_generator_test.dart
+++ b/test/file_generator_test.dart
@@ -593,13 +593,12 @@
(Output value) => value.writeToBuffer()));
}
- Future<Output> unary_Pre(ServiceCall call, Future<Input> request) async {
+ Future<Output> unary_Pre(ServiceCall call, Future request) async {
return unary(call, await request);
}
- Stream<Output> serverStreaming_Pre(
- ServiceCall call, Future<Input> request) async* {
- yield* serverStreaming(call, await request);
+ Stream<Output> serverStreaming_Pre(ServiceCall call, Future request) async* {
+ yield* serverStreaming(call, (await request) as Input);
}
Future<Output> unary(ServiceCall call, Input request);