bug: platform-specific submodule version inconsistency during forge test
execution
#9759
Open
1 of 2 tasks
Labels
Component
Forge
Have you ensured that all of these are up to date?
What version of Foundry are you on?
No response
What version of Foundryup are you on?
No response
What command(s) is the bug in?
No response
Operating System
None
Describe the bug
Description
When running
forge-test
, there's an inconsistent behavior between Linux and macOS platforms regarding submodule versioning. On Linux, the system pulls new versions of submodules during test execution, even when specific versions are committed, while macOS maintains the committed versions.Current Behavior
On Linux:
forge-test
triggers a new submodule pullOn macOS:
forge-test
maintains the committed submodule versionsExample
This inconsistency manifests in OpenZeppelin upgrades validation, where Linux builds fail due to AST validation errors while macOS builds succeed. Specific error:
ASTDereferencerError: No node with id -18 of type FunctionDefinition
Copy
This error occurs because the validation attempts to process negative AST IDs (e.g., -18) from
require
statements, which should be ignored as per OpenZeppelin/openzeppelin-upgrades#1118.Related Issues
ASTDereferencerError
when validating initializers OpenZeppelin/openzeppelin-upgrades#1118@openzeppelin/upgrades-core
package to1.42.0
OpenZeppelin/openzeppelin-foundry-upgrades#93Steps to Reproduce
forge-test
on LinuxExpected Behavior
forge-test
should not trigger automatic updates of submodules unless explicitly requestedEnvironment
The text was updated successfully, but these errors were encountered: