Skip to content

Conversation

@pcaversaccio
Copy link
Collaborator

@pcaversaccio pcaversaccio commented May 7, 2025

What I did

Make prague is the default EVM version.

How I did it

A bit of hard skills.

How to verify it

EIP-7600.

Commit message

add `prague` to the list of EVM versions and make it the default.

Description for the changelog

Make prague is the default EVM version.

Cute Animal Picture

Signed-off-by: Pascal Marco Caversaccio <[email protected]>
Signed-off-by: Pascal Marco Caversaccio <[email protected]>
Signed-off-by: Pascal Marco Caversaccio <[email protected]>
Signed-off-by: Pascal Marco Caversaccio <[email protected]>
@zerosnacks
Copy link

Hey @pcaversaccio

For Foundry we are looking to default to Prague, do you happen to know from what version Vyper supports Prague?

Ref: https://github.com/foundry-rs/compilers/blob/507cd414fa374b50bb3d58f7501f5e477b73a9c8/crates/artifacts/vyper/src/settings.rs#L15

@pcaversaccio
Copy link
Collaborator Author

Hey @pcaversaccio

For Foundry we are looking to default to Prague, do you happen to know from what version Vyper supports Prague?

Ref: https://github.com/foundry-rs/compilers/blob/507cd414fa374b50bb3d58f7501f5e477b73a9c8/crates/artifacts/vyper/src/settings.rs#L15

@charles-cooper makes the call here; I personally would like to see it in 0.4.2, but given there are no opcode changes (only new precompiles) and Vyper doesn't consume the new features yet I'm not sure if it will land in 0.4.2 yet.

@charles-cooper charles-cooper added the release - tentative items still being considered for release inclusion label Jun 16, 2025
@charles-cooper charles-cooper added this to the v0.4.3 milestone Jun 16, 2025
Copy link
Member

@charles-cooper charles-cooper left a comment

Choose a reason for hiding this comment

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

lgtm, @cyberthirst please take a look

@codecov
Copy link

codecov bot commented Jun 16, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 92.97%. Comparing base (9370897) to head (a369e5e).
⚠️ Report is 26 commits behind head on master.

Additional details and impacted files
@@           Coverage Diff           @@
##           master    #4633   +/-   ##
=======================================
  Coverage   92.97%   92.97%           
=======================================
  Files         131      131           
  Lines       19067    19067           
  Branches     3319     3319           
=======================================
  Hits        17728    17728           
  Misses        902      902           
  Partials      437      437           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@charles-cooper charles-cooper merged commit a35bfd5 into vyperlang:master Jun 17, 2025
164 checks passed
@pcaversaccio pcaversaccio deleted the feat/prague branch June 17, 2025 13:56
pcaversaccio added a commit to pcaversaccio/snekmate that referenced this pull request Jun 18, 2025
### 🕓 Changelog

This commit updates the version `pragma`s in all 🐍Vyper source files to
target the latest `master` version `0.4.3rc2`, aligning with the release
of Vyper's newest release candidate version
[`0.4.3rc1`](https://github.com/vyperlang/vyper/releases/tag/v0.4.3rc1).
Furthermore, all 🐍 snekmate contracts now target the new 🐍Vyper [default
EVM version](vyperlang/vyper#4633) `prague`.
Also, we now target the `prague` EVM version for all `halmos`-based
tests, as the previously missing opcodes `MCOPY`, `TLOAD`, and `TSTORE`
have been added via
[a16z/halmos#293](a16z/halmos#293) and
[a16z/halmos#463](a16z/halmos#463). Eventually,
all submodules have been updated to their most recent commits.

---------

Signed-off-by: Pascal Marco Caversaccio <[email protected]>
pcaversaccio added a commit to pcaversaccio/snekmate that referenced this pull request Jun 25, 2025
███████╗███╗░░░██╗███████╗██╗░░██╗███╗░░░███╗░█████╗░████████╗███████╗
██╔════╝████╗░░██║██╔════╝██║░██╔╝████╗░████║██╔══██╗╚══██╔══╝██╔════╝
███████╗██╔██╗░██║█████╗░░█████╔╝░██╔████╔██║███████║░░░██║░░░█████╗░░
╚════██║██║╚██╗██║██╔══╝░░██╔═██╗░██║╚██╔╝██║██╔══██║░░░██║░░░██╔══╝░░
███████║██║░╚████║███████╗██║░░██╗██║░╚═╝░██║██║░░██║░░░██║░░░███████╗
╚══════╝╚═╝░░╚═══╝╚══════╝╚═╝░░╚═╝╚═╝░░░░░╚═╝╚═╝░░╚═╝░░░╚═╝░░░╚══════╝

░██████╗░░░░██╗░░░██████╗░
██╔═████╗░░███║░░░╚════██╗
██║██╔██║░░╚██║░░░░█████╔╝
████╔╝██║░░░██║░░░██╔═══╝░
╚██████╔╝██╗██║██╗███████╗
░╚═════╝░╚═╝╚═╝╚═╝╚══════╝

### 🕓 Changelog

This commit drops the `🐍 snekmate` `0.1.2` release, targeting the latest
Vyper version
[`0.4.3`](https://github.com/vyperlang/vyper/releases/tag/v0.4.3).

> [!IMPORTANT]
> This release will make all 🐍 snekmate contracts now target the new
🐍Vyper [default EVM
version](vyperlang/vyper#4633) `prague`
([#331](#331)).

---------

Signed-off-by: Pascal Marco Caversaccio <[email protected]>
willbrown84 added a commit to willbrown84/snekmate that referenced this pull request Sep 23, 2025
### 🕓 Changelog

This commit updates the version `pragma`s in all 🐍Vyper source files to
target the latest `master` version `0.4.3rc2`, aligning with the release
of Vyper's newest release candidate version
[`0.4.3rc1`](https://github.com/vyperlang/vyper/releases/tag/v0.4.3rc1).
Furthermore, all 🐍 snekmate contracts now target the new 🐍Vyper [default
EVM version](vyperlang/vyper#4633) `prague`.
Also, we now target the `prague` EVM version for all `halmos`-based
tests, as the previously missing opcodes `MCOPY`, `TLOAD`, and `TSTORE`
have been added via
[a16z/halmos#293](a16z/halmos#293) and
[a16z/halmos#463](a16z/halmos#463). Eventually,
all submodules have been updated to their most recent commits.

---------

Signed-off-by: Pascal Marco Caversaccio <[email protected]>
willbrown84 added a commit to willbrown84/snekmate that referenced this pull request Sep 23, 2025
███████╗███╗░░░██╗███████╗██╗░░██╗███╗░░░███╗░█████╗░████████╗███████╗
██╔════╝████╗░░██║██╔════╝██║░██╔╝████╗░████║██╔══██╗╚══██╔══╝██╔════╝
███████╗██╔██╗░██║█████╗░░█████╔╝░██╔████╔██║███████║░░░██║░░░█████╗░░
╚════██║██║╚██╗██║██╔══╝░░██╔═██╗░██║╚██╔╝██║██╔══██║░░░██║░░░██╔══╝░░
███████║██║░╚████║███████╗██║░░██╗██║░╚═╝░██║██║░░██║░░░██║░░░███████╗
╚══════╝╚═╝░░╚═══╝╚══════╝╚═╝░░╚═╝╚═╝░░░░░╚═╝╚═╝░░╚═╝░░░╚═╝░░░╚══════╝

░██████╗░░░░██╗░░░██████╗░
██╔═████╗░░███║░░░╚════██╗
██║██╔██║░░╚██║░░░░█████╔╝
████╔╝██║░░░██║░░░██╔═══╝░
╚██████╔╝██╗██║██╗███████╗
░╚═════╝░╚═╝╚═╝╚═╝╚══════╝

### 🕓 Changelog

This commit drops the `🐍 snekmate` `0.1.2` release, targeting the latest
Vyper version
[`0.4.3`](https://github.com/vyperlang/vyper/releases/tag/v0.4.3).

> [!IMPORTANT]
> This release will make all 🐍 snekmate contracts now target the new
🐍Vyper [default EVM
version](vyperlang/vyper#4633) `prague`
([#331](pcaversaccio/snekmate#331)).

---------

Signed-off-by: Pascal Marco Caversaccio <[email protected]>
void-rider5560p added a commit to void-rider5560p/snekmate that referenced this pull request Sep 28, 2025
### 🕓 Changelog

This commit updates the version `pragma`s in all 🐍Vyper source files to
target the latest `master` version `0.4.3rc2`, aligning with the release
of Vyper's newest release candidate version
[`0.4.3rc1`](https://github.com/vyperlang/vyper/releases/tag/v0.4.3rc1).
Furthermore, all 🐍 snekmate contracts now target the new 🐍Vyper [default
EVM version](vyperlang/vyper#4633) `prague`.
Also, we now target the `prague` EVM version for all `halmos`-based
tests, as the previously missing opcodes `MCOPY`, `TLOAD`, and `TSTORE`
have been added via
[a16z/halmos#293](a16z/halmos#293) and
[a16z/halmos#463](a16z/halmos#463). Eventually,
all submodules have been updated to their most recent commits.

---------

Signed-off-by: Pascal Marco Caversaccio <[email protected]>
void-rider5560p added a commit to void-rider5560p/snekmate that referenced this pull request Sep 28, 2025
███████╗███╗░░░██╗███████╗██╗░░██╗███╗░░░███╗░█████╗░████████╗███████╗
██╔════╝████╗░░██║██╔════╝██║░██╔╝████╗░████║██╔══██╗╚══██╔══╝██╔════╝
███████╗██╔██╗░██║█████╗░░█████╔╝░██╔████╔██║███████║░░░██║░░░█████╗░░
╚════██║██║╚██╗██║██╔══╝░░██╔═██╗░██║╚██╔╝██║██╔══██║░░░██║░░░██╔══╝░░
███████║██║░╚████║███████╗██║░░██╗██║░╚═╝░██║██║░░██║░░░██║░░░███████╗
╚══════╝╚═╝░░╚═══╝╚══════╝╚═╝░░╚═╝╚═╝░░░░░╚═╝╚═╝░░╚═╝░░░╚═╝░░░╚══════╝

░██████╗░░░░██╗░░░██████╗░
██╔═████╗░░███║░░░╚════██╗
██║██╔██║░░╚██║░░░░█████╔╝
████╔╝██║░░░██║░░░██╔═══╝░
╚██████╔╝██╗██║██╗███████╗
░╚═════╝░╚═╝╚═╝╚═╝╚══════╝

### 🕓 Changelog

This commit drops the `🐍 snekmate` `0.1.2` release, targeting the latest
Vyper version
[`0.4.3`](https://github.com/vyperlang/vyper/releases/tag/v0.4.3).

> [!IMPORTANT]
> This release will make all 🐍 snekmate contracts now target the new
🐍Vyper [default EVM
version](vyperlang/vyper#4633) `prague`
([#331](pcaversaccio/snekmate#331)).

---------

Signed-off-by: Pascal Marco Caversaccio <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement release - tentative items still being considered for release inclusion

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants