Last release of 29 ⚠️
29 is now EOL
Changelog
- Fix(db): Increase log level for very slow transactions (server#47529)
- Fix(logger): Prevent infinite recursion with log.condition => users or matches (server#50030)
- Fix: Apply enforce theme config for anonymous users as well (server#50121)
- Fix: Filter for folders in cleanup old preview job (server#50471)
- Fix(oauth2): retain support for legacy ownCloud clients (server#50902)
- Fix(files_trashbin): disable bulk download for trashbin (server#51208)
- Feat: log query for dbal exceptions (server#51232)
- Fix(user_ldap): Avoid extra LDAP request when mapping a user for the first time (server#51255)
- Add LDAP test settings command (server#51305)
- Fix(dav): Create SAB at installation (server#51314)
- Fix: remote account activity translation (server#51324)
- Fix: Do not build encrypted password if there is none (server#51328)
- Fix disabled user list for SAML group subadmin (server#51374)
- Fix(files_external): Stop building path twice when checking if file exists on case insensitive SMB storage (server#51386)
- Feat(files): Refresh grid view layout (server#51470)
- Fix(profile): allow to unset phone number (server#51509)
- Fix: skip caching lastSeenQuotaUsage for remote shares (server#51528)
- Fix(files): Make sure file pointer exists (server#51534)
- Fix(cardav): only show users from enabled addressBooks in contacts menu (server#51537)
- Fix(files_sharing): ensure share status action works also in grid view (server#51557)
- Enh: improve occ file:transfer-ownership logging (server#51559)
- Fix: skip transfering shares that we can't find (server#51571)
- Fix: pass hide download attribute while creating the share to fix github issue 50788 (server#51580)
- Fix(systemtags): support new attribute parsing of webdav props (server#51590)
- Fix(css): ensure header title is readable with dark background (server#51599)
- Fix(files_sharing): skip expiration notify for invalid share record (server#51613)
- Fix(user): Some strings not being translated (server#51664)
- Fix(provisioning_api): Pass on translated hint if password change fails (server#51670)
- Fix(login): Improve CSRF error message for better user understanding (server#51701)
- Fix: filter out contacts with empty email addresses in sharee completion (server#51710)
- Fix(GenerateBlurhashMetadata): Suppress imagescale errors (server#51716)
- Fix(files_versions): correctly show version author also for shared files (server#51721)
- Fix(files_reminders): Fix reminder actions being displayed on invalid nodes (server#51740)
- Fix(files_versions): Rely on server mime fallback icons (server#51746)
- Fix(cs-fixer): Correctly ignore files ignored by git (server#51776)
- Fix(dav): Give proper HTTP status code on MKCOL when quota exceeded (server#51811)
- Feat: Limit
ExpireTrashjob to 30 minutes (server#51819) - Fix(users): Improve error handling of some fields update (server#51834)
- Fix(files_reminders): Lower disabled notifications app error to info (server#51841)
- Fix: use proper migration sorting when checking if a migration needs to be executed (server#51867)
- Fix(files): right click actions menu flicker (server#51873)
- Fix: Use login name to check the password (server#51878)
- Fix(settings): Handle email change restriction separately from display name change restriction (server#51899)
- Fix(session): Only mark sessions of permanent tokens as app passwords (server#51908)
- Fix: Catch exceptions when expiring trashbin (server#51910)
- Fix: ensure enabled themes are set on the template (server#51930)
- Revert "refactor: add migration for email setting" (server#51985)
- Fix(files_reminders): add missing import (server#51990)
- Feat(ip): use larger IPv6 range by default (server#52031)
- Test: Use utils function from server and wait for requests (activity#1923)
- Fix: disable loading when there are no more activities to load (activity#1932)
- Feat: skip expire sharing notify if node deleted (activity#1935)
- Fix(settings): ensure we handle file_created, file_deleted and file_restored as file_changed (activity#1949)
- Revert "fix: disable loading when there are no more activities to load" (activity#1958)
- Fix(ActivityAppFeed): handle cases for non-scrollable container (activity#1966)
- Fix: propagate group name changes (circles#1902)
- Fix(SyncService): Sync group display names (circles#1907)
- Fix download permission (circles#1918)
- Ignore empty string when adding member (circles#1924)
- Only sync users on explicit request (circles#1932)
- Ignore non-existant users (circles#1935)
- Do not refresh display name on known local user (circles#1959)
- Update GitHub actions (files_pdfviewer#1183)
- Update CI workflows (logreader#1570)
- Fix: Do not register listener when not in console (logreader#1580)
- Fix: style and template fixes (notifications#2224)
- Style: fix custom icon height (notifications#2266)
- Fix: Usage of FilePicker (photos#2897)
- Fix(l10n): Improve translation exclude list (photos#2905)
- Fix(l10n): remove breaking trailing dot after curly brace (photos#2909)
- Enh(makefile): clean up css as well (text#6920)
- Fix flaky cypress tests (text#6966)
- Fix(workspace): Use filecache existance for checking if readme exists (text#6977)
- Chore: Downgrade @nextcloud/webpack-vue-config (text#6979)
- Fix(cypress): define visual regression threshold to 0.01 (viewer#2771)