distributable: # FIXME: foundry has releases named "Nightly (YYYY-MM-DD)" # but their tags are "nightly-". # url: https://github.com/foundry-rs/foundry/archive/refs/tags/{{version.tag}}.tar.gz url: https://github.com/foundry-rs/foundry/archive/refs/tags/nightly-bdc04c278f8ac716ed5fd3994bc0da841807b5cf.tar.gz strip-components: 1 versions: # this would work with `version.tag`, except they're all pre-releases, which we # ignore # FIXME: https://github.com/pkgxdev/brewkit/issues/327 # github: foundry-rs/foundry # strip: # - /^Nightly \(/ # - /\)$/ - 2024.4.12 dependencies: git-scm.org: ^2 build: dependencies: rust-lang.org: ^1.74 # edition: 2021 rust-lang.org/cargo: '*' script: # install Forge - cargo install --path ./crates/forge $ARGS # install Cast - cargo install --path ./crates/cast $ARGS # install Anvil - cargo install --path ./crates/anvil $ARGS # install Chisel - cargo install --path ./crates/chisel $ARGS env: ARGS: - --root "{{prefix}}" - --profile local - --force - --locked provides: - bin/forge - bin/anvil - bin/cast - bin/chisel test: script: # forge uses git which has minimum config requirements. - | git init git config user.email "hello@pkgx.dev" git config user.name "pkgx" # And forge init requires a clean git repo. - | touch README.md git add -A git commit -m "Initial commit" - forge init hello_foundry - run: forge build && forge test working-directory: hello_foundry