Skip to content

RPC high level constructs #59

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Draft
wants to merge 11 commits into
base: main
Choose a base branch
from
Draft

RPC high level constructs #59

wants to merge 11 commits into from

Conversation

Zerpet
Copy link
Member

@Zerpet Zerpet commented Aug 14, 2025

Sumary

This PR adds high level constructs for RPC communication.

Additional changes

  • Set Go toolchain: helps to keep the required Go version lower, and ensures we build with latest Go to avoid CVEs
  • Bump Ginkgo Gomega and use floating 4.1 image in test
  • Add VS Code gitignores

Pending work

  • Add examples
  • Add an E2E test using both constructs

Zerpet added 11 commits August 6, 2025 13:41
The happy path works. The server can connect to a queue and responds
messages if the request's replyTo property is set.
RPC Tests were refactored to extract common setup code into a before
each node.
A test that verifies that custom correction ID and custom post processor
are called by the server.
The test for RpcServer.Close() was returning too soon. The simplest
solution is an ugly sleep of 1 second.
RPC server construct provides an utility to pause the message
processing. This relies on the ability to "drain" credits, and issue new
credits at a later point to unpause. This commit exposes that
functionality internally.
The RPC server now can be constructred from the AMQP connection. Tests
were refactored to use this contructor, instead of manually setting up
publishers and consumers.
Because setting the reply-to address in the post-processor forces the
users of custom post-processors to remember/add a line to set the
reply-to address always. By setting the reply-to prior to the
post-processor, the user has the option to modify the reply-to before
sending, if desired. By setting the reply-to prior to post-processor, we
free up some cognitive load on the users who wish to use a custom
post-processor.
@Zerpet Zerpet added this to the 0.1.2 milestone Aug 14, 2025
@Zerpet Zerpet linked an issue Aug 14, 2025 that may be closed by this pull request
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Implement RPC
1 participant