Proto commits in hyperledger-labs/fabric-smart-client

These 22 commits are when the Protocol Buffers files have changed:

Commit:9fe3b95
Author:Marcus Brandenburger
Committer:GitHub

refactor(grpc)!: unify gRPC/TLS config (#1813) * refactor(grpc,tls)!: unify gRPC/TLS config Fabric-x's committer query-service client had no way to raise gRPC's 4 MiB default receive limit, so large result sets failed with `ResourceExhausted` (#1799). Fixing that surfaced a second, hand-rolled gRPC client in `platform/fabricx/core/committer/grpc` duplicating most of `platform/view/services/grpc`, with fewer knobs and its own TLS credentials builder that existed only to pin TLS 1.3. This unifies both: - Moves `platform/view/services/grpc` to `platform/common/services/grpc` and `platform/view/services/tlsconfig` to `platform/common/services/tlsconfig`, since fabric, fabricx, and view all consume them. No compatibility alias remains at the old paths. - Adds configurable `MaxRecvMsgSize`/`MaxSendMsgSize` to `ServerConfig`, `ClientConfig`, and `ConnectionConfig`. Zero still falls back to the existing 100 MiB package default. - Adds a configurable TLS version range (`MinVersion`/`MaxVersion`) to `SecureOptions` and the `ServerTLS`/`ClientTLS` wire types, with the same nil-inherits rule as every other TLS field. - Deletes `platform/fabricx/core/committer/grpc`. Its endpoints become `commongrpc.ConnectionConfig`, and `ClientProvider` moves to `platform/fabricx/core/committer/config` on `lazy.Provider`, replacing its own two `sync.Map`s and hand-rolled locking. `NewClientProvider` and `ServiceConfigProvider` now live in that package. - Fabric-x's TLS 1.3 requirement, previously a forked `TransportCredentials`, is now `minVersion: 772` in its own `tls:` block. New configuration keys: - `fsc.grpc.maxRecvMsgSize` / `maxSendMsgSize` - Per-endpoint `maxRecvMsgSize` / `maxSendMsgSize` (Fabric peers/orderers, fabricx query/notification services) - `minVersion` / `maxVersion` in any `tls:` block (771 = TLS 1.2, 772 = TLS 1.3) No existing default changes: an unset client still resolves to TLS 1.2-1.3 and 100 MiB message limits; an unset listener still negotiates TLS 1.2 exactly, as it always has. Test plan: `make checks` clean across all five modules; unit tests cover the message-size fallback/override on all three config structs and the TLS version-range resolution and validation. The integration suite needs Fabric binaries and Docker and is left to CI, not run locally for this pass. Closes #1799 Signed-off-by: Marcus Brandenburger <bur@zurich.ibm.com> * fix(fabricx,grpc): restore fabric-x's TLS 1.3 floor, test the unconfigured-version fallback Unifying fabric-x's committer client onto the shared gRPC client dropped its TLS 1.3 requirement: an endpoint with no minVersion configured now negotiated the shared 1.2-1.3 range instead. resolveEndpointTLS raises the floor to TLS 1.3 whenever an endpoint's resolved MinVersion is still zero, so an unconfigured fabric-x endpoint keeps requiring 1.3 while every other client keeps defaulting to 1.2-1.3. TestNewGRPCServerVersionRange gains a case that builds a listener with no MinVersion/MaxVersion at all -- the state every deployment with no tls version keys reaches -- and checks both that a client willing to negotiate up to 1.3 lands on exactly 1.2, and that a TLS-1.3-only client is refused. docs/configuration.md no longer describes fabric-x's TLS-1.3 floor as something a deployment must configure by hand. Signed-off-by: Marcus Brandenburger <bur@zurich.ibm.com>

The documentation is generated from this commit.

Commit:413c184
Author:Marcus Brandenburger
Committer:GitHub

chore(spelling): fix spelling of comments, log messages, and errors (#1670) * chore(spelling): fix spelling of comments, log messages, and errors (#1670) Corrects typos found in Go comments and doc comments across the root and integration modules. Comment-only; no behavioural change. Fixes typos in user-visible error strings, one debug log message, and the commands proto comments. The endpoint service test that asserts on "cannot find the idnetity" is updated alongside its source string. commands.pb.go carries the same comment fix as commands.proto, applied directly rather than by running generate-protos, so the generated file is not churned by an unrelated protoc version stamp. Signed-off-by: Marcus Brandenburger <bur@zurich.ibm.com>

Commit:0e57424
Author:Said Altury
Committer:GitHub

feat(build): add make target for proto generation (#1535) Signed-off-by: Said Altury <Said.Altury@ibm.com>

Commit:d955388
Author:Marcus Brandenburger
Committer:GitHub

benchmarks: more grpc benchmarks (#1126) * benchmarks: more grpc benchmarks - add grpc benchmarks for remote deployments (separate client/server) - add view api grpc benchmarks for remote deployments - remove redundant benchmarks - update plot scripts Co-authored-by: Said Altury <109276519+SaidAltury-ibm@users.noreply.github.com> Signed-off-by: Marcus Brandenburger <bur@zurich.ibm.com>

Commit:8bc0feb
Author:Alexandros Filios
Committer:Marcus Brandenburger

Cleanup protobuf - update protobuf deps - add make target to generate all protos - re-generate all protos with protov2 - add protov1 adapter for idemix protos Signed-off-by: Alexandros Filios <alexandros.filios@ibm.com> Signed-off-by: Marcus Brandenburger <bur@zurich.ibm.com>

Commit:86bd92b
Author:Angelo De Caro
Committer:GitHub

view platform: architecture #975 (#976) Signed-off-by: Angelo De Caro <adc@zurich.ibm.com>

Commit:8cc9981
Author:Angelo De Caro
Committer:alexandrosfilios

remove badger Signed-off-by: Angelo De Caro <adc@zurich.ibm.com> Signed-off-by: Alexandros Filios <alexandros.filios@ibm.com>

Commit:8858e98
Author:Alexandros Filios
Committer:alexandrosfilios

Simplify vault Signed-off-by: Alexandros Filios <alexandros.filios@ibm.com>

Commit:275ddce
Author:Angelo De Caro
Committer:Angelo De Caro

remove IsTxFinal. Each application must handle this separately Signed-off-by: Angelo De Caro <adc@zurich.ibm.com>

Commit:c132d63
Author:Angelo De Caro
Committer:Angelo De Caro

db and vault support for generic version Signed-off-by: Angelo De Caro <adc@zurich.ibm.com>

Commit:4fc8359
Author:Angelo De Caro
Committer:GitHub

common platform (#547) Signed-off-by: Alexandros Filios <alexandros.filios@ibm.com> Signed-off-by: Angelo De Caro <adc@zurich.ibm.com>

Commit:3d6b61b
Author:Angelo De Caro
Committer:GitHub

enhanced commit pipelines (fabric and orion) (#539) Signed-off-by: Angelo De Caro <adc@zurich.ibm.com> Signed-off-by: Alexandros Filios <alexandros.filios@ibm.com>

Commit:b0aa22e
Author:alexandrosfilios
Committer:GitHub

Fix race conditions in tests (#542) Signed-off-by: Angelo De Caro <adc@zurich.ibm.com> Signed-off-by: Alexandros Filios <alexandros.filios@ibm.com>

Commit:a925afa
Author:alexandrosfilios
Committer:GitHub

Various Utilities in Support of the Token-SDK (#487) Signed-off-by: Angelo De Caro <angelo.decaro@gmail.com> Signed-off-by: Alexandros Filios <alexandros.filios@ibm.com>

Commit:a362fd5
Author:Angelo De Caro
Committer:GitHub

view/services/db: orion-based driver (#303) Signed-off-by: Angelo De Caro <adc@zurich.ibm.com>

Commit:2d36f75
Author:HagarMeir
Committer:GitHub

Orion (#255) Orion integration Signed-off-by: Hagar Meir <hagar.meir@ibm.com> Co-authored-by: Angelo De Caro <adc@zurich.ibm.com>

Commit:b29c75b
Author:Alessandro Sorniotti
Committer:Angelo De Caro

Remove idemix We remove the local implementation of idemix and use the one provided at https://github.com/IBM/idemix Signed-off-by: Alessandro Sorniotti <aso@zurich.ibm.com>

Commit:a0fe6dc
Author:Yacov Manevich
Committer:Yacov Manevich

Update dependencies Signed-off-by: Yacov Manevich <yacovm@il.ibm.com>

Commit:f57c564
Author:Angelo De Caro

bug fix #76 #77 - [x] network/channel support for IsTxFinal #77 - [x] nwo: fabric platform's Name() does not return the topology name #76 Signed-off-by: Angelo De Caro <adc@zurich.ibm.com>

Commit:ef2f6bb
Author:Angelo De Caro

- web client - refactoring Signed-off-by: Angelo De Caro <adc@zurich.ibm.com>

Commit:d43f43d
Author:Angelo De Caro

view service: cleanup proto messages #53 Signed-off-by: Angelo De Caro <adc@zurich.ibm.com>

Commit:6900cc8
Author:Angelo De Caro

The Fabric Smart Client, first drop of code. Signed-off-by: Angelo De Caro <adc@zurich.ibm.com> Signed-off-by: Kaoutar Elkhiyaoui <kao@zurich.ibm.com> Signed-off-by: Mathilde Ffrench <mathilde.ffrench@fr.ibm.com> Signed-off-by: Alessandro Sorniotti <ale.linux@sopit.net>