Releases: cosmos/iavl
v1.3.0
v1.3.0, July 31, 2024
Improvements
v1.2.0
v1.1.0
IAVL v1.1.0
This release follows the Cosmos-SDK semantic version tagging philosophy. Read more here.
This release contains an API breaking change. The Cosmos-SDK will release an update to 0.47 and 0.50 in the coming weeks to satisfy the API breaking changes.
This release is not consensus breaking.
v1.0.0
V1.0.0 marks the release of a long term stable API.
What's Changed
Improvements
- #695 Add API
SaveChangeSet
to save the changeset as a new version. - #703 New APIs
NewCompressExporter
/NewCompressImporter
to support more compact snapshot format. - #729 Speedup Genesis writes for IAVL, by writing in small batches.
- #726 Make
KVPair
andChangeSet
serializable with protobuf. - #718 Fix
traverseNodes
unexpected behaviour - #770 Add
WorkingVersion()int64
API.
Bug Fixes
- #773 Fix memory leak in
Import
. - #801 Fix rootKey empty check by len equals 0.
- #805 Use
sync.Map
instead of map to prevent concurrent writes at the fast node level
Breaking Changes
- #735 Pass logger to
NodeDB
,MutableTree
andImmutableTree
- #646 Remove the
orphans
from the storage - #777 Don't return errors from ImmutableTree.Hash, NewImmutableTree
- #815
NewMutableTreeWithOpts
was removed in favour of accepting options via a variadic inNewMutableTree
- #815
NewImmutableTreeWithOpts
is removed in favour of accepting options via a variadic inNewImmutableTree
- #646 Remove the
DeleteVersion
,DeleteVersions
,DeleteVersionsRange
and introduce a new endpoint ofDeleteVersionsTo
instead
New Contributors
Full Changelog: v0.19.1...v1.0.0
v0.20.1
0.20.1 (September 5, 2023)
Improvements
- #654 Add API
TraverseStateChanges
to extract state changes from iavl versions. - #726 Make
KVPair
andChangeSet
serializable with protobuf. - #795 Use gogofaster buf plugin.
Bug Fixes
Full Changelog: v0.20.0...v0.20.1
v0.19.7
v0.20.0
Release v0.20.0.
This releases is focused on integration with CometBFT-DB and the removal of range proofs on the IAVL tree.
Full Changelog: v0.19.5...v0.20.0
v0.19.5
Breaking Changes
#622 export/newExporter() and ImmutableTree.Export() returns error for nil arguements
Unreleased
#640 commit NodeDB batch in LoadVersionForOverwriting.
#636 Speed up rollback method: LoadVersionForOverwriting.
#654 Add API TraverseStateChanges to extract state changes from iavl versions.
#638 Make LazyLoadVersion check the opts.InitialVersion, add API LazyLoadVersionForOverwriting.
Full Changelog: v0.19.4...v0.19.5
v0.19.4
Main changes
- #599 Populate ImmutableTree creation in copy function with missing field
- #589 Wrap
tree.addUnsavedRemoval()
with missingif !tree.skipFastStorageUpgrade
statement
Full Changelog: v0.19.3...v0.19.4
v0.19.3
Main changes
ProofInner.Hash()
prevents both right and left from both being set. Only one is allowed to be set.
Note: It is recommended to not use the native proof structure of IAVL in its current form. Please refer to ics23 for IAVL proofs
Full Changelog: v0.19.2...v0.19.3