Skip to content

[v2] feat(test): Replace bare 0.8.x versions from solc diagnostics with a placeholder - #2346

Open
teofr wants to merge 1 commit into
mainfrom
teofr/fix-solc-test-versions
Open

teofr wants to merge 1 commit into
mainfrom
teofr/fix-solc-test-versions

Conversation

@teofr

@teofr teofr commented Nov 2, 2026

Copy link
Copy Markdown
Contributor

Sprung out of teofr#74

cc @OmarTawfik

@teofr
teofr requested a balanced review from Copilot November 2, 2026 12:56
@changeset-bot

changeset-bot Bot commented Nov 2, 2026

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: bbde4eb

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

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟢 Approval recommended

The review reports no active issues with the compiler-version normalization and snapshot deduplication changes.

No open issues 🎉

What changed in this PR

This PR reduces version-specific snapshot duplication in Slang v2’s diagnostic tests by replacing the running solc compiler’s bare version with a stable placeholder.

Changes:

  • Adds __CURRENT_SOLC_VERSION__ and applies it after full build-version normalization.
  • Updates the two baseline snapshots to use the placeholder.
  • Removes 76 snapshots that become redundant after normalization.

Snapshot paths below are relative to crates/solidity-v2/testing/snapshots/diagnostics_output/syntax/.

File Description
unexpected_terminal/​glued_solidity_keyword/​generated/​solc/​0.8.9-failure.txt Removes redundant snapshot.
unexpected_terminal/​glued_solidity_keyword/​generated/​solc/​0.8.8-failure.txt Removes redundant snapshot.
unexpected_terminal/​glued_solidity_keyword/​generated/​solc/​0.8.7-failure.txt Removes redundant snapshot.
unexpected_terminal/​glued_solidity_keyword/​generated/​solc/​0.8.6-failure.txt Removes redundant snapshot.
unexpected_terminal/​glued_solidity_keyword/​generated/​solc/​0.8.5-failure.txt Removes redundant snapshot.
unexpected_terminal/​glued_solidity_keyword/​generated/​solc/​0.8.4-failure.txt Removes redundant snapshot.
unexpected_terminal/​glued_solidity_keyword/​generated/​solc/​0.8.38-failure.txt Removes redundant snapshot.
unexpected_terminal/​glued_solidity_keyword/​generated/​solc/​0.8.37-failure.txt Removes redundant snapshot.
unexpected_terminal/​glued_solidity_keyword/​generated/​solc/​0.8.36-failure.txt Removes redundant snapshot.
unexpected_terminal/​glued_solidity_keyword/​generated/​solc/​0.8.35-failure.txt Removes redundant snapshot.
unexpected_terminal/​glued_solidity_keyword/​generated/​solc/​0.8.34-failure.txt Removes redundant snapshot.
unexpected_terminal/​glued_solidity_keyword/​generated/​solc/​0.8.33-failure.txt Removes redundant snapshot.
unexpected_terminal/​glued_solidity_keyword/​generated/​solc/​0.8.32-failure.txt Removes redundant snapshot.
unexpected_terminal/​glued_solidity_keyword/​generated/​solc/​0.8.31-failure.txt Removes redundant snapshot.
unexpected_terminal/​glued_solidity_keyword/​generated/​solc/​0.8.30-failure.txt Removes redundant snapshot.
unexpected_terminal/​glued_solidity_keyword/​generated/​solc/​0.8.3-failure.txt Removes redundant snapshot.
unexpected_terminal/​glued_solidity_keyword/​generated/​solc/​0.8.29-failure.txt Removes redundant snapshot.
unexpected_terminal/​glued_solidity_keyword/​generated/​solc/​0.8.28-failure.txt Removes redundant snapshot.
unexpected_terminal/​glued_solidity_keyword/​generated/​solc/​0.8.27-failure.txt Removes redundant snapshot.
unexpected_terminal/​glued_solidity_keyword/​generated/​solc/​0.8.26-failure.txt Removes redundant snapshot.
unexpected_terminal/​glued_solidity_keyword/​generated/​solc/​0.8.25-failure.txt Removes redundant snapshot.
unexpected_terminal/​glued_solidity_keyword/​generated/​solc/​0.8.24-failure.txt Removes redundant snapshot.
unexpected_terminal/​glued_solidity_keyword/​generated/​solc/​0.8.23-failure.txt Removes redundant snapshot.
unexpected_terminal/​glued_solidity_keyword/​generated/​solc/​0.8.22-failure.txt Removes redundant snapshot.
unexpected_terminal/​glued_solidity_keyword/​generated/​solc/​0.8.21-failure.txt Removes redundant snapshot.
unexpected_terminal/​glued_solidity_keyword/​generated/​solc/​0.8.20-failure.txt Removes redundant snapshot.
unexpected_terminal/​glued_solidity_keyword/​generated/​solc/​0.8.2-failure.txt Removes redundant snapshot.
unexpected_terminal/​glued_solidity_keyword/​generated/​solc/​0.8.19-failure.txt Removes redundant snapshot.
unexpected_terminal/​glued_solidity_keyword/​generated/​solc/​0.8.18-failure.txt Removes redundant snapshot.
unexpected_terminal/​glued_solidity_keyword/​generated/​solc/​0.8.17-failure.txt Removes redundant snapshot.
unexpected_terminal/​glued_solidity_keyword/​generated/​solc/​0.8.16-failure.txt Removes redundant snapshot.
unexpected_terminal/​glued_solidity_keyword/​generated/​solc/​0.8.15-failure.txt Removes redundant snapshot.
unexpected_terminal/​glued_solidity_keyword/​generated/​solc/​0.8.14-failure.txt Removes redundant snapshot.
unexpected_terminal/​glued_solidity_keyword/​generated/​solc/​0.8.13-failure.txt Removes redundant snapshot.
unexpected_terminal/​glued_solidity_keyword/​generated/​solc/​0.8.12-failure.txt Removes redundant snapshot.
unexpected_terminal/​glued_solidity_keyword/​generated/​solc/​0.8.11-failure.txt Removes redundant snapshot.
unexpected_terminal/​glued_solidity_keyword/​generated/​solc/​0.8.10-failure.txt Removes redundant snapshot.
unexpected_terminal/​glued_solidity_keyword/​generated/​solc/​0.8.1-failure.txt Removes redundant snapshot.
unexpected_terminal/​glued_solidity_keyword/​generated/​solc/​0.8.0-failure.txt Uses placeholder in pragma warning.
missing_version_pragma/​generated/​solc/​0.8.9-warning.txt Removes redundant snapshot.
missing_version_pragma/​generated/​solc/​0.8.8-warning.txt Removes redundant snapshot.
missing_version_pragma/​generated/​solc/​0.8.7-warning.txt Removes redundant snapshot.
missing_version_pragma/​generated/​solc/​0.8.6-warning.txt Removes redundant snapshot.
missing_version_pragma/​generated/​solc/​0.8.5-warning.txt Removes redundant snapshot.
missing_version_pragma/​generated/​solc/​0.8.4-warning.txt Removes redundant snapshot.
missing_version_pragma/​generated/​solc/​0.8.38-warning.txt Removes redundant snapshot.
missing_version_pragma/​generated/​solc/​0.8.37-warning.txt Removes redundant snapshot.
missing_version_pragma/​generated/​solc/​0.8.36-warning.txt Removes redundant snapshot.
missing_version_pragma/​generated/​solc/​0.8.35-warning.txt Removes redundant snapshot.
missing_version_pragma/​generated/​solc/​0.8.34-warning.txt Removes redundant snapshot.
missing_version_pragma/​generated/​solc/​0.8.33-warning.txt Removes redundant snapshot.
missing_version_pragma/​generated/​solc/​0.8.32-warning.txt Removes redundant snapshot.
missing_version_pragma/​generated/​solc/​0.8.31-warning.txt Removes redundant snapshot.
missing_version_pragma/​generated/​solc/​0.8.30-warning.txt Removes redundant snapshot.
missing_version_pragma/​generated/​solc/​0.8.3-warning.txt Removes redundant snapshot.
missing_version_pragma/​generated/​solc/​0.8.29-warning.txt Removes redundant snapshot.
missing_version_pragma/​generated/​solc/​0.8.28-warning.txt Removes redundant snapshot.
missing_version_pragma/​generated/​solc/​0.8.27-warning.txt Removes redundant snapshot.
missing_version_pragma/​generated/​solc/​0.8.26-warning.txt Removes redundant snapshot.
missing_version_pragma/​generated/​solc/​0.8.25-warning.txt Removes redundant snapshot.
missing_version_pragma/​generated/​solc/​0.8.24-warning.txt Removes redundant snapshot.
missing_version_pragma/​generated/​solc/​0.8.23-warning.txt Removes redundant snapshot.
missing_version_pragma/​generated/​solc/​0.8.22-warning.txt Removes redundant snapshot.
missing_version_pragma/​generated/​solc/​0.8.21-warning.txt Removes redundant snapshot.
missing_version_pragma/​generated/​solc/​0.8.20-warning.txt Removes redundant snapshot.
missing_version_pragma/​generated/​solc/​0.8.2-warning.txt Removes redundant snapshot.
missing_version_pragma/​generated/​solc/​0.8.19-warning.txt Removes redundant snapshot.
missing_version_pragma/​generated/​solc/​0.8.18-warning.txt Removes redundant snapshot.
missing_version_pragma/​generated/​solc/​0.8.17-warning.txt Removes redundant snapshot.
missing_version_pragma/​generated/​solc/​0.8.16-warning.txt Removes redundant snapshot.
missing_version_pragma/​generated/​solc/​0.8.15-warning.txt Removes redundant snapshot.
missing_version_pragma/​generated/​solc/​0.8.14-warning.txt Removes redundant snapshot.
missing_version_pragma/​generated/​solc/​0.8.13-warning.txt Removes redundant snapshot.
missing_version_pragma/​generated/​solc/​0.8.12-warning.txt Removes redundant snapshot.
missing_version_pragma/​generated/​solc/​0.8.11-warning.txt Removes redundant snapshot.
missing_version_pragma/​generated/​solc/​0.8.10-warning.txt Removes redundant snapshot.
missing_version_pragma/​generated/​solc/​0.8.1-warning.txt Removes redundant snapshot.
missing_version_pragma/​generated/​solc/​0.8.0-warning.txt Uses placeholder in pragma warning.
crates/​infra/​utils/​src/​solc/​render.rs Normalizes bare compiler versions after build versions.
crates/​infra/​utils/​src/​snapshot_markers.rs Defines and documents the new version placeholder.

Review effort: Balanced

@teofr
teofr marked this pull request as ready for review November 2, 2026 12:59
@teofr
teofr requested review from a team as code owners November 2, 2026 12:59
@github-actions

github-actions Bot commented Nov 2, 2026

Copy link
Copy Markdown
Contributor

🐰 Bencher Report

Branchteofr/fix-solc-test-versions
Testbedci

⚠️ WARNING: Truncated view!

The full continuous benchmarking report exceeds the maximum length allowed on this platform.

🐰 View full continuous benchmarking report in Bencher

This branch has not been deployed

No deployments
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.

2 participants