Makes signer implementations specify whether a signing operation is "interactive" (or just expensive). Utilizing this new information, Account and AccountFactory now make more informed decisions on whether to request real signatures for different types of operations.
The most significant benefit of this change is allowing using hardware wallet without excessive unnecessary signing requests.
This PR is made a breaking change, despite the possibility of maintaining backward compatibility by providing default implementations of the new trait methods. This is because #611 has already introduced a breaking change on starknet-signers anyway.
Breaking changes include:
get_invoke_request and get_declare_request methods are no longer pub; it was a mistake making them public in the first place;
new trait methods on Signer, Account, and AccountFactory without default impls.
Makes signer implementations specify whether a signing operation is "interactive" (or just expensive). Utilizing this new information,
Account
andAccountFactory
now make more informed decisions on whether to request real signatures for different types of operations.The most significant benefit of this change is allowing using hardware wallet without excessive unnecessary signing requests.
This PR is made a breaking change, despite the possibility of maintaining backward compatibility by providing default implementations of the new trait methods. This is because #611 has already introduced a breaking change on
starknet-signers
anyway.Breaking changes include:
get_invoke_request
andget_declare_request
methods are no longerpub
; it was a mistake making them public in the first place;Signer
,Account
, andAccountFactory
without default impls.