Ankur Jain
c48af638a5
Support message compression ( #409 )
...
* Added support for compression/decompression, which can be configured through
`ChannelOptions` constructor's `codecRegistry` parameter or adding the
`grpc-accept-encoding` to `metadata` parameter of `CallOptions` on the client
side and `codecRegistry` parameter to `Server` on the server side.
Outgoing rpc can be compressed using the `compression` parameter on the
`CallOptions`.
Closes #6
2020-12-11 09:52:24 +01:00
Kevin Moore
e51c5a3d5d
Add weekly cron to GitHub workflow ( #407 )
...
Make sure we keep working as we roll new dev releases
2020-12-03 20:25:27 +01:00
Vyacheslav Egorov
5b0e9429b8
Release 2.8.0 ( #399 )
2020-11-12 12:53:46 +01:00
Isaac Saldana
275cc544c9
Fix concurrent modification error in GrpcWebClientChannel.terminate
...
Fixes #331
Co-authored-by: Vyacheslav Egorov <vegorov@google.com>
2020-11-12 12:52:04 +01:00
Vyacheslav Egorov
f1c475603f
Cleanups ( #398 )
...
* Regenerate protobuf files using newest protoc plugin
* Fix lints everywhere
* Remove visibleForTesting from profile.dart
2020-11-12 11:36:59 +01:00
Vyacheslav Egorov
e634f9749f
Fix for duplicate headers ( #397 )
2020-11-12 09:51:57 +01:00
Ben Konyi
b8197a5897
Add timeline logging to grpc client ( #392 )
...
Co-authored-by: Zichang Guo <zichangguo@google.com>
2020-11-11 15:51:16 +01:00
Zbigniew Mandziejewicz
8b71a9dab2
Ensure CallOptions merge preserves Web specific options
2020-11-11 15:49:39 +01:00
Lei Liu
52bea07000
Add support for unix domain sockets ( #327 )
...
Fixes #299
2020-11-11 15:43:05 +01:00
Michael Thomsen
5b3a125914
Fix badge in readme ( #391 )
2020-11-04 09:38:16 +01:00
Vyacheslav Egorov
1ea269916d
Remove Travis ( #393 )
2020-11-04 08:39:40 +01:00
Vyacheslav Egorov
4d55137ef4
Enable Web tests and make sure to install right channel ( #390 )
2020-11-04 08:33:18 +01:00
Michael Thomsen
3a1c57530f
Update README.md ( #388 )
2020-11-03 23:09:17 +01:00
Michael Thomsen
0c4d83ab7a
Update dart.yml: Add matrix for 'analyze' job ( #389 )
2020-11-03 23:08:06 +01:00
Vyacheslav Egorov
63f551b14b
Update dart.yml ( #387 )
2020-11-03 22:49:23 +01:00
Michael Thomsen
8e353d4675
Create dart.yml ( #383 )
2020-11-03 22:12:47 +01:00
Vyacheslav Egorov
cb1c0ea8b3
Update pubspec.yaml, CHANGELOG.md and expand deprecation notice ( #378 )
...
* Opt grpc_web_server.dart out of NNBD.
2020-11-03 14:21:04 +01:00
Zbigniew Mandziejewicz
9f83e124e9
feat: support client interceptors ( #338 )
...
* Added support for client interceptors, which can be configured through
Client constructor's interceptors parameter. Interceptors will be
executed by Client.$createStreamingCall and Client.$createUnaryCall.
Using interceptors requires regenerating client stubs using version 19.2.0 or
newer of protobuf compiler plugin.
* Client.$createCall is deprecated because it does not invoke client
interceptors.
2020-11-02 11:13:56 +01:00
Vyacheslav Egorov
0589503800
Bump SDK constraint and add dependency on fixnum ( #377 )
2020-10-30 12:04:57 +01:00
Sigurd Meldgaard
21529c6be7
Don't print from server ( #212 )
...
Co-authored-by: Vyacheslav Egorov <vegorov@google.com>
2020-10-29 12:57:47 +01:00
Vyacheslav Egorov
7ea15a8160
Propagate cancellation from responses stream to the call ( #376 )
...
It is not enough to just cancel the subscription.
Fixes #368
2020-10-29 12:56:49 +01:00
Andrew Coutts
b6e40c34e3
Add decoded grpc-status-details-bin details to GrpcError ( #349 )
...
Closes #209
2020-10-27 17:07:58 +01:00
Rui Craveiro
3d731e0690
Call to onMetadata handles exceptions ( #342 )
...
Co-authored-by: Vyacheslav Egorov <vegorov@google.com>
2020-10-26 15:39:49 +01:00
Vyacheslav Egorov
2957ec003f
Add a simple end-to-end gRPC-web test ( #354 )
...
We did not have any before which allowed for regressions like #306 to
slip through. Unfortunately we can't test gRPC-web implementation
in pure Dart because we don't have a server side implementation of
the protocol. Instead we add a dependency on the third party
gRPC-web proxy (grpcwebproxy by Improbable Engineering - the choice made
purely based on the simplicity of installation) which forwards all
request gRPC server (written in Dart).
2020-10-25 12:53:53 +01:00
Michael R Fairhurst
e2f3d74087
Remove unused dart:async imports ( #358 )
...
Since Dart 2.1, Future and Stream have been exported from dart:core
2020-10-25 12:43:15 +01:00
Vyacheslav Egorov
f593d21694
Revert "Fix for Windows Travis builds" ( #370 )
...
This reverts commit dd34af2de4
.
2020-10-13 09:08:29 +02:00
Nic Hite
fa6b127dca
Create gRPC servers and clients with TransportConnections. ( #364 )
...
* Create gRPC servers and clients with TransportConnections.
* switch class ordering to put base class first.
2020-10-05 19:34:39 -07:00
Vyacheslav Egorov
831f5d8cfb
Revert "Not to fail pending requests, just reschedule it ( #303 )" ( #366 )
...
This reverts commit 9ed03b6b96
.
This change prevents client from gracefully handling connection issues and instead just makes it infinitely trying to reconnect.
Closes #339
2020-10-02 22:22:33 +02:00
Nic Hite
a657916168
Add client validation to server credentials ( #363 )
...
* Add ability to validate clients to server credentials.
2020-09-29 11:55:28 -07:00
Nic Hite
a774583de0
Beef up exception handling in gRPC code. ( #360 )
...
* Beef up exception handling in gRPC code.
* Verify default stacktrace isn't used in exceptions
2020-09-29 01:01:18 -07:00
Nic Hite
bb4eab0f1f
Add browser features to Dart gRPC-web for parity with JS implementation. ( #347 )
...
* Add bypassCorsPreflight capability to gRPC-web Dart.
* fix tests and run dartfmt.
* remove print statement
* dartfmt
* Update pubspec.
* Fix changelog.
* Fix tests
* final dartfmt
* Respond to requested changes.
* revert extra newline in changelog
Co-authored-by: Michael Thomsen <mit@google.com>
2020-09-24 21:52:35 -07:00
Vyacheslav Egorov
dd34af2de4
Fix for Windows Travis builds ( #359 )
...
This works around the issue with googlechrome package.
This package downloads an installer from official Google build source
which provides only the latest version. Whenever a new build is
published Chocolatey package needs to be updated to resolve
hash mismatch between new installer and what is hardcoded into the
package itself. Usually this happens automatically but
currently the package is stuck in moderation breaking
normal installation flow.
We work around the issue by hardcoding the hash for the
current installer version.
2020-09-23 11:37:14 +02:00
Vyacheslav Egorov
b70f069671
Prepare to publish 2.2.3 ( #355 )
2020-09-21 12:18:36 +02:00
Wayne Li
afacaa30e0
Remove check for SecurityContext.alpnSupported in security#createSecurityContext ( #353 )
...
Co-authored-by: Vyacheslav Egorov <vegorov@google.com>
2020-09-18 10:29:09 +02:00
Vyacheslav Egorov
17a40219ba
Regenerate certificates used by tests. ( #352 )
...
Current certificates don't pass verification on Mac OS X Catalina
making it impossible to run test suite on Mac laptops.
2020-09-18 10:27:36 +02:00
Vyacheslav Egorov
3414356950
Revert "Support grpc-web in pure dart ( #287 )" ( #351 )
...
This reverts commit c513e1467f
.
The original commit has broken streaming due to limitations of package:http.
2020-09-17 10:59:15 -07:00
Patrice Chalin
6fa4616bac
Example: route guide client cleanup ( #350 )
...
Match the tutorial code: the `channel` variable should be a local variable rather than a member of `Client`.
2020-09-16 14:18:17 +02:00
Mehmet Fidanboylu
ad2c0f6f3e
Use SecureSocket.connect directly if there's no authority in Credentials ( #343 )
2020-08-27 15:06:54 -07:00
Patrice Chalin
5891eb81bb
Relax crypto version constraint (for Flutter) ( #322 )
2020-08-04 10:19:36 +02:00
Patrice Chalin
3d9c8c760c
Fix typo in changelog: grpc-web.dart -> grpc_web.dart ( #323 )
2020-08-03 22:22:11 +02:00
Patrice Chalin
ae0a7df169
README rework: link into language/dart page on grpc.io etc ( #324 )
2020-08-03 15:50:55 +02:00
Koichi Ishida
e4947e2909
Encode server error message ( #330 )
2020-07-24 10:20:23 +02:00
Koichi Ishida
98ff843751
Decode gRPC error message ( #326 )
2020-07-20 16:11:19 +02:00
Sigurd Meldgaard
27d9164f28
Add direct dependency to package:crypto. ( #316 )
2020-06-11 14:33:23 +02:00
Jonas Finnemann Jensen
449faa80ee
Added Application Default Credentials Support ( #315 )
...
* Application Default Credentials support
* Prepare a 2.2.0 release of grpc
* Update CHANGELOG.md
Co-authored-by: Sigurd Meldgaard <sigurdm@google.com>
Co-authored-by: Sigurd Meldgaard <sigurdm@google.com>
2020-06-11 14:18:30 +02:00
Oleg Maslovsky
9ed03b6b96
Not to fail pending requests, just reschedule it ( #303 )
2020-06-08 10:16:00 +02:00
Robson Araujo
c513e1467f
Support grpc-web in pure dart ( #287 )
...
By using package:http for making connections.
2020-05-12 09:01:36 +02:00
Sigurd Meldgaard
39c751128c
Use tcpNoDelay option for sockets ( #298 )
2020-05-11 12:47:15 +02:00
Jia Hao
03ecb84064
Export more symbols in grpc_connection_interface.dart ( #292 )
...
To create an alternate implementation of ClientChannel, we currently need to import symbols from lib/src which are "private" to the package. This change exports them as part of the public API.
2020-04-16 10:34:59 +02:00
Patrice Chalin
4ba2a13b16
Fix typo in example README ( #288 )
2020-03-30 12:42:58 +02:00