From c0d34919aa6c8bae9e5bdc22f8631ee96473617d Mon Sep 17 00:00:00 2001 From: Ruben Garcia Date: Tue, 19 Mar 2024 16:00:52 +0100 Subject: [PATCH 1/8] Fix issue 669 --- lib/src/shared/message.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/src/shared/message.dart b/lib/src/shared/message.dart index d9d64db1..c91963a7 100644 --- a/lib/src/shared/message.dart +++ b/lib/src/shared/message.dart @@ -68,7 +68,7 @@ List frame(List rawPayload, [Codec? codec]) { final payloadLength = compressedPayload.length; final bytes = Uint8List(payloadLength + 5); final header = bytes.buffer.asByteData(0, 5); - header.setUint8(0, codec == null ? 0 : 1); + header.setUint8(0, (codec == null|| codec.encodingName =="identity") ? 0 : 1); header.setUint32(1, payloadLength); bytes.setRange(5, bytes.length, compressedPayload); return bytes; From 47ed7dd98a80a4327fca6fd93ec781d34012aedd Mon Sep 17 00:00:00 2001 From: Ruben Garcia Date: Wed, 20 Mar 2024 07:26:45 +0100 Subject: [PATCH 2/8] Update CHANGELOG.md --- CHANGELOG.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index e1332dc5..b27cc945 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,7 @@ +## latest master + +* Set compressed flag correctly for grpc-encoding = identity. Fixes [#669](https://github.com/grpc/grpc-dart/issues/669) + ## 3.2.4 * Forward internal `GrpcError` on when throwing while sending a request. From c13fe8abba33cfd9ac94b99db6a057cf21883ab5 Mon Sep 17 00:00:00 2001 From: Ruben Garcia Date: Wed, 20 Mar 2024 07:30:01 +0100 Subject: [PATCH 3/8] Update CHANGELOG.md --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index b27cc945..2acf6b2e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,6 @@ ## latest master -* Set compressed flag correctly for grpc-encoding = identity. Fixes [#669](https://github.com/grpc/grpc-dart/issues/669) +* Set compressed flag correctly for grpc-encoding = identity. Fixes [#669](https://github.com/grpc/grpc-dart/issues/669) (https://github.com/grpc/grpc-dart/pull/693) ## 3.2.4 From 8838410d1604340b1118506ad4308a81642e6c49 Mon Sep 17 00:00:00 2001 From: Ruben Garcia Date: Wed, 20 Mar 2024 08:49:29 +0100 Subject: [PATCH 4/8] Fix dart format issue. Fix prefer single quote issue. --- lib/src/shared/message.dart | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/src/shared/message.dart b/lib/src/shared/message.dart index c91963a7..0533c555 100644 --- a/lib/src/shared/message.dart +++ b/lib/src/shared/message.dart @@ -68,7 +68,8 @@ List frame(List rawPayload, [Codec? codec]) { final payloadLength = compressedPayload.length; final bytes = Uint8List(payloadLength + 5); final header = bytes.buffer.asByteData(0, 5); - header.setUint8(0, (codec == null|| codec.encodingName =="identity") ? 0 : 1); + header.setUint8( + 0, (codec == null || codec.encodingName == 'identity') ? 0 : 1); header.setUint32(1, payloadLength); bytes.setRange(5, bytes.length, compressedPayload); return bytes; From 94188d33045a8a62c9dc56cbabe015f809ed7ce9 Mon Sep 17 00:00:00 2001 From: Ruben Garcia Date: Thu, 21 Mar 2024 09:32:20 +0100 Subject: [PATCH 5/8] Update pubspec and changelog to avoid merge check publish / validate validate packages --- CHANGELOG.md | 2 +- pubspec.yaml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 2acf6b2e..78c2abc4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,4 +1,4 @@ -## latest master +## 3.2.5 * Set compressed flag correctly for grpc-encoding = identity. Fixes [#669](https://github.com/grpc/grpc-dart/issues/669) (https://github.com/grpc/grpc-dart/pull/693) diff --git a/pubspec.yaml b/pubspec.yaml index a01ce0ec..e57074a2 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -1,6 +1,6 @@ name: grpc description: Dart implementation of gRPC, a high performance, open-source universal RPC framework. -version: 3.2.4 +version: 3.2.5 repository: https://github.com/grpc/grpc-dart From 27ad8d4a66ccad32a9bdf457eaf3dde5ef3a24f9 Mon Sep 17 00:00:00 2001 From: Ruben Garcia Date: Sat, 23 Mar 2024 12:28:44 +0100 Subject: [PATCH 6/8] Add test for GRPC Compression Flag --- test/grpc_compression_flag_test.dart | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 test/grpc_compression_flag_test.dart diff --git a/test/grpc_compression_flag_test.dart b/test/grpc_compression_flag_test.dart new file mode 100644 index 00000000..3d916c04 --- /dev/null +++ b/test/grpc_compression_flag_test.dart @@ -0,0 +1,27 @@ +import 'package:grpc/src/shared/message.dart'; +import 'package:grpc/src/shared/codec.dart'; + +import 'package:test/test.dart'; + +void main() { + group('GRPC Compression Flag', () { + test('compression flag 0 with null codec', () { + List rawPayload = [1, 2, 3, 4]; + Codec? codec = null; + final data = frame(rawPayload, codec); + expect(data[0], 0); + }); + test('compression flag 0 with grpc-encoding identity', () { + List rawPayload = [1, 2, 3, 4]; + Codec? codec = IdentityCodec(); + final data = frame(rawPayload, codec); + expect(data[0], 0); + }); + test('compression flag 1 with grpc-encoding gzip', () { + List rawPayload = [1, 2, 3, 4]; + Codec? codec = GzipCodec(); + final data = frame(rawPayload, codec); + expect(data[0], 1); + }); + }); +} From 9538a61c827d8efd3a0c8a5f08c782fb7e713a6e Mon Sep 17 00:00:00 2001 From: Ruben Garcia Date: Mon, 25 Mar 2024 17:57:00 +0100 Subject: [PATCH 7/8] Fix dart analyze issues. --- test/grpc_compression_flag_test.dart | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/test/grpc_compression_flag_test.dart b/test/grpc_compression_flag_test.dart index 3d916c04..0c51ee43 100644 --- a/test/grpc_compression_flag_test.dart +++ b/test/grpc_compression_flag_test.dart @@ -1,25 +1,24 @@ -import 'package:grpc/src/shared/message.dart'; import 'package:grpc/src/shared/codec.dart'; - +import 'package:grpc/src/shared/message.dart'; import 'package:test/test.dart'; void main() { group('GRPC Compression Flag', () { test('compression flag 0 with null codec', () { - List rawPayload = [1, 2, 3, 4]; - Codec? codec = null; + final rawPayload = [1, 2, 3, 4]; + final Codec? codec; final data = frame(rawPayload, codec); expect(data[0], 0); }); test('compression flag 0 with grpc-encoding identity', () { - List rawPayload = [1, 2, 3, 4]; - Codec? codec = IdentityCodec(); + final rawPayload = [1, 2, 3, 4]; + final Codec codec = IdentityCodec(); final data = frame(rawPayload, codec); expect(data[0], 0); }); test('compression flag 1 with grpc-encoding gzip', () { - List rawPayload = [1, 2, 3, 4]; - Codec? codec = GzipCodec(); + final rawPayload = [1, 2, 3, 4]; + final Codec codec = GzipCodec(); final data = frame(rawPayload, codec); expect(data[0], 1); }); From 572ecedc0b5dca29f435b04cc1c8bb905327150d Mon Sep 17 00:00:00 2001 From: Ruben Garcia Date: Mon, 25 Mar 2024 19:24:50 +0100 Subject: [PATCH 8/8] Fix latest dart analyze issue (uninizialized variable) --- test/grpc_compression_flag_test.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/grpc_compression_flag_test.dart b/test/grpc_compression_flag_test.dart index 0c51ee43..adf2999a 100644 --- a/test/grpc_compression_flag_test.dart +++ b/test/grpc_compression_flag_test.dart @@ -6,7 +6,7 @@ void main() { group('GRPC Compression Flag', () { test('compression flag 0 with null codec', () { final rawPayload = [1, 2, 3, 4]; - final Codec? codec; + final Codec? codec = null; final data = frame(rawPayload, codec); expect(data[0], 0); });