What's Changed
- [stable29] fix: avoid duplicate tag inserts by checking if the mapping exists already in db by @backportbot in #45995
- [stable29] chore(deps): Bump deepdiver/zipstreamer to 2.0.3 by @susnux in #45897
- [stable29] fix(files): Properly handle denied ownership transfers by @backportbot in #45906
- [stable29] fix(userstatus): Fix user status automation in real-life scenario by @backportbot in #46096
- [stable29] fix(dav): add missing database index for dav_shares by @backportbot in #46148
- [stable29] fix(security): Update code signing revocation list by @nextcloud-command in #46154
- [stable29] fix(caldav): When message is a reply compare the message sender not the recipient by @backportbot in #46146
- [stable29] perf(session): remove useless session open by @backportbot in #46168
- [stable29] fix(federation): Fix missing protocol on CloudID remote by @backportbot in #46173
- [stable29] fix(CI): Fix OpenAPI github action by @nickvergessen in #46175
- [stable29] fix(cron): Log excess memory usage at debug and info levels by @backportbot in #45843
- [stable29] Rename openFileInfo to fileInfo by @backportbot in #45988
- [stable29] Update favorites navigation list on folder renames by @backportbot in #46137
- [stable29] Use guzzle for addressbook federation by @backportbot in #46117
- [stable29] fix(setupchecks): skip check when disk_free_space is disabled by @backportbot in #46203
- [stable29] Fix npm audit by @nextcloud-command in #45892
- [stable29] ci: Migrate Litmus and CalDAVTester from drone to GitHub by @backportbot in #45726
- [stable29] fix: getMountsForFileId may return an unordered list by @backportbot in #46213
- [stable29] feat(files): increase max copy-move concurrency to 5 by @backportbot in #46128
- [stable29] Don't trigger action when renaming by @backportbot in #46018
- [stable29] fix(files_sharing): Also set the expiration date timezone during validation by @backportbot in #46142
- [stable29] docs(ShareApiController): Correct note about expiry date timezone by @backportbot in #46228
- build(deps-dev): Bump cypress-split from 1.21.0 to 1.21.2 by @dependabot in #46240
- build(deps-dev): Bump @cypress/webpack-preprocessor from 6.0.1 to 6.0.2 by @dependabot in #46246
- [stable29] fix(preview): don't create folder structure when previews are disabled by @backportbot in #45993
- [stable29] fix(security): Update CA certificate bundle by @nextcloud-command in #46264
- [stable29] fix(ExternalSharing): Handle template shares from external sources by @backportbot in #46281
- build(deps-dev): Bump mime from 4.0.1 to 4.0.3 by @dependabot in #46244
- build(deps): Bump libphonenumber-js from 1.10.58 to 1.10.64 by @dependabot in #46242
- [stable29] fix(tests): Remove output when running tests by @backportbot in #46290
- [stable29] fix: Authorization header can be an empty string by @backportbot in #46212
- [stable29] build(deps): Bump @nextcloud/vue from 8.11.2 to 8.14.0 by @dependabot in #46237
- [stable29] fix(DAV): offset not applied by @backportbot in #46226
- chore(deps-dev): bump tslib from 2.6.2 to 2.6.3 by @dependabot in #46331
- chore(deps): bump jquery-ui-dist from 1.13.2 to 1.13.3 by @dependabot in #46330
- chore(deps-dev): bump cypress from 13.7.1 to 13.7.3 by @dependabot in #46333
- chore(deps-dev): bump cypress-if from 1.12.0 to 1.12.3 by @dependabot in #46332
- [stable29] fix: Avoid throwing errors for teams are unavailable by @backportbot in #46163
- chore(deps-dev): bump eslint-plugin-cypress from 2.15.1 to 2.15.2 by @dependabot in #46334
- [stable29] chore(mp3info): apply upstream patch for invalid array access by @backportbot in #46306
- [stable29] fix: csrf check failed on public share with password by @backportbot in #46039
- [stable29] fix(s3): Don't wait indefinitely for S3 to return by @backportbot in #46367
- [stable29] fix(files_versions): renaming file version when its not a string by @backportbot in #46001
- [stable29] fix(SharingDetailsView): Prevent illegal unselection of read permissions by @backportbot in #46362
- [stable29] fix(settings): make trailing slash for caldav/carddav redirects optional by @backportbot in #46093
- [stable29] fix(cypress): wait for apps list fetch for better testing stability by @backportbot in #46385
- [stable29] fix(carddav): limit vcard size by @backportbot in #46314
- [stable29] fix(theming): Also provide default image as background by absolut URL by @susnux in #46211
- [stable29] fix(files_trashbin): Make files view registering an init script by @susnux in #46054
- [stable29] fix(IntegrityCheck): Ensure the check is run if no results are available by @backportbot in #46298
- [stable29] fix: Update Nextcloud libraries by @susnux in #46374
- [stable29] fix(caldav): limit vevent size by @backportbot in #46413
- [stable29] fix(caldav): encode calendar URIs with umlauts for activities by @backportbot in #46012
- [stable29] fix: Do not log an error when connecting to SFTP without a logged in user by @backportbot in #46061
- [stable29] fix: also use optimized getFirstNodeyIdInPath for Folder::getFirstNodeById by @backportbot in #46035
- [stable29] fix: don't use custom certificate bundle if no customer certificates are configured by @backportbot in #46069
- [stable29] delete background jobs by id when cleaning up by @backportbot in #45919
- [stable29] fix: allows admin to edit global credentials by @backportbot in #46091
- [stable29] fix(settings): define a 'heartbeat' route, so SecurityHeaders can handle redirected root by @backportbot in #45956
- [stable29] fix(workflows): Fix file systemtag cache by @backportbot in #46412
- [stable29] fix(files_versions): Use
NcDateTime
for proper translated version dates by @backportbot in #45911 - [stable29] fix(theming): Don't reset the cachebuster value when we reset theming by @backportbot in #46434
- [stable29] fix(theming): Conitionally disable blur filter for performance by @backportbot in #46258
- [stable29] perf: Set session.cache_limiter at runtime to avoid clients caching static assets served by PHP by @backportbot in #46393
- [stable29] fix(FilesView): Update files view upon share creation/delete by @backportbot in #46119
- [stable29] fix(Session): avoid race conditions on clustered setups by @backportbot in #46437
- [stable29] fix(SharingEntryLink): Show enforced password input label by @backportbot in #46162
- [stable29] feat: don't count failed CSRF as failed login attempt by @backportbot in #46443
- 29.0.4 RC1 by @Altahrim in #46389
Full Changelog: v29.0.3...v29.0.4rc1