feat: Remove JSON-RPC Client#353
Conversation
…s to acommodate deletion.
Summary of ChangesHello, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! This pull request marks a significant step in streamlining the client-side architecture by removing the outdated JSON-RPC specific client. The change consolidates common types, updates import paths, and refines error handling within the JSON-RPC transport, aligning the codebase with a more modern, transport-agnostic client approach. This cleanup reduces technical debt and prepares the library for future enhancements. Highlights
Changelog
Activity
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for GitHub and other Google products, sign up here. You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension. Footnotes
|
There was a problem hiding this comment.
Code Review
This pull request effectively removes the deprecated JSON-RPC client and its related test files, which is a great cleanup. The changes also include moving shared types to a central location and updating imports accordingly. The suggestion to use predefined error code constants instead of magic numbers in json_rpc_transport.ts has been retained to enhance maintainability. Overall, this is a solid refactoring.
# Description Remove old JSON-RPC Client along with its usage and unit tests. Deleted compatibility code that was present in `json_rpc_transport.ts`. # List of changes: - Removed `client.ts` and `client.spec.ts`. - Moved exports of `A2AStreamEventData` and `SendMessageResult` to `src/index.js`. - Updated relevant imports. - Updated `client_auth.spec.ts` to use transport logic directly. - Removed no longer needed compatibility code from `json_rpc_transport.ts`. Fixes (partially) #179 🦕
🤖 I have created a release *beep* *boop* --- ## 1.0.0-alpha.0 (2026-05-11) See the [v0.3 -> v1.0-alpha.0 migration guide](https://github.com/a2aproject/a2a-js/blob/v1.0.0-alpha.0/docs/migration-guide.md). **Note**: Enabling backward compatibility with v0.3 is tracked in [#452](#452). ### ⚠ BREAKING CHANGES * Drop support for node 18 ([#368](#368)) * Make ServerCallContext parameter mandatory across all places ([#405](#405)) * Remove JSON-RPC client ([#353](#353)) * Remove transport-specific exports ([#404](#404)) * Update codebase to use A2A 1.0.0 data model ([#375](#375)) * Remove A2AExpressApp ([#363](#363)) ### Features * Add A2A Version Header ([#422](#422)) ([b5f3db7](b5f3db7)) * Add cache-headers logic to the agent card handler ([#435](#435)) ([955b52b](955b52b)) * Add resource scoping ([#450](#450)) ([c527086](c527086)) * Add support for custom authentication scheme and credentials in auth-headers ([#430](#430)) ([5a4389b](5a4389b)) * AgentCardSignature support ([#448](#448)) ([4a41a8c](4a41a8c)) * Enforce events ordering ([#437](#437)) ([157cf48](157cf48)) * Enriched Error Model ([#427](#427)) ([c130778](c130778)) * Implement listTasks method ([#383](#383)) ([7d4c472](7d4c472)) * Send current task as the first event after subscribing to it ([#418](#418)) ([4bfcf5f](4bfcf5f)) * Support multi-tenancy ([#419](#419)) ([1877877](1877877)) ### Code Refactoring * remove A2AExpressApp ([#363](#363)) ([0b84728](0b84728)) --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please). --------- Co-authored-by: bartek-gralewicz <bgralewicz@google.com> Co-authored-by: Ivan Shymko <ishymko@google.com>
Description
Remove old JSON-RPC Client along with its usage and unit tests. Deleted compatibility code that was present in
json_rpc_transport.ts.List of changes:
client.tsandclient.spec.ts.A2AStreamEventDataandSendMessageResulttosrc/index.js.client_auth.spec.tsto use transport logic directly.json_rpc_transport.ts.Fixes (partially) #179 🦕