refactor: reverse dependency between graphql-client and transaction-builder#530
Open
DaughterOfMars wants to merge 19 commits intodevelopfrom
Open
refactor: reverse dependency between graphql-client and transaction-builder#530DaughterOfMars wants to merge 19 commits intodevelopfrom
DaughterOfMars wants to merge 19 commits intodevelopfrom
Conversation
…uilder - Move ClientMethods implementation for GraphQL Client from transaction-builder to graphql-client crate - graphql-client now depends on transaction-builder (previously the opposite) - Move WaitForTx enum to transaction-builder crate - Add TestClient stub implementation for use in tests - Update doc examples to use TestClient with no_run/ignore attributes - Move integration tests to graphql-client crate This change makes the transaction-builder crate more standalone and allows it to be used without the graphql-client dependency.
| } | ||
|
|
||
| #[tokio::test] | ||
| async fn test_transfer_obj_execution() { |
Member
There was a problem hiding this comment.
It feels very weird moving the TxBuilder tests in the client crate tbh. I don't think we would have a cycle if we import the client only in the dev-deps
Thoralf-M
reviewed
Jan 27, 2026
Thoralf-M
reviewed
Jan 27, 2026
Thoralf-M
approved these changes
Jan 27, 2026
thibault-martinez
requested changes
Feb 17, 2026
Member
thibault-martinez
left a comment
There was a problem hiding this comment.
Will review when I get a chance.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This PR reverses the dependency relationship between
iota-sdk-graphql-clientandiota-sdk-transaction-buildercrates.Changes
Code Migration
ClientMethodsimplementation for GraphQLClientfromtransaction-buildertographql-clientcrateWaitForTxenum definition totransaction-buildercrate (re-exported fromgraphql-client)graphql-clientcrateTest Utilities
TestClientstub implementation intransaction-builderfor use in doc testsTestClientis gated behind thetest-clientfeature and provides stub implementations ofClientMethodsTestClientwithno_runattributesBenefits
transaction-buildercrate is now more standalone and can be used without pulling in GraphQL dependenciesClientMethods) lives intransaction-builder, while the concrete implementation for GraphQL lives ingraphql-clienttransaction-builderTesting
cargo check --workspacepassescargo nextest run --all-features --workspace --exclude iota-sdk-graphql-clientpasses