Skip to content

feat(transport): integrate turmoil for network simulation#212

Draft
Karrq wants to merge 6 commits intomainfrom
feature/turmoil-integration
Draft

feat(transport): integrate turmoil for network simulation#212
Karrq wants to merge 6 commits intomainfrom
feature/turmoil-integration

Conversation

@Karrq
Copy link
Copy Markdown
Contributor

@Karrq Karrq commented Apr 16, 2026

Add feature-gated turmoil integration that enables deterministic testing of distributed systems by replacing tokio's TCP types with turmoil's simulated networking when the 'turmoil' feature is enabled.

Changes:

  • Add turmoil 0.7 to workspace dependencies
  • Add 'turmoil' feature to msg-transport crate
  • Create net.rs module with type aliases for TcpListener/TcpStream
  • Update Tcp transport to use simulated networking with channel-based accept
  • Handle stats collection for both real and simulated connections
  • QUIC transport continues to use real UDP (documented limitation)

Usage: Enable the 'turmoil' feature in msg-transport to use simulated networking without any code changes to your application.

Disclaimer: 0% human

@Karrq Karrq requested a review from mempirate April 16, 2026 08:28
Karrq added 3 commits April 16, 2026 23:48
Add feature-gated turmoil integration that enables deterministic testing
of distributed systems by replacing tokio's TCP types with turmoil's
simulated networking when the 'turmoil' feature is enabled.

Changes:
- Add turmoil 0.7 to workspace dependencies
- Add 'turmoil' feature to msg-transport crate
- Create net.rs module with type aliases for TcpListener/TcpStream
- Update Tcp transport to use simulated networking with channel-based accept
- Handle stats collection for both real and simulated connections
- QUIC transport continues to use real UDP (documented limitation)

Usage: Enable the 'turmoil' feature in msg-transport to use simulated
networking without any code changes to your application.
@Karrq Karrq force-pushed the feature/turmoil-integration branch from a8e3a71 to 999683c Compare April 17, 2026 13:36
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