You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
GTC-5 wires the user-facing intra-file range parallelism preset
into the GUI download path. Settings > Transfers gains a new
"Download Segments per File" select (Auto / 2 / 4 / 8 / 16) right
after Concurrent Transfers, persisted in the app_settings vault
entry under `downloadSegments` (default 0 = Auto).
The resolved value is forwarded to `provider_download_file` and
`provider_download_folder` via the existing `download_segments:
Option<u32>` parameter that the backend already accepts (see
provider_commands.rs:911 / :1281 / :1112 eligibility gate). Auto
maps to `undefined` on the frontend, which the Rust handler
treats as the legacy single-stream behaviour.
Scope:
- IN: provider_download_file, provider_download_folder
(provider transport path: SFTP, S3, HTTP-based cloud).
- OUT: rclone_crypt_provider_download_file / _folder. The
crypt overlay reads the full ciphertext via download_to_bytes
before decrypting in memory; it does not use provider.download()
streaming, so the segmented helper would require a separate
refactor (segmented download to .aerotmp, then streaming
decrypt). Intentionally deferred for a later slice.
- OUT: download_files_batch (FTP GUI batch on FtpDownloadExecutor)
stays `download_segments: None` per the no-double-pool invariant
already documented in lib.rs:4003 and the three sibling OAuth
fallback sites.
Translations: 4 new keys (settings.downloadSegments,
downloadSegmentsAuto, downloadSegmentsN, downloadSegmentsDesc) in
all 47 locales, npm run i18n:validate clean (0 warnings, 0
[NEEDS TRANSLATION]). `{n}` placeholder preserved literally;
Armenian uses native Mesropian script.
Validation:
- npm run typecheck: green.
- cargo check: green (no Rust changes).
- Live SFTP @ axpbuntu, 64 MiB:
seg=1 (Auto) 34.05s vs seg=4 11.41s, speedup 2.98x,
byte-identical YES
(cargo test --test integration_gtc_wan_segmented
gtc_gui_sftp_segmented_byte_identical_vs_single_stream
-- --ignored --nocapture --test-threads=1).
Co-Authored-By: aeroftp[bot] <aeroftp[bot]@users.noreply.github.com>
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Copy file name to clipboardExpand all lines: src/i18n/locales/bg.json
+5-1Lines changed: 5 additions & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -998,7 +998,11 @@
998
998
"bridgeUnsupportedProto": "{protocol} не се поддържа от {app}",
999
999
"bridgeSecretFull": "Идентификационните данни се възстановяват и повторно се шифроват в хранилището на AeroFTP.",
1000
1000
"bridgeSecretLimited": "Само част от идентификационните данни може да бъде възстановена; може да се наложи да въведете отново някои тайни.",
1001
-
"bridgeSecretMetadata": "Само метаданни за връзката: тайните остават в ключодържателя/агента на {app} и трябва да бъдат въведени отново."
1001
+
"bridgeSecretMetadata": "Само метаданни за връзката: тайните остават в ключодържателя/агента на {app} и трябва да бъдат въведени отново.",
1002
+
"downloadSegments": "Сегменти за изтегляне на файл",
1003
+
"downloadSegmentsAuto": "Auto (единичен поток)",
1004
+
"downloadSegmentsN": "{n} сегмента на файл",
1005
+
"downloadSegmentsDesc": "Разделя всяко изтегляне на паралелни байтови диапазони. Auto запазва текущото поведение с единичен поток. Действа при доставчици, които поддържат range заявки (SFTP, S3, HTTP) и при файлове, достатъчно големи, за да има полза."
"downloadSegmentsDesc": "প্রতিটি ডাউনলোডকে সমান্তরাল বাইট রেঞ্জে ভাগ করুন। Auto বর্তমান একক-স্ট্রিম আচরণ বজায় রাখে। যেসব প্রোভাইডার রেঞ্জ রিকোয়েস্ট সমর্থন করে (SFTP, S3, HTTP) এবং ফাইল যথেষ্ট বড় হলে কার্যকর।"
Copy file name to clipboardExpand all lines: src/i18n/locales/ca.json
+5-1Lines changed: 5 additions & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -998,7 +998,11 @@
998
998
"bridgeUnsupportedProto": "{protocol} no és compatible amb {app}",
999
999
"bridgeSecretFull": "Les credencials es recuperen i es tornen a xifrar al vault d'AeroFTP.",
1000
1000
"bridgeSecretLimited": "Només es pot recuperar una part de les credencials; pot ser que hagis de tornar a introduir alguns secrets.",
1001
-
"bridgeSecretMetadata": "Només metadades de connexió: els secrets es queden al clauer/agent de {app} i s'han de tornar a introduir."
1001
+
"bridgeSecretMetadata": "Només metadades de connexió: els secrets es queden al clauer/agent de {app} i s'han de tornar a introduir.",
1002
+
"downloadSegments": "Segments de descàrrega per fitxer",
1003
+
"downloadSegmentsAuto": "Auto (flux únic)",
1004
+
"downloadSegmentsN": "{n} segments per fitxer",
1005
+
"downloadSegmentsDesc": "Divideix cada descàrrega en intervals de bytes paral·lels. Auto manté el comportament actual de flux únic. Efectiu en proveïdors compatibles amb sol·licituds de rang (SFTP, S3, HTTP) per a fitxers prou grans com per beneficiar-se'n."
Copy file name to clipboardExpand all lines: src/i18n/locales/cs.json
+5-1Lines changed: 5 additions & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -998,7 +998,11 @@
998
998
"bridgeUnsupportedProto": "{protocol} není podporován v {app}",
999
999
"bridgeSecretFull": "Přihlašovací údaje se obnoví a znovu zašifrují do trezoru AeroFTP.",
1000
1000
"bridgeSecretLimited": "Lze obnovit jen část přihlašovacích údajů; některá tajemství bude možná nutné zadat znovu.",
1001
-
"bridgeSecretMetadata": "Pouze metadata připojení: tajemství zůstávají v klíčence/agentovi {app} a musí být zadána znovu."
1001
+
"bridgeSecretMetadata": "Pouze metadata připojení: tajemství zůstávají v klíčence/agentovi {app} a musí být zadána znovu.",
1002
+
"downloadSegments": "Segmenty stahování na soubor",
1003
+
"downloadSegmentsAuto": "Auto (jeden proud)",
1004
+
"downloadSegmentsN": "{n} segmentů na soubor",
1005
+
"downloadSegmentsDesc": "Rozdělí každé stahování na paralelní bajtové rozsahy. Auto zachovává současné chování s jedním proudem. Funguje u poskytovatelů, kteří podporují požadavky na rozsah (SFTP, S3, HTTP), a u souborů dostatečně velkých, aby z toho měly užitek."
"downloadSegmentsDesc": "Rhannu pob lawrlwythiad yn ystodau beit cyfochrog. Mae Auto yn cadw'r ymddygiad un ffrwd presennol. Effeithiol gyda darparwyr sy'n cefnogi ceisiadau ystod (SFTP, S3, HTTP) ar gyfer ffeiliau digon mawr i elwa."
Copy file name to clipboardExpand all lines: src/i18n/locales/da.json
+5-1Lines changed: 5 additions & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -998,7 +998,11 @@
998
998
"bridgeUnsupportedProto": "{protocol} understøttes ikke af {app}",
999
999
"bridgeSecretFull": "Loginoplysningerne gendannes og krypteres på ny i AeroFTP-vaulten.",
1000
1000
"bridgeSecretLimited": "Kun en del af loginoplysningerne kan gendannes; du skal muligvis indtaste nogle hemmeligheder igen.",
1001
-
"bridgeSecretMetadata": "Kun forbindelsesmetadata: hemmelighederne forbliver i {app}'s nøglering/agent og skal indtastes igen."
1001
+
"bridgeSecretMetadata": "Kun forbindelsesmetadata: hemmelighederne forbliver i {app}'s nøglering/agent og skal indtastes igen.",
1002
+
"downloadSegments": "Download-segmenter pr. fil",
1003
+
"downloadSegmentsAuto": "Auto (enkelt stream)",
1004
+
"downloadSegmentsN": "{n} segmenter pr. fil",
1005
+
"downloadSegmentsDesc": "Opdel hver download i parallelle byte-intervaller. Auto bevarer den nuværende adfærd med enkelt stream. Virker hos udbydere, der understøtter range-anmodninger (SFTP, S3, HTTP), for filer der er store nok til at have gavn af det."
"downloadSegmentsDesc": "Teilt jeden Download in parallele Byte-Bereiche auf. Auto behält das bisherige Verhalten mit einem einzelnen Stream bei. Wirksam bei Anbietern, die Range-Anfragen unterstützen (SFTP, S3, HTTP), und bei Dateien, die groß genug sind, um davon zu profitieren."
0 commit comments