From f97f2ea7acc139587bed776ae71f27d38eb2cb34 Mon Sep 17 00:00:00 2001 From: David Meister Date: Sun, 27 Sep 2026 16:34:07 +0000 Subject: [PATCH] bump rain-deploy 0.1.10 -> 0.1.11 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Not a version-number change. 0.1.11 is breaking in two ways this repo had to absorb: `rain-lib-memkv` is a NEW TRANSITIVE DEPENDENCY. 0.1.11's `RainDeployVerifySnapshotBase` imports `LibMemoryKV`, and `recursive_deps = false` means a consumer lists its transitives itself, so the build failed on an unresolvable import until `rain-lib-memkv 0.2.0` was added here. `writeSnapshot` GAINED A `root` PARAMETER, so the five-argument call in `script/Build.sol` no longer resolved. It now passes `recordRoot()`, which is what `regenerateLibs` in the same file already passes for the same reason — the record root is the tree the snapshot is written under, and threading it makes the two calls agree. The candidate pins DO NOT move: `DecimalFloat` stays at `0xEc632ea4...` and `LogTables` at `0xc51a1425...`. `rain-deploy` is build and verification machinery, not part of either creation code. Confirmed by regenerating both and diffing rather than assuming. 42 suites, 74 passing. The failures are all environment, not code: the `*_RPC_URL` fork tests, the `DecimalFloat not deployed` prod checks that wait on the new address being deployed, and one new 0.1.11 check, `testSupportedNetworksAreFullyConfigured`, which reverts `EtherscanEntryUnresolvable("arbitrum")` because `${CI_DEPLOY_ARBITRUM_ETHERSCAN_API_KEY}` is unset locally. The config it checks is complete — `[rpc_endpoints]` and `[etherscan]` both name the same 9 networks as `supportedNetworks()`, verified key by key. Lint and fmt clean. Co-Authored-By: Claude Opus 5 (1M context) --- foundry.toml | 3 ++- script/Build.sol | 5 +++-- script/Deploy.sol | 2 +- soldeer.lock | 15 +++++++++++---- src/abstract/RainDeploySuitesBase.sol | 2 +- test/src/abstract/DecimalFloatDeployChain.t.sol | 2 +- .../src/abstract/DecimalFloatDeploySnapshot.t.sol | 2 +- test/src/lib/deploy/LibDecimalFloatDeploy.t.sol | 2 +- .../deploy/LibDecimalFloatDeployCandidate.t.sol | 2 +- .../lib/deploy/LibDecimalFloatDeployProd.t.sol | 2 +- 10 files changed, 23 insertions(+), 14 deletions(-) diff --git a/foundry.toml b/foundry.toml index 10d63d2..56e8c17 100644 --- a/foundry.toml +++ b/foundry.toml @@ -77,7 +77,8 @@ forge-std = "1.16.2" "rain-solmem" = "0.1.28" "rain-string" = "0.2.0" "rain-datacontract" = "0.1.9" -"rain-deploy" = "0.1.10" +"rain-deploy" = "0.1.11" +"rain-lib-memkv" = "0.2.0" "rain-sol-codegen" = "0.1.37" "rain-math-float" = "0.2.4" diff --git a/script/Build.sol b/script/Build.sol index dede431..3095a17 100644 --- a/script/Build.sol +++ b/script/Build.sol @@ -2,10 +2,10 @@ // SPDX-FileCopyrightText: Copyright (c) 2020 Rain Open Source Software Ltd pragma solidity =0.8.25; -import {BuildScript} from "rain-deploy-0.1.10/src/abstract/BuildScript.sol"; +import {BuildScript} from "rain-deploy-0.1.11/src/abstract/BuildScript.sol"; import {LibCodeGen} from "rain-sol-codegen-0.1.37/src/lib/LibCodeGen.sol"; import {LibLogTable} from "rain-math-float-0.2.4/src/lib/table/LibLogTable.sol"; -import {LibRainDeploySnapshot} from "rain-deploy-0.1.10/src/lib/LibRainDeploySnapshot.sol"; +import {LibRainDeploySnapshot} from "rain-deploy-0.1.11/src/lib/LibRainDeploySnapshot.sol"; import {DeployCandidate} from "../src/abstract/RainDeploySuitesBase.sol"; import {DecimalFloatDeploySuites} from "../src/abstract/DecimalFloatDeploySuites.sol"; @@ -141,6 +141,7 @@ contract Build is BuildScript, DecimalFloatDeploySuites { for (uint256 i = 0; i < contracts.length; i++) { LibRainDeploySnapshot.writeSnapshot( vm, + recordRoot(), LibRainDeploySnapshot.CANDIDATE, contracts[i].contractName, contracts[i].candidate.sourceCreationCode, diff --git a/script/Deploy.sol b/script/Deploy.sol index bc1329e..4bba0e2 100644 --- a/script/Deploy.sol +++ b/script/Deploy.sol @@ -2,7 +2,7 @@ // SPDX-FileCopyrightText: Copyright (c) 2020 Rain Open Source Software Ltd pragma solidity =0.8.25; -import {RainDeployBroadcast} from "rain-deploy-0.1.10/src/abstract/RainDeployBroadcast.sol"; +import {RainDeployBroadcast} from "rain-deploy-0.1.11/src/abstract/RainDeployBroadcast.sol"; import {DecimalFloatDeploySuites} from "../src/abstract/DecimalFloatDeploySuites.sol"; /// @title Deploy diff --git a/soldeer.lock b/soldeer.lock index 127ef70..92e03cc 100644 --- a/soldeer.lock +++ b/soldeer.lock @@ -21,10 +21,17 @@ integrity = "a76ad2f7efc0359f42bf2106cd57eca3f239e1eb08019f771b67802cebb54eb0" [[dependencies]] name = "rain-deploy" -version = "0.1.10" -url = "https://soldeer-revisions.s3.amazonaws.com/rain-deploy/0_1_10_14-09-2026_11:24:34_rain.zip" -checksum = "a8706cc19f6a96f69491e9816e0ec4bd7229bc7f7f541f93c5a51af3b95fb6dd" -integrity = "b3b3fac62525531638135a8d8b731dfe8749e98b28ac5f61a2cd878d30adb047" +version = "0.1.11" +url = "https://soldeer-revisions.s3.amazonaws.com/rain-deploy/0_1_11_19-09-2026_13:21:32_rain.zip" +checksum = "6d9b6a9bd125acfb0fe96c6fb8c4e6acd0176e40bbf1d98d7077fe1ad29eed26" +integrity = "72f70b2cd5bfeefb5bf751c0dde1db06d6b63be8a2d3bff0577aa5dca0e92e68" + +[[dependencies]] +name = "rain-lib-memkv" +version = "0.2.0" +url = "https://soldeer-revisions.s3.amazonaws.com/rain-lib-memkv/0_2_0_18-09-2026_21:06:03_rain.lib.zip" +checksum = "0c00f59f04a2f4c654c8378e66eb1a5acecc33a1cf58052c511b28d0165ce978" +integrity = "96bc0001f9e06624eb273ab18433846d2a251ed35e26eca5867d08e0b9e343c4" [[dependencies]] name = "rain-math-float" diff --git a/src/abstract/RainDeploySuitesBase.sol b/src/abstract/RainDeploySuitesBase.sol index 429c978..77e9d1c 100644 --- a/src/abstract/RainDeploySuitesBase.sol +++ b/src/abstract/RainDeploySuitesBase.sol @@ -12,4 +12,4 @@ import { DeployCandidate, DeploySuite, RainDeploySuitesBase -} from "rain-deploy-0.1.10/src/abstract/RainDeploySuitesBase.sol"; +} from "rain-deploy-0.1.11/src/abstract/RainDeploySuitesBase.sol"; diff --git a/test/src/abstract/DecimalFloatDeployChain.t.sol b/test/src/abstract/DecimalFloatDeployChain.t.sol index d8a39d3..61cbe53 100644 --- a/test/src/abstract/DecimalFloatDeployChain.t.sol +++ b/test/src/abstract/DecimalFloatDeployChain.t.sol @@ -2,7 +2,7 @@ // SPDX-FileCopyrightText: Copyright (c) 2020 Rain Open Source Software Ltd pragma solidity =0.8.25; -import {RainDeployVerifyChain} from "rain-deploy-0.1.10/src/abstract/RainDeployVerifyChain.sol"; +import {RainDeployVerifyChain} from "rain-deploy-0.1.11/src/abstract/RainDeployVerifyChain.sol"; import {DecimalFloatDeploySuites} from "src/abstract/DecimalFloatDeploySuites.sol"; import {LibEtchLogTables} from "script/lib/LibEtchLogTables.sol"; diff --git a/test/src/abstract/DecimalFloatDeploySnapshot.t.sol b/test/src/abstract/DecimalFloatDeploySnapshot.t.sol index a603468..4873bf5 100644 --- a/test/src/abstract/DecimalFloatDeploySnapshot.t.sol +++ b/test/src/abstract/DecimalFloatDeploySnapshot.t.sol @@ -2,7 +2,7 @@ // SPDX-FileCopyrightText: Copyright (c) 2020 Rain Open Source Software Ltd pragma solidity =0.8.25; -import {RainDeployVerifySnapshot} from "rain-deploy-0.1.10/src/abstract/RainDeployVerifySnapshot.sol"; +import {RainDeployVerifySnapshot} from "rain-deploy-0.1.11/src/abstract/RainDeployVerifySnapshot.sol"; import {DecimalFloatDeploySuites} from "src/abstract/DecimalFloatDeploySuites.sol"; import {LibEtchLogTables} from "script/lib/LibEtchLogTables.sol"; diff --git a/test/src/lib/deploy/LibDecimalFloatDeploy.t.sol b/test/src/lib/deploy/LibDecimalFloatDeploy.t.sol index aee2e9a..527666d 100644 --- a/test/src/lib/deploy/LibDecimalFloatDeploy.t.sol +++ b/test/src/lib/deploy/LibDecimalFloatDeploy.t.sol @@ -3,7 +3,7 @@ pragma solidity =0.8.25; import {Test} from "forge-std-1.16.2/src/Test.sol"; -import {LibRainDeploy} from "rain-deploy-0.1.10/src/lib/LibRainDeploy.sol"; +import {LibRainDeploy} from "rain-deploy-0.1.11/src/lib/LibRainDeploy.sol"; import {LibDecimalFloatDeploy} from "src/lib/deploy/LibDecimalFloatDeploy.sol"; import {DecimalFloat} from "src/concrete/DecimalFloat.sol"; import {LibDataContract} from "rain-datacontract-0.1.9/src/lib/LibDataContract.sol"; diff --git a/test/src/lib/deploy/LibDecimalFloatDeployCandidate.t.sol b/test/src/lib/deploy/LibDecimalFloatDeployCandidate.t.sol index 9b55a21..2c3bee1 100644 --- a/test/src/lib/deploy/LibDecimalFloatDeployCandidate.t.sol +++ b/test/src/lib/deploy/LibDecimalFloatDeployCandidate.t.sol @@ -3,7 +3,7 @@ pragma solidity =0.8.25; import {Test} from "forge-std-1.16.2/src/Test.sol"; -import {LibRainDeploy} from "rain-deploy-0.1.10/src/lib/LibRainDeploy.sol"; +import {LibRainDeploy} from "rain-deploy-0.1.11/src/lib/LibRainDeploy.sol"; import {LibDataContract} from "rain-datacontract-0.1.9/src/lib/LibDataContract.sol"; import { BYTECODE_HASH as LOG_TABLES_BYTECODE_HASH, diff --git a/test/src/lib/deploy/LibDecimalFloatDeployProd.t.sol b/test/src/lib/deploy/LibDecimalFloatDeployProd.t.sol index 978256c..88153e7 100644 --- a/test/src/lib/deploy/LibDecimalFloatDeployProd.t.sol +++ b/test/src/lib/deploy/LibDecimalFloatDeployProd.t.sol @@ -4,7 +4,7 @@ pragma solidity =0.8.25; import {Test} from "forge-std-1.16.2/src/Test.sol"; import {LibDecimalFloatDeploy} from "src/lib/deploy/LibDecimalFloatDeploy.sol"; -import {LibRainDeploy} from "rain-deploy-0.1.10/src/lib/LibRainDeploy.sol"; +import {LibRainDeploy} from "rain-deploy-0.1.11/src/lib/LibRainDeploy.sol"; /// @title LibDecimalFloatDeployProdTest /// @notice Verifies that both the log tables data contract and the DecimalFloat