Releases: ralexstokes/ssz-rs
safety third
a variety of security fixes/improvements
thanks to everyone who contributed!
What's Changed
- add potential fix for OOR access on Vector by @0xTylerHolmes in #54
- Refactor test gen by @ralexstokes in #67
- update ssz-rs-test-gen readme by @ralexstokes in #68
- Common trait impls by @ralexstokes in #55
- simplify some of the serialization routines by @ralexstokes in #65
- change headline name to reflect crate name by @ralexstokes in #70
- Adds code coverage workflow and badge. by @claravanstaden in #59
- Update README.md by @ralexstokes in #71
- Update README.md by @ralexstokes in #72
- remove
MerkleCacheand partial code by @ralexstokes in #74 - Remove panic defaults in List and Vector by @doubledup in #56
- Replace index with get by @doubledup in #60
- Ignore ssz-rs-derive & ssz-rs-test-gen for coverage by @doubledup in #75
- Note possible checked_sub cases by @doubledup in #57
- add/hide docs so all public items are documented by @ralexstokes in #77
- consolidate hash tree root implementation by @ralexstokes in #87
- feat: derive Hash for merkle node by @jacobkaufmann in #90
- Make
no_stdbuild work withserdefeature enabled by @aeryz in #58 - refactor exports to skip duplication in
lib.rsby @ralexstokes in #80 - harden typing to increase safety of serialization routine by @ralexstokes in #81
- error on extra input when deserializing
Union[None]for some SSZ union type by @ralexstokes in #83 - skip some duplicate checks when deserializing fixed types by @ralexstokes in #84
- simplify proc macro validation by @ralexstokes in #85
- Reduce use of "magic numbers" by @ralexstokes in #86
- remove unnecessary
dep:prefix forssz-rsfeature set by @ralexstokes in #89 - v0.9.0 release by @ralexstokes in #91
New Contributors
- @0xTylerHolmes made their first contribution in #54
- @doubledup made their first contribution in #56
- @jacobkaufmann made their first contribution in #90
- @aeryz made their first contribution in #58
Full Changelog: v0.8.0...v0.9.0
v0.8: no-std
What's Changed
- basic merkle proof verification by @ralexstokes in #1
- Cache merkleization for some types by @ralexstokes in #3
- deprecate Merkle
Contextin lieu of static data by @ralexstokes in #5 - clean up dbg from test by @ralexstokes in #8
- Add serde feature by @ralexstokes in #13
- fix bug when serializing a "newtype" SSZ wrapper by @ralexstokes in #18
- fix clippy lints from clippy
0.1.65by @ralexstokes in #29 - fix: avoid overflow on 32 bit architectures by @ncitron in #28
- remove
std::iter::FromIteratorimports to simplify code by @ralexstokes in #31 - lint: eliminate unnecessary cast by @ralexstokes in #36
- update CI with some missing functionality by @ralexstokes in #37
- error refactor by @ralexstokes in #40
- moves computation of merkle "zero hashes" to build time by @ralexstokes in #42
- add
no-stdby @claravanstaden in #25 - Update CI by @ralexstokes in #44
- Allow use of errors in places expecting
E: std::error::Errorby @ralexstokes in #46 - simplify bytes types by @ralexstokes in #48
- impl
U256::from_hexby @ralexstokes in #50 - docs: add examples and crate docs by @onbjerg in #49
New Contributors
- @ralexstokes made their first contribution in #1
- @ncitron made their first contribution in #28
- @claravanstaden made their first contribution in #25
- @onbjerg made their first contribution in #49
Full Changelog: v0.7.0...v0.8.0
arrays and wrappers
Full Changelog: v0.6.0...v0.7.0
- support
[u8; N]for0..=32 - rename exposed error type to avoid collisions
- add support for deriving tuple structs of one member to facilitate the "new type" pattern
one error to rule them all
Full Changelog: v0.5.0...v0.6.0
Expose one "wrapping" Error type to simplify the error story for consumers of this library.
others can merkle too
Full Changelog: v0.4.0...v0.5.0
Expose tools for others to write hash_tree_root implementations.
reality comes at you fast
Full Changelog: v0.3.0...v0.4.0
This release includes a number of features to support the use of this library in a realistic setting, namely ethereum_consensus.
three's a crowd
Minor fixes realized while using the crates in this repo in https://github.com/ralexstokes/ethereum_consensus geared towards usability and Clippy lints.
as the roots undo
Adds a SimpleSerialize implementation for the Root type defined in this crate.
Without this implementation, ssz_rs users cannot define types that use Root as "summaries" of their committed data. Due to rules of the Rust trait system, this implementation needs to live in this crate and cannot be defined externally.
genesis
First release!