celo-monorepo

Official repository for core projects comprising the Celo platform

APACHE-2.0 License

Downloads
16.6K
Stars
679
Committers
195

Bot releases are visible (Hide)

celo-monorepo - v5.0.0

Published by aaronmgdr about 1 year ago

Description

This Beta Release for 5.0 series Adds Support for and favors using eip1559 (when no fee currency selected) and cip42 (when it is) legacy transaction serialization will only be used if gasPrice is explicitly set.

Note on versions 5.0.0 and 5.0.1

These version have a bug and do not work use 5.0.2 or higher

Other changes

TopLine Changes

  • Add support for CIP42 and EIP1559 Transactions
  • Prefer EIP1559 if no feeCurrency and CIP42 if using feeCurrency, Old CeloLegacy transations still supported (set the gasPrice explicitly) but discouraged
    upgrade Web3 dependency

@celo/connect

  • gasPrice is no longer an option on config. setting 0 (or any empty value) for gasPrice in transaction will result in maxFeePerGas and maxPriorityFee per gas being set on the transaction

  • likewise gasPrice is no longer settable on the connection itself

  • (note that the gasPrice function for fetching price from node is NOT affected)

  • replace connection.fillGasPrice with connection.setFeeMarketGas

  • add inputAccessListFormatter

  • remove deprecated setGasPriceForCurrency

  • EncodedTransaction Type now supports CIp42 and EIP1559 transactions

  • inputCeloTxFormater now returns type FormattedCeloTx although apart from support for cip42 and eip1559 tx the data returned hasnt changed

  • numberToHex, ensureLeading0x, inputAddressFormatter now are typed to return 0x{string} instead of just string

*added parseAccessList and inputAccessListFormatter for converting accessList from json to array of array and back

  • RLPEncodedTx now types its transaction field as FormattedTransaction this is more accurate than the CeloTX type it previously had

@celo/contrackit

  • removed gasPriceSuggestionMultiplier == gas price from rpc no longer multipled by 5

  • remove kit.fillGasPrice

  • remove updateGasPriceInConnectionLayer

  • remove kit.gasPrice

@celo/wallet-base

  • extractSignature now throws if the length of provided tx is not correct

  • extractSignature was incorrectly typed to return Buffers for r and s values

  • ensureLeading0x now types output to be 0x{string}

npm

https://www.npmjs.com/package/@celo/contractkit/v/5.0.0-beta.1

celo-monorepo - CELOCLI 2.1

Published by aaronmgdr over 1 year ago

  • governance:show --proposalID {id} now properly considers constitutional thresholds while calculating proposal support.
celo-monorepo - SDKs Release 4.1

Published by aaronmgdr over 1 year ago

  • adds getSupportWithConstitionThreshold method to governance wrapper
  • uses generated contracts for core release 9
  • some minor deep dep updates
celo-monorepo - Core Contracts Release 9

Published by pahor167 over 1 year ago

Release Notes:

This is the ninth release of the Celo Core Contracts. It follows the release process per the docs.

Audits:

Verilog Core Contracts Release 9: Audit

Key updates in this release:

1. dequeueProposalsIfReady should not update the dequeue timestamp if there were not proposals to dequeue #9739

2. Allow partial/multiple Governance votes #9911

Previously, the voting system for proposals limited users to voting with all of their owned locked gold. However, a recent change has removed this limitation, giving users the flexibility to choose the amount of locked CELO they wish to use when voting. With this change, users can allocate a portion of their locked CELO to vote either for or against proposals or possibly abstain. This allows for greater control over decision-making and can help users to more accurately reflect their preferences.

3. getWithdrawableAmount in ReleaseGold.sol #9942

4. Parallelize approval and referendum governance stages #9779

Standalone approval stage was removed and now it is possible to approve proposals in referendum stage when proposal can already be voted on.

5. Make Attestations.sol read-only #10142

6. Mark successful governance proposals with no transactions as executed #9798

7. Allow election voting for more than 10 groups #9998

Voting for more than 10 groups was not allowed due to the high cost of calculating the total votes per account across all groups. However, this PR proposes an opt-in feature that permits voting for more than 10 groups. If this feature is enabled, account holders will need to update the vote count for each group they vote for on a daily basis.

Specific Version Updates:

Contract Name Old New
Attestations 1.1.1.2 1.2.0.0
Election 1.1.1.2 1.1.3.0
GoldToken 1.1.1.1 1.1.2.0
Governance 1.2.1.1 1.3.0.0
LockedGold 1.1.2.0 1.1.2.1
Validators 1.2.0.3 1.2.0.4
celo-monorepo - SDKS 4.0

Published by aaronmgdr over 1 year ago

@celo/contractkit

  • removed Attestations utils
  • removed methods from Attestations Wrapper
  • removed ASV1 helpers

@celo/wallet-gcp (New Package)

  • adds support for google HSM wallet

@celo/utils

  • added support for EIP712 to signed typed data utils

@celo/explorer

  • added support for non core contract proxy decoding for CGPs

@celo/dappkit

  • this package has been removed
celo-monorepo - Celo Cli 2.0.0

Published by aaronmgdr over 1 year ago

  • While viewing governance proposals it is now possible to decode non core contracts which use proxies.

Breaking

  • Remove ASv1-specific commands from the CLI (#10179) 0d57cefad by @eelanagaraj

note 1.8.1-beta has the same code as 2.0 (upgrade to major release after realizing there was a breaking page)

celo-monorepo - SDKs 3.2.0

Published by alecps over 1 year ago

New Feature

Adds ability to timeout ODIS requests with an AbortController to the identity SDK https://github.com/celo-org/celo-monorepo/pull/10131

Packages with changes

@celo/identity

celo-monorepo - @celo/celocli 1.8.0

Published by aaronmgdr almost 2 years ago

New Feature

  • celocli governace:show will now display human readable overview of proposed transactions when interacting with non core celo contracts (via sourcify)
celo-monorepo - ContractKit SDKS 3.1

Published by aaronmgdr almost 2 years ago

New Feature

  • Adds ability to verify governance proposals which interact with non core contracts using sourcify #10019

Packages with changes

  • @celo/explorer
  • @celo/governance
celo-monorepo - @celo/celocli 1.7.4

Published by dckesler almost 2 years ago

Fixes

  • Removes incorrect account check on payment delegations enabling any address to be delegated to including celo safe vaults
  • Adds governance version check to governance approval method
celo-monorepo - ContractKit SDKs v3.0.1

Published by alecps almost 2 years ago

New Features

Add support for arbitrary off-chain identifiers in the @celo-org/identity sdk. Previously, the sdk was written to be phone number specific and identifiers were prefixed with tel:// after returning from ODIS. This update adds new prefixes for twitter + email and refactors the code to be identifier agnostic.

https://github.com/celo-org/celo-monorepo/pull/9985

celo-monorepo - ODIS 2.0.0

Published by alecps almost 2 years ago

@oblivious-decentralized-identifier-service-2.0.0

ODIS 2.0.0 is a complete refactor of ODIS that adds support for

  • The CIP40 API and PEAR Account Recovery protocol.
  • Improved rate limiting via OdisPayments.sol to support the Federated Attestations Identity protocol (CIP51)
  • Multiple key versions, to enable future key rotations and enhanced security

ODIS signers should upgrade to us.gcr.io/celo-testnet/celo-monorepo:oblivious-decentralized-identifier-service-2.0.0

Before upgrading

  1. Please ensure that your key shares are named correctly in your keyvault prior to upgrading your signer.
  • If you are using Azure or AWS , the original bls share should be named phoneNumberPrivacy-1 and the more recent version of that key share (generated during the resharing ceremony on 10/22/21) should be labeled phoneNumberPrivacy-2. The CIP40 key share generated during the DKG ceremony on 10/22/21 should be named domains-1.
  • If you are using Google Cloud, you should create two keys named phoneNumberPrivacy (with versions 1 and 2) and domains (with only version 1). The KEYSTORE_GOOGLE_SECRET_NAME env variable isn't used anymore.
  • Please do not delete or rename any existing shares, but rather add the shares to your vault as duplicates under these new names. If you are unsure for any reason about how to label your key shares please reach out on Discord. If you would like to setup time to go through the update synchronously, don't hesitate to reach out.
  1. Please ensure that you have set the following environment variables to true in order to enable all APIs (See Signer README for more info)
    LEGACY_PHONE_NUMBER_PRIVACY_API_ENABLED
    PHONE_NUMBER_PRIVACY_API_ENABLED
    DOMAINS_API_ENABLED

NOTE / UPDATE : This upgrade is currently incompatible with MySQL. If you're using MySQL for your signer DB, please let us know and hold off on upgrading.

NOTE: You will not be able to roll back the upgrade because the database will be updated in a non-backwards compatible way. If your signer is having trouble starting up, it is almost certainly an issue with how your keys are labeled. Please double check your key configuration prior to upgrading, and if an issue does occur there's no need to worry. The system is able to handle limited downtime from 1 or 2 signers at a time and we will be readily available on discord to help troubleshoot.

After upgrading

  1. Please checkout celo-monorepo on master, run yarn && yarn build from the root directory (might take 10-15 mins), and follow the Validating before going live instructions in the Signer README to test that your service is configured properly. If you encounter difficulties or would like further guidance, don't hesitate to reach out on Discord.
  2. Please post in the Discord channel once your upgraded service is live and passing the configuration tests.

@phone-number-privacy-common 2.0.0

New Features

Support for ODIS 2.0.0, including new types, enums, error messages, and more. From now on, request and response types should be imported directly from this package instead of the identity SDK when directly querying ODIS, or else using the convenience query methods in the identity SDK.

Fixes

  • Removes blind-threshold-bls dependency to allow for browser compatibility.
  • Removes btoa dependency.

Breaking Changes

  • This is a major release and is not backwards compatible for use with ODIS v1.
  • The previous quota logic is still (initially) available in ODIS 2.0 and is referred to as the "legacy PNP" (LEGACY_PNP) throughout the code base and SDKs. We encourage folks to upgrade to the new and improved PNP endpoint, as the legacy endpoint will eventually be deprecated.

Upgrades

  • (devDependency) @celo/poprf from ^0.1.6 to ^0.1.9
  • celo SDK dependencies and ContractKit from 2.2.1 to 3.0.0
celo-monorepo - ContractKit SDKs v3.0.0

Published by alecps almost 2 years ago

New Features

This release provides SDK support for querying ODIS 2.0.0, including the new ODIS quota endpoints. Changes are primarily in the @celo/identity SDK.

Breaking Changes

@celo/identity

  • It is no longer possible to query ODIS v1 in this version. Note that the previous quota calculation logic is still available under the "legacy PNP" endpoint in ODIS 2.0.0 (initially). We encourage upgrading to the new and improved PNP endpoint, as the legacy endpoint will eventually be deprecated.
    • Underlying ODIS service URL has been updated.
  • Several function signatures have changed, notably:
    • getPhoneNumberIdentifier: new required parameters -- existing function calls must be updated.
    • queryOdis: new required parameters -- existing function calls must be updated.
    • getBlindedPhoneNumberSignature: optional parameters have changed -- existing function calls should be reviewed and possibly updated.
  • Request and response types must now be imported directly from @phone-number-privacy-common.
  • Code related to ODIS matchmaking, including OdisUtils.Matchmaking, has been removed.

Other

  • Reverts support for StableTokenRegistry, see this PR for more details

Fixes

  • Provides more helpful error messages when instantiating the default WasmBlsBlindingClient.

Upgrades

  • @phone-number-privacy-common from 1.0.39 to 2.0.0
  • @celo/poprf from ^0.1.6 to ^0.1.9
celo-monorepo - @celo/celocli 1.7.3

Published by aaronmgdr about 2 years ago

Fixes

  • Cannot find module '@celo/contractkit/src/wrappers/BaseWrapper'
celo-monorepo - @celo/celocli 1.7.2

Published by aaronmgdr about 2 years ago

fixes

This Release fixes issue with 1.7.1. not being able to approve until 1.3.0.0 Governance.sol is deployed. Approve fails since it expects proposal in Referendum stage.

1.7.2 is compatible with both pre 1.3.0.0 and post 1.3.0.0 Governance

package

https://www.npmjs.com/package/@celo/celocli/v/1.7.2

celo-monorepo - Celo CLI @1.7.1

Published by aaronmgdr about 2 years ago

New Features

Upgrades

  • use @celo/ContractKit/ + @celo/connect 2.2.0

using

yarn add @celo/[email protected]

special notes

1.7.0 was accidentally published pointing to alpha release of @celo/contrctkit without alpha tag or name. but is otherwise essentially identical

celo-monorepo - ContractKit SDKs v2.2.0

Published by aaronmgdr about 2 years ago

New Features

Fixes

Upgrades

changes since pre release and final release

  • stopped publishing .ts and .map files with npm package
celo-monorepo - ContractKit SDKs v2.1

Published by aaronmgdr about 2 years ago

What's Changed

new features

Upgrades

celo-monorepo - CLI 1.6

Published by aaronmgdr about 2 years ago

What's Changed