Skip to content

feat(sdk): expose raw command API across foreign clients#3691

Open
spetz wants to merge 2 commits into
masterfrom
sdk_raw_command
Open

feat(sdk): expose raw command API across foreign clients#3691
spetz wants to merge 2 commits into
masterfrom
sdk_raw_command

Conversation

@spetz

@spetz spetz commented Jul 17, 2026

Copy link
Copy Markdown
Contributor

Foreign SDK users could not send protocol commands without a typed
client API, which blocked applications from using new command codes
until every SDK added dedicated methods.

Expose code-and-payload methods across Python, PHP, C++, Node, Go,
C#, and Java while preserving each client's framing, authentication,
error mapping, and transport behavior. Reject session-control codes
before sending so typed login state remains consistent.

Add shared BDD coverage for known, unknown, and session-control
commands across every SDK runner. Bump each foreign SDK version for
the new public API.

@spetz spetz added the sdk Change related to sdk (client) API label Jul 17, 2026
@github-actions github-actions Bot added the S-waiting-on-review PR is waiting on a reviewer label Jul 17, 2026
@codecov

codecov Bot commented Jul 17, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 98.11321% with 2 lines in your changes missing coverage. Please review.
✅ Project coverage is 73.97%. Comparing base (6f1d548) to head (babaa66).

Files with missing lines Patch % Lines
...ache/iggy/client/async/tcp/AsyncIggyTcpClient.java 88.23% 1 Missing and 1 partial ⚠️
Additional details and impacted files
@@             Coverage Diff              @@
##             master    #3691      +/-   ##
============================================
- Coverage     73.99%   73.97%   -0.03%     
- Complexity      937      950      +13     
============================================
  Files          1301     1301              
  Lines        147393   147496     +103     
  Branches     122945   123206     +261     
============================================
+ Hits         109063   109107      +44     
+ Misses        34858    34840      -18     
- Partials       3472     3549      +77     
Components Coverage Δ
Rust Core 74.29% <ø> (ø)
Java SDK 62.63% <91.30%> (+0.19%) ⬆️
C# SDK 71.13% <100.00%> (-1.06%) ⬇️
Python SDK 92.29% <100.00%> (+0.12%) ⬆️
PHP SDK 84.29% <ø> (ø)
Node SDK 91.46% <100.00%> (+0.20%) ⬆️
Go SDK 43.07% <100.00%> (+0.20%) ⬆️
Files with missing lines Coverage Δ
foreign/csharp/Iggy_SDK/IggyClient/IIggyClient.cs 0.00% <ø> (ø)
...DK/IggyClient/Implementations/HttpMessageStream.cs 74.08% <100.00%> (-0.27%) ⬇️
...SDK/IggyClient/Implementations/TcpMessageStream.cs 77.73% <100.00%> (+0.12%) ⬆️
foreign/go/client/tcp/tcp_core.go 59.83% <100.00%> (+1.98%) ⬆️
...ache/iggy/client/blocking/http/IggyHttpClient.java 84.21% <100.00%> (+5.83%) ⬆️
...apache/iggy/client/blocking/tcp/IggyTcpClient.java 62.50% <100.00%> (+0.79%) ⬆️
...c/main/java/org/apache/iggy/serde/CommandCode.java 100.00% <100.00%> (ø)
foreign/node/src/wire/command-set.ts 100.00% <100.00%> (ø)
foreign/node/src/wire/command.code.ts 100.00% <100.00%> (+1.33%) ⬆️
foreign/php/src/client.rs 95.27% <ø> (ø)
... and 2 more

... and 28 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Comment thread raw-command-iggy-sdk.md Outdated
@github-actions github-actions Bot added S-waiting-on-author PR is waiting on author response and removed S-waiting-on-review PR is waiting on a reviewer labels Jul 17, 2026
@spetz
spetz force-pushed the sdk_raw_command branch from 917ebca to e84c91d Compare July 17, 2026 14:15
@spetz
spetz force-pushed the sdk_raw_command branch from e84c91d to 4dc369c Compare July 17, 2026 17:22
@spetz

spetz commented Jul 17, 2026

Copy link
Copy Markdown
Contributor Author

/ready

@github-actions github-actions Bot added S-waiting-on-review PR is waiting on a reviewer and removed S-waiting-on-author PR is waiting on author response labels Jul 17, 2026
@spetz
spetz requested a review from slbotbm July 17, 2026 17:41

@slbotbm slbotbm left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

other than one comments, looks alright

Comment thread foreign/cpp/tests/client/low_level_e2e.cpp Outdated
@github-actions github-actions Bot added S-waiting-on-author PR is waiting on author response and removed S-waiting-on-review PR is waiting on a reviewer labels Jul 19, 2026
@spetz
spetz requested a review from slbotbm July 19, 2026 17:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

S-waiting-on-author PR is waiting on author response sdk Change related to sdk (client) API

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants