Skip to content

Conversation

@Rello
Copy link
Collaborator

@Rello Rello commented Jan 30, 2026

Motivation

  • Remove legacy automatic/relative bandwidth throttling logic which is no longer required and simplifies bandwidth handling to absolute limits only.
  • Ensure old/deprecated settings (AutoLimit and LegacyGlobalLimit) are normalized to NoLimit during load and when applied so upgrades don't reintroduce throttling.
  • Stop applying a default 75% automatic throttle and default to unlimited unless a manual limit is set.

Description

  • Remove relative/automatic bandwidth measurement and quota logic from BandwidthManager and simplify its interface/state to handle only absolute upload/download limits (changes in src/libsync/bandwidthmanager.cpp and src/libsync/bandwidthmanager.h).
  • Normalize deprecated auto/legacy settings to unlimited in account handling by persisting normalized values on load and mapping AutoLimit/LegacyGlobalLimit to NoLimit in setters (changes in src/gui/accountmanager.cpp, src/libsync/account.cpp, src/libsync/account.h).
  • Remove the automatic option from the network settings UI and update loadBWLimitSettings()/saveBWLimitSettings() to only expose ManualLimit and NoLimit (changes in src/gui/networksettings.cpp and src/gui/networksettings.ui).
  • Stop defaulting to a 75% automatic throttle in the sync engine by defaulting network limits to unlimited (0) in Folder::setDirtyNetworkLimits() (change in src/gui/folder.cpp).

Testing

  • No automated tests were run for this change.

Codex Task

@Rello Rello self-assigned this Jan 30, 2026
@Rello Rello marked this pull request as draft January 30, 2026 10:57
Copy link
Collaborator

@mgallien mgallien left a comment

Choose a reason for hiding this comment

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

one small comment


private:
// for switching between absolute and relative bw limiting
QTimer _switchingTimer;
Copy link
Collaborator

@mgallien mgallien Jan 30, 2026

Choose a reason for hiding this comment

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

if we are going to trust the comment, this timer should possibly be removed also

@mgallien mgallien force-pushed the codex/remove-automatic-bandwidth-limiter branch from a6f583a to 44c6a20 Compare January 30, 2026 12:55
@github-actions
Copy link

Artifact containing the AppImage: nextcloud-appimage-pr-9400.zip

Digest: sha256:7d958ccad11ec69826ad5a1fe1a3720726490c5d4429ec410681dc2a5bad5e81

To test this change/fix you can download the above artifact file, unzip it, and run it.

Please make sure to quit your existing Nextcloud app and backup your data.

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

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants