Skip to content

Conversation

@chnlkw
Copy link
Contributor

@chnlkw chnlkw commented Sep 24, 2025

Version 0.2.0 Release with Enhanced UCX Support

Summary

This PR introduces significant improvements to the async-ucx library, upgrading it to version 0.2.0 with enhanced UCX 1.18 compatibility and new features. Key changes include:

  • Upgraded to UCX 1.18 with latest API compatibility
  • Added AsyncRead/AsyncWrite support for Tag and Stream (requires util feature flag)
  • Added connect_addr_vec function to Worker
  • Migrated to Rust 2021 edition
  • Improved error handling with Error to std::io::Error conversion
  • Refactored endpoint implementations to use modern NBX APIs
  • Enhanced documentation and examples

Detailed Changes

Core Improvements

  • Migrated from legacy UCX APIs to modern NBX (Non-Blocking eXtended) APIs for better performance and feature support
  • Added comprehensive error conversion from UCX errors to standard Rust io::Error types
  • Introduced RequestParam builder pattern for cleaner API parameter construction
  • Enhanced endpoint handling with new EndpointHandler type for safer endpoint management

New Features

  • Added util feature flag with AsyncRead/AsyncWrite trait implementations for Stream and Tag APIs
  • Added connect_addr_vec function to Worker for connecting to multiple addresses
  • Added reply_ep() method to AM messages for easier reply endpoint handling
  • Added handler() method to Endpoint for getting endpoint handlers
  • Reduced Active Message ID from u32 to u16 to match UCX specifications

Documentation & Examples

  • Significantly expanded README with comprehensive usage examples
  • Added quick start guide with basic usage example
  • Documented all feature flags (event, am, util)
  • Improved code examples for RMA, Stream, Tag, and benchmarking

Code Quality

  • Migrated to Rust 2021 edition
  • Updated dependencies to compatible versions
  • Improved code organization with better module structure
  • Added comprehensive tests for stream functionality
  • Fixed various bugs and issues throughout the codebase

Test Plan

  • Verified all existing tests pass
  • Tested new AsyncRead/AsyncWrite implementations
  • Validated NBX API migrations don't break functionality
  • Confirmed backward compatibility with existing code
  • Ran benchmark tests to ensure performance parity

@chnlkw chnlkw changed the title Dev Version 0.2.0 Release with Enhanced UCX Support Sep 24, 2025
@chnlkw chnlkw closed this Sep 24, 2025
@chnlkw
Copy link
Contributor Author

chnlkw commented Sep 24, 2025

duplicated with #9

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant