You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
## Motivation
It's currently difficult to test the `@linera/client` package in
isolation because it always requires a `Signer` instance to use, the
most straightforward one of which is the `PrivateKey` signer that lives
in `@linera/signer`.
## Proposal
Integrate the private-key signer into the `@linera/client` package next
to the `Signer` interface itself as `linera.PrivateKeySigner`.
While we're breaking the API, fix up the package structure of
`@linera/client` a bit (giving us a barrel file as a cleaner place to
inject TypeScript code to live next to the Wasm and its generated shim),
and remove some vestigial functions (`Signer.get_public_key()`, which is
never used any more, and `Client.frontend()`, which made more sense when
this library was intended to be the direct implementation of a Web
extension).
Since the erstwhile `@linera/signer` package now only contains the
MetaMask signer, rename it to `@linera/metamask` and open up its scope
to other MetaMask-specific signers and integrations.
## Test Plan
Automated tests forthcoming :) but I've at least tried it manually with
our counter and native-fungible examples.
## Release Plan
- Nothing to do / These changes follow the usual release cycle.
Breaks SDK API but no need to backport.
## Links
- [reviewer
checklist](https://github.com/linera-io/linera-protocol/blob/main/CONTRIBUTING.md#reviewer-checklist)
0 commit comments