Skip to content

Releases: BreadchainCoop/commonware-avs-node

v0.1.1

30 Sep 18:22
c92941c

Choose a tag to compare

What's Changed

Full Changelog: v0.1.0...v0.1.1

v0.1.0

04 Sep 20:18

Choose a tag to compare

Release v0.1.0: Major Refactor and Architecture Improvements

🚀 Release v0.1.0

This release represents a major refactoring of the Commonware AVS Node, emphasizing better code organization, testing, and more generic, reusable components.

🏗️ Major Architecture Changes

Core Refactoring

  • Generic Contributor Interface: Introduced Contribute and ContributorBase traits for flexible contributor implementations
  • Eliminated Code Duplication: Consolidated AggregatingContributor and Contributor into a single, more flexible implementation
  • Modular Component Architecture: Reorganized contributor code into dedicated src/contributor/ module with clear separation of concerns
  • Trait-Based Design: Implemented generic interfaces for better extensibility and testing

New Component Structure

  • Introduced dedicated modules for:
    • contributor/traits.rs: Core contributor interfaces and contracts
    • contributor/types.rs: Common data structures and types
    • contributor/tests/: Test suite with mock implementations
    • handlers/contributor.rs: Concrete contributor implementation

✨ Key Improvements

Testing & Quality

  • Added unit test coverage for all contributor traits
  • Implemented mock implementations (MockContributor, MockSender, MockReceiver)
  • Added async testing support with tokio integration
  • Improved test organization with dedicated test modules

Developer Experience

  • Better code organization with clear module boundaries
  • Improved trait definitions with associated types for type safety
  • Enhanced error handling and consistent Result types
  • Cleaner import structure and module exports

Code Quality

  • Fixed all clippy warnings and enforced strict linting rules
  • Improved code formatting and consistency
  • Applied Rust idioms and best practices throughout
  • Better encapsulation with public getter methods

🔧 Technical Details

New Traits

  • ContributorBase: Defines common contributor functionality with associated types for PublicKey, Signer, and Signature
  • Contribute: Extends ContributorBase with core contributor operations including construction and execution

Removed Components

  • Deprecated AggregatingContributor in favor of unified Contributor
  • Eliminated duplicate code between different contributor implementations
  • Cleaned up legacy base contributor patterns

📝 Breaking Changes

  • Complete restructure of contributor module organization - imports will need updating
  • Removed AggregatingContributor struct - functionality merged into main Contributor
  • All contributor implementations must now implement Contribute and ContributorBase traits
  • Updated import paths for contributor-related functionality

v0.0.1

08 Aug 22:24
f0f809b

Choose a tag to compare

What's Changed

New Contributors

Full Changelog: https://github.com/BreadchainCoop/commonware-avs-node/commits/v0.0.1