Skip to content

Latest commit

 

History

History
604 lines (471 loc) · 32.1 KB

CHANGELOG.md

File metadata and controls

604 lines (471 loc) · 32.1 KB

Changelog

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

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

0.5.3 - 2023-12-16

Bug Fixes

  • sol-types Un-break decode revert (#457)
  • Ingest domain when instantiating TypedData (#453)
  • Don't decode ZSTs (#454)
  • primitives Return correct fixed length in ssz::Encode (#451)

Features

  • Address from pubkey (#455)
  • Add RevertReason enum (#450)
  • primitives Update Bytes formatting, add UpperHex (#446)

Miscellaneous Tasks

  • Bless tests (#456)

0.5.2 - 2023-12-01

Bug Fixes

Miscellaneous Tasks

  • Release 0.5.2

Testing

  • Add some regression tests (#443)

0.5.1 - 2023-11-30

Bug Fixes

  • Fix public leak (#437)

Miscellaneous Tasks

  • Release 0.5.1

Other

  • Re-enable MSRV all features check (#439)

0.5.0 - 2023-11-23

Bug Fixes

Features

Miscellaneous Tasks

  • Release 0.5.0
  • Update git-cliff config
  • Restructure tests (#421)
  • Rename TokenType GAT and trait to Token (#417)
  • Remove dead code (#416)
  • Update .git-blame-ignore-revs
  • Use winnow separated instead of separated0 (#403)
  • Clean up ABI, EIP-712, docs (#373)
  • sol-macro Move generated docs below input attrs (#363)
  • sol-types Remove impls for isize/usize (#362)

Other

  • SSZ implementation for alloy primitives (#407)
  • Enable rand feature for re-exported ruint crate (#385)
  • Cargo build instead of check (#368)

Styling

  • Update rustfmt config (#406)

Testing

  • Check version before running Solc (#428)
  • Add errors abi test (#390)

0.4.2 - 2023-10-09

Bug Fixes

Miscellaneous Tasks

  • Release 0.4.2

0.4.1 - 2023-10-09

Bug Fixes

Documentation

  • Add scope to changelog commits (#328)
  • Fix changelog link (#323)

Features

Miscellaneous Tasks

  • Release 0.4.1
  • sol-types Rewrite encodable impl generics (#332)
  • Add count to all_the_tuples! macro (#331)
  • Enable ruint std feature (#326)
  • Fix typos (#325)
  • dyn-abi Make resolve module private (#324)

Other

  • Run miri in ci (#327)

Testing

0.4.0 - 2023-09-29

Bug Fixes

Dependencies

  • Bump all deps (#273)
  • Fix MSRV CI and dev deps (#267)

Documentation

  • Add automated CHANGELOG.md (#322)
  • Improve ResolveSolType documentation (#296)
  • Document dollar sign in idents (#288)
  • Add note regarding ruint::uint macro (#265)
  • Update fixed bytes docs (#255)
  • Data types typo (#248)

Features

Miscellaneous Tasks

  • Release 0.4.0
  • Prefix ABI encode and decode functions with abi_ (#311)
  • Don't pass debug feature to winnow (#317)
  • Touch up #314 (#315)
  • Simpler ENCODED_SIZE for SolType tuples (#312)
  • Unhide clippy config file (#305)
  • Sync crate level attributes (#303)
  • Assert_eq! on Ok instead of unwrapping where possible (#297)
  • Use hex! macro from primitives re-export (#299)
  • Add missing #[automatically_derived] (#294)
  • Do not implement SolType for SolStruct generically (#275)
  • Rename coding functions (#274)
  • Re-export ::bytes (#278)
  • Update CODEOWNERS (#270)

Other

  • Cache on failure (#306)
  • Hash_message (#304)
  • Pin anstyle to 1.65 compat (#266)
  • Typo (#249)

Performance

  • Optimize identifier parsing (#295)
  • Use slice::Iter where possible (#256)

Refactor

  • Rewrite type parser with winnow (#292)
  • Simplify Eip712Domain::encode_data (#277)

Styling

  • Format code snippets in docs (#313)
  • Move decode_revert_reason to alloy and add tests (#308)
  • Support yul ast (#268)
  • Some clippy lints (#251)

Testing

0.3.2 - 2023-08-23

Bug Fixes

Features

  • Implement abi2sol (#228)
  • primitives More FixedBytes<N> <-> [u8; N] conversions (#239)
  • Add support for function input/output encoding/decoding (#227)
  • syn-solidity Add statements and expressions (#199)
  • dyn-abi Add match functions to value and doc aliases (#234)
  • Function type (#224)
  • dyn-abi Allow T: Into<Cow<str>> in eip712_domain! (#222)
  • sol-macro Expand getter functions for public state variables (#218)

Miscellaneous Tasks

Performance

  • Optimize some stuff (#231)
  • Refactor TypeSpecifier parsing (#230)

Styling

  • Port ethabi json tests (#232)

0.3.1 - 2023-07-30

Dependencies

  • Bump ruint to 1.10.1 + alloc (#213)

Documentation

  • Update no-std not in readme (#215)
  • Add ambiguity details to Encodable rustdoc (#211)
  • json-abi Add README.md (#209)
  • Update README.md (#208)

Features

  • Support ethabi Contract methods (#195)

Miscellaneous Tasks

  • Release 0.3.1 (#216)

0.3.0 - 2023-07-26

Bug Fixes

  • Correct encodeType expansion for nested structs (#203)
  • Remove unused method body on solstruct (#200)
  • Remove unwrap in decode_populate (#172)
  • sol-types Empty data decode (#159)
  • Doc in dyn-abi (#155)
  • [alloy-primitives] Fix broken documentation link (#152)

Documentation

  • Add licensing note to README.md (#186)
  • Add parser to readme (#183)
  • [rlp] Move example to README.md (#177)
  • Request that PR contributors allow maintainer edits (#148)

Features

  • Bytes handles numeric arrays and bytearrays in deser (#202)
  • [dyb-abi] Impl ResolveSolType for Rc (#189)
  • Native keccak feature flag (#185)
  • sol-macro #[sol] attributes and JSON ABI support (#173)
  • Solidity type parser (#181)
  • [rlp] Improve implementations (#182)
  • dyn-abi Add arbitrary impls and proptests (#175)
  • dyn-abi Cfg CustomStruct for eip712, rm CustomValue (#178)
  • dyn-abi Clean up and improve performance (#174)
  • DynSolType::decode_params (#166)
  • json-abi Add more impls (#164)
  • primitives Add some impls (#162)
  • SolEnum and SolInterface (#153)
  • primitives Fixed bytes macros (#156)

Miscellaneous Tasks

  • Release 0.3.0 (#207)
  • Wrap Bytes methods which return Self (#206)
  • Add release.toml (#205)
  • Replace ruint2 with ruint (#192)
  • Clippy (#196)
  • Remove remaining refs to rlp (#190)
  • Move rlp crates to a separate repo (#187)
  • dyn-abi Gate eip712 behind a feature (#176)
  • Warn on all rustdoc lints (#154)
  • Clean ups (#150)
  • Add smaller image for favicon (#142)
  • Move macro doctests to separate folder (#140)

Other

  • Cache wasm job (#197)
  • Significant dyn-abi fixes :) (#168)
  • Refactoring dyn-abi to performance parity with ethabi (#144)
  • Kuly14/cleanup (#151)
  • Explain alloy vs ethers-rs intention (#146)

Refactor

  • Rename domain macro and add docs (#147)
  • Rename Sol*::Tuple to Parameters/Arguments (#145)
  • Do not generate SolCall for return values (#134)

Testing

  • Run UI tests only on nightly (#194)

0.2.0 - 2023-06-23

Bug Fixes

  • Remove to_rust from most traits (#133)
  • Fmt (#130)
  • Links in readme (#128)
  • (u)int tokenization (#123)
  • Add repr(C) to json-abi items (#100)
  • Make detokenize infallible (#86)
  • Extra-traits in syn-solidity (#65)
  • Rlp impls (#56)
  • Hex breaking change (#50)
  • Type check int for dirty high bytes (#47)
  • Sol macro parsing and expansion (#21)
  • Add alloc features in no_std (#18)
  • Bump resolver to 2 to disable proptest in wasm
  • Doc warnings and clippy
  • Cargo t
  • Desc in primitives cargo.toml
  • Handle nested arrays
  • Correct signed int handling in encodePacked
  • Correct int handling in encodePacked
  • Add missing type_check to decoding
  • Std in abi lol
  • No_std in abi

Dependencies

  • Bump ruint to have alloy-rlp
  • Add missing deny.toml (#23)
  • Add Address w/ checksum support to primitives (#19)
  • Use workspace.{package,dependencies} (#17)
  • Bump uint
  • Bump uint to support wasm
  • Bump uint main
  • Generic signed int implementation (#3)

Documentation

  • Rlp-derive README.md (#70)
  • Contributing doc (#49)
  • Note on no_std support (#44)
  • Note that encode_list is preferred
  • Main lib README (#34)
  • Brief doc on the type system (#26)
  • Improve abi encoding doc examples
  • Encode_packed_to in doctest
  • Remove extra tab in docstring
  • Add implementer's guide to SolType
  • Big lib front page :)

Features

  • Unify json-abi params impls (#136)
  • Add Encodable trait (#121)
  • Finish high-level Solidity parser (#119)
  • Improve SolType tuples (#115)
  • Make TokenType::is_dynamic a constant (#114)
  • More FixedBytes impls (#111)
  • Compute encoded size statically where possible (#105)
  • Json-abi event selector (#104)
  • Solidity events support (#83)
  • Issue and PR templates #33 (#93)
  • sol! contracts (#77)
  • Abi-json crate (#78)
  • Syn-solidity visitors (#68)
  • Abi benchmarks (#57)
  • Move Solidity syn AST to syn-solidity (#63)
  • Support function overloading in sol! (#53)
  • Primitive utils and improvements (#52)
  • Add PanicKind enum (#54)
  • sol-type-parser Parse and expand custom errors and functions (#24)
  • Standard solidity revert & panic (#28)
  • Use const-hex instead of hex (#25)
  • Improve macros (#7)
  • Encode_eip712
  • Sol proc_macro for UDTs
  • User-defined solidity type
  • Domain macro
  • Update sol type parser to simplify access
  • Borrow for primitive bits types
  • Eip712 scaffolding
  • Borrow abstraction for tokenization and encoding
  • Serde for signed integer
  • Dyn sol type for all I sizes
  • Add uint as submodule (#1)
  • Add uint crate to repository
  • Feature structs in sol parser
  • Untested encodePacked
  • Sol proc macro
  • More expressive errors in ABI
  • Encoder rewrite
  • Abi, primitives, rlp

Miscellaneous Tasks

  • Add logo to all crates, add @gakonst to CODEOWNERS (#138)
  • Add .gitattributes (#135)
  • Typos (#132)
  • Typo fix (#131)
  • Typo fix (#129)
  • Clean up features (#116)
  • Add CODEOWNERS, update deny.toml and ci.yml (#117)
  • S/ruint/ruint2 until remco is back
  • Feature-gate getrandom, document in README.md (#71)
  • Rename to Alloy (#69)
  • Enable feature(doc_cfg, doc_auto_cfg) (#67)
  • Remove syn "full" feature (#66)
  • Rename crates (#45)
  • Pre-release mega cleanup (#35)
  • Use crates.io uint, move crates to crates/* (#31)
  • Update error type (#22)
  • Readme build commands
  • Add another todo for @gakonst
  • More todo in readme, remove cargo.toml comment
  • Update readme todos
  • Remove dbgs
  • Unused imports in test
  • Docstrings and tests
  • Missing RLP docs

Other

  • Release 0.2.0 (#139)
  • Revert "test: bless tests after updating to syn 2.0.19 (#79)" (#80)
  • Add WASM job (#76)
  • Fix dep job, add feature-checks job (#64)
  • Fix rustdoc job, docs (#46)
  • Prestwich/crate readmes (#41)
  • Prestwich/ingest encode type (#15)
  • Add initial Continuous Integration Workflows using GitHub® Actions™ (#8)
  • Dynamic EIP-712 (#6)
  • Prestwich/int-edge-cases (#4)
  • Implement ABI for I256 (#5)
  • Prestwich/dyn enc (#2)
  • Simplify encode_params docs
  • Delete type aliases
  • Remove primitive-types dep, add from for B512
  • Naming in readme
  • Standardize on mod std_support
  • のこりなくちるぞめでたき桜花ありて世の中はてのうければ

Performance

  • Improve rlp, update Address methods (#118)

Refactor

  • Lifetimes for token types (#120)
  • Sol-macro expansion (#113)
  • Change is_dynamic to a const DYNAMIC (#99)
  • Implement SolType for {Ui,I}nt<N> and FixedBytes<N> with const-generics (#92)
  • sol! AST and macro expansion (#61)
  • Remerge SolType and SolDataType (#30)
  • Clean up abi crate structure
  • Split dyn-abi into a separate crate
  • Udt doesn't need phantomdata
  • Simplify types somewhat
  • Modularize signed int implementation
  • Remove unused error variant
  • Delete remainder of serde feature
  • Trim error type
  • Abi standardize on encode+single+params

Styling

  • Add fmt commit to .git-blame-ignore-revs (#43)
  • Add rustfmt.toml (#42)
  • Sol Type re-factoring (#20)

Testing

  • Add more json abi tests (#89)
  • Bless tests after updating to syn 2.0.19 (#79)
  • Change should_panic to catch_unwind
  • Test U1 sub
  • Add custom sol structs to tests and docs
  • Clean up some type check and add a couple new ones