Skip to content

Conversation

@github-actions
Copy link
Contributor

@github-actions github-actions bot commented Aug 5, 2025

This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and publish to npm yourself or setup this action to publish automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to release-v0.2, this PR will be updated.

Releases

openzeppelin-confidential-contracts@0.2.0

openzeppelin-confidential-contracts

0.2.0 (2025-08-14)

  • Upgrade all contracts to use @fhevm/solidity 0.7.0. (#27)

Token

  • IConfidentialFungibleToken: Prefix totalSupply and balanceOf functions with confidential. (#93)
  • IConfidentialFungibleToken: Rename EncryptedAmountDisclosed event to AmountDisclosed.
  • ConfidentialFungibleToken: Change the default decimals from 9 to 6. (#74)
  • ConfidentialFungibleTokenERC20Wrapper: Add an internal function to allow overriding the underlying decimals fallback value. (#133)

Governance

  • VotesConfidential: Add votes governance utility for keeping track of FHE vote delegations. (#40)
  • ConfidentialFungibleTokenVotes: Add an extension of ConfidentialFungibleToken that implements VotesConfidential. (#40)

Finance

  • VestingWalletConfidential: A vesting wallet that releases confidential tokens owned by it according to a defined vesting schedule. (#91)
  • VestingWalletCliffConfidential: A variant of VestingWalletConfidential which adds a cliff period to the vesting schedule. (#91)
  • VestingWalletConfidentialFactory: A generalized factory that allows for batch funding of confidential vesting wallets. (#102)

Misc

  • HandleAccessManager: Minimal contract that adds a function to give allowance to callers for a given ciphertext handle. (#143)
  • ERC7821WithExecutor: Add an abstract contract that inherits from ERC7821 and adds an executor role. (#102)
  • CheckpointsConfidential: Add a library for handling checkpoints with confidential value types. (#60)
  • TFHESafeMath: Renamed to FHESafeMath. (#137)

@github-actions github-actions bot requested a review from a team as a code owner August 5, 2025 18:29
@github-actions github-actions bot force-pushed the changeset-release/release-v0.2 branch 2 times, most recently from a7d400c to 1e19523 Compare August 8, 2025 14:42
@github-actions github-actions bot changed the title Release v0.2.0 (rc) Release v0.2.0 Aug 14, 2025
@github-actions github-actions bot force-pushed the changeset-release/release-v0.2 branch from 1e19523 to 4a40716 Compare August 14, 2025 14:32
@arr00
Copy link
Contributor

arr00 commented Aug 14, 2025

Closes #139, Closes #140
Stable release

* Update changelog release v0.2.0

* Update CHANGELOG.md

Co-authored-by: James Toussaint <33313130+james-toussaint@users.noreply.github.com>

---------

Co-authored-by: James Toussaint <33313130+james-toussaint@users.noreply.github.com>
@arr00 arr00 requested a review from ernestognw August 14, 2025 20:13
arr00 and others added 2 commits August 14, 2025 17:17
Co-authored-by: Ernesto García <ernestognw@gmail.com>
@arr00 arr00 requested a review from ernestognw August 14, 2025 21:55
@arr00 arr00 merged commit aed3fa1 into release-v0.2 Aug 15, 2025
9 checks passed
arr00 added a commit that referenced this pull request Aug 19, 2025
* Start release candidate

* Release v0.2.0 (rc) (#88)

* Release v0.2.0 (rc)

* update changelog

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Arr00 <13561405+arr00@users.noreply.github.com>

* Check values are encrypted with FHE.isInitialized(..) (#81)

* Check values are encrypted with FHE.isInitialized(..)

* Remove changeset

* Calll FHE library with full name

* Set empty changeset

* Remove empty changeset

* Fix solhint and order imports (#73)

* fix solhint and order imports

* fix import ordering

* fix import ordering

* Add confidential to `balanceOf` and `totalSupply` functions (#93)

* Rename token functions

* add changeset

* Add internal function to wrapper that allows setting the max decimals (#89)

* Create an internal function to allow overriding the max decimals ConfidentialFungibleTokenERC20Wrapper

* fix tets

* Add changeset

* Update NPM package name (#98)

* Add Vesting Wallet (#91)

* Add Vesting Wallet

* fix and add tests

* remove unused imports

* fix test

* add operator

* fix test

* add changeset

* make vesting wallets cloneable

* Apply suggestions from code review

Co-authored-by: James Toussaint <33313130+james-toussaint@users.noreply.github.com>

* add call event

* add initializable version of vesting (#95)

* add initializable version of vesting

* update tests

* remove factory mock

* rename mock files

* fix imports

* remove upgradeable dependency

* add docs

* revert `package-lock.json` changes

* fix import paths

* fix lint

* Update contracts/finance/VestingWalletConfidential.sol

Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>

* fix tests

* add reentrancy protection

* extract executor into extension

* forge install: openzeppelin-contracts-upgradeable

v5.3.0

* update package

* fix overflow risk

* Add vesting wallet namespace storage (#96)

* Add vesting wallet namespace storage

* update pragmas

* reorder functions

* fix lint and inline getting storage

---------

Co-authored-by: Arr00 <13561405+arr00@users.noreply.github.com>

* update docs

* update cliff seconds param size

* remove upgradeable file

* add docs

* Update .changeset/cold-nails-go.md

Co-authored-by: James Toussaint <33313130+james-toussaint@users.noreply.github.com>

* update comments

---------

Co-authored-by: James Toussaint <33313130+james-toussaint@users.noreply.github.com>
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>

* Increase internal accounting to euint128 to avoid overflow in vesting (#101)

* Increase internal accounting to euint128 to avoid overflow in vesting

* remove overflow comment

* remove unused import

* Update pragmas on token files (#106)

* Fund multiple `VestingWalletConfidential` in batch (#102)

* Fund multiple `VestingWalletConfidential` in batch

* Deploy full vesting wallets from factory

* Increase pragma in factory

* fix types in `_vestingSchedule`

* Update changeset

Co-authored-by: Arr00 <13561405+arr00@users.noreply.github.com>

* Add more context to events

* Update doc & comments

* Format doc

* Check cliff in batcher

* Remove total transfered amount computation in batcher

* Set factory as non abstract

* Lighten vesting struct & check beneficiary from batcher

* up

* `ERC7821WithExecutor` instead of `VestingWalletExecutorConfidential` (#104)

* Init executor with ERC7821

* Update `ERC7821WithExecutor`

* rename executor file

* update tests

* move `ERC7821WithExecutor` test

* fix tests

* update test

* use vanilla helpers

* disable slither for locking ether

---------

Co-authored-by: James Toussaint <33313130+james-toussaint@users.noreply.github.com>
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>

* clean

* fix imports order

* Apply suggestions from code review

* up

* update comments

* remove constructor

* fix function ordering

* add changeset

* Update .changeset/tricky-boxes-train.md

Co-authored-by: Ernesto García <ernestognw@gmail.com>

* `VestingWalletConfidentialFactory` -> `VestingWalletCliffExecutorConfidentialFactory`

* Duration and Cliff per vesting plan (#105)

* Update .changeset/poor-colts-glow.md

* upgrade pragmas

* fix docs

---------

Co-authored-by: James Toussaint <33313130+james-toussaint@users.noreply.github.com>
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>
Co-authored-by: Ernesto García <ernestognw@gmail.com>

* Set npm access to public when publishing (#107)

* Release v0.2.0 (rc) (#108)

* Release v0.2.0 (rc)

* update changelog

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Arr00 <13561405+arr00@users.noreply.github.com>

* Remove default clone impl for vesting wallet factory (#109)

* Remove default clone impl for factory

* up

* rename vesting wallet file

* Update .changeset/old-chefs-lie.md

* Release v0.2.0 (rc) (#110)

* Release v0.2.0 (rc)

* Update CHANGELOG.md

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Arr00 <13561405+arr00@users.noreply.github.com>

* Fix `VestingWalletConfidentialCreated` event emission (#121)

* Fix `VestingWalletConfidentialCreated` event emission

* Swap VestingWalletConfidentialCreated first args in test

---------

Co-authored-by: James Toussaint <33313130+james-toussaint@users.noreply.github.com>

* Increase integer size for `_tokenReleased` (#120)

* Fix return value when refund fails confidential token (#118)

* Fix  return value when refund fails

* Apply suggestions from code review

Co-authored-by: James Toussaint <33313130+james-toussaint@users.noreply.github.com>

---------

Co-authored-by: James Toussaint <33313130+james-toussaint@users.noreply.github.com>

* Move excess transfer to the end when wrapper receives callback (#125)

* Standardize initializers with chained and unchained versions (#119)

* Standardize initializers with chained and unchained versions

* fix lint

* Apply suggestions from code review

Co-authored-by: James Toussaint <33313130+james-toussaint@users.noreply.github.com>

* code review

---------

Co-authored-by: James Toussaint <33313130+james-toussaint@users.noreply.github.com>

* Add memory safe annotation to relevant assembly blocks (#132)

* Remove unused error `CheckpointUnorderedInsertion` (#131)

* Set minimum required pragma (#127)

Set minimum required pragma in`ERC20Mock`

* Add default underlying token decimals customization in wrapper (#133)

* Add default underlying token decimals customization in wrapper

* Use fallback wording

* Return 0 if overflow in `releasable` (#122)

* Return 0 if overflow in `releasable`

* Update contracts/finance/VestingWalletConfidential.sol

* typo

* Add compatibility warning to confidential token wrapper (#134)

* Add minting wrap note

* Update contracts/token/extensions/ConfidentialFungibleTokenERC20Wrapper.sol

* remove gen-nav

* add gen-nav as local file

* move warning to the top

---------

Co-authored-by: Arr00 <13561405+arr00@users.noreply.github.com>

* Bytes params for vesting factory (#135)

* Bytes params for vesting factory

* remove `.only`

* add test and fix lint

* rename `initialization` -> `initArgs`

* Add inline documentation (#137)

* Add docc

* Update contracts/governance/utils/VotesConfidential.sol

* Update comment

Co-authored-by: Arr00 <13561405+arr00@users.noreply.github.com>

---------

Co-authored-by: Arr00 <13561405+arr00@users.noreply.github.com>

* Add `HandleAccessManager` (#143)

* Add ACLAllowance

* add tests

* fix lint

* spelling

* remove `.only`.

* fix test

* remove excess default allowances

* rename files

* finish rename

* up

* Update contracts/utils/README.adoc

Co-authored-by: James Toussaint <33313130+james-toussaint@users.noreply.github.com>

* Update contracts/utils/HandleAccessManager.sol

* move test file

---------

Co-authored-by: James Toussaint <33313130+james-toussaint@users.noreply.github.com>

* Standardize data types `VestingWalletConfidential` (#146)

* Remove unused imports and fix docs (#150)

* Remove unnecessary type casting (#149)

* Exit prerelease (#169)

exit prerelease

* Release v0.2.0 (#145)

* Release v0.2.0

* Update changelog release v0.2.0 (#170)

* Update changelog release v0.2.0

* Update CHANGELOG.md

Co-authored-by: James Toussaint <33313130+james-toussaint@users.noreply.github.com>

---------

Co-authored-by: James Toussaint <33313130+james-toussaint@users.noreply.github.com>

* Update CHANGELOG.md

Co-authored-by: Ernesto García <ernestognw@gmail.com>

* add missing changelog entry

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Arr00 <13561405+arr00@users.noreply.github.com>
Co-authored-by: James Toussaint <33313130+james-toussaint@users.noreply.github.com>
Co-authored-by: Ernesto García <ernestognw@gmail.com>

* Update contracts/token/utils/ConfidentialFungibleTokenUtils.sol

* fix gitmodules

* Update contracts/utils/structs/temporary-Checkpoints.sol

Co-authored-by: James Toussaint <33313130+james-toussaint@users.noreply.github.com>

---------

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Arr00 <13561405+arr00@users.noreply.github.com>
Co-authored-by: James Toussaint <33313130+james-toussaint@users.noreply.github.com>
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>
Co-authored-by: Ernesto García <ernestognw@gmail.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.

3 participants