Avoid completing multiplet times for one error (#454)

Also:
* updated SDK constraint to stable
* Use latest Dart action install
* Test on oldest supported SDK
This commit is contained in:
Kevin Moore 2021-03-08 09:55:59 -08:00 committed by GitHub
parent def1a19339
commit ee0e7ec351
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 16 additions and 12 deletions

View File

@ -16,12 +16,12 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
sdk: [dev, beta]
sdk: [dev, 2.12.0]
steps:
- uses: actions/checkout@v2
- uses: cedx/setup-dart@v2
- uses: dart-lang/setup-dart@v1.0
with:
release-channel: ${{ matrix.sdk }}
sdk: ${{ matrix.sdk }}
- name: Report version
run: dart --version
- name: Install dependencies
@ -50,7 +50,7 @@ jobs:
strategy:
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
sdk: [dev, beta]
sdk: [dev, 2.12.0]
platform: [vm, chrome]
exclude:
# We only run Chrome tests on Linux. No need to run them
@ -61,9 +61,9 @@ jobs:
platform: chrome
steps:
- uses: actions/checkout@v2
- uses: cedx/setup-dart@v2
- uses: dart-lang/setup-dart@v1.0
with:
release-channel: ${{ matrix.sdk }}
sdk: ${{ matrix.sdk }}
- name: Report version
run: dart --version
- name: Install envoy

View File

@ -1,3 +1,5 @@
## 3.0.1-dev
## 3.0.0
* Migrate library and tests to null safety.

View File

@ -1108,12 +1108,14 @@ class Tester {
}
call.cancel();
}, onError: (e) {
if (e is! GrpcError) completer.completeError('Unexpected error: $e.');
if (e.code != StatusCode.cancelled) {
if (e is! GrpcError) {
completer.completeError('Unexpected error: $e.');
} else if (e.code != StatusCode.cancelled) {
completer
.completeError('Unexpected status code ${e.code}: ${e.message}.');
} else {
completer.complete(true);
}
completer.complete(true);
}, onDone: () {
if (!completer.isCompleted) completer.completeError('Expected error.');
});

View File

@ -1,12 +1,12 @@
name: grpc
description: Dart implementation of gRPC, a high performance, open-source universal RPC framework.
version: 3.0.0
version: 3.0.1-dev
repository: https://github.com/grpc/grpc-dart
environment:
sdk: '>=2.12.0-0 <3.0.0'
sdk: '>=2.12.0 <3.0.0'
dependencies:
archive: ^3.0.0
@ -22,7 +22,7 @@ dependencies:
dev_dependencies:
build_runner: ^1.11.0
build_test: ^1.3.4
mockito: ^5.0.0-nullsafety.6
mockito: ^5.0.0
path: ^1.8.0
test: ^1.16.0
stream_channel: ^2.1.0