Skip to content

Latest commit

 

History

History
149 lines (129 loc) · 3.84 KB

CHANGELOG.md

File metadata and controls

149 lines (129 loc) · 3.84 KB

Changelog

All notable changes to this project will be documented in this file.

[unreleased]

🚜 Refactor

  • Update custom errors for stack
  • Update stack structure
  • Fix stack related functions

[0.1.0] - 2024-08-26

🚀 Features

  • Add instruction enum
  • Add lexer.rs
  • Update lexer.rs
  • Update instruction.rs
  • Add stack struct and its functions
  • Implement memory struct and its functions
  • Implement Storage struct and its functions
  • Add hex.rs for conversion functions
  • (stack) Add dup and swap functions
  • Add vm.rs module
  • Add custom error for vm
  • Add new opcodes to InstructionType
  • (vm) Update run function
  • (vm) Update missing opcode arms
  • (storage) Implement size and is_empty functions
  • Implement command line operations
  • (errors) Implement history error
  • Add history module
  • (history) Implement component functions
  • (vm) Add History to Vm
  • (cli) Implement verbose argument
  • Add bytes32 module
  • (bytes32) Add arithmetic operation traits
  • (history) Add new History field functions
  • (history) Add analyze function

🐛 Bug Fixes

  • (bytes) Update from bytes to string function
  • (vm) Update KECCAK256 opcode function
  • (bytes) Update wrong conversion to String

🚜 Refactor

  • Update StackError implementation
  • (memory) Remove Result returns
  • Implement custom errors in errors.rs
  • (memory) Add Default trait to Memory
  • Update custom error outputs
  • (vm) Update Vm struct creation
  • (stack) Implement Debug trait
  • (storage) Update the name key to slot
  • (history) Update functions
  • (history) Implement clippy suggestions
  • (vm) Implement pop function
  • (stack) Add index return values
  • (instruction) Update struct macros
  • (errors) Add lifetime notation to instruction type
  • (history) Update summarize function param
  • (memory) Add partially broken code
  • (storage) Add partially broken code
  • (history) Add partially broken code
  • Implement type Bytes32 in the place of [u8; 32]
  • (history) Update parser function
  • (vm) Update build_initials closure
  • Implement Debug trait

📚 Documentation

  • (memory) Add safety docs to unsafe functions

🎨 Styling

  • (memory) Remove Default macro
  • Rename hex.rs as bytes.rs
  • (vm) Update KECCAK256 opcode function
  • (bytes32) Remove clippy warnings
  • (history) Remove clippy warnings
  • (vm) Remove clippy warnings

🧪 Testing

  • (lexer) Add test cases
  • (stack) Implement test cases
  • (memory) Implement test cases
  • (storage) Implement storage test cases
  • (hex) Implement test cases
  • (memory) Import utils hex function
  • (stack) Add dup and swap test cases
  • (storage) Implement test cases
  • (vm) Add partially covered test cases
  • (vm) Update test cases
  • (vm) Update test cases
  • (vm) Implement KECCAK256 test case
  • (vm) Update test suites
  • (cli) Implement initialization test case
  • (history) Implement test cases
  • (history) Update test cases
  • (bytes32) Implement test cases
  • (vm) Add missing STOP opcode test
  • Add common module
  • Implement integration test

⚙️ Miscellaneous Tasks

  • Add Cargo.lock
  • Add stack and lexer
  • Remove stack.rs
  • Add CHANGELOG.md
  • Update lib.rs
  • Update CHANGELOG.md
  • Update CHANGELOG.md
  • Add cliff.toml
  • Update CHANGELOG.md
  • Update CHANGELOG.md
  • Update error.rs
  • Update CHANGELOG.md
  • Update main.rs
  • Add keccak-hash crate
  • Update CHANGELOG.md
  • Add new VmError
  • Update vm.rs
  • Update CHANGELOG.md
  • Add clap dependency
  • Update main.rs
  • Update CHANGELOG.md
  • Add hex crate
  • Update CHANGELOG.md
  • (vm) Remove history functions
  • Update main.rs
  • (memory) Add unsafe comments
  • Update CHANGELOG.md
  • Implement basic integration file
  • Update ci.yml
  • Add license
  • Update Cargo.toml
  • Update Cargo.toml
  • Update README.md
  • Add CHANGELOG.md
  • Add app basics to README.md
  • Update Cargo.toml