Commit Graph

113 Commits

Author SHA1 Message Date
Devon Carew 79f277e7b9
export additional generated protobuf symbols (#792)
* export additional generated protobuf symbols

* update changelog

* bump to a new minor version (4.2.0)
2025-06-24 18:51:21 +02:00
Devon Carew 4e35b1689d
update deps; simplify analysis options (#790)
* update deps; simplify analysis options

* update package version

* require dart 3.8; upgrade other deps

* dartfmt

---------

Co-authored-by: Moritz <mosum@google.com>
2025-06-20 17:27:49 +02:00
Thomas Hareau d297a29cb7
Add server interceptor acting as a middleware (#762)
* Add server interceptor acting as a middleware

* Remove unused import

* Add changelog entry

* Inline variable

* Bump version

* Fix infinite recursion
2025-05-23 09:01:42 +02:00
Kevin Moore 5ba3745779
Allow the latest pkg:googleapis_auth (#775)
Closes https://github.com/grpc/grpc-dart/pull/772
2025-04-01 13:05:09 -07:00
Slava Egorov 9a0b4642ef
Allow 4.0.0 version for protobuf dependency and prepare to release 4.0.3 (#774)
Fixes https://github.com/grpc/grpc-dart/issues/768
2025-03-31 15:42:24 +02:00
Moritz f077328341
Fix web and prepare to publish 4.0.2 2025-03-31 10:22:25 +02:00
Aran Donohue 840661415d
Fix: Migrate off legacy JS/HTML APIs (#750)
* update: Migrate off legacy JS/HTML apis

* update: use dart.library.js_interop in place of dart.library.html

* update: dart format xhr_transport.dart and update dart sdk to v3.4.0 in workflows

* update: use if instead of switch case in xhr_transport.dart

* update: upgrade web package to v1.1.0

* refactor: use Uint8List for sending data over XHR rather than Int8List

* refactor: eta-reduction of call to request.setRequestHeader

* Update client_xhr_transport_test to avoid dart:html, updating xhr_transport to support testability

* fixup tests

---------

Co-authored-by: minoic <minoic2020@gmail.com>
Co-authored-by: Moritz <mosum@google.com>
2025-02-18 10:13:50 +01:00
Devon Carew 7f9042f79e
various analysis updates (#755)
* various analysis updates

* misc updates

* remove unintentional dartdoc comment

* Update CONTRIBUTING.md

Co-authored-by: Moritz <moritz@suemmermann.de>

* add ignore comments for use of deprecated apis

---------

Co-authored-by: Moritz <moritz@suemmermann.de>
2025-01-30 08:41:34 +01:00
dependabot[bot] 9a9c01752c
Bump vm_service from 14.3.1 to 15.0.0 (#751)
Bumps [vm_service](https://github.com/dart-lang/sdk/tree/main/pkg) from 14.3.1 to 15.0.0.
- [Changelog](https://github.com/dart-lang/sdk/blob/main/CHANGELOG.md)
- [Commits](https://github.com/dart-lang/sdk/commits/HEAD/pkg)

---
updated-dependencies:
- dependency-name: vm_service
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Moritz <mosum@google.com>
2024-12-17 09:58:22 +01:00
Moritz 04ba68eb91
Rev package:lints (#740)
* Rev package:lints

* Add changelog

* Run CI on 3.5.0

* Test with 3.2.0

* Update .github/workflows/dart.yml

Co-authored-by: Kevin Moore <kevmoo@users.noreply.github.com>

* Update .github/workflows/dart.yml

Co-authored-by: Kevin Moore <kevmoo@users.noreply.github.com>

---------

Co-authored-by: Kevin Moore <kevmoo@users.noreply.github.com>
2024-10-01 10:46:38 +02:00
Moritz 81776333d9
Small fixes (#732)
* Small fixes

* Revert changes on file

* Add changelog

* Small fixes in keepalive test

* Add delay

* Fix symbol visibilty

* Add try catch for debugging

* Fail

* fail

* Use for loop
2024-09-06 15:09:54 +02:00
Lasse R.H. Nielsen 38ca626e0a
Use `Map.of` instead of `Map.from` in grpc client. (#724)
* Use `Map.of` instead of `Map.from` in grpc client.

`Map.of` creates a new map with the same keys, values and *type*
as the original map, when used without type arguments or context type,
where `Map.from` creates a `Map<dynamic, dynamic>`.
(This code failed on an attempt to make `Map.unmodifiable` be more
strictly typed, like `Map.of` instead of `Map.from`, showing that
an intermediate map had type `Map<dynamic, dynamic>` unnecessarily).

Same for using `List.of` instead of `List.from`.

The new code should be (microscopically) more efficient and type safe,
and is forwards-compatible with a stronger type on `Map.unmodifiable`.

(The code can be optimized more. For example
`List.of(list1)..addAll(list2)` can be just `list1 + list2` or
`[...list1, ...list2]`, both of which may know the total number
of elements when doing the initial list allocation.
This is a minimal change to allow the type changes for `.unmodifiable`
to get past this very initial blocker in internal tests.)

* Add changelog and minor version increment.

And my save removes trailing spaces.
2024-09-02 16:58:43 +02:00
c-lucera-pvotal 4f6fe9b111
fix: fix headers not completing when call is terminated (#728)
Fixes #727
2024-08-28 08:18:15 +02:00
Kevin Moore dee1b2b43b Update pubspec.yaml 2024-05-30 00:27:50 +00:00
dependabot[bot] ebb7368fa4 Bump lints from 3.0.0 to 4.0.0
Bumps [lints](https://github.com/dart-lang/lints) from 3.0.0 to 4.0.0.
- [Release notes](https://github.com/dart-lang/lints/releases)
- [Changelog](https://github.com/dart-lang/lints/blob/main/CHANGELOG.md)
- [Commits](https://github.com/dart-lang/lints/compare/v3.0.0...v4.0.0)

---
updated-dependencies:
- dependency-name: lints
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-30 00:27:50 +00:00
Sarah Zakarias 6586b74969
Add `topics` to `pubspec.yaml` (#712) 2024-05-21 12:30:20 +02:00
Moritz 0d02e4386f
Remove dependency on `package:archive` (#707)
* Remove dependency on package:archive

* Test compression on vm only

* Add licenses

* Fix analyze issues

* Fix codec web

* Fix licenses

* Add changelog
2024-05-06 15:25:06 +02:00
Moritz 078fd23bca
Remove generated `StatusCode` (#703)
* Remove generated `StatusCode`

* Rev version for breaking change

* Upgrade min sdk version

* Fix issues
2024-04-25 13:45:40 +02:00
Ruben Garcia bdbe5f5003
Fix issue 669 (#693)
* Fix issue 669

* Update CHANGELOG.md

* Update CHANGELOG.md

* Fix dart format issue.
Fix prefer single quote issue.

* Update pubspec and changelog to avoid merge check
publish / validate
validate packages

* Add test for GRPC Compression Flag

* Fix dart analyze issues.

* Fix latest dart analyze issue (uninizialized variable)
2024-04-22 16:09:18 +02:00
dependabot[bot] e54366e1e4
Bump vm_service from 13.0.0 to 14.0.0 (#684)
Bumps [vm_service](https://github.com/dart-lang/sdk/tree/main/pkg) from 13.0.0 to 14.0.0.
- [Changelog](https://github.com/dart-lang/sdk/blob/main/CHANGELOG.md)
- [Commits](https://github.com/dart-lang/sdk/commits/HEAD/pkg)

---
updated-dependencies:
- dependency-name: vm_service
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-02 13:35:32 +01:00
dependabot[bot] d1e6c8ce11
Bump vm_service from 12.0.0 to 13.0.0 (#678) 2023-11-24 13:12:19 +00:00
dependabot[bot] b7f9115b98
Bump lints from 2.1.1 to 3.0.0 (#675) 2023-10-23 08:44:11 +00:00
dependabot[bot] e24550ae32
Bump vm_service from 11.10.0 to 12.0.0 (#673) 2023-10-19 14:37:48 +00:00
Moritz c1fa94951a
Fix regression on fetching the remote address of a closed socket. (#664)
* Fix regression on fetching the remote address of a closed socket

* Changes as per review

* Add changelog entry

* Rev version for publish
2023-09-08 17:41:32 +02:00
Moritz 1c18e38252
Forward error (#640)
* Forward error

* Add changelog

* Switch version
2023-07-13 13:30:58 +02:00
Moritz c7e07a09a5
Fix interop tests (#651)
* Fix interop tests

* Keepalive cleanups

* Prepare for publish
2023-07-13 12:05:59 +02:00
Moritz 03f07e9535
Keepalive (#634)
* Keepalive tests run!

* Renaming

* Some refactorings

* Find a place where to handle the keepalive manager

* Fix bug

* Make KeepAliveManager independent of transport

* Fix call sites in client

* Add server keepalive handler

* Wire through onDataReceived

* Add ServerKeepAliveManager test

* Refactorings

* Tests kind of run now

* Add shutdown test

* Remove unneeded override

* Remove unneeded mocks

* Send correct error codes and cleanup

* Small changes

* Rename

* Add documentation

* Add test for !_enforcesMaxBadPings

* Refactor tests

* Switch to http2 master branch

* Renaming

* Null shutdownTimer

* Refactor to event-state model

* Smaller refactorings

* Works now

* Switch tests to isA

* Shifting things around

* Split into server and client

* Format

* rename

* Tweaks

* Switch order of optional parameters to make change non-breaking

* Add some leeway to the durations in tests

* Make keepalive tests vm only

* Switch back to onEvent in state

* Switch to published http2
2023-06-21 11:14:43 -04:00
Moritz aae487d12f
Make constructors of `GrpcError` const (#638)
* Make constructors of `GrpcError` const

* Update CHANGELOG.md

Co-authored-by: Kevin Moore <kevmoo@users.noreply.github.com>

* Update pubspec.yaml

Co-authored-by: Kevin Moore <kevmoo@users.noreply.github.com>

---------

Co-authored-by: Kevin Moore <kevmoo@users.noreply.github.com>
2023-06-21 10:48:55 -04:00
Kevin Moore 754289be88
Release v3.2.2 (#643) 2023-06-20 04:58:55 -07:00
Kevin Moore d9553ca73f
support latest pkg:protobuf (#641) 2023-06-16 22:47:03 -07:00
SeongUk Cho 1f8d992da7
Bump http version from 0.13.0 to 1.0.0 (#629) 2023-06-17 07:18:18 +10:00
Moritz 3894d5abc1
Prepare release of `3.2.0` (#637)
* Prepare release of `3.2.0`

* Add newline

* Do not change API outside of major version rev

* Change `main` to `master` in workflow

* yml -> yaml
2023-06-13 12:48:11 +02:00
Moritz f420b77a22
Switch to Dart 3 (#633)
* Switch to Dart 3

* Trying to get the new version to run

* Fix test

* Switch CI to Dart 3

* Adapt CI

* Do not run vmservice on chrome

* Typo

* Add skip to not fail on `dart test`

* Add changelog entry

* Changes as per review
2023-06-07 10:24:33 +02:00
Nate Bosch a1a8e92e38
Add a ChannelShutdownHandler callback (#620)
Add a way to react to the channel shutdown or termination with an
optional callback.

This is not necessarily the API which I would recommend, but this is the
APi that was already inappropriately shipped and in use internally.
2023-04-21 12:01:54 -07:00
Kevin Moore dbf5421eb6
Cleanup: update to and use latest pkg:lints with associated fixes (#587)
Bump min Dart SDK for grpc to 2.17
Regenerate all code
Fix generate scripts
Add dependabot
2022-10-31 11:47:31 -07:00
Vyacheslav Egorov 19ba902d7e
Add false_secrets to pubspec.yaml (#586) 2022-10-27 15:02:22 +02:00
Vyacheslav Egorov e97711aece
Prepare 3.1.0 release (#585) 2022-10-27 13:55:39 +02:00
Cobinja af965f15f7
Expose onConnectionStateChanged for channels (#565)
Co-authored-by: Vyacheslav Egorov <vegorov@google.com>
2022-08-15 15:03:51 +02:00
Vyacheslav Egorov 7cced9282a
Fix compilation with DDC (#516)
b272632450 exposed client certificate through 
`X509Certificate? get clientCertificate;` getter on `ServiceCall` class. This broke 
compilation of `grpc_web` code using DDC, but not dart2js. Turns out that dart2js is 
happy to compile any code using `dart:io` (though the result will not run if you try
to use any of those APIs), but DDC rejects such code eagerly. `package:test` runs 
tests through `dart2js` so DDC breakage was not really caught by CI. 

Unfortunately this discrepancy between DDC and dart2js puts us in some really weird 
spot: most of our tests are platform independent, but most of those tests also 
pull in `dart:io` through transitive dependencies.

This commit is the most minimal change we could make to allow the code compile both 
on the Web and natively. 

A proper fix should be to go through tests one-by-one and make sure that those that
need to run on the Web don't import `dart:io`, but we don't have time to do that 
right now. 

This commit also adds a smoke test to the CI to verify that `grpc_web` example 
builds with DDC.
2021-08-16 14:52:36 +02:00
Vyacheslav Egorov c2fb47c8a4
Prepare to release 3.0.1 (#514) 2021-08-10 12:03:14 +02:00
Kevin Moore 9a4493f934
Update dependencies (#471) 2021-04-22 14:28:30 -07:00
Kevin Moore fb0c27a78a
Require latest googleapis_auth to avoid deprecated API usage (#455) 2021-03-08 14:32:55 -08:00
Kevin Moore ee0e7ec351
Avoid completing multiplet times for one error (#454)
Also:
* updated SDK constraint to stable
* Use latest Dart action install
* Test on oldest supported SDK
2021-03-08 09:55:59 -08:00
Kevin Moore def1a19339
Prepare for stable v3 release (#452) 2021-02-11 15:36:03 -08:00
Sam Rawlins 7e8952c352
Bump mockito to breaking change with fixes (#450) 2021-02-04 09:42:29 +01:00
Kevin Moore afea2e71d8
fix spelling of repository, add missing dev_dependency on pkg:path (#449) 2021-02-01 20:43:22 +01:00
Kevin Moore 97b8e47224
Move to published, null-safey packages (#441)
* Move to published, null-safey packages

Also updated homepage -> repository

* unblocked to publish grpc!
2021-02-01 19:53:21 +01:00
Ivan Inozemtsev d7dc79971e
Update interop to null-safe grpc-dart (#448)
Also replace dependency_overrides with published versions
2021-02-01 15:38:31 +01:00
Ivan Inozemtsev 1e1831a187
Migrate grpc to null safety (#432) 2021-01-29 12:40:52 +01:00
Vyacheslav Egorov d3f0ec7f37
Release 2.9.0 (#437) 2021-01-28 13:19:14 +01:00