Skip to content

Commit 884962a

Browse files
cortisikomcmirecryptodev-2s
authored
Release/423.0.0 (#5909)
## Explanation The foundryup package is a cross-platform tool used to manage Foundry binaries in MetaMask’s development and end-to-end testing environments. Its main goal is to simplify the installation and usage of foundry and anvil across different operating systems and development setups at MetaMask. #### Why This Change? The current setup for managing Foundry binaries is not tailored to MetaMask’s specific needs. The upstream foundryup script is designed for general CLI usage and doesn't offer the right defaults or integration points required by our development workflows. This new package addresses that gap by providing a consistent, customizable way to install and manage Foundry tooling. #### How It Works This package acts as a wrapper around Foundry’s distribution, setting defaults that make it easier to use within MetaMask projects. While it’s primarily for CLI use (not programmatic use cases), it could eventually replace ganache for many developers working on MetaMask. Key features include: - Binary caching: Binaries can be stored either locally or globally depending on the Yarn configuration. - Cross-platform support: Compatible with macOS, Linux, and Windows. - Integrity verification: Checksums are used to verify binary integrity. - Efficient binary linking: Symlinks are created when possible; otherwise, binaries are copied. - Workflow integration: Binaries are installed to node_modules/.bin, making them easy to use in scripts and tooling. ## References <!-- Are there any issues that this pull request is tied to? Are there other links that reviewers should consult to understand these changes better? Are there client or consumer pull requests to adopt any breaking changes? For example: * Fixes #12345 * Related to #67890 --> ## Changelog <!-- THIS SECTION IS NO LONGER NEEDED. The process for updating changelogs has changed. Please consult the "Updating changelogs" section of the Contributing doc for more. --> ## Checklist - [ ] I've updated the test suite for new or updated code as appropriate - [ ] I've updated documentation (JSDoc, Markdown, etc.) for new or updated code as appropriate - [ ] I've communicated my changes to consumers by [updating changelogs for packages I've changed](https://github.com/MetaMask/core/tree/main/docs/contributing.md#updating-changelogs), highlighting breaking changes as necessary - [ ] I've prepared draft pull requests for clients and consumer packages to resolve any breaking changes --------- Co-authored-by: Elliot Winkler <[email protected]> Co-authored-by: cryptodev-2s <[email protected]>
1 parent 101686c commit 884962a

File tree

3 files changed

+19
-3
lines changed

3 files changed

+19
-3
lines changed

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@metamask/core-monorepo",
3-
"version": "422.0.0",
3+
"version": "423.0.0",
44
"private": true,
55
"description": "Monorepo for packages shared between MetaMask clients",
66
"repository": {

packages/foundryup/CHANGELOG.md

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,4 +7,20 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
77

88
## [Unreleased]
99

10-
[Unreleased]: https://github.com/MetaMask/core/
10+
## [1.0.0]
11+
12+
### Added
13+
14+
- Initial release of the foundryup package ([#5810](https://github.com/MetaMask/core/pull/5810), [#5909](https://github.com/MetaMask/core/pull/5909))
15+
- `foundryup` is a cross-platform tool that installs and manages Foundry binaries with MetaMask-specific defaults for use in development and end-to-end testing workflows. Features included:
16+
- CLI tool for managing Foundry binaries in MetaMask's development environment
17+
- Support for downloading and installing `forge`, `anvil`, `cast`, and `chisel` binaries
18+
- Cross-platform support for Linux, macOS, and Windows with both amd64 and arm64 architectures
19+
- Binary integrity verification using SHA-256 checksums
20+
- Intelligent binary installation with automatic symlink creation (falls back to copy if symlink fails)
21+
- Configurable binary caching with local storage support
22+
- Cache management commands for cleaning downloaded binaries
23+
- Automatic version detection and management of Foundry releases
24+
25+
[Unreleased]: https://github.com/MetaMask/core/compare/@metamask/[email protected]
26+
[1.0.0]: https://github.com/MetaMask/core/releases/tag/@metamask/[email protected]

packages/foundryup/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@metamask/foundryup",
3-
"version": "0.0.0",
3+
"version": "1.0.0",
44
"description": "foundryup",
55
"keywords": [
66
"MetaMask",

0 commit comments

Comments
 (0)