From 3b6047fb35b8a791cf1a4f9168dc713eecac3d7b Mon Sep 17 00:00:00 2001 From: didi Date: Tue, 27 Jan 2026 11:05:19 +0100 Subject: [PATCH 1/2] add VERSION (constant) to SuperToken and ISuperToken --- .../contracts/interfaces/superfluid/ISuperToken.sol | 5 +++++ .../ethereum-contracts/contracts/superfluid/SuperToken.sol | 7 +++++++ 2 files changed, 12 insertions(+) diff --git a/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol b/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol index 7d82ec0f68..771114507e 100644 --- a/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol +++ b/packages/ethereum-contracts/contracts/interfaces/superfluid/ISuperToken.sol @@ -34,6 +34,11 @@ interface ISuperToken is ISuperfluidToken, IERC20Metadata, IERC777, IERC20Permit error SUPER_TOKEN_PERMIT_EXPIRED_SIGNATURE(uint256 deadline); // 0x6e72b90f error SUPER_TOKEN_PERMIT_INVALID_SIGNER(address signer, address owner); // 0xb6422105 + /** + * @dev Return the version of the SuperToken logic + */ + function VERSION() external view returns (string memory); + /** * @dev Initialize the contract */ diff --git a/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol b/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol index 7785fa1bc6..c0ab0e4ac1 100644 --- a/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol +++ b/packages/ethereum-contracts/contracts/superfluid/SuperToken.sol @@ -30,6 +30,11 @@ interface IPoolMemberNFT {} * @title Superfluid's super token implementation * * @author Superfluid + * + * CHANGELOG: + * [1.0.0] + * Added: + * - support for an optional yield backend */ contract SuperToken is UUPSProxiable, @@ -40,6 +45,8 @@ contract SuperToken is using ERC777Helper for ERC777Helper.Operators; using SafeERC20 for IERC20; + string public constant override VERSION = "1.0.0"; + // See: https://eips.ethereum.org/EIPS/eip-1967#admin-address bytes32 constant private _ADMIN_SLOT = 0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103; From 5b38e4bef79258dbf39b6d3f840b9e7c96cd6205 Mon Sep 17 00:00:00 2001 From: didi Date: Tue, 27 Jan 2026 11:06:18 +0100 Subject: [PATCH 2/2] bumped version and updated CHANGELOG --- packages/automation-contracts/autowrap/package.json | 2 +- packages/automation-contracts/scheduler/package.json | 2 +- packages/ethereum-contracts/CHANGELOG.md | 3 ++- packages/ethereum-contracts/package.json | 2 +- packages/hot-fuzz/package.json | 4 ++-- packages/js-sdk/package.json | 2 +- packages/sdk-core/package.json | 2 +- 7 files changed, 9 insertions(+), 8 deletions(-) diff --git a/packages/automation-contracts/autowrap/package.json b/packages/automation-contracts/autowrap/package.json index 17b4cdcb9a..2fefb85f35 100644 --- a/packages/automation-contracts/autowrap/package.json +++ b/packages/automation-contracts/autowrap/package.json @@ -3,7 +3,7 @@ "description": "Open contracts that allow upgrading underlying token to supertokens based on running stream", "version": "0.3.0", "devDependencies": { - "@superfluid-finance/ethereum-contracts": "^1.14.1", + "@superfluid-finance/ethereum-contracts": "^1.15.0", "@superfluid-finance/metadata": "^1.6.2" }, "license": "MIT", diff --git a/packages/automation-contracts/scheduler/package.json b/packages/automation-contracts/scheduler/package.json index ce967d575b..d76343ea29 100644 --- a/packages/automation-contracts/scheduler/package.json +++ b/packages/automation-contracts/scheduler/package.json @@ -3,7 +3,7 @@ "description": "Open contracts that allow scheduling streams and vestings onchain", "version": "1.3.0", "devDependencies": { - "@superfluid-finance/ethereum-contracts": "^1.14.1", + "@superfluid-finance/ethereum-contracts": "^1.15.0", "@superfluid-finance/metadata": "^1.6.2" }, "license": "MIT", diff --git a/packages/ethereum-contracts/CHANGELOG.md b/packages/ethereum-contracts/CHANGELOG.md index 9e7928fb33..eba6ae49cc 100644 --- a/packages/ethereum-contracts/CHANGELOG.md +++ b/packages/ethereum-contracts/CHANGELOG.md @@ -3,11 +3,12 @@ All notable changes to the ethereum-contracts will be documented in this file. This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). -## [UNRELEASED] +## [v1.15.0] ### Added - `SuperToken`: the contract admin can enable/disable a _Yield Backend_ in order to generate a yield on the underlying asset. +- `SuperToken`: added versioning. `VERSION()` now returns the version string of the logic contract set for the SuperToken. ### Changed diff --git a/packages/ethereum-contracts/package.json b/packages/ethereum-contracts/package.json index cca0215676..e88193aac0 100644 --- a/packages/ethereum-contracts/package.json +++ b/packages/ethereum-contracts/package.json @@ -1,7 +1,7 @@ { "name": "@superfluid-finance/ethereum-contracts", "description": " Ethereum contracts implementation for the Superfluid Protocol", - "version": "1.14.1", + "version": "1.15.0", "dependencies": { "@decentral.ee/web3-helpers": "0.5.3", "@nomiclabs/hardhat-ethers": "2.2.3", diff --git a/packages/hot-fuzz/package.json b/packages/hot-fuzz/package.json index 856acbc889..d1b096c199 100644 --- a/packages/hot-fuzz/package.json +++ b/packages/hot-fuzz/package.json @@ -7,13 +7,13 @@ }, "bugs": "https://github.com/superfluid-finance/protocol-monorepo/issues", "devDependencies": { - "@superfluid-finance/ethereum-contracts": "^1.14.1" + "@superfluid-finance/ethereum-contracts": "^1.15.0" }, "homepage": "https://github.com/superfluid-finance/protocol-monorepo#readme", "license": "AGPL-3.0", "main": "index.js", "peerDependencies": { - "@superfluid-finance/ethereum-contracts": "1.14.1" + "@superfluid-finance/ethereum-contracts": "1.15.0" }, "repository": { "type": "git", diff --git a/packages/js-sdk/package.json b/packages/js-sdk/package.json index 1577bcba8a..d378fcb4fb 100644 --- a/packages/js-sdk/package.json +++ b/packages/js-sdk/package.json @@ -13,7 +13,7 @@ "node-fetch": "2.7.0" }, "devDependencies": { - "@superfluid-finance/ethereum-contracts": "^1.14.1", + "@superfluid-finance/ethereum-contracts": "^1.15.0", "chai-as-promised": "^8.0.0", "webpack": "^5.94.0", "webpack-bundle-analyzer": "^4.10.2", diff --git a/packages/sdk-core/package.json b/packages/sdk-core/package.json index 1d1e694c93..d12b5aa202 100644 --- a/packages/sdk-core/package.json +++ b/packages/sdk-core/package.json @@ -4,7 +4,7 @@ "version": "0.9.0", "bugs": "https://github.com/superfluid-finance/protocol-monorepo/issues", "dependencies": { - "@superfluid-finance/ethereum-contracts": "1.14.1", + "@superfluid-finance/ethereum-contracts": "1.15.0", "@superfluid-finance/metadata": "^1.6.2", "graphql-request": "6.1.0", "lodash": "4.17.21",