Skip to content

Releases: ItsDaveB/OgmiosDotnet

OgmiosDotnetClient v2.1.0

08 Jan 19:17
Compare
Choose a tag to compare

Release v2.1.0

I'm excited to announce the release of OgmiosDotnetClient v2.1.0, a major update that supports the Ogmios v6.10.0 release.

Compatibility

  • Designed to work seamlessly with Ogmios v6.10.0.

Full Changelog: v6.7.0-beta.1...v6.10.0-beta-1

OgmiosDotnetClient v2.0.0

10 Dec 20:59
a1ad29a
Compare
Choose a tag to compare

Release v2.0.0

I'm excited to announce the release of OgmiosDotnetClient v2.0.0, a major update that expands the library's capabilities and introduces a comprehensive example Worker application. This release builds upon the foundation of v1.0.0, offering enhanced features, improved performance, and tools to simplify integration with the Cardano blockchain.

Compatibility

  • Designed to work seamlessly with Ogmios v6.7.
  • Upgraded to target .NET 9.0, providing significant performance improvements and compatibility with the latest tools and libraries.

🚀 Features

Core Library Enhancements

  • Chain Synchronization:

    • Intersection Finding: Automatically locate a starting point for synchronization between the client and the blockchain.
    • Real-Time Updates:
      • Roll Forward: Process new blocks as they are added to the blockchain.
      • Roll Backward: Handle reorganizations by reverting to the last common point.
    • Pipelining: Optimize synchronization performance with multiple simultaneous requests, reducing latency and maximizing bandwidth.
    • Era-Specific Synchronization: Focus on era transitions or specific block milestones.
    • Rate Limiting: Control block requests using the MaxBlocksPerSecond configuration, preventing overloads.
    • Multiple Parallel Connections: Initiate connections from different starting points, improving synchronization times and resource efficiency.
  • Memory Pool Monitoring:

    • Acquire Mempool Snapshots: Use AcquireMempoolAsync to get consistent snapshots of the mempool for transaction querying.
    • Transaction Management:
      • Check for specific transactions with HasTransactionAsync.
      • Retrieve transactions sequentially using NextTransactionAsync.
    • Mempool Insights:
      • Query the size, transaction count, and capacity of the mempool using SizeOfMempoolAsync.
    • Release Resources: Free resources with ReleaseMempoolAsync when snapshots are no longer needed.
    • Graceful Shutdown: Cleanly close WebSocket connections with ShutdownAsync.

New in v2.0.0

Example Worker Application

  • Fully Functional Worker:
    • Demonstrates blockchain and mempool data processing.
    • Reads blocks and transactions starting from specified slots.
    • Saves processed data to an in-memory PostgreSQL database using Entity Framework Core, enabling easy replacement with other database providers.
  • Extensibility:
    • Modular design allows customization of blockchain and mempool event handling.
    • Easily configurable for additional database providers or external integrations.
  • Documentation:
    • Comprehensive setup and usage instructions available in the repository, with detailed guidance for extending the Worker application to meet specific use cases.
    • Worker Application Documentation

Technical Upgrades

  • .NET 9.0 Support:
    • Upgraded all projects to target .NET 9.0, unlocking improved performance and ensuring compatibility with the latest ecosystem.
    • Observed significant speed-ups in blockchain synchronization and mempool monitoring operations.

Demonstration

https://www.youtube.com/watch?v=vw6pFG0Q51s

OgmiosDotnetClient v1.0.0

19 Nov 20:19
Compare
Choose a tag to compare
Pre-release

v1.0.0

I'm thrilled to announce the first release of OgmiosDotnetClient, a .NET library that provides seamless integration with a Cardano Node via the Ogmios WebSocket interface. This release delivers powerful capabilities for both Chain Synchronization and Memory Pool Monitoring, offering developers a plug-and-play solution for Cardano integration in .NET applications.

Compatibility: This release is designed to work seamlessly with Ogmios v6.7.


🚀 Features

Chain Synchronization

  • Intersection Finding:
    • Automatically locate a starting point for synchronization between the client and the blockchain.
  • Real-Time Updates:
    • Roll Forward: Process new blocks as they are added to the blockchain.
    • Roll Backward: Handle reorganizations by reverting to the last common point.
  • Pipelining:
    • Optimize synchronization performance with multiple simultaneous requests, reducing latency and maximizing bandwidth.
  • Era-Specific Synchronization:
    • Synchronize from specific points of interest, such as era transitions or block milestones.
  • Rate Limiting:
    • New MaxBlocksPerSecond configuration option allows rate-limiting for block requests, preventing overloads when interacting with third-party services.
  • Multiple Parallel Connections:
    • Support for multiple connections from different blockchain starting points improves synchronization times and efficiently utilizes resources from third-party services.

Memory Pool Monitoring

  • Acquire Mempool Snapshots:
    • Use AcquireMempoolAsync to obtain a consistent snapshot of the mempool for querying transactions and mempool details.
  • Transaction Management:
    • Check for specific transactions using HasTransactionAsync.
    • Retrieve transactions sequentially with NextTransactionAsync.
  • Mempool Insights:
    • Query the current size, transaction count, and capacity of the mempool using SizeOfMempoolAsync.
  • Release Mempool:
    • Free resources by releasing the acquired snapshot using ReleaseMempoolAsync.
  • Graceful Shutdown:
    • Use ShutdownAsync to close WebSocket connections cleanly.

Thank you for trying OgmiosDotnetClient v1.0.0! Your feedback is invaluable, feel free to open issues or contribute to the project.