-
Notifications
You must be signed in to change notification settings - Fork 278
chore(repo): Remove git submodules and switch to forge soldeer #573
Copy link
Copy link
Closed
Labels
A-repoArea: general repository changesArea: general repository changesK-ktloKind: keep the lights on, general cleanupsKind: keep the lights on, general cleanupsM-depsMeta: work related to dependenciesMeta: work related to dependenciesM-good-first-issueMeta: Good for newcomersMeta: Good for newcomers
Description
Summary
The repository currently uses git submodules for managing Foundry contract dependencies located at crates/shared/primitives/contracts/lib/. These submodules add complexity to the development workflow (requiring --recurse-submodules on clone, potential sync issues, etc.).
Current submodules:
forge-std(v1.14.0) - https://github.com/foundry-rs/forge-stdsolmate- https://github.com/transmissions11/solmateopenzeppelin-contracts(v4.8.0) - https://github.com/OpenZeppelin/openzeppelin-contracts
Proposal
Replace git submodules with forge soldeer, the native Foundry package manager. This would:
- Simplify repository cloning (no
--recurse-submodulesneeded) - Provide better dependency version management
- Align with modern Foundry tooling practices
- Reduce git complexity and potential submodule sync issues
Tasks
- Install and configure soldeer in the contracts directory
- Add dependencies via
forge soldeer install - Update
foundry.tomlwith soldeer configuration - Remove
.gitmodulesand submodule entries - Update any CI workflows that reference submodules
- Update documentation/README if needed
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
A-repoArea: general repository changesArea: general repository changesK-ktloKind: keep the lights on, general cleanupsKind: keep the lights on, general cleanupsM-depsMeta: work related to dependenciesMeta: work related to dependenciesM-good-first-issueMeta: Good for newcomersMeta: Good for newcomers