From ee63d4675681e1350c99b14abc40531e075d791c Mon Sep 17 00:00:00 2001 From: David Meister Date: Sat, 13 Jun 2026 06:25:23 +0000 Subject: [PATCH] ci: remove orphaned foundry.lock left over from soldeer migration MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Issue #2560 asked for a CI step that runs `forge update` on the four git submodules recorded in `foundry.lock` (lib/rain.deploy, lib/rain.interpreter, lib/rain.raindex.interface, lib/sushixswap-v2) and asserts no git diff, to keep `foundry.lock` revs consistent with the submodule pointers and reachable upstream. That was the right fix for the bug shipped at #2558 — a `foundry.lock` rev that did not exist upstream passed CI silently. Since then, #2586 ("migrate raindex to soldeer for dependency management", merged 2026-05-29) deleted all four git submodules and `.gitmodules`; every Solidity dependency is now Soldeer-managed via `soldeer.lock` + `[dependencies]` in `foundry.toml`. The submodules the proposed `forge update` check would iterate no longer exist, so the literal check is moot. `foundry.lock` itself was not removed by #2586 and is now a dead, unreferenced artifact pointing at submodules that are gone (sushixswap-v2 was dropped entirely; the other three became the soldeer deps rain-deploy / rain-interpreter-interface+rainlang / raindex-interface). The smallest correct fix that resolves the exact inconsistency the issue worries about — a dependency lockfile that disagrees with the tree and can silently pass CI — is to delete the orphaned lockfile. No CI job reads it: the cache key in rainix-sol-{test,static}.yaml hashes `soldeer.lock`, not `foundry.lock`, and deps come from `forge soldeer install`. Also drop the two now-dangling housekeeping references to the file: - REUSE.toml annotation entry (kept `reuse lint` happy for the file). - .soldeerignore exclude line (excluded it from the soldeer publish zip). Verification (nix develop github:rainlanguage/rainix#sol-shell): - `reuse lint` -> compliant, 1139/1139 files, 0 errors, 0 unused licenses. - `forge soldeer install` -> deps installed from soldeer.lock, foundry.lock not consulted. - `forge build` -> compiles clean (exit 0; only pre-existing unsafe-typecast lint warnings in test files, unrelated to this change). Fixes #2560 Co-Authored-By: Claude Opus 4.8 --- .soldeerignore | 1 - REUSE.toml | 1 - foundry.lock | 14 -------------- 3 files changed, 16 deletions(-) delete mode 100644 foundry.lock diff --git a/.soldeerignore b/.soldeerignore index e9259a21e5..376ba851e7 100644 --- a/.soldeerignore +++ b/.soldeerignore @@ -38,7 +38,6 @@ slither.config.json /deployments /flake.lock /flake.nix -/foundry.lock /foundry.toml /lib /meta diff --git a/REUSE.toml b/REUSE.toml index 580a5f8288..07b8bfab31 100644 --- a/REUSE.toml +++ b/REUSE.toml @@ -16,7 +16,6 @@ path = [ "flake.lock", "flake.nix", "foundry.toml", - "foundry.lock", "remappings.txt", "soldeer.lock", "slither.config.json", diff --git a/foundry.lock b/foundry.lock deleted file mode 100644 index 0e9c2b06f0..0000000000 --- a/foundry.lock +++ /dev/null @@ -1,14 +0,0 @@ -{ - "lib/rain.deploy": { - "rev": "43a6ed3a98f0141e1963b4b9136e8c80e2889bd1" - }, - "lib/rain.interpreter": { - "rev": "1ea41cd004a926e3a964ba5498654f3cd538f139" - }, - "lib/rain.raindex.interface": { - "rev": "9e2da33b477e16bb2c2dc16b29de98d4cbe9dd94" - }, - "lib/sushixswap-v2": { - "rev": "ca38c64cf7c3042f6427414d7bff61c54293da51" - } -} \ No newline at end of file