diff --git a/.envrc b/.envrc index 49fe8d361f..c9b4271139 100644 --- a/.envrc +++ b/.envrc @@ -4,7 +4,7 @@ dotenv_if_exists || direnv status # https://direnv.net/man/direnv-stdlib.1.html # foundry to use solc.nix provided solc export FOUNDRY_OFFLINE=true -export FOUNDRY_SOLC_VERSION=`which solc-0.8.26` +export FOUNDRY_SOLC_VERSION=`which solc-0.8.30` # use flake shell # Note: diff --git a/flake.lock b/flake.lock index a5f9725a26..053374114d 100644 --- a/flake.lock +++ b/flake.lock @@ -28,16 +28,16 @@ ] }, "locked": { - "lastModified": 1748682694, - "narHash": "sha256-vun3iVnpk5cU6HZsOjpHRpeo9/ztAQWgFOMLR5IyOHE=", + "lastModified": 1752867797, + "narHash": "sha256-oT129SDSr7SI9ThTd6ZbpmShh5f2tzUH3S4hl6c5/7w=", "owner": "shazow", "repo": "foundry.nix", - "rev": "cefa65c2e3c77e9ee035e2a23188799710bb7cdb", + "rev": "d4445852933ab5bc61ca532cb6c5d3276d89c478", "type": "github" }, "original": { "owner": "shazow", - "ref": "cefa65c", + "ref": "stable", "repo": "foundry.nix", "type": "github" } @@ -68,11 +68,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1746549287, - "narHash": "sha256-lzkSxKv3GwWQ+18zb1YoHCEtFSGIPj0sAMqtQjNLihQ=", + "lastModified": 1753151930, + "narHash": "sha256-XSQy6wRKHhRe//iVY5lS/ZpI/Jn6crWI8fQzl647wCg=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "f90d0af5db814e870b2ad1aebc4e8924a30c53dd", + "rev": "83e677f31c84212343f4cc553bab85c2efcad60a", "type": "github" }, "original": { @@ -102,11 +102,11 @@ "solc-macos-amd64-list-json": "solc-macos-amd64-list-json" }, "locked": { - "lastModified": 1742758229, - "narHash": "sha256-FrU9rhab/0vOjjeFoQF+Ej43zRLv3enUIYjgLrH3Gd8=", + "lastModified": 1748780655, + "narHash": "sha256-mradCdMvjXwKd7kVFACB/d1CP2LLCyEgUu4vJCSzNLU=", "owner": "hellwolf", "repo": "solc.nix", - "rev": "6885b61bac89da19a6e3c70b89fdd592e2cef884", + "rev": "3b6f3223ace5a7bc400b01a434d86bb1cb2593fb", "type": "github" }, "original": { @@ -118,13 +118,13 @@ "solc-macos-amd64-list-json": { "flake": false, "locked": { - "narHash": "sha256-U5ckttxwKO13gIKggel6iybG5oTDbSidPR5nH3Gs+kY=", + "narHash": "sha256-AvITkfpNYgCypXuLJyqco0li+unVw39BAfdOZvd/SPE=", "type": "file", - "url": "https://github.com/ethereum/solc-bin/raw/30a3695/macosx-amd64/list.json" + "url": "https://github.com/ethereum/solc-bin/raw/26fc3fd/macosx-amd64/list.json" }, "original": { "type": "file", - "url": "https://github.com/ethereum/solc-bin/raw/30a3695/macosx-amd64/list.json" + "url": "https://github.com/ethereum/solc-bin/raw/26fc3fd/macosx-amd64/list.json" } }, "systems": { diff --git a/flake.nix b/flake.nix index bc5db0a3f4..4e6f328d99 100644 --- a/flake.nix +++ b/flake.nix @@ -5,7 +5,7 @@ flake-utils.url = "github:numtide/flake-utils"; nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable"; foundry = { - url = "github:shazow/foundry.nix/cefa65c"; + url = "github:shazow/foundry.nix/stable"; inputs.flake-utils.follows = "flake-utils"; inputs.nixpkgs.follows = "nixpkgs"; }; @@ -34,7 +34,7 @@ system: let minDevSolcVer = "solc_0_8_11"; # minimum solidity version used for external development - solcVer = "solc_0_8_26"; + solcVer = "solc_0_8_30"; ghcVer92 = "ghc928"; ghcVer94 = "ghc948"; diff --git a/packages/automation-contracts/autowrap/foundry.toml b/packages/automation-contracts/autowrap/foundry.toml index bdf6e6f602..e79af10c38 100644 --- a/packages/automation-contracts/autowrap/foundry.toml +++ b/packages/automation-contracts/autowrap/foundry.toml @@ -2,7 +2,7 @@ root = '../../../' libs = ['lib'] src = 'packages/automation-contracts/autowrap' -solc_version = "0.8.23" +solc_version = "0.8.30" evm_version = 'paris' optimizer = true optimizer_runs = 200 diff --git a/packages/automation-contracts/scheduler/foundry.toml b/packages/automation-contracts/scheduler/foundry.toml index 33fe841026..a4e9c41259 100644 --- a/packages/automation-contracts/scheduler/foundry.toml +++ b/packages/automation-contracts/scheduler/foundry.toml @@ -2,7 +2,7 @@ root = '../../../' libs = ['lib'] src = 'packages/automation-contracts/scheduler' -solc_version = "0.8.23" +solc_version = "0.8.30" evm_version = 'paris' optimizer = true optimizer_runs = 200 diff --git a/packages/ethereum-contracts/CHANGELOG.md b/packages/ethereum-contracts/CHANGELOG.md index 7747002294..2fa1f22d73 100644 --- a/packages/ethereum-contracts/CHANGELOG.md +++ b/packages/ethereum-contracts/CHANGELOG.md @@ -10,6 +10,7 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm - `GDAv1StorageLib` contains data structures and related encoders/decoders. - `GDAv1StorageReader` contains getters reading agreement data from the token contract, allowing contracts to get this data without making a call to the GDA contract. - `GDAv1StorageWriter` contains functions for writing agreement data to the token contract. This can only be used by the GDA contract itself. +- bump solc to "0.8.30". ### Fixed - `ISuperfluidPool`: `getClaimable` and `getClaimableNow` could previously return non-zero values for connected pools, which was inconsistent with what `claimAll` would actually do in this situation (claim nothing). diff --git a/packages/ethereum-contracts/foundry.toml b/packages/ethereum-contracts/foundry.toml index df8b2e2338..df19e26ee9 100644 --- a/packages/ethereum-contracts/foundry.toml +++ b/packages/ethereum-contracts/foundry.toml @@ -2,7 +2,7 @@ root = '../..' src = 'packages/ethereum-contracts/contracts' test = 'packages/ethereum-contracts/test/foundry' -solc_version = "0.8.26" +solc_version = "0.8.30" #deny_warnings = true ignored_error_codes = [ 1699 # assembly { selfdestruct } in contracts/mocks/SuperfluidDestructorMock.sol diff --git a/packages/ethereum-contracts/hardhat.config.ts b/packages/ethereum-contracts/hardhat.config.ts index 91301ba2d1..309fbdc786 100644 --- a/packages/ethereum-contracts/hardhat.config.ts +++ b/packages/ethereum-contracts/hardhat.config.ts @@ -93,7 +93,7 @@ function createNetworkConfig( const config: HardhatUserConfig = { solidity: { - version: "0.8.26", + version: "0.8.30", settings: { optimizer: { enabled: true, diff --git a/packages/ethereum-contracts/truffle-config.js b/packages/ethereum-contracts/truffle-config.js index d89b4a0e67..15a49f4727 100644 --- a/packages/ethereum-contracts/truffle-config.js +++ b/packages/ethereum-contracts/truffle-config.js @@ -381,7 +381,7 @@ const E = (module.exports = { // Fetch exact version from solc-bin (default: truffle's version) // If SOLC environment variable is provided, assuming it is available as "solc", use it instead. // Ref, this maybe possible in the future: https://github.com/trufflesuite/truffle/pull/6007 - version: process.env.SOLC ? "native" : "0.8.26", + version: process.env.SOLC ? "native" : "0.8.30", settings: { // See the solidity docs for advice about optimization and evmVersion optimizer: { diff --git a/packages/hot-fuzz/foundry.toml b/packages/hot-fuzz/foundry.toml index 1571e85714..eb05ebf501 100644 --- a/packages/hot-fuzz/foundry.toml +++ b/packages/hot-fuzz/foundry.toml @@ -1,7 +1,7 @@ [profile.default] root = '../..' src = 'packages/hot-fuzz/contracts' -solc_version = "0.8.23" +solc_version = "0.8.30" evm_version = 'shanghai' optimizer = true optimizer_runs = 200 diff --git a/packages/solidity-semantic-money/foundry.toml b/packages/solidity-semantic-money/foundry.toml index f7b6d1bbd8..9313afd96e 100644 --- a/packages/solidity-semantic-money/foundry.toml +++ b/packages/solidity-semantic-money/foundry.toml @@ -3,7 +3,7 @@ root = '../..' src = 'packages/solidity-semantic-money/src' out = 'packages/solidity-semantic-money/out/default' cache_path = 'packages/solidity-semantic-money/out/default.cache' -solc_version = '0.8.26' +solc_version = '0.8.30' evm_version = 'paris' # no PUSH0 for now deny_warnings = true optimizer = true diff --git a/packages/subgraph/hardhat.config.ts b/packages/subgraph/hardhat.config.ts index bda0b1e477..0569e12aa2 100644 --- a/packages/subgraph/hardhat.config.ts +++ b/packages/subgraph/hardhat.config.ts @@ -13,7 +13,7 @@ dotenvConfig(); */ const config: HardhatUserConfig = { solidity: { - version: "0.8.26", + version: "0.8.30", settings: { optimizer: { enabled: true,