Skip to content

Conversation

@Menelion
Copy link
Contributor

Add built-in bandwidth throttling support for sync operations:

  • Add MaxBytesPerSecond property to SyncOptions for configuring maximum transfer rate (null/0 = unlimited)
  • Create ThrottledStream class that wraps streams and limits read/write speeds using a time-based throttling algorithm
  • Update SyncEngine to wrap file streams with ThrottledStream when bandwidth limiting is enabled
  • Add comprehensive unit tests for ThrottledStream
  • Add unit tests for MaxBytesPerSecond in SyncOptionsTests
  • Update CLAUDE.md to mark this v1.0 feature as completed

This feature is useful for desktop clients like Nimbus to prevent network saturation on shared connections.

Add built-in bandwidth throttling support for sync operations:

- Add `MaxBytesPerSecond` property to `SyncOptions` for configuring
  maximum transfer rate (null/0 = unlimited)
- Create `ThrottledStream` class that wraps streams and limits
  read/write speeds using a time-based throttling algorithm
- Update `SyncEngine` to wrap file streams with `ThrottledStream`
  when bandwidth limiting is enabled
- Add comprehensive unit tests for `ThrottledStream`
- Add unit tests for `MaxBytesPerSecond` in `SyncOptionsTests`
- Update CLAUDE.md to mark this v1.0 feature as completed

This feature is useful for desktop clients like Nimbus to prevent
network saturation on shared connections.
@Menelion Menelion added the enhancement Improvement to an existing feature label Jan 14, 2026
@Menelion Menelion merged commit bacdd9c into master Jan 14, 2026
1 check passed
@Menelion Menelion deleted the claude/implement-missing-feature-HbgaJ branch January 14, 2026 17:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement Improvement to an existing feature

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants