Avoiding argument_type_not_assignable, return_of_invalid_type (#257)
diff --git a/protoc_plugin/lib/file_generator.dart b/protoc_plugin/lib/file_generator.dart
index 53dc2dc..8822f07 100644
--- a/protoc_plugin/lib/file_generator.dart
+++ b/protoc_plugin/lib/file_generator.dart
@@ -565,7 +565,7 @@
// Generated code. Do not modify.
// source: ${descriptor.name}
///
-// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name
+// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name,return_of_invalid_type
''');
}
diff --git a/protoc_plugin/lib/grpc_generator.dart b/protoc_plugin/lib/grpc_generator.dart
index 2420df7..084452d 100644
--- a/protoc_plugin/lib/grpc_generator.dart
+++ b/protoc_plugin/lib/grpc_generator.dart
@@ -251,7 +251,7 @@
if (_clientStreaming) return;
out.addBlock(
- '$_serverReturnType ${_dartName}_Pre($_serviceCall call, $_future request) async${_serverStreaming ? '*' : ''} {',
+ '$_serverReturnType ${_dartName}_Pre($_serviceCall call, $_future<$_requestType> request) async${_serverStreaming ? '*' : ''} {',
'}', () {
if (_serverStreaming) {
out.println(
diff --git a/protoc_plugin/lib/src/dart_options.pb.dart b/protoc_plugin/lib/src/dart_options.pb.dart
index abcd30c..2f3d556 100644
--- a/protoc_plugin/lib/src/dart_options.pb.dart
+++ b/protoc_plugin/lib/src/dart_options.pb.dart
@@ -2,7 +2,7 @@
// Generated code. Do not modify.
// source: dart_options.proto
///
-// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name
+// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name,return_of_invalid_type
import 'dart:core' as $core
show bool, Deprecated, double, int, List, Map, override, pragma, String;
diff --git a/protoc_plugin/lib/src/descriptor.pb.dart b/protoc_plugin/lib/src/descriptor.pb.dart
index 44d8800..a2f4b8f 100644
--- a/protoc_plugin/lib/src/descriptor.pb.dart
+++ b/protoc_plugin/lib/src/descriptor.pb.dart
@@ -2,7 +2,7 @@
// Generated code. Do not modify.
// source: descriptor.proto
///
-// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name
+// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name,return_of_invalid_type
import 'dart:core' as $core
show bool, Deprecated, double, int, List, Map, override, pragma, String;
diff --git a/protoc_plugin/lib/src/descriptor.pbenum.dart b/protoc_plugin/lib/src/descriptor.pbenum.dart
index 6ffe823..ed243e2 100644
--- a/protoc_plugin/lib/src/descriptor.pbenum.dart
+++ b/protoc_plugin/lib/src/descriptor.pbenum.dart
@@ -2,7 +2,7 @@
// Generated code. Do not modify.
// source: descriptor.proto
///
-// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name
+// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name,return_of_invalid_type
// ignore_for_file: UNDEFINED_SHOWN_NAME,UNUSED_SHOWN_NAME
import 'dart:core' as $core show int, dynamic, String, List, Map;
diff --git a/protoc_plugin/lib/src/plugin.pb.dart b/protoc_plugin/lib/src/plugin.pb.dart
index 452d925..1459a87 100644
--- a/protoc_plugin/lib/src/plugin.pb.dart
+++ b/protoc_plugin/lib/src/plugin.pb.dart
@@ -2,7 +2,7 @@
// Generated code. Do not modify.
// source: plugin.proto
///
-// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name
+// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name,return_of_invalid_type
import 'dart:core' as $core
show bool, Deprecated, double, int, List, Map, override, pragma, String;
diff --git a/protoc_plugin/test/goldens/grpc_service.pb b/protoc_plugin/test/goldens/grpc_service.pb
index cb82adc..c5a3291 100644
--- a/protoc_plugin/test/goldens/grpc_service.pb
+++ b/protoc_plugin/test/goldens/grpc_service.pb
@@ -2,7 +2,7 @@
// Generated code. Do not modify.
// source: test
///
-// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name
+// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name,return_of_invalid_type
import 'dart:core' as $core show bool, Deprecated, double, int, List, Map, override, pragma, String;
diff --git a/protoc_plugin/test/goldens/grpc_service.pbgrpc b/protoc_plugin/test/goldens/grpc_service.pbgrpc
index 49a0758..995209a 100644
--- a/protoc_plugin/test/goldens/grpc_service.pbgrpc
+++ b/protoc_plugin/test/goldens/grpc_service.pbgrpc
@@ -2,7 +2,7 @@
// Generated code. Do not modify.
// source: test
///
-// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name
+// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name,return_of_invalid_type
import 'dart:async' as $async;
@@ -97,12 +97,12 @@
}
$async.Future<$0.Output> unary_Pre(
- $grpc.ServiceCall call, $async.Future request) async {
+ $grpc.ServiceCall call, $async.Future<$0.Input> request) async {
return unary(call, await request);
}
$async.Stream<$0.Output> serverStreaming_Pre(
- $grpc.ServiceCall call, $async.Future request) async* {
+ $grpc.ServiceCall call, $async.Future<$0.Input> request) async* {
yield* serverStreaming(call, (await request) as $0.Input);
}
diff --git a/protoc_plugin/test/goldens/header_in_package.pb b/protoc_plugin/test/goldens/header_in_package.pb
index bfd1dc0..09a2473 100644
--- a/protoc_plugin/test/goldens/header_in_package.pb
+++ b/protoc_plugin/test/goldens/header_in_package.pb
@@ -2,7 +2,7 @@
// Generated code. Do not modify.
// source: test
///
-// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name
+// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name,return_of_invalid_type
import 'dart:core' as $core show bool, Deprecated, double, int, List, Map, override, pragma, String;
diff --git a/protoc_plugin/test/goldens/header_with_fixnum.pb b/protoc_plugin/test/goldens/header_with_fixnum.pb
index e354c83..e6e2bef 100644
--- a/protoc_plugin/test/goldens/header_with_fixnum.pb
+++ b/protoc_plugin/test/goldens/header_with_fixnum.pb
@@ -2,7 +2,7 @@
// Generated code. Do not modify.
// source: test
///
-// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name
+// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name,return_of_invalid_type
import 'dart:core' as $core show bool, Deprecated, double, int, List, Map, override, pragma, String;
diff --git a/protoc_plugin/test/goldens/imports.pb b/protoc_plugin/test/goldens/imports.pb
index d1994d1..be49709 100644
--- a/protoc_plugin/test/goldens/imports.pb
+++ b/protoc_plugin/test/goldens/imports.pb
@@ -2,7 +2,7 @@
// Generated code. Do not modify.
// source: test.proto
///
-// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name
+// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name,return_of_invalid_type
import 'dart:core' as $core show bool, Deprecated, double, int, List, Map, override, pragma, String;
diff --git a/protoc_plugin/test/goldens/imports.pbjson b/protoc_plugin/test/goldens/imports.pbjson
index 787093f..e2a14cf 100644
--- a/protoc_plugin/test/goldens/imports.pbjson
+++ b/protoc_plugin/test/goldens/imports.pbjson
@@ -2,5 +2,5 @@
// Generated code. Do not modify.
// source: test.proto
///
-// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name
+// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name,return_of_invalid_type
diff --git a/protoc_plugin/test/goldens/oneMessage.pb b/protoc_plugin/test/goldens/oneMessage.pb
index 388ff0e..657a825 100644
--- a/protoc_plugin/test/goldens/oneMessage.pb
+++ b/protoc_plugin/test/goldens/oneMessage.pb
@@ -2,7 +2,7 @@
// Generated code. Do not modify.
// source: test
///
-// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name
+// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name,return_of_invalid_type
import 'dart:core' as $core show bool, Deprecated, double, int, List, Map, override, pragma, String;
diff --git a/protoc_plugin/test/goldens/oneMessage.pb.meta b/protoc_plugin/test/goldens/oneMessage.pb.meta
index 546cc81..7408e52 100644
--- a/protoc_plugin/test/goldens/oneMessage.pb.meta
+++ b/protoc_plugin/test/goldens/oneMessage.pb.meta
@@ -2,15 +2,15 @@
path: 4
path: 0
sourceFile: test
- begin: 334
- end: 345
+ begin: 357
+ end: 368
}
annotation: {
path: 4
path: 0
sourceFile: test
- begin: 583
- end: 594
+ begin: 606
+ end: 617
}
annotation: {
path: 4
@@ -18,8 +18,8 @@
path: 2
path: 0
sourceFile: test
- begin: 1511
- end: 1517
+ begin: 1534
+ end: 1540
}
annotation: {
path: 4
@@ -27,8 +27,8 @@
path: 2
path: 0
sourceFile: test
- begin: 1542
- end: 1548
+ begin: 1565
+ end: 1571
}
annotation: {
path: 4
@@ -36,8 +36,8 @@
path: 2
path: 0
sourceFile: test
- begin: 1601
- end: 1610
+ begin: 1624
+ end: 1633
}
annotation: {
path: 4
@@ -45,8 +45,8 @@
path: 2
path: 0
sourceFile: test
- begin: 1633
- end: 1644
+ begin: 1656
+ end: 1667
}
annotation: {
path: 4
@@ -54,8 +54,8 @@
path: 2
path: 1
sourceFile: test
- begin: 1682
- end: 1686
+ begin: 1705
+ end: 1709
}
annotation: {
path: 4
@@ -63,8 +63,8 @@
path: 2
path: 1
sourceFile: test
- begin: 1709
- end: 1713
+ begin: 1732
+ end: 1736
}
annotation: {
path: 4
@@ -72,8 +72,8 @@
path: 2
path: 1
sourceFile: test
- begin: 1768
- end: 1775
+ begin: 1791
+ end: 1798
}
annotation: {
path: 4
@@ -81,8 +81,8 @@
path: 2
path: 1
sourceFile: test
- begin: 1798
- end: 1807
+ begin: 1821
+ end: 1830
}
annotation: {
path: 4
@@ -90,8 +90,8 @@
path: 2
path: 2
sourceFile: test
- begin: 1848
- end: 1852
+ begin: 1871
+ end: 1875
}
annotation: {
path: 4
@@ -99,8 +99,8 @@
path: 2
path: 2
sourceFile: test
- begin: 1879
- end: 1883
+ begin: 1902
+ end: 1906
}
annotation: {
path: 4
@@ -108,8 +108,8 @@
path: 2
path: 2
sourceFile: test
- begin: 1936
- end: 1943
+ begin: 1959
+ end: 1966
}
annotation: {
path: 4
@@ -117,6 +117,6 @@
path: 2
path: 2
sourceFile: test
- begin: 1966
- end: 1975
+ begin: 1989
+ end: 1998
}
diff --git a/protoc_plugin/test/goldens/oneMessage.pbjson b/protoc_plugin/test/goldens/oneMessage.pbjson
index b3c1ec3..0e45f49 100644
--- a/protoc_plugin/test/goldens/oneMessage.pbjson
+++ b/protoc_plugin/test/goldens/oneMessage.pbjson
@@ -2,7 +2,7 @@
// Generated code. Do not modify.
// source: test
///
-// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name
+// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name,return_of_invalid_type
const PhoneNumber$json = const {
'1': 'PhoneNumber',
diff --git a/protoc_plugin/test/goldens/service.pb b/protoc_plugin/test/goldens/service.pb
index 62db6e5..9dad753 100644
--- a/protoc_plugin/test/goldens/service.pb
+++ b/protoc_plugin/test/goldens/service.pb
@@ -2,7 +2,7 @@
// Generated code. Do not modify.
// source: test
///
-// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name
+// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name,return_of_invalid_type
import 'dart:async' as $async;
import 'dart:core' as $core show bool, Deprecated, double, int, List, Map, override, pragma, String;
diff --git a/protoc_plugin/test/goldens/service.pbserver b/protoc_plugin/test/goldens/service.pbserver
index 53aa91a..1ed6038 100644
--- a/protoc_plugin/test/goldens/service.pbserver
+++ b/protoc_plugin/test/goldens/service.pbserver
@@ -2,7 +2,7 @@
// Generated code. Do not modify.
// source: test
///
-// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name
+// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name,return_of_invalid_type
import 'dart:async' as $async;
diff --git a/protoc_plugin/test/goldens/serviceGenerator.pb.json b/protoc_plugin/test/goldens/serviceGenerator.pb.json
index 2f38a4d..faa6ca4 100644
--- a/protoc_plugin/test/goldens/serviceGenerator.pb.json
+++ b/protoc_plugin/test/goldens/serviceGenerator.pb.json
@@ -2,7 +2,7 @@
// Generated code. Do not modify.
// source: testpkg.proto
///
-// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name
+// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name,return_of_invalid_type
import 'foobar.pbjson.dart' as $1;
diff --git a/protoc_plugin/test/goldens/topLevelEnum.pb b/protoc_plugin/test/goldens/topLevelEnum.pb
index e533ebb..0212621 100644
--- a/protoc_plugin/test/goldens/topLevelEnum.pb
+++ b/protoc_plugin/test/goldens/topLevelEnum.pb
@@ -2,7 +2,7 @@
// Generated code. Do not modify.
// source: test
///
-// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name
+// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name,return_of_invalid_type
import 'dart:core' as $core show bool, Deprecated, double, int, List, Map, override, pragma, String;
diff --git a/protoc_plugin/test/goldens/topLevelEnum.pbenum b/protoc_plugin/test/goldens/topLevelEnum.pbenum
index 3c1491e..cea907f 100644
--- a/protoc_plugin/test/goldens/topLevelEnum.pbenum
+++ b/protoc_plugin/test/goldens/topLevelEnum.pbenum
@@ -2,7 +2,7 @@
// Generated code. Do not modify.
// source: test
///
-// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name
+// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name,return_of_invalid_type
// ignore_for_file: UNDEFINED_SHOWN_NAME,UNUSED_SHOWN_NAME
import 'dart:core' as $core show int, dynamic, String, List, Map;
diff --git a/protoc_plugin/test/goldens/topLevelEnum.pbenum.meta b/protoc_plugin/test/goldens/topLevelEnum.pbenum.meta
index 8a767c1..54adaed 100644
--- a/protoc_plugin/test/goldens/topLevelEnum.pbenum.meta
+++ b/protoc_plugin/test/goldens/topLevelEnum.pbenum.meta
@@ -2,8 +2,8 @@
path: 5
path: 0
sourceFile: test
- begin: 357
- end: 366
+ begin: 380
+ end: 389
}
annotation: {
path: 5
@@ -11,8 +11,8 @@
path: 2
path: 0
sourceFile: test
- begin: 419
- end: 425
+ begin: 442
+ end: 448
}
annotation: {
path: 5
@@ -20,8 +20,8 @@
path: 2
path: 1
sourceFile: test
- begin: 479
- end: 483
+ begin: 502
+ end: 506
}
annotation: {
path: 5
@@ -29,8 +29,8 @@
path: 2
path: 2
sourceFile: test
- begin: 535
- end: 539
+ begin: 558
+ end: 562
}
annotation: {
path: 5
@@ -38,6 +38,6 @@
path: 2
path: 3
sourceFile: test
- begin: 592
- end: 600
+ begin: 615
+ end: 623
}
diff --git a/protoc_plugin/test/goldens/topLevelEnum.pbjson b/protoc_plugin/test/goldens/topLevelEnum.pbjson
index e58f903..4f20ca0 100644
--- a/protoc_plugin/test/goldens/topLevelEnum.pbjson
+++ b/protoc_plugin/test/goldens/topLevelEnum.pbjson
@@ -2,7 +2,7 @@
// Generated code. Do not modify.
// source: test
///
-// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name
+// ignore_for_file: camel_case_types,non_constant_identifier_names,library_prefixes,unused_import,unused_shown_name,return_of_invalid_type
const PhoneType$json = const {
'1': 'PhoneType',