Skip to content

Upgrade coverage dependency #5282

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

Closed
wants to merge 2 commits into from

Conversation

arr00
Copy link
Contributor

@arr00 arr00 commented Oct 25, 2024

Fixes #5231

Upgrade to solidity-coverage 0.8.13 which contains a fix for processing files compiled with IR route enabled. Ignore the known Statement has no effect warning.

PR Checklist

  • Tests
  • Documentation
  • Changeset entry (run npx changeset add)

Copy link

changeset-bot bot commented Oct 25, 2024

⚠️ No Changeset found

Latest commit: eec9105

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

Copy link

socket-security bot commented Oct 25, 2024

New and removed dependencies detected. Learn more about Socket for GitHub ↗︎

Package New capabilities Transitives Size Publisher
npm/[email protected] environment, filesystem Transitive: eval, network, unsafe +187 30.6 MB cgewecke

🚮 Removed packages: npm/[email protected]

View full report↗︎

@arr00 arr00 requested a review from ernestognw October 25, 2024 22:58
@arr00
Copy link
Contributor Author

arr00 commented Oct 28, 2024

There are other issues with running coverage now. Some tests fail due to time limits and gas issues.

@cgewecke
Copy link
Contributor

Hi @arr00, I help maintain solidity-coverage.

I think it was a mistake for solidity-coverage to deprecate the configureYulOptimizer and solcOptimizerDetails options. These settings are equivalent to forge's ir-minimum and they let the coverage plugin work pretty efficiently.

By contrast, the strategy solidity-coverage uses for projects that only compile with full IR is computationally expensive - it has to search for coverage traces across a much larger range of opcodes. It isn't scaling well for a test suite as large as this one.

I think if coverage is working OK with the current config it's fine to leave it like that. You could upgrade to the latest version of the plugin and continue to use these options but there's no obvious benefit to that.

Apologies for any confusion the coverage docs have caused, I wasn't aware the plugin's viaIR performance was scaling this badly until I looked into this PR.

@arr00
Copy link
Contributor Author

arr00 commented Oct 28, 2024

Appreciate the comment @cgewecke. We'll keep coverage as is for now, but feel free to ping me here if there are fixes regarding this in the future.

@arr00 arr00 closed this Oct 28, 2024
@arr00 arr00 mentioned this pull request Oct 30, 2024
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

Successfully merging this pull request may close these issues.

Update solidity-coverage
2 participants