cosmos / iavl

Merkleized IAVL+ Tree implementation in Go
Apache License 2.0
413 stars 256 forks source link

changelog for v1 #848

Closed tac0turtle closed 8 months ago

tac0turtle commented 8 months ago

Summary by CodeRabbit

New Features:

Bug Fixes:

Refactor:

Tests:

Chores:

Breaking Changes:

coderabbitai[bot] commented 8 months ago

Walkthrough

This update introduces significant changes to the cosmos/iavl package, including new APIs, performance improvements, and bug fixes. It also modifies the handling of backporting patches in .mergify.yaml and updates the Makefile and README.md. The codebase has been refactored for better concurrency and error handling, and several tests have been updated to reflect these changes.

Changes

File(s) Summary
.mergify.yaml, README.md Removed backporting block for v0.21.x branch and updated information about the v0.21.x release.
CHANGELOG.md Documented improvements and bug fixes to the cosmos/iavl package, including new APIs, performance enhancements, and breaking changes.
Makefile Updated golangci_lint_cmd and added golangci_version. Removed tools target and updated lint and lint-fix targets.
batch.go, batch_test.go Modified BatchWithFlusher struct and updated related tests.
benchmarks/bench_test.go, export_test.go, proof_iavl_test.go, testutils_test.go, tree_random_test.go, tree_test.go Updated function calls to NewMutableTree and removed NewMutableTreeWithOpts.
immutable_tree.go, mutable_tree.go, nodedb.go, options.go Introduced optional parameters to NewImmutableTree and NewMutableTree. Updated Options struct and related functions.
import.go, import_test.go Updated Importer struct for better batch commit handling and added new benchmark function.
iterator.go, iterator_test.go Modified NewNodeIterator function and updated related tests.
migrate_test.go Updated legacyVersion value in TestLegacyReferenceNode function.
nodedb_test.go Updated function calls and added new test cases.
mutable_tree_test.go Updated test functions and minor changes to test cases.
unsaved_fast_iterator.go Updated UnsavedFastIterator struct and related functions for better concurrency and error handling.

Poem

As the leaves fall, so does the old code, 🍂🍁
Making way for the new, bold and gold. 💫
With each change, the project grows, 🌱
Like a rabbit hopping, on its toes. 🐇
Celebrate the season, celebrate the change, 🎉
In the world of code, nothing is strange. 💻
So here's to the updates, big and small, 🥂
To the cosmos/iavl package, standing tall. 🚀


Tips ### Chat with CodeRabbit Bot (`@coderabbitai`) - If you reply to a *review comment* from CodeRabbit, the bot will automatically respond. - To engage with CodeRabbit bot directly around the specific lines of code in the PR, mention @coderabbitai in your review comment - Note: Review comments are made on code diffs or files, not on the PR overview. - Add `@coderabbitai ignore` anywhere in the PR description to prevent this PR from being reviewed. ### CodeRabbit Commands (invoked as PR comments) - `@coderabbitai pause` to pause the reviews on a PR. - `@coderabbitai resume` to resume the paused reviews. - `@coderabbitai review` to trigger a review. This is useful when automatic reviews are disabled for the repository. - `@coderabbitai help` to get help. - `@coderabbitai resolve` to resolve all the CodeRabbit review comments. Note: For conversation with the bot, please use the review comments on code diffs or files. ### CodeRabbit Configration File (`.coderabbit.yaml`) - You can programmatically configure CodeRabbit by adding a `.coderabbit.yaml` file to the root of your repository. - The JSON schema for the configuration file is available [here](https://coderabbit.ai/integrations/coderabbit-overrides.json). - If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: `# yaml-language-server: $schema=https://coderabbit.ai/integrations/coderabbit-overrides.json`