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

[tracking] Foundry compatibility #30

Open
bee344 opened this issue Nov 14, 2024 · 5 comments
Open

[tracking] Foundry compatibility #30

bee344 opened this issue Nov 14, 2024 · 5 comments

Comments

@bee344
Copy link
Owner

bee344 commented Nov 14, 2024

Foundry currently has support for solc and vyper as compilers, and no straightforward way to change that.

As a first step, we'd need to find a way to have it working with PolkaVM. One way to approach this is to ignore the compiler and just run a script that uses @parity/revive and then test. This may very well not work just like that, since Foundry uses revm.

There's quite a bit of research to be made to define how we tackle this, but a good starting point is this forum post.

@ghost ghost self-assigned this Nov 18, 2024
@ghost
Copy link

ghost commented Nov 19, 2024

Commenting here for current progress on what ive found: https://github.com/0xspha/testing_framework

@pgherveou

@Brianspha
Copy link

Brianspha commented Nov 28, 2024

Resolc Compiler Integration Progress

Nov 18 - Nov 27

  • Added Resolc as a compilation option to foundry-compilers.
    • The tracking branch for this work can be found here.

Blockers

None

Next Week's Work (Nov 28 - Dec 4)

  • Continue integrating the Foundry compilation trait and subtrait abstraction to ensure compatibility with Resolc's compilation output.
  • Add additional unit tests for the Resolc <> Foundry compilation pipeline.
  • Weekly meeting (Friday) with Pavel for code review/check-in.

@Brianspha
Copy link

Resolc Compiler Integration Progress

Nov 28 - Dec 05

  • Completed integration of resolc with foundry-compilers
  • Started investigating areas requiring extension to support resolc compilation in foundry, which involves replacing the current foundry-compilers crate with a new crate implementing the resolc compilation process

Blockers

None

Next Week's Work (Dec 06 - Dec 11)

  • Continue investigating and implementing foundry components that need extension to integrate with the new foundry-compilers crate
  • Investigate RPC methods supported by asset hub to determine whether forking foundry is necessary or if existing RPC methods can be modified to work with foundry in its current state

@Brianspha
Copy link

Resolc Compiler Integration Progress

Progress (Dec 06 - Dec 11)

  • Investigating/implementing foundry components requiring extension for foundry-compilers crate integration
  • Investigating asset hub RPC methods to evaluate foundry forking vs modifying existing RPC methods

Blockers

None

Next Week (Dec 11 - Dec 18)

  • Fix OS-specific binary installation issues for revive See current progress
  • Testing build pipeline for integration breaking changes

Next Milestone

short-term: Complete binary installation fixes and build pipeline stabilization
long term: Being able to deploy contracts to asset hub using foundry

@Brianspha
Copy link

Brianspha commented Dec 20, 2024

Resolc Compiler Integration Progress

Progress (Dec 11 - Dec 18)

  • Fix OS-specific binary installation issues for revive (Done)
  • Testing build pipeline for integration breaking changes currently left with fixing issues with remappings and being able to use the latest solc version based on all files

Blockers

None

Next Milestone

Short-term: Fix remapping issue and test uniV4 protocol repo to compile with revive
Long term: Being able to deploy contracts to asset hub using foundry

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants