What's Changed
- chore(macOS): Removed obsolete SwiftNIO dependency by @i2h3 in #10179
- fix(file-provider): invalidate lock tokens when file paths change. by @camilasan in #10135
- fix(perf): do not run CI on draft PRs by @Rello in #10183
- Fix initial menu bar extra sync status by @i2h3 in #10187
- fix(#10177): Unblock menu bar extra by @i2h3 in #10193
- Movable wizard window by @i2h3 in #10188
- fix(gui): prevent nullptr dereference when VFS mode is unavailable by @troed in #10176
- chore(agents): add guideline for verifiable claims in contributions. by @camilasan in #10200
- fix(vfs/windows): use proper relative local path for DB records by @mgallien in #10204
- Relabel "virtual files" as "File Provider" by @i2h3 in #10205
- fix(libsync): folder move or rename data loss. by @camilasan in #9998
- fix: build error with OpenSSL 4.0 by @raviksharma in #10223
- fix(#10216): Prevent app nap and silent kill by @i2h3 in #10230
- feat(tray): move logout and remove to settings menu by @Rello in #10165
- fix(UI): read OCC_UPDATE_URL only for dev builds by @Rello in #10236
- chore(deps): Bump actions/checkout from 6.0.3 to 7.0.0 by @dependabot[bot] in #10225
- fix(gui): remove gap after status messages by @nilsding in #10245
- Bugfix/end to end encryption by @mgallien in #10244
- chore(deps): Bump cpp-linter/cpp-linter-action from 2.18.0 to 2.19.0 by @dependabot[bot] in #10224
- Correct Remote Change Propagation to File Provider Framework by @i2h3 in #10252
- Support Adobe Lock Files by @i2h3 in #10260
- Confine Enumeration (master) by @i2h3 in #10262
- fix: parsing ] in ignore list in File Provider correctly by @Rello in #10268
- chore(deps): Bump actions/cache from 5.0.5 to 6.1.0 by @dependabot[bot] in #10273
- chore(deps): Bump cpp-linter/cpp-linter-action from 2.19.0 to 2.20.0 by @dependabot[bot] in #10275
- chore(deps): Bump actions/cache/restore from 5.0.5 to 6.1.0 by @dependabot[bot] in #10274
- chore(deps): Bump actions/setup-python from 6.2.0 to 6.3.0 by @dependabot[bot] in #10271
- chore(deps): Bump actions/cache/save from 5.0.5 to 6.1.0 by @dependabot[bot] in #10272
- Remove QtWebEngine by @i2h3 in #10092
- Fix crash due to FILEPROVIDER_OBSERVER_TOO_MANY_ITEMS by @i2h3 in #10281
- fix(logs): prints the Qt platform name at startup by @mgallien in #10277
- fix(cmd,csync): don't silently ignore a missing --exclude file by @mosandlt in #10283
- Prevent crash on wake (Ticket#96101255) by @i2h3 in #10290
- chore: disable building with Qt WebEngine in craft settings by @mgallien in #10279
- "Edit locally" in Web → Reveal in Finder on macOS by @Rello in #10303
- feature(signup): migrate simple-signup to standard browser by @Rello in #9969
- chore(deps): Bump nextcloud/pr-feedback-action from 1883b38a033fb16f576875e0cf45f98b857655c4 to c8c97a6b11ff6379e629a8fbde09572730cacec9 by @dependabot[bot] in #10315
- Bugfix/noid/fix account provisioning by @mgallien in #10304
- feat(tray): Migrate TrayWindow to the new tray user menu by @Rello in #10164
- Support Adobe InDesign safe save by @i2h3 in #10322
- fix: load existing accounts before creating a new one by @mgallien in #10325
- fix: translation strings by @Rello in #10329
- fix: Don't recursively call processEvents by @Xaymar in #10314
- fix(UI): validate E2EE file names by @Rello in #10238
- fix(exclude): avoid trying to read patterns from file when reading failed by @nilsding in #10335
- Enable removal of downloaded items on a folder by @i2h3 in #10339
- fix: "dismiss" string and showing of chat message in tray preview by @Rello in #10343
- fix(TransifexStringCatalogSanitizer): Hardening to prevent data loss by @i2h3 in #10344
- feature: add search dialog to new tray menu by @Rello in #10331
- fix: do not allow scheme change for push notifications by @Rello in #10351
- Feature/governance labels integration by @mgallien in #10100
- chore: cleanup some unused capability/sharing methods by @nilsding in #10348
- perf(sync): remove 3ms scheduling delay between propagation jobs by @qoole in #9992
- perf(activity): cache singleton pointers and avoid string concat in hot path by @qoole in #9997
- fix(tray): Fix macOS material choice for tray menu background by @claucambra in #10359
- Improve FinderSync Extension handling by @i2h3 in #10356
- Revert "perf(sync): remove 3ms scheduling delay between propagation jobs" by @nilsding in #10371
- chore(deps): Bump nextcloud/pr-feedback-action from c8c97a6b11ff6379e629a8fbde09572730cacec9 to 4709fa5b3e1821559d4c312ef937b61f1567aa44 by @dependabot[bot] in #10366
- feat(governance): update governance API for latest changes by @mgallien in #10378
- chore(deps): Bump actions/stale from 10.3.0 to 10.4.0 by @dependabot[bot] in #10365
- Check for file provider upload size mismatch by @i2h3 in #10369
- chore: @claucambra is a new code owner by @mgallien in #10376
- Improved upload chunk integrity by @i2h3 in #10377
- Improved file provider switch user experience by @i2h3 in #10354
- refactor(gui/search): build as a proper QML module by @nilsding in #10360
- Detect upload conflicts with an If-Match precondition by @i2h3 in #10393
- feat: Handle AutoCAD lock files in classic sync by @claucambra in #10379
- feat(fileprovider): Handle AutoCAD lock files by @claucambra in #10372
- chore: Add performance test/results requirement for perf PRs in PR template by @claucambra in #10390
- fix(cmd,csync): anchor --exclude patterns at the sync root regardless of filename by @mosandlt in #10284
- feat: Handle Adobe lock files (InDesign, Premiere) in classic sync by @claucambra in #10367
- fix(folderwatcher): ignore events for stale inotify watch descriptors by @thstyl2000 in #10389
- fix(macOS): Prevent stripping of application name components following a dot in Sparkle update notices by @claucambra in #10395
- fix(file-provider): Remove the misleading size check for uploads again by @i2h3 in #10410
- Do not vend .allowsExcludingFromSync capability on items by @i2h3 in #10413
- chore(deps): Bump actions/checkout from 7.0.0 to 7.0.1 by @dependabot[bot] in #10408
- chore(deps): Bump actions/setup-python from 6.3.0 to 7.0.0 by @dependabot[bot] in #10407
- feat(ui): Add context menus to text fields by @claucambra in #10406
- feat: refactor activity window into own folder structure by @Rello in #10350
- Add a reset button in the app settings by @i2h3 in #10416
- Bugfix/end to end encryption various fixes by @mgallien in #10414
- fix: Search and Activity dialog not showing by @Rello in #10433
- fix(edit-locally): Correctly handle edit-locally request URLs with punycode hosts by @claucambra in #10430
- feat: Handle Affinity lock files in classic sync by @claucambra in #10417
- fix(file-provider): Do not continue polling ETag from file provider when account is disabled by @Rello in #10445
- fix(agents): ensure agents follow proper testing practices by @claucambra in #10447
- Don't drop all remote changes when one folder read fails by @i2h3 in #10446
- fix(file-provider): Ensure path comparisons are done on equal normalization by @claucambra in #10443
- fix(governance): makes desktop UI closer to the files web UI by @mgallien in #10428
- fix: Prevent DiscoverySingleLocalDirectoryJob from hanging when target is file by @claucambra in #10434
- Eliminate O(N²) Realm work in large-folder enumeration by @i2h3 in #10466
- chore(common): print filename if error occurs in file locking check. by @camilasan in #10470
- fix(macOS): Verify ability to access Local Network by @claucambra in #10460
- fix(activity): File details menu fixes by @claucambra in #10480
- fix(propagateupload): ensure file size stays the same for new uploads by @nilsding in #9823
- fix(tray): simplify disconnected account menu by @Rello in #10461
- fix: update Sonarcloud settings by @Rello in #10498
- fix(filesystem): do not attempt to lock directories on Windows by @andreasbohl in #10487
- fix(discovery): move file lock state off the GUI thread. by @camilasan in #10500
- Refactored XPC for FinderSync Extension by @i2h3 in #10492
- fix(macOS): use tag to pass menu command to Finder extension. by @camilasan in #10528
- chore(deps): Bump actions/stale from 10.4.0 to 11.0.0 by @dependabot[bot] in #10530
- fix(file-provider): Deletion of server-side item for items excluded from sync by @claucambra in #10534
- fix(tray): activate tray window also on right click (macOS) by @Rello in #10532
- fix(file-provider): preserve special characters in chunked upload paths by @Rello in #10541
- fix(discovery): use QString to avoid dangling QStringBuilder. by @camilasan in #10550
- fix(macos): Get actual user home directory correctly by @claucambra in #10571
- fix(socketapi): defer move item dialog out of socket read loop. by @camilasan in #10552
- fix(windows): Prevent reupload of placeholder dirs deleted remotely by @claucambra in #10576
- fix(macOS): present tray popup before app activation by @Rello in #10582
- fix(windows): properly test for locked files by @mgallien in #10584
- fix(wizard): align reauthentication with account setup by @Rello in #10459
- fix(agents): Document how to properly acquire desktop client logs by @claucambra in #10598
- fix(macOS): compare FinderSync broker application versions by @Rello in #10599
- fix(tray): restore pause and resume sync action by @Rello in #10529
- Feature/config not interactive migrated to nextcloud cmd by @mgallien in #10468
- fix(file-provider): Clean up stale chunked upload chunks by @claucambra in #10565
- Bugfix/sync new files on windows by @mgallien in #10624
- chore(deps): Bump cpp-linter/cpp-linter-action from 2.20.0 to 2.21.0 by @dependabot[bot] in #10619
- chore: add check for conventional commits in PR template. by @camilasan in #10637
- fix(sync): add ~$ to default exclusion list by @xhon-pelushi in #10595
- fix(tray): GNOME + AppIndicator compatibility by @ivaradi in #10646
- fix(nix): update nix flake for desktop client by @RoGreat in #10630
- fix(mac-crafter): Verify all components are signed with matching team identifiers by @claucambra in #10597
- fix(db): avoid printing misleading warning logs by @mgallien in #10650
- fix(logs): no new notification should not be a warning in logs by @mgallien in #10653
- chore: enable use of QT_NO_KEYWORDS when compiling nextcloudCore target by @mgallien in #10657
- Feature/retry failed network requests by @mgallien in #10486
- fix(file-provider): Correctly enumerate large change batches by @claucambra in #10660
- fix(propagator): clean up logs related to item completed by @mgallien in #10651
- Chore/improve clang format configuration by @mgallien in #10663
- fix(file-provider): Prevent concurrent write crash in XPC utils by @claucambra in #10665
- fix: improve Windows custom-state icon contrast by @jsk1004ha in #10622
- chore: fix two small issues for compilation and clang-format by @mgallien in #10689
- fix (fileprovider): Consume lock ETags before File Provider content updates by @Rello in #10641
- fix(ci): skip unrelated component workflows by @Rello in #10695
- fix(ci): reuse Clang build for clang-tidy by @Rello in #10696
- fix(cmake): set cmake var APPLICATION_REV_DOMAIN_INSTALLER by @camilasan in #10699
- fix(ci): cache Windows Craft dependencies by @Rello in #10698
- fix(warnings): ensure compilation without warnings with gcc 16 by @mgallien in #10583
- fix(libsync): add NEXTCLOUD_BULK_UPLOAD env override to force-disable bulk upload by @mosandlt in #10300
- fix(agents): Guide agents to follow proper conduct when working on major features by @claucambra in #10711
- fix(ci): cancel obsolete pull request workflows by @Rello in #10715
- style(cmake): remove redundant conditions from endif/endfunction/endmacro/endforeach by @artyom-fedosov in #10707
- fix(updater): remove leftover installer during config version migration by @chrip in #10680
- fix(osx): refresh stale FinderSync pluginkit registration on install. by @camilasan in #10717
- fix(shares): Only acquire shares for target path by @claucambra in #10721
- fix: avoid warning by not calling joinPath with invalid parameters by @mgallien in #10724
- feat(search): revive unified search by @Rello in #10639
- Chore/improve clang tidy integration by @mgallien in #10666
- fix(mac-crafter): quote file path for codesign invocation by @nilsding in #10732
- fix(clang-tidy): fis remaining issues to ensure compliance by @mgallien in #10742
- fix: Include error message in update download error notification by @Rello in #10754
- fix(translation): Add translators hint for search result text by @Rello in #10756
- feat(Assistant): implement full Assistant features also on client by @Rello in #10345
- feat(ci): add flatpak to CI by @mgallien in #10759
- Faster File Provider Log Rotation by @juliusvaart in #10741
- Make Materialized Item Reconciliation Converge by @potanin in #10682
- fix(i18n): add document translation placeholders by @Rello in #10770
- refactor(tray): remove obsolete tray window by @Rello in #10762
- refactor(tray): remove orphaned QML components by @Rello in #10763
- refactor(tray): remove legacy tray backend by @Rello in #10767
- fix(ci): run appimage/flatpack only for Linux-labeled PRs by @Rello in #10783
- fix(tray): match menu icons to palette by @Rello in #10703
- fix(docs): Expand terminology and documentation guidance by @claucambra in #10672
- fix(ci): skip expensive checks for backports by @Rello in #10791
- fix(agents): Generalize GUI testing guidance by @claucambra in #10794
- refactor: migration. by @camilasan in #9191
- fix: warnings. by @camilasan in #10623
- Repair account creation via CLI by @i2h3 in #10726
- chore: use our own flatpak build image with kde 6.11 Sdk by @mgallien in #10772
- Fix macOS File Provider Synchronization Drops by @juliusvaart in #10734
- Handling (Un)Visited Directories Correctly by @juliusvaart in #10751
- fix(e2ee): wrap mnemonic text in dialog by @Gromhold in #10792
- File Provider Synchronization Blocking by @i2h3 in #10802
- Indexed Logical Address Lookups by @juliusvaart in #10750
- fix(tray): scroll to top in the activity window on opening by @Rello in #10533
- fix(lock): file provider handling 412 for UNLOCK requests by @Rello in #10815
- fix: Enhanced settings dialog as fallback for Linux systems w/o tray menus by @Rello in #10782
- fix(clntenc): Do not use ENGINE_get_default_RSA by @ivaradi in #10819
- fix: Normalisation of Windows paths during journal clean-up after recursive deletion by @claucambra in #10692
- Treat 404s on items intended for deletion as valid by @claucambra in #10771
- fix: sync engine readonly folder file deletion by @guruz in #10226
- fix(file-provider): Fix build on Xcode 27 by @claucambra in #10831
- fix(macOS): Fix clang format config for Objective-C/Objective-C++ by @claucambra in #10838
- fix(settings): restore Windows panel palette roles by @Rello in #10840
- feat(linux/vfs): integrate openvfs linux virtual files plugin by @mgallien in #10635
- fix(macOS): Use NSOpenPanel to grant sync folder access by @claucambra in #10833
- fix(macOS): Position tray account popup adjacent to menu bar by @claucambra in #10834
- fix(file-provider): Make change batch delivery idempotent by @claucambra in #10822
- chore(codeowners): assign specific codeowners per platform by @nilsding in #10853
- fix(windows): Pass extended \?\ paths to QFile for ordinary files in Filesystem::rename by @claucambra in #10846
- fix(reuse): Remove unneeded xcscheme by @claucambra in #10861
- Updated Xcode Scheme Reference in Documentation by @benlukka in #10830
- feat: Add support for unified sharing by @nilsding in #10307
- fix: Correct the debug archive generation instructions in the bug report template. by @beedell-roke in #10863
- Bugfix/mgallien/fix no gui build option by @mgallien in #10859
- Document finding Team ID for free Apple developer accounts by @JanSndr in #10857
- Fix: notification text for a lock timeout set to zero minutes by @DmySyz in #10798
- feat(vfs/linux): enable dynamic switch to OpenVFS from classic sync by @mgallien in #10873
- fix(l10n): clarify short UI string contexts by @Rello in #10886
- build(deps): Bump cpp-linter/cpp-linter-action from 2.21.0 to 2.22.0 by @dependabot[bot] in #10888
- chore: makes agents write better code by default before reviews by @mgallien in #10896
- docs(cli): group command-line help options by @Rello in #10893
- Fix Workspace Debug Build on macOS 27 by @i2h3 in #10890
- feat(craft): use the new craft cache for stable-35.0 branch by @mgallien in #10875
- fix(file-provider): Remove unused XPC utils methods by @claucambra in #10895
- Widen account wizard so localized button labels fit by @i2h3 in #10907
- fix(linux): fix AppImage build on almalinux 9 by @mgallien in #10905
- fix(linux): avoid building AppImage dependencies: already included by @mgallien in #10910
- chore: use a stable docker tag for the flatpak CI image by @mgallien in #10916
- Managed Settings by @camilasan in #10589
- fix(systray): smarter elide mode for long display name by @mgallien in #10915
- fix(invalid-filename): Fix paths used for check in invalid filename dialog by @claucambra in #10843
New Contributors
- @troed made their first contribution in #10176
- @raviksharma made their first contribution in #10223
- @mosandlt made their first contribution in #10283
- @Xaymar made their first contribution in #10314
- @thstyl2000 made their first contribution in #10389
- @andreasbohl made their first contribution in #10487
- @xhon-pelushi made their first contribution in #10595
- @RoGreat made their first contribution in #10630
- @jsk1004ha made their first contribution in #10622
- @artyom-fedosov made their first contribution in #10707
- @juliusvaart made their first contribution in #10741
- @potanin made their first contribution in #10682
- @Gromhold made their first contribution in #10792
- @guruz made their first contribution in #10226
- @benlukka made their first contribution in #10830
- @beedell-roke made their first contribution in #10863
- @JanSndr made their first contribution in #10857
Full Changelog: v34.0.0...v35.0.0-rc1