diff --git a/Cargo.lock b/Cargo.lock index 8a57162cde..da52f66705 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2916,7 +2916,7 @@ dependencies = [ [[package]] name = "revm" -version = "8.0.0" +version = "9.0.0" dependencies = [ "alloy-provider", "alloy-rpc-types", @@ -2942,7 +2942,7 @@ dependencies = [ [[package]] name = "revm-interpreter" -version = "4.0.0" +version = "5.0.0" dependencies = [ "bincode", "paste", @@ -2955,7 +2955,7 @@ dependencies = [ [[package]] name = "revm-precompile" -version = "6.0.0" +version = "6.1.0" dependencies = [ "aurora-engine-modexp", "c-kzg", @@ -2972,7 +2972,7 @@ dependencies = [ [[package]] name = "revm-primitives" -version = "3.1.1" +version = "4.0.0" dependencies = [ "alloy-primitives", "auto_impl", @@ -3005,7 +3005,7 @@ dependencies = [ [[package]] name = "revme" -version = "0.4.0" +version = "0.5.0" dependencies = [ "alloy-rlp", "hash-db", diff --git a/bins/revm-test/Cargo.toml b/bins/revm-test/Cargo.toml index f26c4e7882..ef50c94059 100644 --- a/bins/revm-test/Cargo.toml +++ b/bins/revm-test/Cargo.toml @@ -7,7 +7,7 @@ edition = "2021" [dependencies] bytes = "1.6" hex = "0.4" -revm = { path = "../../crates/revm", version = "8.0.0", default-features=false } +revm = { path = "../../crates/revm", version = "9.0.0", default-features=false } microbench = "0.5" alloy-sol-macro = "0.7.0" alloy-sol-types = "0.7.0" diff --git a/bins/revme/CHANGELOG.md b/bins/revme/CHANGELOG.md index 34abf0043d..8a3ac3180c 100644 --- a/bins/revme/CHANGELOG.md +++ b/bins/revme/CHANGELOG.md @@ -6,6 +6,16 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [0.5.0](https://github.com/yash-atreya/revm/compare/revme-v0.4.0...revme-v0.5.0) - 2024-05-02 + +### Added +- *(revme)* add --keep-going to statetest command ([#1277](https://github.com/yash-atreya/revm/pull/1277)) +- EOF (Ethereum Object Format) ([#1143](https://github.com/yash-atreya/revm/pull/1143)) + +### Fixed +- *(revme)* Print one json outcome in statetest ([#1347](https://github.com/yash-atreya/revm/pull/1347)) +- Drops check for .json when testing a single file ([#1301](https://github.com/yash-atreya/revm/pull/1301)) + ## [0.4.0](https://github.com/bluealloy/revm/compare/revme-v0.3.1...revme-v0.4.0) - 2024-04-02 ### Added diff --git a/bins/revme/Cargo.toml b/bins/revme/Cargo.toml index 95290714c3..d57c151f04 100644 --- a/bins/revme/Cargo.toml +++ b/bins/revme/Cargo.toml @@ -6,7 +6,7 @@ keywords = ["ethereum", "evm"] license = "MIT" repository = "https://github.com/bluealloy/revm" description = "Rust Ethereum Virtual Machine Executable" -version = "0.4.0" +version = "0.5.0" [dependencies] hash-db = "0.15" @@ -15,7 +15,7 @@ hashbrown = "0.14" indicatif = "0.17" microbench = "0.5" plain_hasher = "0.2" -revm = { path = "../../crates/revm", version = "8.0.0", default-features = false, features = [ +revm = { path = "../../crates/revm", version = "9.0.0", default-features = false, features = [ "ethersdb", "std", "serde-json", diff --git a/crates/interpreter/CHANGELOG.md b/crates/interpreter/CHANGELOG.md index 97303ef63a..e859c2b69b 100644 --- a/crates/interpreter/CHANGELOG.md +++ b/crates/interpreter/CHANGELOG.md @@ -6,6 +6,37 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [5.0.0](https://github.com/yash-atreya/revm/compare/revm-interpreter-v4.0.0...revm-interpreter-v5.0.0) - 2024-05-02 + +### Added +- implement EIP-2935 ([#1354](https://github.com/yash-atreya/revm/pull/1354)) +- parse opcodes from strings ([#1358](https://github.com/yash-atreya/revm/pull/1358)) +- *(interpreter)* add helpers for spending all gas ([#1360](https://github.com/yash-atreya/revm/pull/1360)) +- add helper methods to CallInputs ([#1345](https://github.com/yash-atreya/revm/pull/1345)) +- *(revm)* make `FrameOrResult` serializable ([#1282](https://github.com/yash-atreya/revm/pull/1282)) +- add flag to force hashbrown usage ([#1284](https://github.com/yash-atreya/revm/pull/1284)) +- EOF (Ethereum Object Format) ([#1143](https://github.com/yash-atreya/revm/pull/1143)) +- *(interpreter)* derive Eq for InterpreterAction ([#1262](https://github.com/yash-atreya/revm/pull/1262)) +- *(interpreter)* remove SPEC generic from gas calculation functions ([#1243](https://github.com/yash-atreya/revm/pull/1243)) +- *(interpreter)* test Host object-safety, allow `dyn Host` in instructions ([#1245](https://github.com/yash-atreya/revm/pull/1245)) + +### Fixed +- return the correct error in resize_memory ([#1359](https://github.com/yash-atreya/revm/pull/1359)) +- correct some stack IO ([#1302](https://github.com/yash-atreya/revm/pull/1302)) + +### Other +- re-use num_words in gas::cost_per_word ([#1371](https://github.com/yash-atreya/revm/pull/1371)) +- *(interpreter)* rewrite gas accounting for memory expansion ([#1361](https://github.com/yash-atreya/revm/pull/1361)) +- remove bounds check in DUP, SWAP/EXCHANGE ([#1346](https://github.com/yash-atreya/revm/pull/1346)) +- don't clone bytes in `Bytecode::bytes` ([#1344](https://github.com/yash-atreya/revm/pull/1344)) +- shrink OpCodeInfo and add more methods ([#1307](https://github.com/yash-atreya/revm/pull/1307)) +- *(interpreter)* rename some macros ([#1304](https://github.com/yash-atreya/revm/pull/1304)) +- *(interpreter)* remove EOF branch in CODE{SIZE,COPY} ([#1308](https://github.com/yash-atreya/revm/pull/1308)) +- fix some warnings ([#1305](https://github.com/yash-atreya/revm/pull/1305)) +- *(interpreter)* rename wrapping_* opcodes ([#1306](https://github.com/yash-atreya/revm/pull/1306)) +- Add the modifies_memory macro ([#1270](https://github.com/yash-atreya/revm/pull/1270)) +- *(interpreter)* use `pop_top!` where possible ([#1267](https://github.com/yash-atreya/revm/pull/1267)) + ## [4.0.0](https://github.com/bluealloy/revm/compare/revm-interpreter-v3.4.0...revm-interpreter-v4.0.0) - 2024-04-02 ### Added diff --git a/crates/interpreter/Cargo.toml b/crates/interpreter/Cargo.toml index 1b59e7d33a..6476e99fe0 100644 --- a/crates/interpreter/Cargo.toml +++ b/crates/interpreter/Cargo.toml @@ -6,7 +6,7 @@ keywords = ["no_std", "ethereum", "evm", "revm", "interpreter"] license = "MIT" name = "revm-interpreter" repository = "https://github.com/bluealloy/revm" -version = "4.0.0" +version = "5.0.0" readme = "../../README.md" [package.metadata.docs.rs] @@ -14,7 +14,7 @@ all-features = true rustdoc-args = ["--cfg", "docsrs"] [dependencies] -revm-primitives = { path = "../primitives", version = "3.1.1", default-features = false } +revm-primitives = { path = "../primitives", version = "4.0.0", default-features = false } paste = { version = "1.0", optional = true } phf = { version = "0.11", default-features = false, optional = true, features = [ diff --git a/crates/precompile/CHANGELOG.md b/crates/precompile/CHANGELOG.md index 008c66f604..7aef569557 100644 --- a/crates/precompile/CHANGELOG.md +++ b/crates/precompile/CHANGELOG.md @@ -6,6 +6,16 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [6.1.0](https://github.com/yash-atreya/revm/compare/revm-precompile-v6.0.0...revm-precompile-v6.1.0) - 2024-05-02 + +### Added +- add flag to force hashbrown usage ([#1284](https://github.com/yash-atreya/revm/pull/1284)) +- EOF (Ethereum Object Format) ([#1143](https://github.com/yash-atreya/revm/pull/1143)) + +### Other +- *(deps)* bump aurora-engine-modexp from 1.0.0 to 1.1.0 ([#1339](https://github.com/yash-atreya/revm/pull/1339)) +- *(deps)* bump secp256k1 from 0.28.2 to 0.29.0 ([#1260](https://github.com/yash-atreya/revm/pull/1260)) + ## [6.0.0](https://github.com/bluealloy/revm/compare/revm-precompile-v5.1.0...revm-precompile-v6.0.0) - 2024-04-02 ### Fixed diff --git a/crates/precompile/Cargo.toml b/crates/precompile/Cargo.toml index a9893a824d..0d13e22b52 100644 --- a/crates/precompile/Cargo.toml +++ b/crates/precompile/Cargo.toml @@ -6,14 +6,14 @@ keywords = ["no_std", "ethereum", "evm", "revm", "precompiles"] license = "MIT" name = "revm-precompile" repository = "https://github.com/bluealloy/revm" -version = "6.0.0" +version = "6.1.0" [package.metadata.docs.rs] all-features = true rustdoc-args = ["--cfg", "docsrs"] [dependencies] -revm-primitives = { path = "../primitives", version = "3.1.1", default-features = false } +revm-primitives = { path = "../primitives", version = "4.0.0", default-features = false } bn = { package = "substrate-bn", version = "0.6", default-features = false } once_cell = { version = "1.19", default-features = false, features = ["alloc"] } ripemd = { version = "0.1", default-features = false } diff --git a/crates/primitives/CHANGELOG.md b/crates/primitives/CHANGELOG.md index 79148d55ba..e508b23ab9 100644 --- a/crates/primitives/CHANGELOG.md +++ b/crates/primitives/CHANGELOG.md @@ -6,6 +6,23 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [4.0.0](https://github.com/yash-atreya/revm/compare/revm-primitives-v3.1.1...revm-primitives-v4.0.0) - 2024-05-02 + +### Added +- implement EIP-2935 ([#1354](https://github.com/yash-atreya/revm/pull/1354)) +- add `Bytecode::original_bytecode_slice` to match `BytecodeLocked` ([#1286](https://github.com/yash-atreya/revm/pull/1286)) +- add flag to force hashbrown usage ([#1284](https://github.com/yash-atreya/revm/pull/1284)) +- EOF (Ethereum Object Format) ([#1143](https://github.com/yash-atreya/revm/pull/1143)) +- pass rand feature to alloy_primitives ([#1276](https://github.com/yash-atreya/revm/pull/1276)) +- *(interpreter)* remove SPEC generic from gas calculation functions ([#1243](https://github.com/yash-atreya/revm/pull/1243)) + +### Other +- don't clone bytes in `Bytecode::bytes` ([#1344](https://github.com/yash-atreya/revm/pull/1344)) +- shrink OpCodeInfo and add more methods ([#1307](https://github.com/yash-atreya/revm/pull/1307)) +- Implement `with_chain_id` for `CfgEnv` ([#1327](https://github.com/yash-atreya/revm/pull/1327)) +- *(interpreter)* remove EOF branch in CODE{SIZE,COPY} ([#1308](https://github.com/yash-atreya/revm/pull/1308)) +- Update documentation ([#1275](https://github.com/yash-atreya/revm/pull/1275)) + ## [3.1.1](https://github.com/bluealloy/revm/compare/revm-primitives-v3.1.0...revm-primitives-v3.1.1) - 2024-04-02 ### Fixed diff --git a/crates/primitives/Cargo.toml b/crates/primitives/Cargo.toml index b9fbb9fceb..1edbc2026f 100644 --- a/crates/primitives/Cargo.toml +++ b/crates/primitives/Cargo.toml @@ -6,7 +6,7 @@ keywords = ["no_std", "ethereum", "evm", "revm", "types"] license = "MIT" name = "revm-primitives" repository = "https://github.com/bluealloy/revm" -version = "3.1.1" +version = "4.0.0" readme = "../../README.md" # Don't need to run build script outside of this repo diff --git a/crates/revm/CHANGELOG.md b/crates/revm/CHANGELOG.md index 1b01a63387..2e07f996e8 100644 --- a/crates/revm/CHANGELOG.md +++ b/crates/revm/CHANGELOG.md @@ -6,6 +6,32 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [9.0.0](https://github.com/yash-atreya/revm/compare/revm-v8.0.0...revm-v9.0.0) - 2024-05-02 + +### Added +- *(Handler)* Add ClearHandle ([#1368](https://github.com/yash-atreya/revm/pull/1368)) +- Add uniswap V2 WETH-USDC swap example ([#1353](https://github.com/yash-atreya/revm/pull/1353)) +- *(interpreter)* add helpers for spending all gas ([#1360](https://github.com/yash-atreya/revm/pull/1360)) +- add helper methods to CallInputs ([#1345](https://github.com/yash-atreya/revm/pull/1345)) +- *(revm)* make `FrameOrResult` serializable ([#1282](https://github.com/yash-atreya/revm/pull/1282)) +- add flag to force hashbrown usage ([#1284](https://github.com/yash-atreya/revm/pull/1284)) +- EOF (Ethereum Object Format) ([#1143](https://github.com/yash-atreya/revm/pull/1143)) +- *(`db`)* Introduce `alloydb` ([#1257](https://github.com/yash-atreya/revm/pull/1257)) +- *(interpreter)* remove SPEC generic from gas calculation functions ([#1243](https://github.com/yash-atreya/revm/pull/1243)) +- *(interpreter)* test Host object-safety, allow `dyn Host` in instructions ([#1245](https://github.com/yash-atreya/revm/pull/1245)) + +### Fixed +- return the correct error in resize_memory ([#1359](https://github.com/yash-atreya/revm/pull/1359)) + +### Other +- *(ci)* bump action/deploy ([#1372](https://github.com/yash-atreya/revm/pull/1372)) +- shrink OpCodeInfo and add more methods ([#1307](https://github.com/yash-atreya/revm/pull/1307)) +- *(deps)* bump anyhow from 1.0.81 to 1.0.82 ([#1293](https://github.com/yash-atreya/revm/pull/1293)) +- fix some warnings ([#1305](https://github.com/yash-atreya/revm/pull/1305)) +- Update documentation ([#1275](https://github.com/yash-atreya/revm/pull/1275)) +- *(interpreter)* use `pop_top!` where possible ([#1267](https://github.com/yash-atreya/revm/pull/1267)) +- add and use EvmContext::take_error ([#1264](https://github.com/yash-atreya/revm/pull/1264)) + ## [8.0.0](https://github.com/bluealloy/revm/compare/revm-v7.2.0...revm-v8.0.0) - 2024-04-02 ### Added diff --git a/crates/revm/Cargo.toml b/crates/revm/Cargo.toml index 2a517a4a17..a567e081f7 100644 --- a/crates/revm/Cargo.toml +++ b/crates/revm/Cargo.toml @@ -6,7 +6,7 @@ keywords = ["no_std", "ethereum", "evm", "revm"] license = "MIT" name = "revm" repository = "https://github.com/bluealloy/revm" -version = "8.0.0" +version = "9.0.0" readme = "../../README.md" [package.metadata.docs.rs] @@ -15,8 +15,8 @@ rustdoc-args = ["--cfg", "docsrs"] [dependencies] # revm -revm-interpreter = { path = "../interpreter", version = "4.0.0", default-features = false } -revm-precompile = { path = "../precompile", version = "6.0.0", default-features = false } +revm-interpreter = { path = "../interpreter", version = "5.0.0", default-features = false } +revm-precompile = { path = "../precompile", version = "6.1.0", default-features = false } # misc auto_impl = { version = "1.2", default-features = false }