Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 13 additions & 1 deletion .changeset/pre.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,5 +4,17 @@
"initialVersions": {
"openzeppelin-confidential-contracts": "0.3.1"
},
"changesets": []
"changesets": [
"fast-humans-run",
"five-insects-burn",
"full-worlds-rescue",
"good-flies-win",
"happy-hands-find",
"long-items-appear",
"modern-snakes-return",
"nasty-walls-taste",
"pink-areas-double",
"shaky-pugs-return",
"sour-dodos-sniff"
]
}
22 changes: 22 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,28 @@
# openzeppelin-confidential-contracts


## 0.4.0-rc.0 (2026-03-12)

- Migrate `@fhevm/solidity` dependency to `0.11.1` ([#311](https://github.com/OpenZeppelin/openzeppelin-confidential-contracts/pull/311))
- Upgrade openzeppelin/contracts and openzeppelin/contracts-upgradeable to v5.6.1 ([#314](https://github.com/OpenZeppelin/openzeppelin-confidential-contracts/pull/314))

### Token

- `ERC7984ERC20Wrapper`: use a bytes32 unwrap request identifier instead of identifying batches by the euint64 unwrap amount. ([#326](https://github.com/OpenZeppelin/openzeppelin-confidential-contracts/pull/326))
- `ERC7984ERC20Wrapper`: Support ERC-165 interface detection on `ERC7984ERC20Wrapper`. ([#267](https://github.com/OpenZeppelin/openzeppelin-confidential-contracts/pull/267))
- `ERC7984ERC20Wrapper`: return the amount of wrapped token sent on wrap calls. ([#307](https://github.com/OpenZeppelin/openzeppelin-confidential-contracts/pull/307))
- `ERC7984ERC20Wrapper`: return unwrapped amount on `unwrap` calls ([#288](https://github.com/OpenZeppelin/openzeppelin-confidential-contracts/pull/288))
- `ERC7984Restricted`, `ERC7984Rwa`: Rename `isUserAllowed` to `canTransact` ([#291](https://github.com/OpenZeppelin/openzeppelin-confidential-contracts/pull/291))
- `ERC7984ERC20Wrapper`: revert on wrap if there is a chance of total supply overflow. ([#268](https://github.com/OpenZeppelin/openzeppelin-confidential-contracts/pull/268))

### Finance

- `BatcherConfidential`: A batching primitive that enables routing between two `ERC7984ERC20Wrapper` contracts via a non-confidential route. ([#293](https://github.com/OpenZeppelin/openzeppelin-confidential-contracts/pull/293))

### Utils

- `HandleAccessManager`: change `_validateHandleAllowance` to return a boolean and validate it. ([#303](https://github.com/OpenZeppelin/openzeppelin-confidential-contracts/pull/303))

## 0.3.1 (2026-01-06)

### Bug fixes
Expand Down
1 change: 1 addition & 0 deletions contracts/finance/BatcherConfidential.sol
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
// SPDX-License-Identifier: MIT
// OpenZeppelin Confidential Contracts (last updated v0.4.0-rc.0) (finance/BatcherConfidential.sol)

pragma solidity ^0.8.27;

Expand Down
2 changes: 1 addition & 1 deletion contracts/finance/VestingWalletConfidential.sol
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
// OpenZeppelin Confidential Contracts (last updated v0.3.0) (finance/VestingWalletConfidential.sol)
// OpenZeppelin Confidential Contracts (last updated v0.4.0-rc.0) (finance/VestingWalletConfidential.sol)
pragma solidity ^0.8.24;

import {FHE, ebool, euint64, euint128} from "@fhevm/solidity/lib/FHE.sol";
Expand Down
2 changes: 1 addition & 1 deletion contracts/governance/utils/VotesConfidential.sol
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
// OpenZeppelin Confidential Contracts (last updated v0.2.0) (governance/utils/VotesConfidential.sol)
// OpenZeppelin Confidential Contracts (last updated v0.4.0-rc.0) (governance/utils/VotesConfidential.sol)

pragma solidity ^0.8.26;

Expand Down
1 change: 1 addition & 0 deletions contracts/interfaces/IERC7984ERC20Wrapper.sol
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
// SPDX-License-Identifier: MIT
// OpenZeppelin Confidential Contracts (last updated v0.4.0-rc.0) (interfaces/IERC7984ERC20Wrapper.sol)

pragma solidity ^0.8.24;

Expand Down
2 changes: 1 addition & 1 deletion contracts/interfaces/IERC7984Receiver.sol
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
// OpenZeppelin Confidential Contracts (last updated v0.3.0) (interfaces/IERC7984Receiver.sol)
// OpenZeppelin Confidential Contracts (last updated v0.4.0-rc.0) (interfaces/IERC7984Receiver.sol)
pragma solidity ^0.8.24;

import {ebool, euint64} from "@fhevm/solidity/lib/FHE.sol";
Expand Down
2 changes: 1 addition & 1 deletion contracts/interfaces/IERC7984Rwa.sol
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
// OpenZeppelin Confidential Contracts (last updated v0.3.0) (interfaces/IERC7984Rwa.sol)
// OpenZeppelin Confidential Contracts (last updated v0.4.0-rc.0) (interfaces/IERC7984Rwa.sol)
pragma solidity ^0.8.24;

import {externalEuint64, euint64} from "@fhevm/solidity/lib/FHE.sol";
Expand Down
2 changes: 1 addition & 1 deletion contracts/package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "@openzeppelin/confidential-contracts",
"description": "Smart Contract library for use with confidential coprocessors",
"version": "0.3.1",
"version": "0.4.0-rc.0",
"files": [
"**/*.sol",
"/build/contracts/*.json",
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
// OpenZeppelin Confidential Contracts (last updated v0.3.1) (token/ERC7984/extensions/ERC7984ERC20Wrapper.sol)
// OpenZeppelin Confidential Contracts (last updated v0.4.0-rc.0) (token/ERC7984/extensions/ERC7984ERC20Wrapper.sol)

pragma solidity ^0.8.27;

Expand Down
2 changes: 1 addition & 1 deletion contracts/token/ERC7984/extensions/ERC7984Freezable.sol
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
// OpenZeppelin Confidential Contracts (last updated v0.3.0) (token/ERC7984/extensions/ERC7984Freezable.sol)
// OpenZeppelin Confidential Contracts (last updated v0.4.0-rc.0) (token/ERC7984/extensions/ERC7984Freezable.sol)

pragma solidity ^0.8.27;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
// OpenZeppelin Confidential Contracts (last updated v0.3.0) (token/ERC7984/extensions/ERC7984ObserverAccess.sol)
// OpenZeppelin Confidential Contracts (last updated v0.4.0-rc.0) (token/ERC7984/extensions/ERC7984ObserverAccess.sol)

pragma solidity ^0.8.27;

Expand Down
2 changes: 1 addition & 1 deletion contracts/token/ERC7984/extensions/ERC7984Restricted.sol
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
// OpenZeppelin Confidential Contracts (last updated v0.3.0) (token/ERC7984/extensions/ERC7984Restricted.sol)
// OpenZeppelin Confidential Contracts (last updated v0.4.0-rc.0) (token/ERC7984/extensions/ERC7984Restricted.sol)

pragma solidity ^0.8.27;

Expand Down
2 changes: 1 addition & 1 deletion contracts/token/ERC7984/extensions/ERC7984Rwa.sol
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
// OpenZeppelin Confidential Contracts (last updated v0.3.0) (token/ERC7984/extensions/ERC7984Rwa.sol)
// OpenZeppelin Confidential Contracts (last updated v0.4.0-rc.0) (token/ERC7984/extensions/ERC7984Rwa.sol)

pragma solidity ^0.8.27;

Expand Down
2 changes: 1 addition & 1 deletion contracts/token/ERC7984/extensions/ERC7984Votes.sol
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
// OpenZeppelin Confidential Contracts (last updated v0.3.0) (token/ERC7984/extensions/ERC7984Votes.sol)
// OpenZeppelin Confidential Contracts (last updated v0.4.0-rc.0) (token/ERC7984/extensions/ERC7984Votes.sol)
pragma solidity ^0.8.27;

import {euint64} from "@fhevm/solidity/lib/FHE.sol";
Expand Down
2 changes: 1 addition & 1 deletion contracts/utils/FHESafeMath.sol
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
// OpenZeppelin Confidential Contracts (last updated v0.3.0) (utils/FHESafeMath.sol)
// OpenZeppelin Confidential Contracts (last updated v0.4.0-rc.0) (utils/FHESafeMath.sol)
pragma solidity ^0.8.24;

import {FHE, ebool, euint64} from "@fhevm/solidity/lib/FHE.sol";
Expand Down
2 changes: 1 addition & 1 deletion contracts/utils/HandleAccessManager.sol
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
// OpenZeppelin Confidential Contracts (last updated v0.2.0) (utils/HandleAccessManager.sol)
// OpenZeppelin Confidential Contracts (last updated v0.4.0-rc.0) (utils/HandleAccessManager.sol)
pragma solidity ^0.8.26;

import {Impl} from "@fhevm/solidity/lib/Impl.sol";
Expand Down
2 changes: 1 addition & 1 deletion contracts/utils/structs/CheckpointsConfidential.sol
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
// OpenZeppelin Confidential Contracts (last updated v0.2.0) (utils/structs/CheckpointsConfidential.sol)
// OpenZeppelin Confidential Contracts (last updated v0.4.0-rc.0) (utils/structs/CheckpointsConfidential.sol)
// This file was procedurally generated from scripts/generate/templates/CheckpointsConfidential.js.

pragma solidity ^0.8.24;
Expand Down
4 changes: 2 additions & 2 deletions docs/antora.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
name: confidential-contracts
title: Confidential Contracts
version: '0.3'
prerelease: false
version: 0.4-rc
prerelease: true
nav:
- modules/ROOT/nav.adoc
- modules/api/nav.adoc
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "openzeppelin-confidential-contracts",
"description": "",
"version": "0.3.1",
"version": "0.4.0-rc.0",
"author": "OpenZeppelin Community <maintainers@openzeppelin.org>",
"license": "MIT",
"files": [
Expand Down
Loading