github nextcloud/desktop v3.17.0
Release 3.17.0

latest release: v3.17.1
23 days ago

What's Changed

  • fix rounded corners in the call notification by @nilsding in #7849
  • Fix looks of share note text field by @nilsding in #7854
  • provide consistent version info including human readable version by @mgallien in #7857
  • chore(i18n): Remove blank by @rakekniven in #7863
  • Provide macOS VFS sync states in tray window GUI by @claucambra in #7865
  • vfs: fix root folder detection regression by @nilsding in #7877
  • Hide update channels options when needed. by @camilasan in #7869
  • Small improvements in Folder. by @camilasan in #7880
  • Feature/automate windows file name compatibility by @mgallien in #7850
  • Change three dots to an ellipsis by @Valdnet in #7886
  • Check if folder exists before deleting sync db and VFS sync root conection. by @camilasan in #7881
  • prevent infinite sync loop: delay retry after many errors by @mgallien in #7876
  • gui/wizard: Integrate macOS VFS (File Provider) configuration into account wizard by @claucambra in #7875
  • improve ToS handling by @nilsding in #7856
  • Remove file from bulk upload black list only when upload succeeded. by @camilasan in #5998
  • fixed html formatting on encrypted warning message by @Pabarino in #7894
  • FolderStatusModel: only create a single QFileIconProvider object by @nilsding in #7899
  • UserStatusSelector: set focusPolicy on accept button by @nilsding in #7906
  • Bugfix/delete read only remnants by @mgallien in #7908
  • Added plural forms handling correction to notification message by @Pabarino in #7904
  • Added space between sentences by @Pabarino in #7898
  • Removed deprecated Qt macros/functions by @Pabarino in #7905
  • chore(i18n): Use correct plural syntax by @rakekniven in #7916
  • Improve UI of settings by @camilasan in #7902
  • do not display encrypt action for external folders by @nilsding in #7920
  • craft: Use Qt 6.8.2 by @claucambra in #7918
  • Added customize option for sync interval by @Pabarino in #7926
  • don't remove "needs info" label from maintainers by @nilsding in #7934
  • Increased default limit of free space and critical free space by @Pabarino in #7927
  • Added hiding remotePollInterval selector in settings if notify push available by @Pabarino in #7941
  • gui/tray: Do not generate JPEG images in async image response for macOS by @claucambra in #7943
  • gui/tray: Remove unused thumbnailjob class by @claucambra in #7942
  • when deleting a remote locked file, provide needed lock headers by @mgallien in #7949
  • gui/macOS: Remove "advanced settings" section for macOS VFS settings by @claucambra in #7928
  • update AppImage builds to Qt 6.8.2 by @nilsding in #7950
  • gui/tray: Fix some tray view papercuts by @claucambra in #7937
  • gui: do not allow MainWindow to be resized by @nilsding in #7956
  • Revert "gui: do not allow MainWindow to be resized" by @nilsding in #7961
  • Remove aditional text when error occurs. by @camilasan in #7964
  • gui/macOS: Fix emitted signal in file provider sync status GUI component by @claucambra in #7959
  • make use of the new x-nc-skip-trashbin header by @nilsding in #7973
  • always set a user if we got asked for one by @nilsding in #7974
  • remove unused capture of this in one lambda by @mgallien in #7983
  • mac-crafter: Add ability to produce DMGs by @claucambra in #7844
  • make version.cmake more readable by @Rello in #7930
  • add CODEOWNERS file by @nilsding in #7990
  • fix setups that use basic auth by @nilsding in #7989
  • Call deleteLater only when writeJob is not a nullptr. by @camilasan in #7999
  • Bugfix/do not warn about invalid files in not synced folders by @mgallien in #7977
  • Add option to disable virtual files syncing on Windows. by @camilasan in #7933
  • use our own Craft cache for macOS builds by @nilsding in #7987
  • Fix version detection by the Ubuntu/Debian build script by @ivaradi in #7997
  • gui/tray: Hide resume all menu item when no local sync folders are configured by @claucambra in #7992
  • Fix build when BUILD_WEBENGINE=OFF by @hefee in #7988
  • display reshares in sharing dialog by @nilsding in #7971
  • gui/macOS: Do not log account detail-related messages that were not sent on dead file provider socket by @claucambra in #8009
  • ensure user receiving an encrypted share maintain proper state by @mgallien in #8012
  • remove gcc and clang build checks by @mgallien in #8016
  • Ci/clear deprecated lambda capture warnings by @mgallien in #7984
  • gui/macOS: Avoid UB in edge cases where there is no matching accountstate for a domain by @claucambra in #8027
  • Modernise ignorelisttablewidget code by @claucambra in #5681
  • gui: Remove now unneeded jpeg-related workarounds for macOS by @claucambra in #8022
  • Ci/fix windows build by @mgallien in #8034
  • gui: fix dark mode change on Windows 10 with universal style by @nilsding in #8033
  • skip single test or whole test file for macOS: they are broken by @mgallien in #8038
  • Bugfix/input pin title too wide by @mgallien in #8041
  • explicitly set colours for header items by @nilsding in #8045
  • Bugfix/highlight too bright appimage by @mgallien in #8050
  • use standard way to find the checkum type and really send it to server by @mgallien in #8052
  • fix Windows build by @nilsding in #8066
  • use our own craft cache on windows by @mgallien in #8067
  • gui/macOS: Do not assume accountState will always be valid in socket controller by @claucambra in #8053
  • Add systemd user service by @Tachi107 in #3510
  • shell_integration/macOS/FileProviderUIExt: Add "free up space" menu entry by @claucambra in #8073
  • Bump cpp-linter/cpp-linter-action from 2.13.4 to 2.14.0 by @dependabot[bot] in #8072
  • gui/macOS: Fix broken file provider domain progress reporting in settings window by @claucambra in #8076
  • gui/tray: change the status icon background colour again by @nilsding in #8077
  • set CFBundleDevelopmentRegion to "en" and set CFBundleAllowMixedLocalizations by @nilsding in #8081
  • gui/macOS: Fix memory issues in Objective-C++ code for FileProvider support by @claucambra in #8080
  • gui/macOS: Use less technical language in FileProvider settings views by @claucambra in #8087
  • gui/macOS: Sort materialised files by size by @claucambra in #8088
  • Fix Install Instructions by @alexknop in #8086
  • Ci/update actions by @mgallien in #8035
  • shell_integration/macOS/FileProviderExt: Do not report enumeration-related sync state by @claucambra in #8056
  • build(deps): bump actions/setup-python from 5.4.0 to 5.5.0 by @dependabot[bot] in #8101
  • build(deps): bump actions/cache from 4.2.2 to 4.2.3 by @dependabot[bot] in #8099
  • build(deps): bump actions/upload-artifact from 4.6.1 to 4.6.2 by @dependabot[bot] in #8100
  • feat(mac-crafter): Improve readme by @claucambra in #8106
  • feat: build Windows installer with translations embedded by @nilsding in #8103
  • fix(mac): bump deployment target to 12.0 by @nilsding in #8114
  • fix(gui): remove ignored file notifications from Activity list by @nilsding in #8109
  • fix(mac-crafter): Work around broken consecutive shell integration builds by @claucambra in #8107
  • docs(reuse): Add SPDX header and license files by @AndyScherzinger in #8119
  • remove costly availability check that is never used by @mgallien in #8118
  • Bugfix/delete errors by @mgallien in #8120
  • fix crash within FolderStatusModelTest by @mgallien in #8122
  • fix: move array to correct value in dict by @nilsding in #8121
  • feat: allow overriding the language through the configuration by @nilsding in #8096
  • remove bogus check that tried to check for existing case clash conflict by @mgallien in #8128
  • stop using QFile api to delete a single local file by @mgallien in #8127
  • fix: try to correct mtime on upsyncs by @nilsding in #8095
  • Bugfix/use newer bulk upload checksum header by @mgallien in #8094
  • Update CONTRIBUTING.md by @camilasan in #8070
  • Bugfix/slow bulk upload by @mgallien in #8048
  • disable use of bulk upload for small files by @mgallien in #8140
  • simplify deletions of invalid read-only items: do not interrupt sync by @mgallien in #8145
  • chore(Flow2Auth): modernize fetchNewToken. by @camilasan in #8098
  • fix(PinState): don't trigger sync when file's PinState changed to Unspecified. by @camilasan in #8111
  • Exclude NavigationPaneHelper from non-Windows compile by @claucambra in #5288
  • Use AccountPtr in Account signals instead of raw pointer by @claucambra in #5543
  • fix(theme): correct dark/light mode check on Win10 by @nilsding in #8156
  • fix(msi): allow custom installation directory by @nilsding in #8160
  • fix(migration): import proxy and general settings from legacy config. by @camilasan in #8036
  • use specific revision for KDE blueprints that matches the craft cache by @nilsding in #8168
  • Migrate more license header to SPDX by @AndyScherzinger in #8175
  • Bugfix/read only windows folders by @mgallien in #8182
  • pin Craft revision to a specific commit by @nilsding in #8190
  • Bugfix/filesystem remove file not working by @mgallien in #8189
  • revert to QFile::remove to remove single files by @mgallien in #8195
  • Bugfix/do not crash when propagating changes with move or rename by @mgallien in #8193
  • Translation adjustments by @nilsding in #8152
  • fix(gui): handle invalid file name edge case on Windows by @nilsding in #8181
  • fix(gui): Fix set but unused warning in switch statement for sync status compute by @claucambra in #8206
  • fix(assert): remove runtime assert that could crash production builds by @mgallien in #8200
  • Migrate more headers to SPDX by @AndyScherzinger in #8210
  • fix(gui): resize sharee search results list dependent on required space by @nilsding in #8201
  • Include server path to windows explorer shortcut by @SnejPro in #8135
  • fix(filesystem): ensure we set a file read-only or read-write on Windows by @mgallien in #8209
  • Migrate to SPDX header by @AndyScherzinger in #8218
  • chore(deps): Bump actions/setup-python from 5.5.0 to 5.6.0 by @dependabot[bot] in #8219
  • Delete old unused file for taiwanese by @rakekniven in #8229
  • fix(tray): align user status and server url in all platforms. by @camilasan in #7969
  • gui: rename Circle=>Team by @Rello in #8223
  • revert: remove duplicated code when copying legacy config to new path. by @camilasan in #8227
  • fix(macOS): Fix prompting of user for permission to access "other" apps' data by @claucambra in #8220
  • fix(appimage): move VFS plugins to AppDir by @nilsding in #8217
  • feat(FileProvider): Adopt NextcloudFileProviderKit 2.1 by @claucambra in #8136
  • Migrate to SPDX header by @AndyScherzinger in #8226
  • Migrate to SPDX header by @AndyScherzinger in #8234
  • docs(reuse): Migrate to SPDX by @AndyScherzinger in #8242
  • fix(quota): throw error only for files that exceed the quota. by @camilasan in #8191
  • Improve configuration-related e2ee wording by @wrobelda in #8165
  • 🎉 REUSE compliance by @AndyScherzinger in #8245
  • chore: remove never used crashreporter by @nilsding in #8251
  • fix(rename): avoid failing hard when rename is rejected by server by @mgallien in #8240
  • fix(readonly): enable MOVE rollback when folder is read-only by @mgallien in #8241
  • fix(readonly): apply ACL also to files inside read-only folders by @mgallien in #8243
  • fix(gui/macOS): Fix default value for File Provider fast sync enablement setting by @claucambra in #8236
  • fix(UI): updater filename-space error message by @Rello in #8256
  • fix(readonly): use native separator in paths before calling windows API by @mgallien in #8246
  • fix(shell_integration/macOS/FileProviderUIExt): Properly mark action as complete when evicting item by @claucambra in #8232
  • fix(shell_integration/macOS/FileProviderExt): Correctly build NSFileProviderErrors by @claucambra in #8238
  • feat(gui/macOS): Present explanatory message after enabling macOS VFS for an account by @claucambra in #8247
  • fix(shell_integration/macOS/FileProviderExt): Ensure user agent matches desktop client core by @claucambra in #8248
  • fix(gui/macOS): Add required availability checks around typeAndCreator access for NSFileProviderItem wrapper by @claucambra in #8250
  • gui: add a "Yes to all" button when resolving multiple conflicts at once by @nilsding in #8044
  • fix(migration): migrate general network settings. by @camilasan in #8228
  • cloudproviders elide text for recent files activity submenu by @mgallien in #8264
  • Bugfix/version windows integration improve install by @mgallien in #8178
  • ci: use Xcode 16.2 for macOS workflow by @nilsding in #8266
  • ci: use new craft cache for 3.17.x, bump Qt to 6.8.3 by @nilsding in #8257
  • Delete doc directory by @Rello in #7932
  • feat(shell_integration/macOS/FileProviderExt): Add option to disable deletion of items in Trash by @claucambra in #8237
  • feat(shell_integration/macOS/FileProviderExt): Add ability to mark files/folders as "Always keep downloaded" in macOS VFS by @claucambra in #8270
  • feat(gui/macOS): Integrate client ignore list with File Provider Extension by @claucambra in #8260
  • fix(ci): Upgrade macOS actions to Sequoia and Xcode 16.2 by @claucambra in #8273
  • fix(quota): do not prevent upload when quota info are not available by @mgallien in #8279
  • feat(mac-crafter): retry code-signing attempts by @nilsding in #8277
  • fix(AppImage): bundle client translations by @nilsding in #8280
  • chore(deps): Bump platisd/clang-tidy-pr-comments from 1.6.1 to 1.7.0 by @dependabot[bot] in #8288
  • fix(gui): disable DirectWrite on Win10 versions before 1809 by @nilsding in #8286
  • fix(delete): fix move to trash in read-only folders by @mgallien in #8276
  • feat(generalsettings): add option to restore default update channel. by @camilasan in #7967
  • fix(encryption): remove currently broken certificate hash handling by @mgallien in #8295
  • Implement BulkPropagateDownloadJob for virtual files. by @allexzander in #6750
  • fix(permissions): handle properly CanRead permission from server by @mgallien in #8297
  • fix(filesystem): only change folder permissions if required by @nilsding in #8290
  • chore(i18n): Aligned spelling of "cannot" by @rakekniven in #8303
  • fix(generalsettings): call setAndCheckNewUpdateChannel when user changes update channel. by @camilasan in #8304
  • feat(shell_integration/macOS/FileProviderExt): Adapt to async stored item fetching from NCFPK 2.1 by @claucambra in #8300
  • fix(gui/SslErrorDialog): implements parsing the Strict-Transport-Security header using QNetworkAccessManager by @kubrickfr in #8302
  • fix(ui): limit sync folder selection to dirs only by @Rello in #8306
  • Bugfix/windows regressions by @mgallien in #8321
  • fix(cmake): Generate CFBundleLocalizations for macOS Info.plist by @claucambra in #8309
  • feat(shell_integration/macOS/FileProviderExt): Upgrade dependencies by @claucambra in #8311
  • fix(lockfilejobs): ensure using correct file path by @nilsding in #8330
  • enh(debugArchive): Add reminder to redact before sharing by @joshtrichards in #6238
  • chore(deps): Bump cpp-linter/cpp-linter-action from 2.14.0 to 2.15.0 by @dependabot[bot] in #8334
  • fix(logs): remove extra logs by @mgallien in #8337
  • fix(msi): set the REBOOT property in the MSI by @nilsding in #8347
  • fix(get/file): avoid failing to download files under 20 MiB by @mgallien in #8333
  • fix(test/sync): add a single sync engine test with long paths by @mgallien in #8351
  • fix(logs): make one log message useful by @mgallien in #8352
  • perf(logs): do not print processing lines for not important instructions by @mgallien in #8338
  • fix(warning): avoid compilation warning by specifying type by @mgallien in #8357
  • fix(windows/virtualFiles): prevent implicit hydration at API level by @mgallien in #8358
  • feat(logs): provide better logs for network request replies by @mgallien in #8367
  • fix(activitylistmodel): fix activities for e2ee files by @nilsding in #8375
  • fix(shell_integration/macOS/FileProviderExt): Adapt to further changes in NCFPK 3.0 by @claucambra in #8377
  • fix(shell_integration/macOS): Point NextcloudFileProviderKit dependency to new address by @claucambra in #8368
  • fix(accountmanager): use defaults from configFile if setting was not present by @nilsding in #8379
  • fix(crash): debug builds would not try to remove a not found job by @mgallien in #8356
  • fix(readonly): better handling of ACL on read-only files on windows by @mgallien in #8370
  • Change db debug errors to warnings depending on error text by @Rello in #8318
  • fix(logs): less verbose logs by @mgallien in #8385
  • feat(AI) Create AGENTS.md for AI instructions by @Rello in #8396
  • Update AGENTS.md by @Rello in #8405
  • ci: update reuse.yml workflow from template by @nextcloud-command in #8410
  • chore(deps): Bump platisd/clang-tidy-pr-comments from 1.7.0 to 1.8.0 by @dependabot[bot] in #8393
  • Agent instructions on translations by @Rello in #8413
  • fix(permissions): decode share "no download" permission by @mgallien in #8384
  • fix(lockFileJobs): avoid accumulating connections about lock jobs by @mgallien in #8430
  • fix(sync): allow leading space file names on Windows by @mgallien in #8391
  • fix(windows/compatibility): rename automatically a file only if it is local by @mgallien in #8335
  • Fix: mac-crafter installs wget on demand. by @i2h3 in #8434
  • fix(shell_integration/macOS/FileProviderExt): Adapt to latest Remote Change Observer changes in NCFPK 3.0 by @claucambra in #8439
  • Mac Crafter Improvements by @i2h3 in #8445
  • fix(github): Update code owners by @claucambra in #8446
  • feat(macOS): Add button in settings window to fully reset File Provider-based virtual files by @claucambra in #8451
  • Remove Ubuntu Oracular, add Questing by @ivaradi in #8452
  • ci: switch back to upstream CraftMaster by @nilsding in #8455
  • fix(folderwizard): change message tone from error to information. by @camilasan in #8416
  • chore(l10n): Exclude string from translation by @rakekniven in #8460
  • fix(l10n): fix plural forms in source language by @nilsding in #8272
  • Updated mac-crafter to Swift 6 by @i2h3 in #8457
  • fix(startup) respect update checker during startup in macOS by @Rello in #8389
  • Removes global network settings by @camilasan in #7951
  • fix: do not recurse inside a remote folder when etag did not change by @mgallien in #8456
  • ignore list evaluation by @mgallien in #8466
  • ci: change download url of appimagetool by @nilsding in #8475
  • Enable Xcode Debugger by @i2h3 in #8474
  • fix(mac-crafter): use AsyncParsableCommand everywhere by @nilsding in #8477
  • fix: implicit hydration will not abort synchronization by @mgallien in #8450
  • perf(activitylistmodel): store conflicts in a separate list by @nilsding in #8486
  • Add legacy account selection dialog. by @camilasan in #8467
  • Rename fav links by @camilasan in #8458
  • adds ability to specify user and password via env variables by @camilasan in #8490
  • fix(remotewipe): do not reopen sync db before wiping by @nilsding in #8465
  • Bugfix/windows vfs fixes by @mgallien in #8376
  • fix(e2ee): do not loose encryption status for folders and files by @mgallien in #8170
  • [stable-3.17] fix(db): optimize SQL qeury for updating encryption status by @backportbot[bot] in #8512
  • [stable-3.17] File Provider Localization by @backportbot[bot] in #8516
  • [stable-3.17] Additional Localizations in macOS File Provider by @backportbot[bot] in #8517
  • [stable-3.17] fix(discovery): check for db cached folder quota during discovery for some items. by @backportbot[bot] in #8518
  • [stable-3.17] fix(logger): Set narrower permissions on temporaryFolderLogDirPath by @backportbot[bot] in #8519
  • [stable-3.17] feat(mac-crafter): Added time measurement of build phases to improve on. by @backportbot[bot] in #8520
  • [stable-3.17] Added Package.resolved of NextcloudIntegration project to version control. by @backportbot[bot] in #8523
  • [stable-3.17] feat: checks Qt managed translations for tripple dots instead of elipsis by @backportbot[bot] in #8528
  • [stable-3.17] fix(wizard): show VFS option during account setup when using a mac-VFS build by @backportbot[bot] in #8529
  • [stable-3.17] fix(l10n): Don't sync xcstrings for now by @backportbot[bot] in #8532
  • [stable-3.17] chore: remove useless "else if" by @backportbot[bot] in #8535
  • [stable-3.17] fix: catch exceptions when using std::filesystem APIs by @backportbot[bot] in #8536
  • [stable-3.17] Make http error messages user friendly by @backportbot[bot] in #8538
  • Stable 3.17 File Provider Localization by @i2h3 in #8539
  • [stable-3.17] fix(msi): display non-technical version in installer by @backportbot[bot] in #8545
  • [stable-3.17] fix(macOS): fix initial VFS activation step by @backportbot[bot] in #8549
  • [stable-3.17] Display user friendly messages when errors occur. by @backportbot[bot] in #8552
  • [stable-3.17] fix(folder): use the remotePath for the sidebar display name by @backportbot[bot] in #8566
  • [stable-3.17] Remove Debian Bullseye, add Trixie by @backportbot[bot] in #8570
  • [stable-3.17] fix(quota): return unlimited free space for type changes. by @backportbot[bot] in #8571

New Contributors

Full Changelog: v3.16.0...v3.17.0

Don't miss a new desktop release

NewReleases is sending notifications on new releases.