Skip to content
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

chore: ledger-v backport #443

Merged
merged 11 commits into from
Nov 19, 2024
Merged

Conversation

nicolasbrugneaux
Copy link
Contributor

@nicolasbrugneaux nicolasbrugneaux commented Nov 15, 2024

Description

Improves the coverage of the different formats v can have when returned from a ledger device, and backports the fixes done in #408 but for the viem package.


PR-Codex overview

This PR focuses on enhancing the viem-account-ledger package with improved handling of signature values and better configuration management. It also updates the build process and adds tests for various transaction signing scenarios.

Detailed summary

  • Added safer handling of the v value in transaction signatures.
  • Updated .gitignore to include lib-es/.
  • Increased code coverage threshold to 80% in codecov.yml.
  • Changed moduleResolution and module to ES6 in tsconfig.json.
  • Modified exclude patterns in coverage configuration.
  • Switched import of blob to a default import in tokens.ts.
  • Enhanced error handling for malformed v values in ledger-signer.ts.
  • Updated generateLedger function to use Eth directly.
  • Revised mockLedger implementation in test-utils.ts for better testing.
  • Added tests for handling different v values in transaction signing.
  • Updated package.json to reflect changes in build scripts and dependencies.

✨ Ask PR-Codex anything about this PR by commenting with /codex {your question}

@nicolasbrugneaux nicolasbrugneaux requested a review from a team as a code owner November 15, 2024 13:44
Copy link

changeset-bot bot commented Nov 15, 2024

🦋 Changeset detected

Latest commit: 6dd9d57

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 9 packages
Name Type
@celo/wallet-ledger Patch
@celo/viem-account-ledger Patch
@celo/wallet-base Patch
@celo/wallet-hsm-aws Patch
@celo/wallet-hsm-azure Patch
@celo/wallet-hsm-gcp Patch
@celo/wallet-hsm Patch
@celo/wallet-local Patch
@celo/wallet-remote Patch

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

Copy link

codecov bot commented Nov 15, 2024

Codecov Report

Attention: Patch coverage is 83.87097% with 5 lines in your changes missing coverage. Please review.

Project coverage is 68.95%. Comparing base (97f0a53) to head (6dd9d57).
Report is 1 commits behind head on master.

Additional details and impacted files
@@            Coverage Diff             @@
##           master     #443      +/-   ##
==========================================
- Coverage   69.22%   68.95%   -0.27%     
==========================================
  Files         293      292       -1     
  Lines       11368    11204     -164     
  Branches     1675     1668       -7     
==========================================
- Hits         7869     7726     -143     
+ Misses       3350     3340      -10     
+ Partials      149      138      -11     
Components Coverage Δ
celocli 72.17% <ø> (ø)
dev-utils ∅ <ø> (∅)
sdk ∅ <ø> (∅)
wallets ∅ <ø> (∅)
viem-sdks ∅ <ø> (∅)
---- 🚨 Try these New Features:

@nicolasbrugneaux nicolasbrugneaux force-pushed the chore/wallet-ledger-v-coverage branch from 80966eb to 290bcc4 Compare November 15, 2024 14:13
@nicolasbrugneaux nicolasbrugneaux self-assigned this Nov 18, 2024
@nicolasbrugneaux nicolasbrugneaux added this to the 5 - Celo MVP Mainnet milestone Nov 18, 2024
@nicolasbrugneaux nicolasbrugneaux enabled auto-merge (squash) November 19, 2024 12:14
@nicolasbrugneaux nicolasbrugneaux merged commit a23246e into master Nov 19, 2024
28 of 29 checks passed
@nicolasbrugneaux nicolasbrugneaux deleted the chore/wallet-ledger-v-coverage branch November 19, 2024 15:08
@github-actions github-actions bot mentioned this pull request Nov 19, 2024
aaronmgdr pushed a commit that referenced this pull request Nov 25, 2024
This PR was opened by the [Changesets
release](https://github.com/changesets/action) GitHub action. When
you're ready to do a release, you can merge this and the packages will
be published to npm automatically. If you're not ready to do a release
yet, that's fine, whenever you add more changesets to master, this PR
will be updated.

⚠️⚠️⚠️⚠️⚠️⚠️

`master` is currently in **pre mode** so this branch has prereleases
rather than normal releases. If you want to exit prereleases, run
`changeset pre exit` on `master`.

⚠️⚠️⚠️⚠️⚠️⚠️

# Releases
## @celo/[email protected]

### Minor Changes

- [#447](#447)
[`7bc05c2`](7bc05c2)
Thanks [@shazarre](https://github.com/shazarre)! -
validator:signed-blocks not supported on L2 anymore, fixes
validator:status L2

### Patch Changes

- [#425](#425)
[`952bc81`](952bc81)
Thanks [@nicolasbrugneaux](https://github.com/nicolasbrugneaux)! -
deprecates the flags --whitelisters and --nonwhitelisters from the
governance:show command

- [#456](#456)
[`d5c9204`](d5c9204)
Thanks [@nicolasbrugneaux](https://github.com/nicolasbrugneaux)! - Fix
rewards:show for L2

- [#452](#452)
[`2283374`](2283374)
Thanks [@aaronmgdr](https://github.com/aaronmgdr)! - Show deprecated
warning on flags which will be removed after cel2 launch

- [#449](#449)
[`97f0a53`](97f0a53)
Thanks [@aaronmgdr](https://github.com/aaronmgdr)! - Show --node and
--useLedger flags when --help is called. Show aliases for networks in
--node help

- [#452](#452)
[`2283374`](2283374)
Thanks [@aaronmgdr](https://github.com/aaronmgdr)! - use onchain values
instead of static for lock requirements

- [#450](#450)
[`9558b56`](9558b56)
Thanks [@nicolasbrugneaux](https://github.com/nicolasbrugneaux)! -
Gracefully throw if --estimate wasnt passed on L1

- Updated dependencies
\[[`7bc05c2`](7bc05c2),
[`42d091f`](42d091f),
[`36c4369`](36c4369),
[`a23246e`](a23246e),
[`d5c9204`](d5c9204)]:
    -   @celo/[email protected]
    -   @celo/[email protected]
    -   @celo/[email protected]
    -   @celo/[email protected]
    -   @celo/[email protected]

## @celo/[email protected]

### Minor Changes

- [#447](#447)
[`7bc05c2`](7bc05c2)
Thanks [@shazarre](https://github.com/shazarre)! - Exposes
EpochManager.getElectedSigners contract method

### Patch Changes

- [#446](#446)
[`42d091f`](42d091f)
Thanks [@aaronmgdr](https://github.com/aaronmgdr)! - Bump @celo/abis-12

- [#455](#455)
[`36c4369`](36c4369)
Thanks [@aaronmgdr](https://github.com/aaronmgdr)! - Mark contract
wrapper methods that will not work on L2 because solidity contracts have
onlyL1 modifier as deprecated.

| Deprecated Contract / Method | Replacement or none |
| -------------------------------------------- |
----------------------------------------- |
| Validators#registerValidator | Validators#registerValidatorNoBLS |
| BlockchainParams#getEpochNumberOfBlock |
EpochManager#getEpochNumberOfBlock |
| BlockchainParams#getFirstBlockNumberForEpoch |
EpochManager#getFirstBlockAtEpoch |
| Election#getCurrentValidatorSigners | EpochManager#getElectedSigners |
| Election#getGroupEpochRewards |
Election#getGroupEpochRewardsBasedOnScore |
| GovernanceSlasher#slash | GovernanceSlasher#slashL2 |
| DoubleSigningSlasher | X |
| DowntimeSlasher | X |

- [#456](#456)
[`d5c9204`](d5c9204)
Thanks [@nicolasbrugneaux](https://github.com/nicolasbrugneaux)! -
Backwards compat for some methods using epoch's block numbers

-   Updated dependencies \[]:
    -   @celo/[email protected]

## @celo/[email protected]

### Patch Changes

- [#446](#446)
[`42d091f`](42d091f)
Thanks [@aaronmgdr](https://github.com/aaronmgdr)! - Bump @celo/abis-12

## @celo/[email protected]

### Patch Changes

- [#446](#446)
[`42d091f`](42d091f)
Thanks [@aaronmgdr](https://github.com/aaronmgdr)! - Bump @celo/abis-12

- Updated dependencies
\[[`7bc05c2`](7bc05c2),
[`42d091f`](42d091f),
[`36c4369`](36c4369),
[`d5c9204`](d5c9204)]:
    -   @celo/[email protected]

## @celo/[email protected]

### Patch Changes

-   Updated dependencies \[]:
    -   @celo/[email protected]
    -   @celo/[email protected]
    -   @celo/[email protected]

## @celo/[email protected]

### Patch Changes

-   Updated dependencies \[]:
    -   @celo/[email protected]
    -   @celo/[email protected]
    -   @celo/[email protected]

## @celo/[email protected]

### Patch Changes

-   Updated dependencies \[]:
    -   @celo/[email protected]
    -   @celo/[email protected]
    -   @celo/[email protected]

## @celo/[email protected]

### Patch Changes

- [#443](#443)
[`a23246e`](a23246e)
Thanks [@nicolasbrugneaux](https://github.com/nicolasbrugneaux)! - Safer
handling of v from device

-   Updated dependencies \[]:
    -   @celo/[email protected]
    -   @celo/[email protected]

## @celo/[email protected]

### Patch Changes

-   Updated dependencies \[]:
    -   @celo/[email protected]

## @celo/[email protected]

### Patch Changes

-   Updated dependencies \[]:
    -   @celo/[email protected]

## @celo/[email protected]

### Patch Changes

- [#443](#443)
[`a23246e`](a23246e)
Thanks [@nicolasbrugneaux](https://github.com/nicolasbrugneaux)! - Safer
handling of v from device

## @celo/[email protected]



## @celo/[email protected]




<!-- start pr-codex -->

---

## PR-Codex overview
This PR focuses on updating various packages within the `@celo`
ecosystem to version `6.0.4-beta.1` and `9.0.0-beta.3`, along with some
dependency upgrades and changelog entries reflecting these changes.

### Detailed summary
- Updated version to `6.0.4-beta.1` for:
  - `@celo/wallet-base`
  - `@celo/wallet-hsm`
  - `@celo/wallet-local`
  - `@celo/wallet-remote`
  - `@celo/wallet-hsm-aws`
  - `@celo/wallet-hsm-gcp`
  - `@celo/wallet-hsm-azure`
  - `@celo/wallet-ledger`
- Updated `@celo/dev-utils` to `0.0.7-beta.2`
- Updated `@celo/viem-account-ledger` to `1.0.0-beta.2`
- Updated `@celo/governance` to `5.1.4-beta.2`
- Updated `@celo/contractkit` to `9.0.0-beta.3`
- Added changelog entries for new versions and dependency updates.

> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your
question}`

<!-- end pr-codex -->

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
@github-actions github-actions bot mentioned this pull request Dec 11, 2024
aaronmgdr pushed a commit that referenced this pull request Dec 11, 2024
This PR was opened by the [Changesets
release](https://github.com/changesets/action) GitHub action. When
you're ready to do a release, you can merge this and the packages will
be published to npm automatically. If you're not ready to do a release
yet, that's fine, whenever you add more changesets to master, this PR
will be updated.


# Releases
## @celo/[email protected]

### Major Changes

- [#407](#407)
[`3890220`](3890220)
Thanks [@aaronmgdr](https://github.com/aaronmgdr)! - Remove
transfer:gold -- this was an old alias for transfer:celo which has the
same functionality

- [#412](#412)
[`23d36cc`](23d36cc)
Thanks [@aaronmgdr](https://github.com/aaronmgdr)! - Remove `celocli
validator:force-deaffiliate`

This command was only ever usable pre mainnet launch. The force
deaffiliate method it would call is only callable by one of the
whitelisted Slasher Contracts.

To force removal of validator with poor uptime use `celocli
validator:downtime-slash` or to sever association with a validator from
your group use `celocli validator:deaffiliate`

- [#339](#339)
[`87223ba`](87223ba)
Thanks [@aaronmgdr](https://github.com/aaronmgdr)! - Remove support for
reserve:\* commands. As foretold by
<https://forum.celo.org/t/sunset-of-reserve-commands/8454>

- [#407](#407)
[`3890220`](3890220)
Thanks [@aaronmgdr](https://github.com/aaronmgdr)! - Remove
account:recover-old

This was meant to be a temporary command for migrating account from a
beta version of Valora to the release version. Please use a previous
version of celocli if you need to make this one time recovery.

- [#343](#343)
[`54741cc`](54741cc)
Thanks [@aaronmgdr](https://github.com/aaronmgdr)! - Remove commands
identity:identifier, identity:get-attestations

See
<https://forum.celo.org/t/rfc-deprecation-of-celocli-identity-commands/8676>

### Minor Changes

- [#420](#420)
[`fb08485`](fb08485)
Thanks [@shazarre](https://github.com/shazarre)! - Adds support for safe
integration for L2 hotfix security council approvals

- [#429](#429)
[`5b02036`](5b02036)
Thanks [@shazarre](https://github.com/shazarre)! - Removes L2 BLS keys
support for account:authorize

- [#447](#447)
[`7bc05c2`](7bc05c2)
Thanks [@shazarre](https://github.com/shazarre)! -
validator:signed-blocks not supported on L2 anymore, fixes
validator:status L2

- [#471](#471)
[`26b9779`](26b9779)
Thanks [@aaronmgdr](https://github.com/aaronmgdr)! - For `account:new`
command add alias "celoLegacy" to the `--derivationPath` flag

- [#459](#459)
[`0e559c7`](0e559c7)
Thanks [@shazarre](https://github.com/shazarre)! - Introduces a new
command `account:claim-rpc-url` allowing to claim RPC URLs

-
[`76045eb`](76045eb)
Thanks [@shazarre](https://github.com/shazarre)! - BLS keys are now
optional as being deprecated on L2, validator:register and
releasecelo:authorize no longer require them in L2 context

### Patch Changes

- [#421](#421)
[`7d42a05`](7d42a05)
Thanks [@aaronmgdr](https://github.com/aaronmgdr)! - fix
governance:build-proposal with contracts from mento or which use
solidity 0.8

- [#463](#463)
[`eba89a3`](eba89a3)
Thanks [@aaronmgdr](https://github.com/aaronmgdr)! - Add
GovernanceSlasher to RegisteredContractsEnum

- [#389](#389)
[`5a0a922`](5a0a922)
Thanks [@aaronmgdr](https://github.com/aaronmgdr)! - Add warning that
ETH derivation path will be the default in a future major breaking
change.

- [#425](#425)
[`952bc81`](952bc81)
Thanks [@nicolasbrugneaux](https://github.com/nicolasbrugneaux)! -
deprecates the flags --whitelisters and --nonwhitelisters from the
governance:show command

- [#456](#456)
[`d5c9204`](d5c9204)
Thanks [@nicolasbrugneaux](https://github.com/nicolasbrugneaux)! - Fix
rewards:show for L2

- [#472](#472)
[`1df8688`](1df8688)
Thanks [@aaronmgdr](https://github.com/aaronmgdr)! - Dont show flags for
privateKey, gasCurrency, useLedger, and related flags in help for
commands which dont actually make use of them.

- [#395](#395)
[`693f6e7`](693f6e7)
Thanks [@aaronmgdr](https://github.com/aaronmgdr)! - Fix incorrect
message where the transfered token was used as gas token in the
messaging but not in actuality

- [#395](#395)
[`693f6e7`](693f6e7)
Thanks [@aaronmgdr](https://github.com/aaronmgdr)! - Fix Transfering,
exchanging cusd (and other fee tokens) and or using gasCurrency flag
with ledger devices prior to 1.2

- [#471](#471)
[`26b9779`](26b9779)
Thanks [@aaronmgdr](https://github.com/aaronmgdr)! - when account:new is
called it displays the full bip44 derivation path in the output. Before
it would miss the last 2 positions.

- [#480](#480)
[`b83d8c4`](b83d8c4)
Thanks [@aaronmgdr](https://github.com/aaronmgdr)! - Recommended node
version is now node 20

- [#452](#452)
[`2283374`](2283374)
Thanks [@aaronmgdr](https://github.com/aaronmgdr)! - Show deprecated
warning on flags which will be removed after cel2 launch

- [#389](#389)
[`5a0a922`](5a0a922)
Thanks [@aaronmgdr](https://github.com/aaronmgdr)! - Fix: account:new
can now be called without a node

- [#449](#449)
[`97f0a53`](97f0a53)
Thanks [@aaronmgdr](https://github.com/aaronmgdr)! - Show --node and
--useLedger flags when --help is called. Show aliases for networks in
--node help

- [#452](#452)
[`2283374`](2283374)
Thanks [@aaronmgdr](https://github.com/aaronmgdr)! - use onchain values
instead of static for lock requirements

- [#450](#450)
[`9558b56`](9558b56)
Thanks [@nicolasbrugneaux](https://github.com/nicolasbrugneaux)! -
Gracefully throw if --estimate wasnt passed on L1

- [#427](#427)
[`ee33677`](ee33677)
Thanks [@nicolasbrugneaux](https://github.com/nicolasbrugneaux)! -
Change a dependency to use npm rather than github

- Updated dependencies
\[[`eba89a3`](eba89a3),
[`43e8474`](43e8474),
[`693f6e7`](693f6e7),
[`7d42a05`](7d42a05),
[`c4b9c6d`](c4b9c6d),
[`7bc05c2`](7bc05c2),
[`5a0a922`](5a0a922),
[`0e559c7`](0e559c7),
[`33ad4aa`](33ad4aa),
[`d988d31`](d988d31),
[`42d091f`](42d091f),
[`b83d8c4`](b83d8c4),
[`36c4369`](36c4369),
[`4ef76eb`](4ef76eb),
[`76045eb`](76045eb),
[`38fe4d0`](38fe4d0),
[`26b9779`](26b9779),
[`33ad4aa`](33ad4aa),
[`b366827`](b366827),
[`a23246e`](a23246e),
[`fb08485`](fb08485),
[`7d42a05`](7d42a05),
[`ee33677`](ee33677),
[`d5c9204`](d5c9204)]:
    -   @celo/[email protected]
    -   @celo/[email protected]
    -   @celo/[email protected]
    -   @celo/[email protected]
    -   @celo/[email protected]
    -   @celo/[email protected]
    -   @celo/[email protected]
    -   @celo/[email protected]
    -   @celo/[email protected]
    -   @celo/[email protected]
    -   @celo/[email protected]
    -   @celo/[email protected]

## @celo/[email protected]

### Major Changes

- [#228](#228)
[`4ef76eb`](4ef76eb)
Thanks [@aaronmgdr](https://github.com/aaronmgdr)! - remove deprecated
functions and consts exported from ./contacts and ./displayformating.
./currencies and ./phonenumbers. If these are used by your app we
recommend to inline the functions from the previous release.

-
<https://github.com/celo-org/developer-tooling/blob/%40celo/wallet-base%406.0.1/packages/sdk/base/src/contacts.ts>
-
<https://github.com/celo-org/developer-tooling/blob/%40celo/wallet-base%406.0.1/packages/sdk/base/src/displayFormatting.ts>
-
<https://github.com/celo-org/developer-tooling/blob/%40celo/wallet-base%406.0.1/packages/sdk/base/src/phoneNumbers.ts>


<https://github.com/celo-org/developer-tooling/tree/%40celo/wallet-base%406.0.1/packages/sdk/base/src>

Full List of removed exports -- ContactPhoneNumber, MinimalContact,
getContactPhoneNumber, isContact, CURRENCY_ENUM, Currency, CURRENCIES,
resolveCurrency, SHORT_CURRENCIES, currencyToShortMap | getErrorMessage
| anonymizedPhone | getContactNameHash

### Minor Changes

- [#471](#471)
[`26b9779`](26b9779)
Thanks [@aaronmgdr](https://github.com/aaronmgdr)! - add
DerivationPathAliases export

## @celo/[email protected]

### Major Changes

- [#340](#340)
[`33ad4aa`](33ad4aa)
Thanks [@aaronmgdr](https://github.com/aaronmgdr)! - Removes all exports
under the lib/identity folder. These have been move to a new
@celo/metadata-claims package and should be imported from there.

Note that folder structure is also flattened slightly. so replace
`@celo/contractkit/lib/identity/claims/` with
`@celo/metadata-claims/lib/`

    example

    ```diff
- import { createAccountClaim } from
'@celo/contractkit/lib/identity/claims/account'
+ import { createAccountClaim } from '@celo/metadata-claims/lib/account'
    ```

    ```diff
- import { ContractKit, IdentityMetadataWrapper, newKitFromWeb3 } from
'@celo/contractkit'
    - import { ClaimTypes } from '@celo/contractkit/lib/identity'
    + import { ContractKit, newKitFromWeb3 } from '@celo/contractkit'
+ import { ClaimTypes, IdentityMetadataWrapper } from
'@celo/metadata-claims'

    ```

Note that Contractkit is Not a dependency. Instead when using
`IdentityMetadataWrapper` you should make an object that satisfis the
`AccountMetadataSignerGetters` type

    ```typescript
import { AccountMetadataSignerGetters } from
'@celo/metadata-claims/lib/types'
    ```

    using viem it would be like

    ```typescript
const accountsMetaDataSignerGetters: AccountMetadataSignerGetters = {
isAccount: async (address: string) => accounts.read.isAccount([address
as Address]),
      getValidatorSigner: async (address: string) =>
        accounts.read.getValidatorSigner([address as Address]),
      getVoteSigner: async (address: string) =>
        accounts.read.getValidatorSigner([address as Address]),
      getAttestationSigner: async (address: string) =>
        accounts.read.getValidatorSigner([address as Address]),
    }
    ```

### Minor Changes

- [#447](#447)
[`7bc05c2`](7bc05c2)
Thanks [@shazarre](https://github.com/shazarre)! - Exposes
EpochManager.getElectedSigners contract method

-
[`76045eb`](76045eb)
Thanks [@shazarre](https://github.com/shazarre)! - ValidatorsWrapper:
add registerValidatorNoBls to allow registration without BLS keys which
are not supported in L2

### Patch Changes

- [#463](#463)
[`eba89a3`](eba89a3)
Thanks [@aaronmgdr](https://github.com/aaronmgdr)! - Add
GovernanceSlasher to RegisteredContractsEnum

- [#467](#467)
[`43e8474`](43e8474)
Thanks [@shazarre](https://github.com/shazarre)! - fix: add
transferOwnership() to proxy abi list

- [#446](#446)
[`42d091f`](42d091f)
Thanks [@aaronmgdr](https://github.com/aaronmgdr)! - Bump @celo/abis-12

- [#480](#480)
[`b83d8c4`](b83d8c4)
Thanks [@aaronmgdr](https://github.com/aaronmgdr)! - Recommended node
version is now node 20

- [#455](#455)
[`36c4369`](36c4369)
Thanks [@aaronmgdr](https://github.com/aaronmgdr)! - Mark contract
wrapper methods that will not work on L2 because solidity contracts have
onlyL1 modifier as deprecated.

| Deprecated Contract / Method | Replacement or none |
| -------------------------------------------- |
----------------------------------------- |
| Validators#registerValidator | Validators#registerValidatorNoBLS |
| BlockchainParams#getEpochNumberOfBlock |
EpochManager#getEpochNumberOfBlock |
| BlockchainParams#getFirstBlockNumberForEpoch |
EpochManager#getFirstBlockAtEpoch |
| Election#getCurrentValidatorSigners | EpochManager#getElectedSigners |
| Election#getGroupEpochRewards |
Election#getGroupEpochRewardsBasedOnScore |
| GovernanceSlasher#slash | GovernanceSlasher#slashL2 |
| DoubleSigningSlasher | X |
| DowntimeSlasher | X |

- [#400](#400)
[`38fe4d0`](38fe4d0)
Thanks [@shazarre](https://github.com/shazarre)! - Renames `getElected`
and its usages to `getElectedAccounts` for `EpochManagerWrapper`

- [#456](#456)
[`d5c9204`](d5c9204)
Thanks [@nicolasbrugneaux](https://github.com/nicolasbrugneaux)! -
Backwards compat for some methods using epoch's block numbers

- Updated dependencies
\[[`c4b9c6d`](c4b9c6d),
[`d988d31`](d988d31),
[`4ef76eb`](4ef76eb),
[`26b9779`](26b9779),
[`fb08485`](fb08485)]:
    -   @celo/[email protected]
    -   @celo/[email protected]
    -   @celo/[email protected]
    -   @celo/[email protected]

## @celo/[email protected]

### Major Changes

- [#340](#340)
[`33ad4aa`](33ad4aa)
Thanks [@aaronmgdr](https://github.com/aaronmgdr)! - Introducing
@celo/metadata-claims These are a series of functions extracted from
@celo/contractkit since they didnt strictly need depend on contractkit
itsefl. Developers can now use IdentityMetadataWrapper with any js rpc
library like ethers or viem or web3js without being forced to import
ContractKit.

Instead when using `IdentityMetadataWrapper` you should make an object
that satisfis the `AccountMetadataSignerGetters` type

    ```typescript
import { AccountMetadataSignerGetters } from
'@celo/metadata-claims/lib/types'
    ```

    using viem it would be like

    ```typescript
const accountsMetaDataSignerGetters: AccountMetadataSignerGetters = {
isAccount: async (address: string) => accounts.read.isAccount([address
as Address]),
      getValidatorSigner: async (address: string) =>
        accounts.read.getValidatorSigner([address as Address]),
      getVoteSigner: async (address: string) =>
        accounts.read.getValidatorSigner([address as Address]),
      getAttestationSigner: async (address: string) =>
        accounts.read.getValidatorSigner([address as Address]),
    }
    ```

### Minor Changes

- [#459](#459)
[`0e559c7`](0e559c7)
Thanks [@shazarre](https://github.com/shazarre)! - Add support for
RPC_URL claim type

### Patch Changes

- [#475](#475)
[`b366827`](b366827)
Thanks [@aaronmgdr](https://github.com/aaronmgdr)! - Publish lib instead
of src

- Updated dependencies
\[[`4ef76eb`](4ef76eb),
[`26b9779`](26b9779)]:
    -   @celo/[email protected]
    -   @celo/[email protected]

## @celo/[email protected]

### Major Changes

- [#228](#228)
[`4ef76eb`](4ef76eb)
Thanks [@aaronmgdr](https://github.com/aaronmgdr)! - remove deprecated
functions and consts exported from ./contacts and ./displayformating.
./currencies and ./phonenumbers. If these are used by your app we
recommend to inline the functions from the previous release.

-
<https://github.com/celo-org/developer-tooling/blob/%40celo/wallet-base%406.0.1/packages/sdk/base/src/contacts.ts>
-
<https://github.com/celo-org/developer-tooling/blob/%40celo/wallet-base%406.0.1/packages/sdk/base/src/displayFormatting.ts>
-
<https://github.com/celo-org/developer-tooling/blob/%40celo/wallet-base%406.0.1/packages/sdk/base/src/phoneNumbers.ts>


<https://github.com/celo-org/developer-tooling/tree/%40celo/wallet-base%406.0.1/packages/sdk/base/src>

Full List of removed exports -- ContactPhoneNumber, MinimalContact,
getContactPhoneNumber, isContact, CURRENCY_ENUM, Currency, CURRENCIES,
resolveCurrency, SHORT_CURRENCIES, currencyToShortMap | getErrorMessage
| anonymizedPhone | getContactNameHash

### Patch Changes

- Updated dependencies
\[[`4ef76eb`](4ef76eb),
[`26b9779`](26b9779)]:
    -   @celo/[email protected]

## @celo/[email protected]

### Major Changes

- [#344](#344)
[`6bba5e3`](6bba5e3)
Thanks [@nicolasbrugneaux](https://github.com/nicolasbrugneaux)! -
Initial release

### Patch Changes

- [#443](#443)
[`a23246e`](a23246e)
Thanks [@nicolasbrugneaux](https://github.com/nicolasbrugneaux)! - Safer
handling of v from device

- [#427](#427)
[`ee33677`](ee33677)
Thanks [@nicolasbrugneaux](https://github.com/nicolasbrugneaux)! -
Change a dependency to use npm rather than github

- Updated dependencies
\[[`4ef76eb`](4ef76eb),
[`26b9779`](26b9779)]:
    -   @celo/[email protected]

## @celo/[email protected]

### Minor Changes

- [#420](#420)
[`fb08485`](fb08485)
Thanks [@shazarre](https://github.com/shazarre)! - Now CeloProvider can
be wrapped in EIP-1193 partially compatible object (request + args)

### Patch Changes

- Updated dependencies
\[[`4ef76eb`](4ef76eb),
[`26b9779`](26b9779)]:
    -   @celo/[email protected]
    -   @celo/[email protected]

## @celo/[email protected]

### Patch Changes

- [#400](#400)
[`38fe4d0`](38fe4d0)
Thanks [@shazarre](https://github.com/shazarre)! - Upgrades to latest
devchain

- [#446](#446)
[`42d091f`](42d091f)
Thanks [@aaronmgdr](https://github.com/aaronmgdr)! - Bump @celo/abis-12

- [#420](#420)
[`fb08485`](fb08485)
Thanks [@shazarre](https://github.com/shazarre)! - Adds actual Celo
chain id when running anvil

- Updated dependencies
\[[`fb08485`](fb08485)]:
    -   @celo/[email protected]

## @celo/[email protected]

### Patch Changes

- [#389](#389)
[`5a0a922`](5a0a922)
Thanks [@aaronmgdr](https://github.com/aaronmgdr)! - Add warning that
ETH derivation path will be the default in a future major breaking
change.

- Updated dependencies
\[[`4ef76eb`](4ef76eb),
[`26b9779`](26b9779)]:
    -   @celo/[email protected]
    -   @celo/[email protected]

## @celo/[email protected]

### Patch Changes

- Updated dependencies
\[[`eba89a3`](eba89a3),
[`43e8474`](43e8474),
[`7bc05c2`](7bc05c2),
[`33ad4aa`](33ad4aa),
[`42d091f`](42d091f),
[`b83d8c4`](b83d8c4),
[`36c4369`](36c4369),
[`4ef76eb`](4ef76eb),
[`76045eb`](76045eb),
[`38fe4d0`](38fe4d0),
[`26b9779`](26b9779),
[`fb08485`](fb08485),
[`d5c9204`](d5c9204)]:
    -   @celo/[email protected]
    -   @celo/[email protected]
    -   @celo/[email protected]
    -   @celo/[email protected]

## @celo/[email protected]

### Patch Changes

- [#463](#463)
[`eba89a3`](eba89a3)
Thanks [@aaronmgdr](https://github.com/aaronmgdr)! - Add
GovernanceSlasher to RegisteredContractsEnum

- [#421](#421)
[`7d42a05`](7d42a05)
Thanks [@aaronmgdr](https://github.com/aaronmgdr)! - minor update to
inquirer lib

- [#446](#446)
[`42d091f`](42d091f)
Thanks [@aaronmgdr](https://github.com/aaronmgdr)! - Bump @celo/abis-12

- [#421](#421)
[`7d42a05`](7d42a05)
Thanks [@aaronmgdr](https://github.com/aaronmgdr)! - Fix being unable to
use 08 and mento contracts with proposal builder

- Updated dependencies
\[[`eba89a3`](eba89a3),
[`43e8474`](43e8474),
[`7bc05c2`](7bc05c2),
[`33ad4aa`](33ad4aa),
[`42d091f`](42d091f),
[`b83d8c4`](b83d8c4),
[`36c4369`](36c4369),
[`4ef76eb`](4ef76eb),
[`76045eb`](76045eb),
[`38fe4d0`](38fe4d0),
[`26b9779`](26b9779),
[`fb08485`](fb08485),
[`d5c9204`](d5c9204)]:
    -   @celo/[email protected]
    -   @celo/[email protected]
    -   @celo/[email protected]
    -   @celo/[email protected]
    -   @celo/[email protected]

## @celo/[email protected]

### Patch Changes

- Updated dependencies
\[[`c4b9c6d`](c4b9c6d),
[`d988d31`](d988d31),
[`4ef76eb`](4ef76eb)]:
    -   @celo/[email protected]
    -   @celo/[email protected]

## @celo/[email protected]

### Patch Changes

- Updated dependencies
\[[`4ef76eb`](4ef76eb),
[`26b9779`](26b9779)]:
    -   @celo/[email protected]
    -   @celo/[email protected]

## @celo/[email protected]

### Patch Changes

- Updated dependencies
\[[`4ef76eb`](4ef76eb),
[`26b9779`](26b9779),
[`fb08485`](fb08485)]:
    -   @celo/[email protected]
    -   @celo/[email protected]

## @celo/[email protected]

### Patch Changes

- [#434](#434)
[`c4b9c6d`](c4b9c6d)
Thanks [@aaronmgdr](https://github.com/aaronmgdr)! - Force patch bump
wallets to deal with version conflict

- [#408](#408)
[`d988d31`](d988d31)
Thanks [@nicolasbrugneaux](https://github.com/nicolasbrugneaux)! -
Improve support for celo-legacy and modern txs within ledger

- Updated dependencies
\[[`4ef76eb`](4ef76eb),
[`26b9779`](26b9779),
[`fb08485`](fb08485)]:
    -   @celo/[email protected]
    -   @celo/[email protected]
    -   @celo/[email protected]

## @celo/[email protected]

### Patch Changes

- [#434](#434)
[`c4b9c6d`](c4b9c6d)
Thanks [@aaronmgdr](https://github.com/aaronmgdr)! - Force patch bump
wallets to deal with version conflict

- Updated dependencies
\[[`4ef76eb`](4ef76eb),
[`26b9779`](26b9779)]:
    -   @celo/[email protected]

## @celo/[email protected]

### Patch Changes

- [#434](#434)
[`c4b9c6d`](c4b9c6d)
Thanks [@aaronmgdr](https://github.com/aaronmgdr)! - Force patch bump
wallets to deal with version conflict

- Updated dependencies
\[[`c4b9c6d`](c4b9c6d),
[`d988d31`](d988d31),
[`4ef76eb`](4ef76eb),
[`fb08485`](fb08485)]:
    -   @celo/[email protected]
    -   @celo/[email protected]
    -   @celo/[email protected]
    -   @celo/[email protected]
    -   @celo/[email protected]

## @celo/[email protected]

### Patch Changes

- [#434](#434)
[`c4b9c6d`](c4b9c6d)
Thanks [@aaronmgdr](https://github.com/aaronmgdr)! - Force patch bump
wallets to deal with version conflict

- Updated dependencies
\[[`c4b9c6d`](c4b9c6d),
[`d988d31`](d988d31),
[`4ef76eb`](4ef76eb),
[`26b9779`](26b9779),
[`fb08485`](fb08485)]:
    -   @celo/[email protected]
    -   @celo/[email protected]
    -   @celo/[email protected]
    -   @celo/[email protected]
    -   @celo/[email protected]
    -   @celo/[email protected]

## @celo/[email protected]

### Patch Changes

- [#434](#434)
[`c4b9c6d`](c4b9c6d)
Thanks [@aaronmgdr](https://github.com/aaronmgdr)! - Force patch bump
wallets to deal with version conflict

- Updated dependencies
\[[`c4b9c6d`](c4b9c6d),
[`d988d31`](d988d31),
[`4ef76eb`](4ef76eb),
[`fb08485`](fb08485)]:
    -   @celo/[email protected]
    -   @celo/[email protected]
    -   @celo/[email protected]
    -   @celo/[email protected]
    -   @celo/[email protected]

## @celo/[email protected]

### Patch Changes

- [#395](#395)
[`693f6e7`](693f6e7)
Thanks [@aaronmgdr](https://github.com/aaronmgdr)! - Fix issue where
ledger running celo firmware app 1.1.10 could not send fee token
transactions or perform and interactions with those contracts

- [#434](#434)
[`c4b9c6d`](c4b9c6d)
Thanks [@aaronmgdr](https://github.com/aaronmgdr)! - Force patch bump
wallets to deal with version conflict

- [#408](#408)
[`d988d31`](d988d31)
Thanks [@nicolasbrugneaux](https://github.com/nicolasbrugneaux)! -
Improve support for celo-legacy and modern txs within ledger

- [#443](#443)
[`a23246e`](a23246e)
Thanks [@nicolasbrugneaux](https://github.com/nicolasbrugneaux)! - Safer
handling of v from device

- [#427](#427)
[`ee33677`](ee33677)
Thanks [@nicolasbrugneaux](https://github.com/nicolasbrugneaux)! -
Change a dependency to use npm rather than github

- Updated dependencies
\[[`c4b9c6d`](c4b9c6d),
[`d988d31`](d988d31),
[`4ef76eb`](4ef76eb),
[`26b9779`](26b9779),
[`fb08485`](fb08485)]:
    -   @celo/[email protected]
    -   @celo/[email protected]
    -   @celo/[email protected]
    -   @celo/[email protected]
    -   @celo/[email protected]

## @celo/[email protected]

### Patch Changes

- [#434](#434)
[`c4b9c6d`](c4b9c6d)
Thanks [@aaronmgdr](https://github.com/aaronmgdr)! - Force patch bump
wallets to deal with version conflict

- [#408](#408)
[`d988d31`](d988d31)
Thanks [@nicolasbrugneaux](https://github.com/nicolasbrugneaux)! -
Improve support for celo-legacy and modern txs within ledger

- Updated dependencies
\[[`c4b9c6d`](c4b9c6d),
[`d988d31`](d988d31),
[`4ef76eb`](4ef76eb),
[`26b9779`](26b9779),
[`fb08485`](fb08485)]:
    -   @celo/[email protected]
    -   @celo/[email protected]
    -   @celo/[email protected]
    -   @celo/[email protected]

## @celo/[email protected]

### Patch Changes

- [#434](#434)
[`c4b9c6d`](c4b9c6d)
Thanks [@aaronmgdr](https://github.com/aaronmgdr)! - Force patch bump
wallets to deal with version conflict

- Updated dependencies
\[[`c4b9c6d`](c4b9c6d),
[`d988d31`](d988d31),
[`4ef76eb`](4ef76eb),
[`fb08485`](fb08485)]:
    -   @celo/[email protected]
    -   @celo/[email protected]
    -   @celo/[email protected]


<!-- start pr-codex -->

---

## PR-Codex overview
This PR primarily focuses on updating the versions of various `@celo`
packages from beta versions to stable releases, along with some minor
dependency updates and changelog entries for new features and fixes.

### Detailed summary
- Deleted multiple `.changeset` files.
- Updated versions for `@celo/base`, `@celo/utils`, `@celo/connect`,
`@celo/contractkit`, and several wallet packages from beta to stable.
- Added changelog entries for patch updates in various packages.
- Improved support for ledger transactions and fixed bugs related to
wallet interactions.

> The following files were skipped due to too many changes: `yarn.lock`

> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your
question}`

<!-- end pr-codex -->

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
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.

2 participants