Skip to content

Comments

Feature/init in ray#54

Merged
reiase merged 15 commits intomainfrom
feature/init_in_ray
Feb 23, 2026
Merged

Feature/init in ray#54
reiase merged 15 commits intomainfrom
feature/init_in_ray

Conversation

@reiase
Copy link
Contributor

@reiase reiase commented Feb 23, 2026

Overview:

Details:

Where should the reviewer start?

Related Issues: (use one of the action keywords Closes / Fixes / Resolves / Relates to)

  • closes GitHub issue: #xxx

- Updated the documentation for the Python API, improving clarity and consistency in naming conventions and examples.
- Introduced new functions for mounting and unmounting Python objects to the Pulsing network, facilitating better integration with Ray.
- Enhanced the `resolve` function to support a timeout parameter, allowing for retries until an actor name appears or the timeout expires.
- Added a new `pulsing.examples` module with built-in examples, showcasing the capabilities of Pulsing in a distributed environment.
- Implemented tests for the new Ray integration features, ensuring robust functionality and error handling across various scenarios.
- Streamlined the Python API by consolidating actor initialization and lifecycle management, emphasizing the use of `await pul.init()` and `await pul.shutdown()`.
- Updated examples and documentation to reflect the new API structure, enhancing clarity and usability for users transitioning from Ray.
- Introduced typed and untyped proxy methods (`as_type` and `as_any`) for better actor reference handling.
- Removed deprecated Ray-compatible API references, focusing on the native async API for improved performance and simplicity.
- Enhanced examples to demonstrate the new features and best practices in actor management and communication.
- Added "Complete Reference" to the navigation structure in mkdocs for better accessibility to API documentation.
- Updated the API reference section to include new global async API examples, emphasizing the use of `await pul.init()` and `await pul.shutdown()`.
- Enhanced clarity in the documentation by refining the descriptions and examples related to actor management and communication.
- Improved consistency in naming conventions across English and Chinese documentation to facilitate user understanding.
- Updated the documentation to reflect the new Queue and Topic APIs, emphasizing the use of `pul.queue` and `pul.topic` for data handling.
- Simplified examples across various documentation files to demonstrate the new API structure, enhancing clarity for users.
- Removed deprecated references to `system.queue` and `system.topic`, ensuring consistency in the API usage.
- Improved the organization of the queue and topic sections in the guides and API references for better accessibility and understanding.
- Introduced a new document detailing the Cluster Networking features, explaining how to form and operate a Pulsing cluster with three distinct networking modes.
- Updated mkdocs configuration to include the new Cluster Networking section in both English and Chinese, enhancing accessibility for users.
- Improved navigation structure in mkdocs to reflect the addition of Cluster Networking, ensuring users can easily find relevant documentation.
- Adjusted existing architecture documentation to include links to the new Cluster Networking document, providing a comprehensive overview of the system's design.
- Changed repository URLs from "reiase" to "DeepLink-org" across multiple files, ensuring consistency in project references.
- Updated the project description to emphasize Pulsing as a backbone for distributed AI systems, highlighting its features such as streaming support and zero dependencies.
- Enhanced the README and documentation to provide clearer insights into Pulsing's capabilities and use cases, improving accessibility for users.
- Added an overview document to summarize Pulsing's functionality and target audience, facilitating better understanding for new users.
- Updated import statements in various benchmark scripts to utilize the new `pulsing.streaming` and `pulsing.core` modules, ensuring consistency and clarity in the codebase.
- Removed deprecated references to `pulsing.actor` and `pulsing.queue`, streamlining the API usage in benchmarks.
- Introduced a new `pulsing.integrations` module to better organize third-party integrations and improve overall project structure.
- Enhanced documentation and comments to reflect the changes in module organization, aiding user understanding and accessibility.
- Updated import statements across various documentation files to reflect the new module structure, replacing `pulsing.actor` and `pulsing.queue` with `pulsing.core` and `pulsing.streaming`.
- Enhanced examples and guides to demonstrate the updated import paths, ensuring consistency and clarity for users.
- Improved documentation for actor and queue functionalities, emphasizing the new organization under `pulsing.integrations` and `pulsing.serving`.
- Streamlined references to actor management and queue operations, aiding user understanding and accessibility.
…ilities

- Introduced an optional zerocopy descriptor protocol to bypass pickle serialization for eligible Python objects, improving performance for large payloads.
- Implemented automatic stream transfer for large payloads exceeding a specified threshold, allowing for efficient data handling in chunks.
- Updated the `ZeroCopyDescriptor` class to manage metadata and buffer information, facilitating seamless integration with existing APIs.
- Enhanced the `StorageBackend` interface with new tensor-native methods for better data management.
- Added comprehensive tests to validate the new zerocopy functionality and ensure data integrity during transmission.
- Updated documentation to reflect the new features and usage guidelines for the zerocopy protocol, improving clarity for users.
…tion

- Included `pytest-cov` in the development dependencies for improved test coverage reporting.
- Updated comments and documentation in `test_receive_error_behavior.py` for clarity and consistency.
- Added new test files for agent runtime lifecycle, CLI commands, and streaming backends, enhancing overall test coverage and organization.
- Improved existing tests to ensure better readability and maintainability, aligning with recent refactoring efforts.
Copy link
Contributor

@github-advanced-security github-advanced-security bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

CodeQL found more than 20 potential problems in the proposed changes. Check the Files changed tab for more details.

@codecov-commenter
Copy link

codecov-commenter commented Feb 23, 2026

Codecov Report

❌ Patch coverage is 31.48855% with 359 lines in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
python/pulsing/integrations/ray.py 0.00% 75 Missing ⚠️
python/pulsing/core/remote.py 50.69% 71 Missing ⚠️
python/pulsing/examples/counting_game.py 0.00% 67 Missing ⚠️
python/pulsing/streaming/storage.py 47.74% 58 Missing ⚠️
python/pulsing/cli/__main__.py 6.45% 29 Missing ⚠️
python/pulsing/streaming/backend.py 20.68% 23 Missing ⚠️
python/pulsing/examples/__init__.py 0.00% 17 Missing ⚠️
python/pulsing/core/__init__.py 57.14% 3 Missing ⚠️
python/pulsing/integrations/autogen/runtime.py 0.00% 2 Missing ⚠️
python/pulsing/integrations/langgraph/executor.py 0.00% 2 Missing ⚠️
... and 10 more
Files with missing lines Coverage Δ
crates/pulsing-actor/src/supervision.rs 55.00% <ø> (ø)
crates/pulsing-actor/src/system/config.rs 83.78% <ø> (ø)
crates/pulsing-actor/src/system/runtime.rs 63.04% <ø> (ø)
crates/pulsing-actor/src/transport/http2/client.rs 64.81% <ø> (ø)
python/pulsing/agent/__init__.py 100.00% <ø> (ø)
python/pulsing/agent/base.py 94.59% <100.00%> (ø)
python/pulsing/agent/runtime.py 100.00% <100.00%> (ø)
python/pulsing/cli/actor_loader.py 23.80% <100.00%> (ø)
python/pulsing/core/helpers.py 16.66% <ø> (ø)
python/pulsing/core/messaging.py 100.00% <100.00%> (ø)
... and 35 more

... and 1 file with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

… consistent environment execution during CI tests
…detection and error handling

- Updated the CI test command to check for available Python interpreters instead of relying on `uv run`, ensuring compatibility with various environments.
- Enhanced error messaging to inform users when no Python interpreter is found, improving usability during CI processes.
- Updated the assertion in `test_concurrent_init_without_driver` to store the popped seed in a variable before checking its presence in the addresses, improving code readability and maintainability.
@reiase reiase merged commit 248f264 into main Feb 23, 2026
22 checks passed
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.

2 participants