Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

meta(library usage): tracking issue for using Foundry as a library #9012

Open
nhtyy opened this issue Oct 3, 2024 · 5 comments
Open

meta(library usage): tracking issue for using Foundry as a library #9012

nhtyy opened this issue Oct 3, 2024 · 5 comments
Labels
T-meta Type: meta

Comments

@nhtyy
Copy link
Contributor

nhtyy commented Oct 3, 2024

Component

Forge, Cast, Anvil, Chisel

Describe the feature you would like

As Foundry has become the flagship testing engine for the Solidity/EVM community, more and more people will rely on the functionality it offers on the server.

Currently however there are some pain points, some examples:

  • Reusing artifacts in Forge: If you store the artifacts in some external database, the MultiContractRunnerBuilder could be more generic I think

    • Linking can also silently fail, if you don't have correct artifact ids (err on any non linked test files?)
  • Injecting env vars in forge: Currently if you want to run tests on the server you must fork and disable/reroute vm.env.

    • also cant disable cheats
    • i propose feature flagging reading env from the cheat codes somehow
  • Coverage: You need to just run the bin because so much happens in binary, which would need to be duplicated if you want lcov

Additional context

No response

@nhtyy nhtyy added T-feature Type: feature T-needs-triage Type: this issue needs to be labelled labels Oct 3, 2024
@nhtyy
Copy link
Contributor Author

nhtyy commented Oct 3, 2024

@zerosnacks happy to make these changes and expand on this if you think this is an effort worth tracking

I think If we can just maintain the high level abstractions across anvil/foundry/chisel then most people would not need to fork to safely run on server

@zerosnacks
Copy link
Member

zerosnacks commented Oct 3, 2024

Hi @nhtyy thanks for your suggestion, just so I have a bit more context - could you expand on possible use cases you see for using Foundry on a (public) server that runs untrusted code?

@zerosnacks zerosnacks changed the title feat/tracking: improve library use DX meta(library usage): tracking issue for using Foundry as a library Oct 3, 2024
@zerosnacks zerosnacks added T-meta Type: meta and removed T-needs-triage Type: this issue needs to be labelled T-feature Type: feature labels Oct 3, 2024
@nhtyy
Copy link
Contributor Author

nhtyy commented Oct 3, 2024

@zerosnacks forsure! One example is something Ive worked on personally myself which is audit wizard, which allows you to run forge tests against any repo.

I know theres another one that came out recently, that also allows running tests but i cant find it now

@nhtyy
Copy link
Contributor Author

nhtyy commented Oct 3, 2024

Ill update this issue soon with new subissues for these tasks, and see if i can find anything else

@grandizzy
Copy link
Collaborator

I know theres another one that came out recently, that also allows running tests but i cant find it now

there's https://getrecon.xyz/ too for invariants

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
T-meta Type: meta
Projects
Status: Todo
Development

No branches or pull requests

3 participants