Upcoming @celo/celocli 7

We are announcing the upcoming release of @celo/celocli version 7.

Betas are out now and the production release will be out in a few weeks once we have used the beta internally a bit.

npm install -g @celo/celocli@beta

latest beta at time of release @celo/[email protected]

This is quiet a big release in terms of lines of code changed and also has a few breaking changes.

Breaking Changes

  1. Now defaults to using “m/44’/60’/0’” (typical for evm wallets) as base derivation path for account:new and any command using –useLedger. use celocli config:set --derivationPath celoLegacy for old behavior.

  2. Remove support for --useAKV for transfer methods

  3. Remove node:accounts command (use account:list)

  4. epoch:* commands will not warn and exit instead of erroring if Epoch is not in correct state for the given command

  5. Remove bls* flags from account:authorize and releasecelo:authorize commands, and validator:list/register commands (not used on L2)

  6. Remove slashing flag from rewards:show (no longer relevant post L2 upgrade)

Other changes To be aware of

…see comment

3 Likes

Movement to viem

With the deprecation of web3 we have started the task of moving @celo/celocli from depending on @celo/contractkit + web3 to depending on viem + two upcoming tiny libraries @celo/core and @celo/actions

So far we have migrated the following commands.

  • account:balance
  • account:list
  • account:new
  • election:current
  • election:vote
  • election:activate
  • epochs:current
  • epochs:send-validator-payment
  • releasecelo:transfer-dollars
  • network:info
  • network:whitelist
  • transfer:dollars
  • transfer:celo
  • transfer:erc20
  • transfer:euros
  • transfer:reals
  • transfer:stable
  • governance:vote
  • node:synced
  • validatorgroup:rpc-urls
  • validatorgroup:list
  • validator:list

The remaining commands will be migrated over the next few quarters or for some potentially removed if we find that are no longer needed.

Removal of L1 code

Technically a breaking change if for some reason you had forked the old celo mainnet and were using the celocli with it otherwise the removal of the code for handling L1 should not be noticed.

Deprecations

  • all commands in dkg group are deprecated
  • useAKV flag. This was for connecting to AzureKeyVault for storing key to sign transactions. We hope to streamline and remove this functionality.
2 Likes

Notable bug fixes and features

  • account:list --useLedger and config no longer require --node to be passed in.
  • Add epoch:status/current command to view information on the current epoch
  • Scores for validator groups and validators are now properly fetched from score manager contract

thank you

Please try out the beta and report any issues here or in our GitHub - celo-org/developer-tooling: 🛠️ SDKs and CLI for interacting with Celo

1 Like