# First beta release of Nextcloud Hub 26 Summer (v35)

**URL:** <https://help.nextcloud.com/t/first-beta-release-of-nextcloud-hub-26-summer-v35/248008>\
**Category:** 🎁 Releases\
**Tags:** beta, encryption-e2e, translation, nc35, external\_storage, s3, php82\
**Created:** [August 11, 2026, 4:11pm UTC](https://help.nextcloud.com/t/first-beta-release-of-nextcloud-hub-26-summer-v35/248008 "2026-08-11T16:11:08Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![blizzz](https://help.nextcloud.com/user_avatar/help.nextcloud.com/blizzz/32/133_2.png) [@blizzz](https://help.nextcloud.com/u/blizzz)\
**Post date:** [August 11, 2026, 4:11pm UTC](https://help.nextcloud.com/t/first-beta-release-of-nextcloud-hub-26-summer-v35/248008/1 "2026-08-11T16:11:08Z")

</div>

The first beta of Nextcloud 35 is now available on download servers! 🚀

As always, help with testing is very much welcome!  
If you notice anything out of order, please report back on the appropriate GitHub repository! 🙇‍♀️

We will follow up with frequent betas over the next weeks.

### Downloads

- [Nextcloud Server `35.0.0 Beta 1` on GitHub](https://github.com/nextcloud-releases/server/releases/v35.0.0beta1)

### Changelog

#### Nextcloud 35.0.0beta1

##### [server](https://github.com/nextcloud/server)

- [Revert “Do not do redirect handling when loggin out” (server#40407)](https://github.com/nextcloud/server/pull/40407)
- [Movie preview bug fix, in some case stream reading functions may block indefinitely (server#43226)](https://github.com/nextcloud/server/pull/43226)
- [Add rel attribute for fediverse link to make verification possible. (server#43364)](https://github.com/nextcloud/server/pull/43364)
- [Fix(argon2): respect max value for hashingThreads (server#45027)](https://github.com/nextcloud/server/pull/45027)
- [Fix(caldav): explicitly check from component types (server#48131)](https://github.com/nextcloud/server/pull/48131)
- [Feat(deps): Upgrade phpseclib to v3 (server#48183)](https://github.com/nextcloud/server/pull/48183)
- [Feat(occ): Better handling of disabled or unreacheable App store (server#49697)](https://github.com/nextcloud/server/pull/49697)
- [Feat: Run setup checks by category or class (server#49978)](https://github.com/nextcloud/server/pull/49978)
- [Fix(session): Update `last_seen` when user session is validated (server#50835)](https://github.com/nextcloud/server/pull/50835)
- [Fix: pass parent id to correctParentStorageMtime when known (server#53464)](https://github.com/nextcloud/server/pull/53464)
- [Chore: remove `always_populate_raw_post_data` (server#53583)](https://github.com/nextcloud/server/pull/53583)
- [Added parameter to disable web UI integration with local client (server#54191)](https://github.com/nextcloud/server/pull/54191)
- [Feat(theming): add option for reduce animation (server#55406)](https://github.com/nextcloud/server/pull/55406)
- [Fix(DirectEditing): expose already used methods on the public interface (server#55993)](https://github.com/nextcloud/server/pull/55993)
- [Fix(Dav): make absenceform textarea not overlap (server#56055)](https://github.com/nextcloud/server/pull/56055)
- [Fix(systemtags): remove duplicates, cleanup existing tags (server#56079)](https://github.com/nextcloud/server/pull/56079)
- [Fix(PublicPreview): Call getMimetype() on File objects (server#56196)](https://github.com/nextcloud/server/pull/56196)
- [Fix(l10n): Fix plural (server#56254)](https://github.com/nextcloud/server/pull/56254)
- [Show group display name when the group object is not loaded yet (server#56533)](https://github.com/nextcloud/server/pull/56533)
- [Added a exclude disabled option to last seen (server#57081)](https://github.com/nextcloud/server/pull/57081)
- [Feat (2fa): Add IStatelessProvider interface (server#57216)](https://github.com/nextcloud/server/pull/57216)
- [Fix: allow `occ maintenance:update:htaccess` to create .htaccess file in case it doesn’t exist yet (server#57227)](https://github.com/nextcloud/server/pull/57227)
- [Implement token exchange from OCM (server#57234)](https://github.com/nextcloud/server/pull/57234)
- [Chore(files): drop unused list.php (server#57333)](https://github.com/nextcloud/server/pull/57333)
- [Move invite-accepted capability and implementation to contacts app. (server#57853)](https://github.com/nextcloud/server/pull/57853)
- [Feat: delay fetching the display name of a share recipient untill we need it (server#58335)](https://github.com/nextcloud/server/pull/58335)
- [Chore: remove redundant ext-json requirement (bundled since PHP 8.0) (server#58370)](https://github.com/nextcloud/server/pull/58370)
- [Feat: frankenphp (server#58541)](https://github.com/nextcloud/server/pull/58541)
- [Feat(lookup): search for local account only via lookupserver (server#58567)](https://github.com/nextcloud/server/pull/58567)
- [Refactor: Add new modern events for system tag lifecycle (server#58602)](https://github.com/nextcloud/server/pull/58602)
- [Fix: improve logging around failed chunked object store uploads (server#58608)](https://github.com/nextcloud/server/pull/58608)
- [Fix: don’t return cache entries with null paths (server#58676)](https://github.com/nextcloud/server/pull/58676)
- [Refactor(admin\_audit): migrate to IAppConfig (server#58750)](https://github.com/nextcloud/server/pull/58750)
- [Docs(config): clarify `remember_login_cookie_lifetime` behavior (server#58792)](https://github.com/nextcloud/server/pull/58792)
- [Docs(config): document `session_lifetime` semantics and interactions (server#58794)](https://github.com/nextcloud/server/pull/58794)
- [Test(ldap): align expectation for unset `ldapUserDisplayName2` with implementation to avoid PHP 8.5 warning (server#58813)](https://github.com/nextcloud/server/pull/58813)
- [Refactor(dbal): move from deprecated to modern calls (server#58891)](https://github.com/nextcloud/server/pull/58891)
- [Refactor(CapabilitiesManager): log slow capabilities in a single message (server#58971)](https://github.com/nextcloud/server/pull/58971)
- [Fix(lookup-server): accept self-signed lus on globalscale (server#58976)](https://github.com/nextcloud/server/pull/58976)
- [Remove usage of static vars or properties (server#59002)](https://github.com/nextcloud/server/pull/59002)
- [Fix: treat all WebKit iOS browseres the same (server#59168)](https://github.com/nextcloud/server/pull/59168)
- [Fix(sharing): icon color mismatch on download button in public share (server#59175)](https://github.com/nextcloud/server/pull/59175)
- [Enh(occ): make it possible to add an arbitrary number of users to a g… (server#59271)](https://github.com/nextcloud/server/pull/59271)
- [Fix(files\_reminders): switch from DB-side `NOW()` to PHP-side generation (server#59358)](https://github.com/nextcloud/server/pull/59358)
- [Fix: folder tree selection after any action in main content (server#59359)](https://github.com/nextcloud/server/pull/59359)
- [Fix(SetupChecks): maintenance window length is 4h (not 6h) (server#59413)](https://github.com/nextcloud/server/pull/59413)
- [Fix(user\_status): stabilise the user\_status (server#59535)](https://github.com/nextcloud/server/pull/59535)
- [Fix(files\_external): S3 folder mtime updated on every read-only access (server#59539)](https://github.com/nextcloud/server/pull/59539)
- [Feat(files\_versions): allow to block version creation using WFE (server#59610)](https://github.com/nextcloud/server/pull/59610)
- [Fix(appconfig,userconfig): restore pre-migration fallback for ownCloud migration (server#59677)](https://github.com/nextcloud/server/pull/59677)
- [Feat: allow setting custom login-name for occ generated app password (server#59680)](https://github.com/nextcloud/server/pull/59680)
- [Refactor(share): DRY up expiration date validation and fix dispatchEvent() log message (server#59731)](https://github.com/nextcloud/server/pull/59731)
- [Fix(sharing): set STATUS\_ACCEPTED when creating USERGROUP subshare on… (server#59813)](https://github.com/nextcloud/server/pull/59813)
- [Refactor: Cleanup files app bootstrap (server#59831)](https://github.com/nextcloud/server/pull/59831)
- [Fix: track time spent in recursive markOrRun calls (server#59857)](https://github.com/nextcloud/server/pull/59857)
- [Perf: remove needless check for changed storage id for mounts (server#59900)](https://github.com/nextcloud/server/pull/59900)
- [Perf: delay loading storage info in Cache untill needed (server#59901)](https://github.com/nextcloud/server/pull/59901)
- [Refactor(preview): remove deprecated `PreviewManager::registerProvider` API (server#59905)](https://github.com/nextcloud/server/pull/59905)
- [Fix(Files/Cache): align `MoveFromCacheTrait` fallback validation with `Cache::moveFromCache` (server#59916)](https://github.com/nextcloud/server/pull/59916)
- [Feat(settings): replace OnlyOffice with Euro-Office in office suite s… (server#59933)](https://github.com/nextcloud/server/pull/59933)
- [Add runtime operations in WFE (server#59966)](https://github.com/nextcloud/server/pull/59966)
- [Fix(repair): restrict unserialize() in RemoveBrokenProperties (server#59979)](https://github.com/nextcloud/server/pull/59979)
- [Docs(lock): clarify ILockManager API documentation (server#59984)](https://github.com/nextcloud/server/pull/59984)
- [Caldav party crasher (server#59988)](https://github.com/nextcloud/server/pull/59988)
- [Refactor(encryption): Migrate appconfig keys to typed bool IAppConfig with repair step (server#60002)](https://github.com/nextcloud/server/pull/60002)
- [Chore(i18n): Remove space in word1/word2 (server#60026)](https://github.com/nextcloud/server/pull/60026)
- [Chore(l10n): Plural needed to support multiplural languages (server#60027)](https://github.com/nextcloud/server/pull/60027)
- [Fix: missing early fail for basic auth without credentials (server#60029)](https://github.com/nextcloud/server/pull/60029)
- [Fix(encryption): Correctly report size for zero-byte encrypted files (server#60070)](https://github.com/nextcloud/server/pull/60070)
- [Fix rendering custom columns in file lists (server#60134)](https://github.com/nextcloud/server/pull/60134)
- [Feat(http-sig): Dual stack http-sig (server#60136)](https://github.com/nextcloud/server/pull/60136)
- [Fix(files\_sharing): Hide incompatible actions in shares (server#60151)](https://github.com/nextcloud/server/pull/60151)
- [Let devs choose the handler for http requests (server#60167)](https://github.com/nextcloud/server/pull/60167)
- [Fix(files): only show template picker menu entries if possible (server#60187)](https://github.com/nextcloud/server/pull/60187)
- [Test: add playwright pipeline and start migrating Cypress to Playwright (server#60194)](https://github.com/nextcloud/server/pull/60194)
- [Fix: add proper ACLs for trashbin proxys (server#60211)](https://github.com/nextcloud/server/pull/60211)
- [Feat(settings): add shared Office admin section (server#60285)](https://github.com/nextcloud/server/pull/60285)
- [Fix(AppStore/Fetcher): catch GenericFileException when reading cache file in Fetcher (server#60286)](https://github.com/nextcloud/server/pull/60286)
- [Feat: make first login event webhook compatible (server#60305)](https://github.com/nextcloud/server/pull/60305)
- [Spelling fixes (server#60316)](https://github.com/nextcloud/server/pull/60316)
- [Fix(files\_external): Move MountConfig to non-static services (server#60318)](https://github.com/nextcloud/server/pull/60318)
- [Fix(systemtags): Include leading slash in unified search tag link (server#60325)](https://github.com/nextcloud/server/pull/60325)
- [Fix(occ): set GID before UID to ensure success (server#60331)](https://github.com/nextcloud/server/pull/60331)
- [Fix(OC\_Helper): properly calculate quota of shared storages (server#60341)](https://github.com/nextcloud/server/pull/60341)
- [Fix(encryption): Refactor EncryptionWrapper (server#60344)](https://github.com/nextcloud/server/pull/60344)
- [Fix(workflowengine): use proper contrast colors for operations (server#60347)](https://github.com/nextcloud/server/pull/60347)
- [Feat(appstore): show new column with groups the app is limited to (server#60355)](https://github.com/nextcloud/server/pull/60355)
- [Feat(core): app menu polish for NC34 (server#60358)](https://github.com/nextcloud/server/pull/60358)
- [Fix: Increase limit for share/unshare requests per hour (server#60359)](https://github.com/nextcloud/server/pull/60359)
- [Fix(appstore): do not offer rating apps not on appstore (server#60360)](https://github.com/nextcloud/server/pull/60360)
- [Fix(appstore): show reason why limit app to groups is not possible (server#60361)](https://github.com/nextcloud/server/pull/60361)
- [Fix error when creating mail shares if custom tokens are enabled (server#60378)](https://github.com/nextcloud/server/pull/60378)
- [Test(settings): reduce flakiness of authorized group integration assertions (server#60379)](https://github.com/nextcloud/server/pull/60379)
- [🚀 Master is now 35 (server#60391)](https://github.com/nextcloud/server/pull/60391)
- [Fix(windmill): Fix baseUrl in background job (server#60449)](https://github.com/nextcloud/server/pull/60449)
- [Fix(dav): finalize upload metadata before post-write hooks (server#60453)](https://github.com/nextcloud/server/pull/60453)
- [Fix(appstore): fix reference to non-existing `forceEnableApp` function (server#60455)](https://github.com/nextcloud/server/pull/60455)
- [Fix(files\_sharing): do not double escape special characters (server#60457)](https://github.com/nextcloud/server/pull/60457)
- [Refactor(NavigationManager): move navigation definitions into apps (server#60458)](https://github.com/nextcloud/server/pull/60458)
- [Fix(dav): Skip removal of classified activity when not generated anymore (server#60461)](https://github.com/nextcloud/server/pull/60461)
- [Test(carddav): refactor testSearch to use clearer assertions and unique UIDs (server#60463)](https://github.com/nextcloud/server/pull/60463)
- [Fix: update cached mounts when moving share in repair step (server#60465)](https://github.com/nextcloud/server/pull/60465)
- [Fix: properly mark CleanupShareTarget as expensive (server#60466)](https://github.com/nextcloud/server/pull/60466)
- [Test(filesdrop): fix duplicate scenario titles, indentation, and add clarifying comments (server#60467)](https://github.com/nextcloud/server/pull/60467)
- [Docs(templates): fully document ITemplateManager (server#60470)](https://github.com/nextcloud/server/pull/60470)
- [Refactor(legacy): simplify getTheme and clarify legacy theme docs (server#60481)](https://github.com/nextcloud/server/pull/60481)
- [Feat: implement isSelectableGroup function to filter out unselectable groups (server#60483)](https://github.com/nextcloud/server/pull/60483)
- [Fix(files\_sharing): Use UnknownActivityException (server#60493)](https://github.com/nextcloud/server/pull/60493)
- [Add task processing streaming support (server#60500)](https://github.com/nextcloud/server/pull/60500)
- [Feat(openmetrics): export more resilient if exception happens (server#60501)](https://github.com/nextcloud/server/pull/60501)
- [Fix(settings): Show loading spinner while searching accounts (server#60504)](https://github.com/nextcloud/server/pull/60504)
- [Feat(users): Check assertion when enabling user (server#60505)](https://github.com/nextcloud/server/pull/60505)
- [Fix: remove too verbose error log line in AddExtraHeadersPlugin (server#60511)](https://github.com/nextcloud/server/pull/60511)
- [Fix(files): Chromium-based browsers drag-and-drop (server#60519)](https://github.com/nextcloud/server/pull/60519)
- [Fix(appstore): use alias for translations as `appstore` is taken by `apps.nextcloud.com` (server#60528)](https://github.com/nextcloud/server/pull/60528)
- [Fix(files): use displayname rather than basename to use progress (server#60541)](https://github.com/nextcloud/server/pull/60541)
- [Don’t put hashed password in share api response (server#60542)](https://github.com/nextcloud/server/pull/60542)
- [Fix: only allow full admins to create ‘token needed’ webhooks (server#60543)](https://github.com/nextcloud/server/pull/60543)
- [Fix: improve check if external storage backend is local (server#60544)](https://github.com/nextcloud/server/pull/60544)
- [Fix: handle NAT64 addresses in isLocalAddress (server#60546)](https://github.com/nextcloud/server/pull/60546)
- [Fix: don’t tell the remote their token is lower (server#60547)](https://github.com/nextcloud/server/pull/60547)
- [Fix: trim duplicate search results for external share (server#60587)](https://github.com/nextcloud/server/pull/60587)
- [Chore: cleanup useless files from repo (server#60590)](https://github.com/nextcloud/server/pull/60590)
- [Fix(settings): clear NcAppNavigation toggle overhang (server#60596)](https://github.com/nextcloud/server/pull/60596)
- [Chore(snowflake): add more randomness in server id fallback (server#60612)](https://github.com/nextcloud/server/pull/60612)
- [Fix(files): show proper information when a move will override the target (server#60631)](https://github.com/nextcloud/server/pull/60631)
- [Fix(caldav): grant sharee Acls to the delegate (server#60641)](https://github.com/nextcloud/server/pull/60641)
- [Refactor: Remove deprecated AutoCompleteEvent (server#60643)](https://github.com/nextcloud/server/pull/60643)
- [Fix(settings): confirm app-token revoke and preserve wipe state (server#60644)](https://github.com/nextcloud/server/pull/60644)
- [Fix: access shared and delegated trashbin objects (server#60648)](https://github.com/nextcloud/server/pull/60648)
- [Fix(http): avoid iconv for header ascii fallback (server#60649)](https://github.com/nextcloud/server/pull/60649)
- [Fix(config): add null coalescing fallback in getValueBool before strtolower (server#60654)](https://github.com/nextcloud/server/pull/60654)
- [Chore(psalm): forbid iconv (server#60655)](https://github.com/nextcloud/server/pull/60655)
- [Add fallback for Codespace environment variables (server#60663)](https://github.com/nextcloud/server/pull/60663)
- [Feat(core): Add centered search input to top bar (server#60665)](https://github.com/nextcloud/server/pull/60665)
- [Speedup share tests (server#60709)](https://github.com/nextcloud/server/pull/60709)
- [Fix(caldav-delegation): send notification to delegator (server#60712)](https://github.com/nextcloud/server/pull/60712)
- [Fix(files\_reminders): keep batch alive on per-row failure (server#60713)](https://github.com/nextcloud/server/pull/60713)
- [Fix(federation): reset retainJob at start of run() (server#60714)](https://github.com/nextcloud/server/pull/60714)
- [Fix(MailPlugin): Stop applying the offset twice and the limit per wide/exact (server#60728)](https://github.com/nextcloud/server/pull/60728)
- [Fix: Add plural form for translations (server#60732)](https://github.com/nextcloud/server/pull/60732)
- [Fix(DB): Enforce foreign key constraints in SQLite (server#60733)](https://github.com/nextcloud/server/pull/60733)
- [Feat(UserManager): Add getters for avatar URLs (server#60734)](https://github.com/nextcloud/server/pull/60734)
- [Fix(security): don’t propagate ValueError from Crypto::decrypt() fallback (server#60735)](https://github.com/nextcloud/server/pull/60735)
- [Perf(ci): cache npm dependencies in Cypress init job using buildjet cache (server#60738)](https://github.com/nextcloud/server/pull/60738)
- [Test(ci): enforce PHPUnit time limits with sensible timeout values (server#60739)](https://github.com/nextcloud/server/pull/60739)
- [Fix(encryption): recovery keys should be shown when user keys are used (server#60741)](https://github.com/nextcloud/server/pull/60741)
- [Test: replace checkbox assertions with real assertions or DoesNotPerformAssertions (server#60742)](https://github.com/nextcloud/server/pull/60742)
- [Test(db): call parent::tearDown() in DB test classes that skipped it (server#60744)](https://github.com/nextcloud/server/pull/60744)
- [Test: replace checkbox assertions with DoesNotPerformAssertions (middleware) (server#60748)](https://github.com/nextcloud/server/pull/60748)
- [Test(share20): replace addToAssertionCount checkbox tests in Share20 ManagerTest (server#60751)](https://github.com/nextcloud/server/pull/60751)
- [Test(user\_ldap): speed up AbstractMappingTestCase chunking test (server#60756)](https://github.com/nextcloud/server/pull/60756)
- [Fix(core): Hide current-app label at narrower viewports (server#60757)](https://github.com/nextcloud/server/pull/60757)
- [Test(behat): reset per-scenario state in BasicStructure and Sharing (server#60763)](https://github.com/nextcloud/server/pull/60763)
- [Background jobs improvements (server#60765)](https://github.com/nextcloud/server/pull/60765)
- [Fix(caldav): Expand recurring events for principal calendar search (server#60766)](https://github.com/nextcloud/server/pull/60766)
- [Feat: Add office as shipped app (server#60776)](https://github.com/nextcloud/server/pull/60776)
- [Feat(jobs): allow workers to keep track of executed jobs (server#60778)](https://github.com/nextcloud/server/pull/60778)
- [Feat(jobs): add command to list executed background jobs (server#60779)](https://github.com/nextcloud/server/pull/60779)
- [Refactor: Remove most usages of IAppContainer and IServerContainer (server#60780)](https://github.com/nextcloud/server/pull/60780)
- [Docs(appframework): clarify PasswordConfirmationRequired behavior in docblocks (server#60783)](https://github.com/nextcloud/server/pull/60783)
- [Fix(Storage): use `proxyexclude` parameter in DAV client (server#60787)](https://github.com/nextcloud/server/pull/60787)
- [Chore(Cache): Remove deprecated insert and update events (server#60797)](https://github.com/nextcloud/server/pull/60797)
- [Fix(encryption): Fix endpoint /ajax/userSetRecovery to support boolean (server#60801)](https://github.com/nextcloud/server/pull/60801)
- [Fix(Share): Add missing optional parameter to IManager::shareApiAllowLinks() (server#60809)](https://github.com/nextcloud/server/pull/60809)
- [Feat(search): Subdue header search input placeholder (server#60813)](https://github.com/nextcloud/server/pull/60813)
- [Fix: actually register listener for updating stored external storage credentials (server#60817)](https://github.com/nextcloud/server/pull/60817)
- [Fix(files\_sharing): clear the password after saving (server#60825)](https://github.com/nextcloud/server/pull/60825)
- [Fix(AppSearch): Always sort apps first for search (server#60827)](https://github.com/nextcloud/server/pull/60827)
- [Refactor: move release changelog workflow to releases repo (server#60829)](https://github.com/nextcloud/server/pull/60829)
- [Feat(db): add occ db:info, db:size, db:index-usage and db:locks (server#60840)](https://github.com/nextcloud/server/pull/60840)
- [Fix(files\_versions): guard null path in event listeners (server#60842)](https://github.com/nextcloud/server/pull/60842)
- [Feat(file-search): add property to SearchQuery and check select fields to decide wheter to join extended cache (server#60844)](https://github.com/nextcloud/server/pull/60844)
- [Test(cache): avoid ordering assumptions in testExtended (server#60881)](https://github.com/nextcloud/server/pull/60881)
- [Fix(TaskProcessing): restrict allowed\_classes in Manager cache deserialization (server#60884)](https://github.com/nextcloud/server/pull/60884)
- [Docs(IRequest): streamline duplicate docs + update for clarity and accuracy (server#60889)](https://github.com/nextcloud/server/pull/60889)
- [Chore(deps): Update flake to NixOS 26.05 (server#60896)](https://github.com/nextcloud/server/pull/60896)
- [Fix(core): restore app menu label, show “Settings” for sub-sections (server#60897)](https://github.com/nextcloud/server/pull/60897)
- [Fix: Make the IProvideUserSecretBackend usable (server#60898)](https://github.com/nextcloud/server/pull/60898)
- [Fix(previews): ffprobe hangs (server#60916)](https://github.com/nextcloud/server/pull/60916)
- [Docs: Add AI policy reference and starting point for agents.md (server#60922)](https://github.com/nextcloud/server/pull/60922)
- [Perf(user\_ldap): chunk oracle queries for lower bind cost (server#60930)](https://github.com/nextcloud/server/pull/60930)
- [Fix(files): make sure nested changes are propagated to sidebar tabs (server#60943)](https://github.com/nextcloud/server/pull/60943)
- [Fix(user\_ldap): allow editing profile fields not managed by LDAP (server#60948)](https://github.com/nextcloud/server/pull/60948)
- [Chore: Remove unused and long deprecated Remote components (server#60953)](https://github.com/nextcloud/server/pull/60953)
- [Chore: Deprecate IBroadcastEvent (server#60954)](https://github.com/nextcloud/server/pull/60954)
- [Refactor(server): Register alias when needed (server#60957)](https://github.com/nextcloud/server/pull/60957)
- [Fix: Files checker (server#60959)](https://github.com/nextcloud/server/pull/60959)
- [Refactor: Use new IQueryBuilder::MAX\_IN\_PARAMETERS (server#60960)](https://github.com/nextcloud/server/pull/60960)
- [Build: Dont include AGENTS.md and CLAUDE.md in release (server#60964)](https://github.com/nextcloud/server/pull/60964)
- [Job run history cleanup (server#60972)](https://github.com/nextcloud/server/pull/60972)
- [Fix: harden object store against copying a file to itself (server#60975)](https://github.com/nextcloud/server/pull/60975)
- [Fix(tests): remove integration tests that depend on deleted Remote API classes (server#60977)](https://github.com/nextcloud/server/pull/60977)
- [Fix(files\_external): prevent dropdown entries from shrinking (server#60982)](https://github.com/nextcloud/server/pull/60982)
- [Fix(settings): add loading feedback to account create/edit dialogs (server#60986)](https://github.com/nextcloud/server/pull/60986)
- [Chore: fix SearchBinaryOperator constructor type hint (server#60988)](https://github.com/nextcloud/server/pull/60988)
- [Fix(menu): Fix icon colors on waffle menu (server#60989)](https://github.com/nextcloud/server/pull/60989)
- [Fix(theming): read cachebuster as int in manifest endpoint (server#61007)](https://github.com/nextcloud/server/pull/61007)
- [Fix(preview): First cleanup from filecache and then from preview table (server#61011)](https://github.com/nextcloud/server/pull/61011)
- [Fix: use card interface instead of object (server#61017)](https://github.com/nextcloud/server/pull/61017)
- [Fix(taskprocessing): claim tasks atomically so parallel workers don’t duplicate (server#61053)](https://github.com/nextcloud/server/pull/61053)
- [Fix(NavigationManager): resolve entries only when needed (server#61055)](https://github.com/nextcloud/server/pull/61055)
- [Fix(dav): properly handle files metadata (server#61057)](https://github.com/nextcloud/server/pull/61057)
- [Ci(integration): drop stale remoteapi\_features test matrix entry (server#61063)](https://github.com/nextcloud/server/pull/61063)
- [Refactor(settings): migrate Users form sub-components to script setup (server#61064)](https://github.com/nextcloud/server/pull/61064)
- [Fix: use correct permissions mask for non-home storage public links (server#61067)](https://github.com/nextcloud/server/pull/61067)
- [Add AI policy check (server#61068)](https://github.com/nextcloud/server/pull/61068)
- [Chore: fix smbclient setup in ci (server#61069)](https://github.com/nextcloud/server/pull/61069)
- [Test: cleanup users before userbackend test (server#61071)](https://github.com/nextcloud/server/pull/61071)
- [Fix(comments): load comments styles when the comments app is loaded (server#61073)](https://github.com/nextcloud/server/pull/61073)
- [Fix(settings): Fix appstore icon color in settings menu (server#61075)](https://github.com/nextcloud/server/pull/61075)
- [Fix(comments): Use capped memory cache for comments (server#61091)](https://github.com/nextcloud/server/pull/61091)
- [Fix(files\_sharing): Use share id in file actions (server#61099)](https://github.com/nextcloud/server/pull/61099)
- [Fix: Correctly detect appid for dist css files (server#61100)](https://github.com/nextcloud/server/pull/61100)
- [Fix(core): keep app menu settings icon legible on light backgrounds (server#61109)](https://github.com/nextcloud/server/pull/61109)
- [Fix(NavigationManager): only resolve navigations of booted apps (server#61120)](https://github.com/nextcloud/server/pull/61120)
- [Fix(ocm): merge resource types by name in discovery (server#61126)](https://github.com/nextcloud/server/pull/61126)
- [Feat(TaskProcessing): add AudioToTextSubtitles TaskType (server#61127)](https://github.com/nextcloud/server/pull/61127)
- [Feat(OCP): Add Interaction API (server#61128)](https://github.com/nextcloud/server/pull/61128)
- [Build(deps): bump symfony/mailer from 6.4.31 to 6.4.40 (server#61132)](https://github.com/nextcloud/server/pull/61132)
- [Fix deprecations in tests (server#61140)](https://github.com/nextcloud/server/pull/61140)
- [Test: Warn about slow startup time for phpunit tests (server#61141)](https://github.com/nextcloud/server/pull/61141)
- [Chore(PHP): Drop 8.2 for Nextcloud 35 (server#61142)](https://github.com/nextcloud/server/pull/61142)
- [Docs(tests): Add some general documentation for PlayWright (server#61143)](https://github.com/nextcloud/server/pull/61143)
- [Chore(workflows): keep only lowest and highest supported versions of dbs (server#61144)](https://github.com/nextcloud/server/pull/61144)
- [Test(files): migrate favorites e2e from Cypress to Playwright (server#61145)](https://github.com/nextcloud/server/pull/61145)
- [Fix(mimetype): Add TSV support in mimetype aliases, mapping, and names (server#61147)](https://github.com/nextcloud/server/pull/61147)
- [Build(deps): bump symfony/dom-crawler from 6.4.32 to 7.4.12 (server#61149)](https://github.com/nextcloud/server/pull/61149)
- [Speedup tests execution (server#61150)](https://github.com/nextcloud/server/pull/61150)
- [Test(files): migrate files actions e2e from Cypress to Playwright (server#61152)](https://github.com/nextcloud/server/pull/61152)
- [Test(files): migrate recent-view and regression specs from Cypress to… (server#61153)](https://github.com/nextcloud/server/pull/61153)
- [Ci(PHP): Only test against highest and lowest supported PHP versions (server#61158)](https://github.com/nextcloud/server/pull/61158)
- [Fix(appstore): bring back “update all” button (server#61163)](https://github.com/nextcloud/server/pull/61163)
- [Test(files): migrate copy/move e2e from Cypress to Playwright (server#61165)](https://github.com/nextcloud/server/pull/61165)
- [Test(ci): Do not always run e2e tests (server#61167)](https://github.com/nextcloud/server/pull/61167)
- [Fix Memcached CI job (server#61168)](https://github.com/nextcloud/server/pull/61168)
- [Test: Add missing calls to the parent setUp method (server#61169)](https://github.com/nextcloud/server/pull/61169)
- [Test(systemtags): migrate from Cypress to PlayWright (server#61175)](https://github.com/nextcloud/server/pull/61175)
- [Fix: resolve PHP deprecation of `imagedestroy` (server#61176)](https://github.com/nextcloud/server/pull/61176)
- [Build(deps): bump phpseclib/phpseclib from 2.0.53 to 2.0.54 (server#61177)](https://github.com/nextcloud/server/pull/61177)
- [Chore: Run integration tests only on PRs as the other tests (server#61181)](https://github.com/nextcloud/server/pull/61181)
- [Fix: Fix alignment issues of app password form ( #53123 ) (server#61186)](https://github.com/nextcloud/server/pull/61186)
- [Feat(TaskProcessing): Update completionExpectedAt in Manager#setTaskProgress (server#61190)](https://github.com/nextcloud/server/pull/61190)
- [Chore: Fix reuse licence after #60840 (server#61194)](https://github.com/nextcloud/server/pull/61194)
- [Set preferStreaming default value to false for task processing tasks (server#61197)](https://github.com/nextcloud/server/pull/61197)
- [Add OCM Notification Received Event (server#61201)](https://github.com/nextcloud/server/pull/61201)
- [Fix: Psalm errors from #60840 (server#61208)](https://github.com/nextcloud/server/pull/61208)
- [Chore: apply code style (server#61214)](https://github.com/nextcloud/server/pull/61214)
- [Style(PHP): Fix (server#61216)](https://github.com/nextcloud/server/pull/61216)
- [Test(core): migrate end-to-end test to PlayWright (server#61217)](https://github.com/nextcloud/server/pull/61217)
- [Test(playwright): fix local test server config for SQLite runs (server#61218)](https://github.com/nextcloud/server/pull/61218)
- [Test(files): migrate files/trashbin e2e from Cypress to Playwright (server#61219)](https://github.com/nextcloud/server/pull/61219)
- [Test(files): migrate files selection e2e from Cypress to Playwright (server#61221)](https://github.com/nextcloud/server/pull/61221)
- [Test(files): migrate files download e2e from Cypress to Playwright (server#61223)](https://github.com/nextcloud/server/pull/61223)
- [Test(login): migrate end-to-end tests to PlayWright (server#61225)](https://github.com/nextcloud/server/pull/61225)
- [Fix: Fix PHP Warning foreach() argument must be of type array|object, null given (server#61245)](https://github.com/nextcloud/server/pull/61245)
- [Chore: bump MySQL to min 8.4 and support 9.7 (server#61247)](https://github.com/nextcloud/server/pull/61247)
- [Fix(theming): preserve uploaded favicon and touch icon (server#61253)](https://github.com/nextcloud/server/pull/61253)
- [Fix(files\_versions): avoid version snapshot races during cross-storage renames (server#61254)](https://github.com/nextcloud/server/pull/61254)
- [Test(s3): fix flaky EOF check and remove PHP 8.5 skip (server#61275)](https://github.com/nextcloud/server/pull/61275)
- [Chore: Update AI-policy workflow (server#61280)](https://github.com/nextcloud/server/pull/61280)
- [Fix: Drop PHP 8.2 in Nextcloud 35 in 3rdparty/ (server#61281)](https://github.com/nextcloud/server/pull/61281)
- [Feat(oauth2): Add commands for adding and deleting clients (server#61289)](https://github.com/nextcloud/server/pull/61289)
- [Fix(twofactor\_backupcodes): Add a clean helper to set code as used (server#61292)](https://github.com/nextcloud/server/pull/61292)
- [Fix(caldav): respect federation settings (server#61293)](https://github.com/nextcloud/server/pull/61293)
- [Fix(maintenance): allow AppAPI to serve requests during maintenance mode (server#61294)](https://github.com/nextcloud/server/pull/61294)
- [Fix: Use token expiration for ephemeral sessions (server#61295)](https://github.com/nextcloud/server/pull/61295)
- [Fix(files\_sharing): remove leading slash from filename on unshare toast (server#61303)](https://github.com/nextcloud/server/pull/61303)
- [Fix(team-manager): ensure team resources are only retrived for members (server#61308)](https://github.com/nextcloud/server/pull/61308)
- [Fix(ocm-add-share): adjust domain validation (server#61310)](https://github.com/nextcloud/server/pull/61310)
- [Fix(files\_external): Allow editing auth mechanism on saved mounts (server#61312)](https://github.com/nextcloud/server/pull/61312)
- [Fix(user\_ldap): Escape filter part when searching for group members (server#61320)](https://github.com/nextcloud/server/pull/61320)
- [Fix: Do not set last-password-confirm for apptoken sessions (server#61322)](https://github.com/nextcloud/server/pull/61322)
- [Fix(files): Open the sidebar for the current folder, not a stale child (server#61330)](https://github.com/nextcloud/server/pull/61330)
- [Fix: ensure file names are string-typed (server#61332)](https://github.com/nextcloud/server/pull/61332)
- [Fix: prevent editing delegated admins (server#61368)](https://github.com/nextcloud/server/pull/61368)
- [Fix(OCM): Remove comment meant only for OCP APIs (server#61399)](https://github.com/nextcloud/server/pull/61399)
- [Fix(settings): show app menu current-app button on settings pages (server#61406)](https://github.com/nextcloud/server/pull/61406)
- [Chore: Sync codeowner with our internal organisation (server#61407)](https://github.com/nextcloud/server/pull/61407)
- [Fix(auth): log invalid token during password reset (server#61408)](https://github.com/nextcloud/server/pull/61408)
- [Fix: Use a CappedMemoryCache for UserConfig to avoid memory exhaustion (server#61413)](https://github.com/nextcloud/server/pull/61413)
- [Fix(migrations): Trigger recently added migrations (server#61428)](https://github.com/nextcloud/server/pull/61428)
- [Fix(files): remove leading slash from destination in copy/move toast (server#61435)](https://github.com/nextcloud/server/pull/61435)
- [Perf: Only sort wrappers when adding them (server#61438)](https://github.com/nextcloud/server/pull/61438)
- [Perf(View): don’t sort twice the same array (server#61440)](https://github.com/nextcloud/server/pull/61440)
- [Fix(files\_trashbin): create folder if missing when expiring trash (server#61442)](https://github.com/nextcloud/server/pull/61442)
- [Docs(config): clarify metadata and conversion file size limits (server#61478)](https://github.com/nextcloud/server/pull/61478)
- [Fix(dav): Always show example content section (server#61483)](https://github.com/nextcloud/server/pull/61483)
- [Fix(dav): Handle GenericFileException when reading default contact file (server#61485)](https://github.com/nextcloud/server/pull/61485)
- [Fix: Remove uses of deprecated service string names (server#61489)](https://github.com/nextcloud/server/pull/61489)
- [Fix: webhook payload for system tag events (server#61490)](https://github.com/nextcloud/server/pull/61490)
- [Feat: Make it possible to add a storage wrapper using public APIs (server#61493)](https://github.com/nextcloud/server/pull/61493)
- [Fix(ViewOnlyPlugin): Allow COPY and MOVE operations within the same storage (server#61497)](https://github.com/nextcloud/server/pull/61497)
- [Fix(onetime-qrcode): Remove password confirmation attribute (server#61501)](https://github.com/nextcloud/server/pull/61501)
- [Fix(settings): correct heading order in account management sidebar (server#61505)](https://github.com/nextcloud/server/pull/61505)
- [Fix(files): distinguish between files and folders for validation messages (server#61506)](https://github.com/nextcloud/server/pull/61506)
- [Perf: block more properties from using the custom properties backend (server#61509)](https://github.com/nextcloud/server/pull/61509)
- [Fix the ScanFiles job to not trigger scans of root directory for every single user (server#61511)](https://github.com/nextcloud/server/pull/61511)
- [Chore(tests): adjust PlayWright tests to follow ESLint rules (server#61513)](https://github.com/nextcloud/server/pull/61513)
- [Chore(comments): resolve ESLint warnings (server#61516)](https://github.com/nextcloud/server/pull/61516)
- [Fix: stop calling DI container in SharedStorage (server#61517)](https://github.com/nextcloud/server/pull/61517)
- [Feat: Add support for `NOT ILIKE` in query builder expressions (server#61521)](https://github.com/nextcloud/server/pull/61521)
- [Test(settings): migrate end-to-end tests from Cypress to PlayWright (server#61522)](https://github.com/nextcloud/server/pull/61522)
- [Perf: avoid DIing IRootFolder at every shared storage init (server#61530)](https://github.com/nextcloud/server/pull/61530)
- [Perf(log): normalize log data only when logging (server#61532)](https://github.com/nextcloud/server/pull/61532)
- [Fix(Collaborators): Fix matching emails to remote users if no remote results are present (server#61534)](https://github.com/nextcloud/server/pull/61534)
- [Chore(ISecureRandom): Deprecate generate() in favor of Randomizer::getBytesFromString() (server#61538)](https://github.com/nextcloud/server/pull/61538)
- [Refactor: Soft remove Emitter from IRootFolder interface (server#61539)](https://github.com/nextcloud/server/pull/61539)
- [Feat(share): add public share-review API under OCP\Share\ShareReview (server#61543)](https://github.com/nextcloud/server/pull/61543)
- [Refactor: Expose a public exception when no user is found (server#61544)](https://github.com/nextcloud/server/pull/61544)
- [Fix(db): add support for MariaDB 12.3 LTS and increase min. to 10.11 (server#61554)](https://github.com/nextcloud/server/pull/61554)
- [Fix(cache): make clear() redis cluster compatible (server#61559)](https://github.com/nextcloud/server/pull/61559)
- [Refactor: consolidate app loading logic in bootstrap process (server#61560)](https://github.com/nextcloud/server/pull/61560)
- [Feat(TaskProcessing): Add AudioToAudioTranslate TaskType (server#61564)](https://github.com/nextcloud/server/pull/61564)
- [Fix(psalm-strict): Fix lib exclusions (server#61565)](https://github.com/nextcloud/server/pull/61565)
- [Feat: mark legacy ai providers (server#61567)](https://github.com/nextcloud/server/pull/61567)
- [Fix(files\_external): ignore deprecated backends (server#61568)](https://github.com/nextcloud/server/pull/61568)
- [Fix(files\_external): properly apply default mount options (server#61573)](https://github.com/nextcloud/server/pull/61573)
- [Fix(updatenotification): use correct appstore route (server#61574)](https://github.com/nextcloud/server/pull/61574)
- [Fix(core): use proper API routes for recommended apps (server#61575)](https://github.com/nextcloud/server/pull/61575)
- [Fix(appstore): use proper app icon or adjust color if needed (server#61577)](https://github.com/nextcloud/server/pull/61577)
- [Fix(appstore): only show appstore entries if actual from appstore (server#61578)](https://github.com/nextcloud/server/pull/61578)
- [Fix(psalm): Set PHP version to 8.3 (server#61583)](https://github.com/nextcloud/server/pull/61583)
- [Fix(settings): display birthday correctly regardless of browsers timezone (server#61586)](https://github.com/nextcloud/server/pull/61586)
- [Fix(a11y): label account QR code button (server#61600)](https://github.com/nextcloud/server/pull/61600)
- [Fix(config): Decrypt sensitive appconfigs when requested (server#61608)](https://github.com/nextcloud/server/pull/61608)
- [Refactor(tests): cleanup PlayWright tests (server#61614)](https://github.com/nextcloud/server/pull/61614)
- [Fix(core): Throttle lost-password reset form when link is disabled (server#61615)](https://github.com/nextcloud/server/pull/61615)
- [Refactor(taskprocessing): mark built-in text task types as internal and deprecated if needed (server#61616)](https://github.com/nextcloud/server/pull/61616)
- [Fix(files\_external/SMB): Use ‘null’ explicitly for no workgroup (server#61622)](https://github.com/nextcloud/server/pull/61622)
- [Fix(theming): allow to unselect a font theme (server#61627)](https://github.com/nextcloud/server/pull/61627)
- [Fix(core): reduce header height (server#61628)](https://github.com/nextcloud/server/pull/61628)
- [Refactor(preview): align provider lookup in PreviewManager checks (server#61629)](https://github.com/nextcloud/server/pull/61629)
- [Fix(files\_sharing): reject custom share tokens longer than the db column (server#61630)](https://github.com/nextcloud/server/pull/61630)
- [Docs(preview): improve IPreview and IProviderV2 interface docs (server#61632)](https://github.com/nextcloud/server/pull/61632)
- [Fix(LoginForm): improve login throttle warning wording (server#61636)](https://github.com/nextcloud/server/pull/61636)
- [Fix(settings): in absence form avoid shifting dates to browsers timezone (server#61638)](https://github.com/nextcloud/server/pull/61638)
- [Fix(dav): Load ProfilerPlugin only when profiler is enabled (server#61639)](https://github.com/nextcloud/server/pull/61639)
- [Chore: Remove redundant assignment (server#61641)](https://github.com/nextcloud/server/pull/61641)
- [Fix(core): scope public share theme filter to the download icon (server#61648)](https://github.com/nextcloud/server/pull/61648)
- [Chore(jobs): write proper documentation for job:history (server#61657)](https://github.com/nextcloud/server/pull/61657)
- [Fix(files): proper accessible row name and title for overflow (server#61658)](https://github.com/nextcloud/server/pull/61658)
- [Fix(dav): return RFC 4791 no-uid-conflict on duplicate calendar UID (server#61659)](https://github.com/nextcloud/server/pull/61659)
- [Update script to latest (server#61660)](https://github.com/nextcloud/server/pull/61660)
- [Fix(core): resolve some edge cases with recommended apps (server#61663)](https://github.com/nextcloud/server/pull/61663)
- [Test(files\_external): migrate end-to-end tests to PlayWright (server#61665)](https://github.com/nextcloud/server/pull/61665)
- [Fix(core): keep the header search input in document flow (server#61668)](https://github.com/nextcloud/server/pull/61668)
- [Sync ai-policy with org template (server#61669)](https://github.com/nextcloud/server/pull/61669)
- [Fix(rector): Don’t use AddSeeTestAnnotationRector in rector strict (server#61670)](https://github.com/nextcloud/server/pull/61670)
- [Fix: hide scroll bar in unified search when not needed (server#61679)](https://github.com/nextcloud/server/pull/61679)
- [Fix(dav): Do not respond version/trashbin download requests with 404 due to ChunkingV2Plugin (server#61680)](https://github.com/nextcloud/server/pull/61680)
- [Feat(bruteforce): improve bruteforce protection command output (server#61682)](https://github.com/nextcloud/server/pull/61682)
- [Feat(TaskProcessing): add TextToTextImprove to improve or iterate on text (server#61683)](https://github.com/nextcloud/server/pull/61683)
- [Fix(bruteforce): Don’t throttle requests with failing CSRF (server#61686)](https://github.com/nextcloud/server/pull/61686)
- [Fix: adjust file picker for background image to allow folder navigation (server#61688)](https://github.com/nextcloud/server/pull/61688)
- [Store taskprocessing output files with extension to ease mimtype guessing (server#61689)](https://github.com/nextcloud/server/pull/61689)
- [Feat: KV cache based on predis (server#61690)](https://github.com/nextcloud/server/pull/61690)
- [Build(deps): Composer audit updates (server#61696)](https://github.com/nextcloud/server/pull/61696)
- [Fix(db): align preview migration annotations with created tables (server#61705)](https://github.com/nextcloud/server/pull/61705)
- [Perf(db): drop redundant db-side migrations version sorting (server#61707)](https://github.com/nextcloud/server/pull/61707)
- [Docs(config): fix unbalanced inline literal in remember-me sample com… (server#61719)](https://github.com/nextcloud/server/pull/61719)
- [Ci: Add lables via rest api (server#61735)](https://github.com/nextcloud/server/pull/61735)
- [Docs(ratelimit): add missing @param documentation (server#61736)](https://github.com/nextcloud/server/pull/61736)
- [Docs(JS): fix typo in function name (server#61746)](https://github.com/nextcloud/server/pull/61746)
- [Test(files): migrate end-to-end tests to PlayWright (server#61751)](https://github.com/nextcloud/server/pull/61751)
- [Ci(dependabot): restore build/frontend dirs for stable33 npm updates (server#61806)](https://github.com/nextcloud/server/pull/61806)
- [Chore(deps): Bump postcss from 8.5.6 to 8.5.16 in /build/frontend-legacy (server#61823)](https://github.com/nextcloud/server/pull/61823)
- [Fix(jobs): resolve portability issues with background job cleanup (server#61830)](https://github.com/nextcloud/server/pull/61830)
- [Perf: Don’t fetch full group object in AuthorizedGroupMapper (server#61838)](https://github.com/nextcloud/server/pull/61838)
- [Fix(Sharing): Don’t break cache entry by setting path to null (server#61841)](https://github.com/nextcloud/server/pull/61841)
- [Fix(DeclarativeManager): Fix admin delegation (server#61845)](https://github.com/nextcloud/server/pull/61845)
- [Ci: Update policy check to org-latest (server#61847)](https://github.com/nextcloud/server/pull/61847)
- [Build(rector-strict): Bump PHP set to 8.3 (server#61848)](https://github.com/nextcloud/server/pull/61848)
- [Feat(core): header-anchored combobox shell for unified search (server#61849)](https://github.com/nextcloud/server/pull/61849)
- [Fix(metadata): bind chunked file ids (server#61857)](https://github.com/nextcloud/server/pull/61857)
- [Test: fix HEIC tests (server#61858)](https://github.com/nextcloud/server/pull/61858)
- [Fix(dav): release part-file lock when an upload fails (server#61863)](https://github.com/nextcloud/server/pull/61863)
- [Feat: Disable callable serialization in sabre/xml (server#61866)](https://github.com/nextcloud/server/pull/61866)
- [Fix(auth): confine OCM access token to the masked share endpoint (server#61870)](https://github.com/nextcloud/server/pull/61870)
- [Fix(jobs): compute memory usage after clean-up (server#61877)](https://github.com/nextcloud/server/pull/61877)
- [Fix(settings): missing end of html tag (server#61880)](https://github.com/nextcloud/server/pull/61880)
- [Fix(CalDav): Force trashbin deletion when re-creating item with same UID (server#61881)](https://github.com/nextcloud/server/pull/61881)
- [Test(installer): migrate end-to-end tests to PlayWright (server#61883)](https://github.com/nextcloud/server/pull/61883)
- [Perf: Replace more calls from getUserGroups to getUserGroupIds (server#61904)](https://github.com/nextcloud/server/pull/61904)
- [Fix(files\_sharing): preserve unmasked permissions as scan\_permissions (server#61905)](https://github.com/nextcloud/server/pull/61905)
- [Perf: Don’t fetch all the trash items when deleting a single item (server#61906)](https://github.com/nextcloud/server/pull/61906)
- [Feat(files\_sharing): schedule external share scan job when accepted (server#61908)](https://github.com/nextcloud/server/pull/61908)
- [Fix(s3): trim multiple spaces to single space in original path header (server#61914)](https://github.com/nextcloud/server/pull/61914)
- [Feat: Fetch groups in batch in getUserGroups (server#61916)](https://github.com/nextcloud/server/pull/61916)
- [Fix: Catch expected NotFoundException (server#61917)](https://github.com/nextcloud/server/pull/61917)
- [Fix(files\_sharing): Fail on sharing file with create or delete permission before failing on increased permissions (server#61929)](https://github.com/nextcloud/server/pull/61929)
- [Fix(files): use proper translation templates (server#61931)](https://github.com/nextcloud/server/pull/61931)
- [Fix(files): do not let a failing move hook break the move or hide files (server#61937)](https://github.com/nextcloud/server/pull/61937)
- [Refactor(Interaction): Allow multiple resources and receivers in a single event (server#61938)](https://github.com/nextcloud/server/pull/61938)
- [Feat(core): add unified search loading controller (server#61941)](https://github.com/nextcloud/server/pull/61941)
- [Feat(login): clean remember me tokens (server#61944)](https://github.com/nextcloud/server/pull/61944)
- [Refactor: Centralize logic for checking if a share is password protected (server#61946)](https://github.com/nextcloud/server/pull/61946)
- [Ci: migrate from buildjet to cache action (server#61947)](https://github.com/nextcloud/server/pull/61947)
- [Fix(preview): Handle unique constraints violation exception (server#61950)](https://github.com/nextcloud/server/pull/61950)
- [Feat(occ): improve config:list help text/descriptions (server#61953)](https://github.com/nextcloud/server/pull/61953)
- [Perf(carddav): reduce disk usage of photocache (server#61957)](https://github.com/nextcloud/server/pull/61957)
- [Fix: Output shape validation will delete keys when there is a list of files (server#61962)](https://github.com/nextcloud/server/pull/61962)
- [Feat: Add MultimodalChatWithTools and MultimodalContextAgentInteraction (server#61963)](https://github.com/nextcloud/server/pull/61963)
- [Fix(systemtags): correct @since tag for sanitizeWordsAndEmojis (server#61966)](https://github.com/nextcloud/server/pull/61966)
- [Fix(UserPlugin): Don’t return mail matches on user id search (server#61981)](https://github.com/nextcloud/server/pull/61981)
- [Fix(UserPlugin): Don’t search for displayname when restricted (server#61982)](https://github.com/nextcloud/server/pull/61982)
- [Fix(UserPlugin): Don’t return disabled users on user ID and mail match (server#61984)](https://github.com/nextcloud/server/pull/61984)
- [Fix(encryption): bind personal private key password inputs (server#62027)](https://github.com/nextcloud/server/pull/62027)
- [Chore(playwright): Wait for server response before checking sorting result (server#62032)](https://github.com/nextcloud/server/pull/62032)
- [Chore(playwright): Rewrite password confirmation handler to avoid race conditions (server#62033)](https://github.com/nextcloud/server/pull/62033)
- [Chore(tests): Fix broken rector run due to conflict with psalm (server#62034)](https://github.com/nextcloud/server/pull/62034)
- [Chore(tests): Fix flaky nodb tests due to `AlgorithmTest` (server#62035)](https://github.com/nextcloud/server/pull/62035)
- [Feat(ITeamManager): Add getTeam method (server#62038)](https://github.com/nextcloud/server/pull/62038)
- [Perf(workflow): Implement result cache for IP checks (server#62039)](https://github.com/nextcloud/server/pull/62039)
- [Fix(caldav): url-encode owner/user in activity event links (server#62063)](https://github.com/nextcloud/server/pull/62063)
- [Improve logout url generation (server#62081)](https://github.com/nextcloud/server/pull/62081)
- [Fix(FilesWidget): allow to resize widget vertically (server#62089)](https://github.com/nextcloud/server/pull/62089)
- [Rate limiting for creating federated shares (server#62091)](https://github.com/nextcloud/server/pull/62091)
- [Fix(files\_sharing): Allow access to shares by disabled users if hide\_disabled\_user\_shares is enabled (server#62092)](https://github.com/nextcloud/server/pull/62092)
- [Feat(core): drive the unified search modal from the search controller (server#62093)](https://github.com/nextcloud/server/pull/62093)
- [Fix(KeyValueCache): allow negative TTL for file locking (server#62114)](https://github.com/nextcloud/server/pull/62114)
- [Fix: Disable imagick preview providers (server#62145)](https://github.com/nextcloud/server/pull/62145)
- [Feat(core): keyboard navigation and focus shortcut for unified search (server#62157)](https://github.com/nextcloud/server/pull/62157)
- [Fix(preview): properly handle encoded content (server#62162)](https://github.com/nextcloud/server/pull/62162)
- [Fix(AmazonS3): pass S3 error messages through to the frontend (server#62163)](https://github.com/nextcloud/server/pull/62163)
- [Perf(dav): Stream PROPFIND output (server#62164)](https://github.com/nextcloud/server/pull/62164)
- [Chore: undeprecate the redis cache backend (server#62195)](https://github.com/nextcloud/server/pull/62195)
- [Fix(files\_version): mtime confusion on milliseconds (server#62204)](https://github.com/nextcloud/server/pull/62204)
- [Occ file command enhancements (server#62207)](https://github.com/nextcloud/server/pull/62207)
- [Fix: don’t die if we can’t encode file metadata on upload (server#62208)](https://github.com/nextcloud/server/pull/62208)
- [Use stricter types on a few classes (server#62228)](https://github.com/nextcloud/server/pull/62228)
- [Feat(Dispatcher): Warn about open transaction after controller method was executed (server#62232)](https://github.com/nextcloud/server/pull/62232)
- [Fix(SetupChecks): Link to task processing worker docs (server#62240)](https://github.com/nextcloud/server/pull/62240)
- [Add Unified Sharing (server#62241)](https://github.com/nextcloud/server/pull/62241)
- [Fix(theming): mark background button text as English (server#62242)](https://github.com/nextcloud/server/pull/62242)
- [Fix(TaskProcessing): Claim tasks atomically in both SynchronousBackgr… (server#62243)](https://github.com/nextcloud/server/pull/62243)
- [Fix(dashboard): update scrollbar contrast on background (server#62244)](https://github.com/nextcloud/server/pull/62244)
- [Fix(files): properly handle folders without permissions (server#62254)](https://github.com/nextcloud/server/pull/62254)
- [Fix(files): preserve encryptedVersion when copying cache entries (server#62255)](https://github.com/nextcloud/server/pull/62255)
- [Fix(appstore): initialize the exApps store when enabled (server#62276)](https://github.com/nextcloud/server/pull/62276)
- [Test: mark installation tests as slow (server#62282)](https://github.com/nextcloud/server/pull/62282)
- [Test(users): prevent flaky tests with hardcoded values (server#62283)](https://github.com/nextcloud/server/pull/62283)
- [Test(files): wait for PUT before continue with tests (server#62284)](https://github.com/nextcloud/server/pull/62284)
- [Test(files): wait for actual requests when deleting files (server#62286)](https://github.com/nextcloud/server/pull/62286)
- [Test(TestCase): restore unregistered services correctly (server#62326)](https://github.com/nextcloud/server/pull/62326)
- [Test(files): make watcher propagation mtime regression test deterministic (server#62329)](https://github.com/nextcloud/server/pull/62329)
- [Fix(core): handle parameter limits in files metadata deletion (server#62331)](https://github.com/nextcloud/server/pull/62331)
- [Refactor: Add type annotations to middlewares (server#62334)](https://github.com/nextcloud/server/pull/62334)
- [Use constructor properties in Sharing (server#62335)](https://github.com/nextcloud/server/pull/62335)
- [Fix: Mark some parameters as sensitive (server#62336)](https://github.com/nextcloud/server/pull/62336)
- [Perf(ShareUser): Only fetch display name instead of user object (server#62341)](https://github.com/nextcloud/server/pull/62341)
- [Perf(user-display-name): Check memory cache before trying redis (server#62353)](https://github.com/nextcloud/server/pull/62353)
- [Fix(SharingBackend): Call ISharePropertyTypeModifyValue::modifyValueOnSave when saving default value (server#62354)](https://github.com/nextcloud/server/pull/62354)
- [Feat(files\_sharing): fetch remote avatars for external shares (server#62355)](https://github.com/nextcloud/server/pull/62355)
- [Fix(sharing): Set REUSE annotations for l10n (server#62356)](https://github.com/nextcloud/server/pull/62356)
- [Feat(core): reveal unified search filters from the input (server#62359)](https://github.com/nextcloud/server/pull/62359)
- [Fix(PasswordSharePropertyType): Generate default password when passwords are required (server#62360)](https://github.com/nextcloud/server/pull/62360)
- [Fix(files): Prevent corruption of files when moving from encrypted to unencrypted folders within the same object storage (server#62364)](https://github.com/nextcloud/server/pull/62364)
- [Don’t fill the pagination cache if there are no extra items (server#62365)](https://github.com/nextcloud/server/pull/62365)
- [Fix(TeamShareRecipientType): Defer getting CirclesManager class as it might not exist yet (server#62366)](https://github.com/nextcloud/server/pull/62366)
- [Fix: allow Enter on public share Download link (server#62367)](https://github.com/nextcloud/server/pull/62367)
- [Fix(files\_sharing): skip unresolvable share recipients (server#62368)](https://github.com/nextcloud/server/pull/62368)
- [Fix(share): do not re-accept rejected shares (server#62373)](https://github.com/nextcloud/server/pull/62373)
- [Fix(search): Add end date for last 7 and last 30 days (server#62375)](https://github.com/nextcloud/server/pull/62375)
- [Perf(files\_external): pipeline SFTP stream writes (server#62377)](https://github.com/nextcloud/server/pull/62377)
- [Fix(Sharing): Fix l10n interpolation (server#62393)](https://github.com/nextcloud/server/pull/62393)
- [Feat(Sharing): Fallback to guest avatar if recipient provides no icon (server#62397)](https://github.com/nextcloud/server/pull/62397)
- [Ci: update workflows from organization (server#62407)](https://github.com/nextcloud/server/pull/62407)
- [Fix(CleanupLoginTokens): Specify the table (server#62408)](https://github.com/nextcloud/server/pull/62408)
- [Fix: Don’t add empty and broken ExternalShareScanJob on upgrade (server#62412)](https://github.com/nextcloud/server/pull/62412)
- [Test(files\_versions): migrate end-to-end tests to PlayWright (server#62423)](https://github.com/nextcloud/server/pull/62423)
- [Fix(background-jobs): preserve Snowflake IDs as strings (server#62425)](https://github.com/nextcloud/server/pull/62425)
- [Fix: multimodal chatwithtools was not made internal (server#62426)](https://github.com/nextcloud/server/pull/62426)

---

<div class="post-metadata">

**Author:** ![blizzz](https://help.nextcloud.com/user_avatar/help.nextcloud.com/blizzz/32/133_2.png) [@blizzz](https://help.nextcloud.com/u/blizzz)\
**Post date:** [August 11, 2026, 4:11pm UTC](https://help.nextcloud.com/t/first-beta-release-of-nextcloud-hub-26-summer-v35/248008/2 "2026-08-11T16:11:27Z")

</div>

##### [server](https://github.com/nextcloud/server) (continued)

- [Feat: allow specifying applicable users and groups in the files\_external:create command (server#62431)](https://github.com/nextcloud/server/pull/62431)
- [Fix(Sharing): Use positional parameters in property validation error messages (server#62432)](https://github.com/nextcloud/server/pull/62432)
- [Fix(SharingManager): Skip interaction checks if checks are overridden (server#62444)](https://github.com/nextcloud/server/pull/62444)
- [Fix(onetime-qrcode): Fix onetime QR code with 2FA enable (server#62445)](https://github.com/nextcloud/server/pull/62445)
- [Fix(Sharing): Enable node download permission by default (server#62454)](https://github.com/nextcloud/server/pull/62454)
- [Fix(Sharing): Remove faulty check if required properties have a defaut value (server#62455)](https://github.com/nextcloud/server/pull/62455)
- [Fix(Sharing): Compute required, default and max expiration date based on recipients (server#62464)](https://github.com/nextcloud/server/pull/62464)
- [Fix(IRegistrationContext): Fix type hinting (server#62475)](https://github.com/nextcloud/server/pull/62475)
- [Feat: introduce a function to bind a teamfolder to a team (server#62476)](https://github.com/nextcloud/server/pull/62476)
- [Fix: Use PHP\_AUTH\_PW for strict password confirmation (server#62477)](https://github.com/nextcloud/server/pull/62477)
- [Feat(webauthn): Skip 2FA for user verified logins (server#62540)](https://github.com/nextcloud/server/pull/62540)
- [Http-sig: Update http message signatures for OCM after spec review (server#62543)](https://github.com/nextcloud/server/pull/62543)
- [Fix(rector-strict): Ignore wrong cases of RemoveReturnTagIncompatibleWithNativeTypeRector (server#62548)](https://github.com/nextcloud/server/pull/62548)
- [Feat(Sharing): Allow omitting existing recipients when searching for recipients (server#62550)](https://github.com/nextcloud/server/pull/62550)
- [Perf: Use hash map to check if path was already checked (server#62552)](https://github.com/nextcloud/server/pull/62552)
- [Chore(Sharing): Fix some typos (server#62556)](https://github.com/nextcloud/server/pull/62556)
- [Perf: Don’t construct Config object twice (server#62559)](https://github.com/nextcloud/server/pull/62559)
- [Fix(imip): add context to imip log messages (server#62561)](https://github.com/nextcloud/server/pull/62561)
- [Optimize propagator (server#62562)](https://github.com/nextcloud/server/pull/62562)
- [Fix: correct spelling errors in comments (server#62564)](https://github.com/nextcloud/server/pull/62564)
- [Build(deps): bump guzzlehttp/guzzle to 7.15.2 (server#62585)](https://github.com/nextcloud/server/pull/62585)
- [Fix: throw better error message if a user doesn’t have a key even though it should have (server#62586)](https://github.com/nextcloud/server/pull/62586)
- [Test: migrate remaining e2e tests to PlayWright (server#62592)](https://github.com/nextcloud/server/pull/62592)
- [More logging around partfile rename failures (server#62594)](https://github.com/nextcloud/server/pull/62594)
- [CI/Test fixes for unified sharing (server#62596)](https://github.com/nextcloud/server/pull/62596)
- [Fix(Sharing): Improve date error messages (server#62598)](https://github.com/nextcloud/server/pull/62598)
- [Add hints for password and expiration date if they are required (server#62599)](https://github.com/nextcloud/server/pull/62599)
- [Chore(previews): add file signature check before opening files (server#62600)](https://github.com/nextcloud/server/pull/62600)
- [Perf(preview): Optimize retriving all previews from oc\_filecache (server#62601)](https://github.com/nextcloud/server/pull/62601)
- [Fix(Sharing): Pass ShareUser instead of IUser (server#62602)](https://github.com/nextcloud/server/pull/62602)
- [Feat(core): redesign unified search result presentation (server#62605)](https://github.com/nextcloud/server/pull/62605)
- [Test(version-check): Fix flaky test (server#62609)](https://github.com/nextcloud/server/pull/62609)
- [Feat: Add missing NoSubAdminRequired attribute (server#62610)](https://github.com/nextcloud/server/pull/62610)
- [Preparations for files\_sharing legacy backend (server#62613)](https://github.com/nextcloud/server/pull/62613)
- [Migrate the dashboard app to Vue 3 (server#62624)](https://github.com/nextcloud/server/pull/62624)
- [Migrate weather status to vue3 (server#62625)](https://github.com/nextcloud/server/pull/62625)
- [Test: reduce flakyness of files version tests (server#62627)](https://github.com/nextcloud/server/pull/62627)
- [Refactor(Sharing): Move from OCP to NCU (server#62640)](https://github.com/nextcloud/server/pull/62640)
- [Feat: profile mobile view (server#62646)](https://github.com/nextcloud/server/pull/62646)
- [Fix(systemTags): setObjectIdsForTag() dispatches once (server#62647)](https://github.com/nextcloud/server/pull/62647)
- [Expend a bit OCP\GlobalScale\IConfig (server#62660)](https://github.com/nextcloud/server/pull/62660)
- [Fix(encryption): handle decryption exception with outdated passwords (server#62666)](https://github.com/nextcloud/server/pull/62666)
- [Fix(MemcachedFactory): Enable TCP\_NODELAY and adjust default timeouts to be reasonable (server#62670)](https://github.com/nextcloud/server/pull/62670)
- [Chore: remove deprecated global aliases for OC functions (server#62674)](https://github.com/nextcloud/server/pull/62674)
- [Chore: remove deprecated global libraries (server#62677)](https://github.com/nextcloud/server/pull/62677)
- [Fix(dashboard): use non-deprecated functions + make tests work at night (server#62682)](https://github.com/nextcloud/server/pull/62682)
- [Feat(oauth2): Forward app tokens from primary to secondary in global scale (server#62687)](https://github.com/nextcloud/server/pull/62687)
- [Test: resolve potential flaky Playwright tests (server#62688)](https://github.com/nextcloud/server/pull/62688)
- [Fix(Database): Use real idle-timer to prevent `lastInsertId` being reset on MariaDB/MySQL (server#62697)](https://github.com/nextcloud/server/pull/62697)
- [Fix(console): write app command loading errors to stderr (server#62718)](https://github.com/nextcloud/server/pull/62718)
- [Fix(imip): don’t report success when a calendar cannot process iMip (server#62722)](https://github.com/nextcloud/server/pull/62722)
- [Fix(share-api-controller): add sanity check on canAccessShare for circle share types (server#62724)](https://github.com/nextcloud/server/pull/62724)
- [Fix(setup): make sure CAN\_INSTALL error page is shown (server#62765)](https://github.com/nextcloud/server/pull/62765)
- [Fix(provisioning\_api): read newUser.sendEmail as a boolean (server#62776)](https://github.com/nextcloud/server/pull/62776)
- [Fix(dav): properly finalize with MOVE only (server#62786)](https://github.com/nextcloud/server/pull/62786)
- [Chore: Apply rector:strict ruleset (server#62794)](https://github.com/nextcloud/server/pull/62794)
- [Fix: improve logging when failing to get newly created user (server#62795)](https://github.com/nextcloud/server/pull/62795)
- [Test(net): Add more ip classifier test cases (server#62797)](https://github.com/nextcloud/server/pull/62797)
- [Fix: handle sftp private key as password (server#62805)](https://github.com/nextcloud/server/pull/62805)
- [Fix: clear key password after loading key (server#62806)](https://github.com/nextcloud/server/pull/62806)
- [Check free space in the proper folder when restoring from trash (server#62807)](https://github.com/nextcloud/server/pull/62807)
- [Fix: disable direct link if link shares are disabled (server#62809)](https://github.com/nextcloud/server/pull/62809)
- [Fix: require admin permissions for all systemtag updates (server#62810)](https://github.com/nextcloud/server/pull/62810)
- [Host/ip validator hardenings (server#62811)](https://github.com/nextcloud/server/pull/62811)
- [Hide personal settings of apps not enabled for the user (server#62852)](https://github.com/nextcloud/server/pull/62852)
- [Fix(direct editing): cleanup tokens on user deletion (server#62861)](https://github.com/nextcloud/server/pull/62861)
- [Feat(api): Add getOrCreateFolder also for SimpleFS module (server#62868)](https://github.com/nextcloud/server/pull/62868)
- [Feat: Allow to check user existence outside specific user backends (server#62870)](https://github.com/nextcloud/server/pull/62870)
- [Fix(sharing): properly handle verification of copy/move actions (server#62871)](https://github.com/nextcloud/server/pull/62871)
- [Fix(share): Prevent type error caused by non-existing user (server#62872)](https://github.com/nextcloud/server/pull/62872)
- [Fix(theming): Speed up slow animations (server#62879)](https://github.com/nextcloud/server/pull/62879)
- [Feat: Add setting to bypass password confirmation on a selected ip ranges (server#62884)](https://github.com/nextcloud/server/pull/62884)
- [Fix: Port away from removed oc\_default (server#62886)](https://github.com/nextcloud/server/pull/62886)
- [Perf(PasswordConfirmationMiddleware): Reuse reflection object (server#62887)](https://github.com/nextcloud/server/pull/62887)
- [Test(sharing): sort recipients before asserting in testGetShareWithPublicSecret (server#62902)](https://github.com/nextcloud/server/pull/62902)
- [Feat: keep a classname mapping instead of always storing the full name for shares (server#62904)](https://github.com/nextcloud/server/pull/62904)
- [Fix(ObjectStore): reset multipart upload byte counter on retry (server#62919)](https://github.com/nextcloud/server/pull/62919)
- [Fix(trashbin): properly show deleted by for federated shares (server#62925)](https://github.com/nextcloud/server/pull/62925)
- [Fix(core): improve app icon contrast in the app menu (server#62931)](https://github.com/nextcloud/server/pull/62931)
- [Fix(setup): de-duplicate host parsing allowing IPv6 connections (server#62932)](https://github.com/nextcloud/server/pull/62932)
- [Command API in OCP (server#62942)](https://github.com/nextcloud/server/pull/62942)
- [Style(icons): use filled variants for user, comment, share, password (server#62947)](https://github.com/nextcloud/server/pull/62947)
- [Refactor: use DateTimeImmutable in unified sharing api instead of timestamp (server#62957)](https://github.com/nextcloud/server/pull/62957)
- [Chore: Bump symfony/console (server#62962)](https://github.com/nextcloud/server/pull/62962)
- [App menu visual polishing (server#62963)](https://github.com/nextcloud/server/pull/62963)
- [Refactor: use IUser for IShareSourceType::getSourceInteractionResource instead of user id string (server#62972)](https://github.com/nextcloud/server/pull/62972)
- [Chore: Bump symfony components to v7 (server#62974)](https://github.com/nextcloud/server/pull/62974)
- [Fix: Handle 2fa enforcement earlier (server#62982)](https://github.com/nextcloud/server/pull/62982)
- [Fetch share source metadata in bulk (server#62987)](https://github.com/nextcloud/server/pull/62987)
- [Fix: improve type hinting for unified share listing methods (server#62989)](https://github.com/nextcloud/server/pull/62989)
- [Fix(core): prevent unified search placeholder from clipping (server#62999)](https://github.com/nextcloud/server/pull/62999)
- [Fix(CalDAV): Check for user status before serving public calendars (server#63004)](https://github.com/nextcloud/server/pull/63004)
- [Chore: Apply rector strict config again (server#63007)](https://github.com/nextcloud/server/pull/63007)
- [Revert "Merge pull request #62947 from nextcloud/fix/noid/filled-core… (server#63012)](https://github.com/nextcloud/server/pull/63012)
- [Add DBAL Schema wrapper in OCP (server#63013)](https://github.com/nextcloud/server/pull/63013)
- [Chore(deps): update 3rdparty dependencies (server#63018)](https://github.com/nextcloud/server/pull/63018)
- [Chore(deps): update `cweagans/composer-patches` to v2.0.0 (server#63023)](https://github.com/nextcloud/server/pull/63023)
- [Chore(deps): update `fusonic/opengraph` to v3.1.0 (server#63025)](https://github.com/nextcloud/server/pull/63025)
- [Chore(deps): update `php-opencloud/openstack` to v3.17.0 (server#63027)](https://github.com/nextcloud/server/pull/63027)
- [Build(deps): bump aws/aws-sdk-php from 3.376.2 to 3.390.1 (server#63030)](https://github.com/nextcloud/server/pull/63030)
- [Fix(files\_trashbin): misleading trashbin:expire output when expiration is disabled (server#63040)](https://github.com/nextcloud/server/pull/63040)
- [Update CODEOWNERS to modify maintainers (server#63041)](https://github.com/nextcloud/server/pull/63041)
- [Chore: cleanup getting time for formatting logs (server#63043)](https://github.com/nextcloud/server/pull/63043)
- [Fix(files\_trashbin): cleanup trash metadata after failed cross-user moves (server#63070)](https://github.com/nextcloud/server/pull/63070)
- [Feat(federation): Add accept/decline mechanism for federated calendars (server#63112)](https://github.com/nextcloud/server/pull/63112)
- [Fix errors from 32bits CI (server#63114)](https://github.com/nextcloud/server/pull/63114)
- [Backports ldap fixes (server#63124)](https://github.com/nextcloud/server/pull/63124)
- [Refactor: add PHP 8.3 types to BC-safe class constants (server#63133)](https://github.com/nextcloud/server/pull/63133)
- [Fix(files\_versions): pass missing fileInfo properties to Viewer.compare (server#63149)](https://github.com/nextcloud/server/pull/63149)
- [Feat(dbal): Add missing stuff in DBAL wrapper (server#63152)](https://github.com/nextcloud/server/pull/63152)

##### [3rdparty](https://github.com/nextcloud/3rdparty)

- [Chore: add firebase/php-jwt and gapple/structured-field as dependencies (3rdparty#2413)](https://github.com/nextcloud/3rdparty/pull/2413)
- [Ci(dependabot): Update stable34 (3rdparty#2419)](https://github.com/nextcloud/3rdparty/pull/2419)
- [Ci(workflows): Create update-stable-titles.yml (3rdparty#2460)](https://github.com/nextcloud/3rdparty/pull/2460)
- [Fix: Drop PHP 8.2 in Nextcloud 35 (3rdparty#2477)](https://github.com/nextcloud/3rdparty/pull/2477)
- [Fix: remove useless polyfills and block installing them (3rdparty#2478)](https://github.com/nextcloud/3rdparty/pull/2478)
- [Feat: add predis as a dependency for Valkey cluster support (3rdparty#2496)](https://github.com/nextcloud/3rdparty/pull/2496)
- [Build(deps): Composer audit updates (3rdparty#2497)](https://github.com/nextcloud/3rdparty/pull/2497)
- [Feat: Disable callable serialization in sabre/xml (3rdparty#2511)](https://github.com/nextcloud/3rdparty/pull/2511)
- [Feat: Provide symfony polyfill php86 (3rdparty#2549)](https://github.com/nextcloud/3rdparty/pull/2549)
- [Chore: Bump symfony console (3rdparty#2550)](https://github.com/nextcloud/3rdparty/pull/2550)
- [Chore: Bump symfony components (3rdparty#2551)](https://github.com/nextcloud/3rdparty/pull/2551)

##### [activity](https://github.com/nextcloud/activity)

- [Fix(notifications): Require absolute links for support of desktop and mobile clients (activity#2514)](https://github.com/nextcloud/activity/pull/2514)
- [Fix(bulkReceive): honour admin email toggle and ISetting notification defaults (activity#2562)](https://github.com/nextcloud/activity/pull/2562)
- [Fix(MailQueueHandler): check enable\_email toggle before sending queued emails (activity#2563)](https://github.com/nextcloud/activity/pull/2563)
- [Refactor: flatten nesting in shareNotificationForOriginalOwners with early return (activity#2566)](https://github.com/nextcloud/activity/pull/2566)
- [Refactor(types): add native parameter and return types to UserSettings (activity#2572)](https://github.com/nextcloud/activity/pull/2572)
- [Feat(deps): Add Nextcloud 35 support on master (activity#2593)](https://github.com/nextcloud/activity/pull/2593)
- [Chore(deps): Bump nextcloud-vue from 9.7.0 to 9.8.0 (activity#2601)](https://github.com/nextcloud/activity/pull/2601)
- [Refactor(tests): migrate e2e test suite from Cypress to Playwright (activity#2603)](https://github.com/nextcloud/activity/pull/2603)
- [Fix(NotificationGenerator): catch InvalidArgumentException from notification setters in prepare() (activity#2604)](https://github.com/nextcloud/activity/pull/2604)
- [Feat: adding an option to exclude users from the acitivity log (activity#2626)](https://github.com/nextcloud/activity/pull/2626)
- [Fix(ActivityAppNavigation): use correct icon filter for NC34+ active nav items (activity#2627)](https://github.com/nextcloud/activity/pull/2627)
- [Improve activity feed design (activity#2634)](https://github.com/nextcloud/activity/pull/2634)
- [Perf(mailqueue): cover `amq_latest_send` in the affecteduser index (activity#2635)](https://github.com/nextcloud/activity/pull/2635)
- [Fix(expire): delete conditions for activity\_expire\_exclude\_users (activity#2655)](https://github.com/nextcloud/activity/pull/2655)
- [Perf(files): compute move/rename activity settings once (activity#2656)](https://github.com/nextcloud/activity/pull/2656)
- [Feat: make amount of items sent on email configurable via occ (activity#2673)](https://github.com/nextcloud/activity/pull/2673)
- [Fix: Remove user memoization (activity#2674)](https://github.com/nextcloud/activity/pull/2674)
- [Chore: update workflows and PHP version (activity#2675)](https://github.com/nextcloud/activity/pull/2675)
- [Chore: switch npm and GitHub Actions dependency updates to Renovate (activity#2677)](https://github.com/nextcloud/activity/pull/2677)
- [Fix(renovate): remove expandCodeOwnersGroups (paid-tier feature) (activity#2704)](https://github.com/nextcloud/activity/pull/2704)
- [Fix(psalm): update psalm baseline (activity#2705)](https://github.com/nextcloud/activity/pull/2705)
- [Fix: Fix psalm (activity#2711)](https://github.com/nextcloud/activity/pull/2711)
- [Ci(renovate): update dependencies on maintained stable branches (activity#2721)](https://github.com/nextcloud/activity/pull/2721)
- [Chore: lower cooldown to 4 days and remove monthly schedule for tooling (activity#2779)](https://github.com/nextcloud/activity/pull/2779)
- [Fix: do not fail moves when the old location cannot be resolved (activity#2784)](https://github.com/nextcloud/activity/pull/2784)
- [Fix(listener): Catch when trying to set up a settings that doesn’t exists (activity#2791)](https://github.com/nextcloud/activity/pull/2791)
- [Fix: stop using deprecated IAppContainer::getServer() (activity#2804)](https://github.com/nextcloud/activity/pull/2804)
- [Fix(files): roll back activity transaction when activity publishing f… (activity#2812)](https://github.com/nextcloud/activity/pull/2812)
- [Fix(mail): always reset current user after sending activity emails (activity#2814)](https://github.com/nextcloud/activity/pull/2814)
- [Feat(stream): add search, date range and account filters to the stream (activity#2836)](https://github.com/nextcloud/activity/pull/2836)
- [Feat(stream): add an activity heatmap that drives the date filter (activity#2839)](https://github.com/nextcloud/activity/pull/2839)
- [Fix(tests): Fix migration tests (activity#2856)](https://github.com/nextcloud/activity/pull/2856)

##### [app\_api](https://github.com/nextcloud/app_api)

- [Feat(deps): Add Nextcloud 35 support on main (app\_api#872)](https://github.com/nextcloud/app_api/pull/872)
- [Fix: proxy route leading slash (app\_api#874)](https://github.com/nextcloud/app_api/pull/874)
- [Feat(deps): Add Nextcloud 35 support on main (app\_api#880)](https://github.com/nextcloud/app_api/pull/880)
- [Fix: normalize missing bruteforce\_protection and headers\_to\_exclude on ExApp routes (app\_api#882)](https://github.com/nextcloud/app_api/pull/882)
- [Feat: validate ExApp routes at registration and reject malformed data (app\_api#885)](https://github.com/nextcloud/app_api/pull/885)
- [Feat: add default\_action field to files-actions-menu registration (app\_api#887)](https://github.com/nextcloud/app_api/pull/887)
- [Feat(config): store ExApp config & preferences in the server’s app/user config (app\_api#889)](https://github.com/nextcloud/app_api/pull/889)
- [Fix(fetcher): catch GenericFileException when reading the appstore cache file (app\_api#891)](https://github.com/nextcloud/app_api/pull/891)
- [Ci: use INFO loglevel in the Redis deploy jobs (app\_api#893)](https://github.com/nextcloud/app_api/pull/893)
- [Fix(maintenance-mode): keep only HaRP and ExApp survival routes available in maintenance mode (app\_api#898)](https://github.com/nextcloud/app_api/pull/898)
- [Ci: replace PHP 8.2 with PHP 8.4 in the PHPUnit matrix (app\_api#899)](https://github.com/nextcloud/app_api/pull/899)
- [Feat(openapi): add OpenAPI specification generation (app\_api#905)](https://github.com/nextcloud/app_api/pull/905)
- [Feat(setup-checks): let ExApps surface setup checks in the admin overview (app\_api#908)](https://github.com/nextcloud/app_api/pull/908)
- [Docs: Add an AGENTS.md guide for installing, operating and developing AppAPI (app\_api#911)](https://github.com/nextcloud/app_api/pull/911)
- [Ci(dependabot): add npm updates for stable branches (app\_api#914)](https://github.com/nextcloud/app_api/pull/914)
- [Feat: add release relay and npm audit fix workflows (app\_api#921)](https://github.com/nextcloud/app_api/pull/921)
- [Ci: Add terser-webpack-plugin to the dev dependency definition (app\_api#928)](https://github.com/nextcloud/app_api/pull/928)
- [Fix(notifications): do not translate empty ExApp strings, which throws on Nextcloud 35 (app\_api#953)](https://github.com/nextcloud/app_api/pull/953)
- [Ci(tests-deploy): wait until Nextcloud is installed before enabling AppAPI (app\_api#954)](https://github.com/nextcloud/app_api/pull/954)
- [Fix(deprecation): stop using OC\_App and non-public AppManager methods (app\_api#960)](https://github.com/nextcloud/app_api/pull/960)
- [Move the agent guides to the nextcloud-skills repository (app\_api#968)](https://github.com/nextcloud/app_api/pull/968)
- [Do not deploy ExApp environment variables with an empty default as the literal string Array (app\_api#970)](https://github.com/nextcloud/app_api/pull/970)

##### [bruteforcesettings](https://github.com/nextcloud/bruteforcesettings)

- [Feat(deps): Add Nextcloud 35 support on master (bruteforcesettings#1099)](https://github.com/nextcloud/bruteforcesettings/pull/1099)
- [Fix: fix toggle the allow list option (bruteforcesettings#1103)](https://github.com/nextcloud/bruteforcesettings/pull/1103)
- [Chore(deps): update dependencies (bruteforcesettings#1145)](https://github.com/nextcloud/bruteforcesettings/pull/1145)
- [Ci(php): Require PHP 8.3 in all tooling (bruteforcesettings#1146)](https://github.com/nextcloud/bruteforcesettings/pull/1146)

##### [circles](https://github.com/nextcloud/circles)

- [Feat: Add the possibility to create invitation links to circles (circles#2254)](https://github.com/nextcloud/circles/pull/2254)
- [Feat(mount-provider): implement IPartialMountProvider (circles#2378)](https://github.com/nextcloud/circles/pull/2378)
- [Feat: add support for setting preview avatar for circle (circles#2438)](https://github.com/nextcloud/circles/pull/2438)
- [Feat(deps): Add Nextcloud 35 support on master (circles#2475)](https://github.com/nextcloud/circles/pull/2475)
- [Feat(deps): Add Nextcloud 35 support on master (circles#2479)](https://github.com/nextcloud/circles/pull/2479)
- [Feat: Add role-based filtering for circle member queries (circles#2482)](https://github.com/nextcloud/circles/pull/2482)
- [Update rector, fix configuration and run it (circles#2484)](https://github.com/nextcloud/circles/pull/2484)
- [Chore(actions): add sync-workflow-templates github action (circles#2493)](https://github.com/nextcloud/circles/pull/2493)
- [[master] build: add .nextcloudignore for release builds (circles#2508)](https://github.com/nextcloud/circles/pull/2508)
- [Chore: getBasedOn() is nullable (circles#2519)](https://github.com/nextcloud/circles/pull/2519)
- [Chore: Minimum php version is 8.3 (circles#2520)](https://github.com/nextcloud/circles/pull/2520)
- [Adjust local controller to better handle permission checks (circles#2522)](https://github.com/nextcloud/circles/pull/2522)
- [Fix(local-controller): dont show full config int of circle for non-members (circles#2523)](https://github.com/nextcloud/circles/pull/2523)
- [Fix(local-controller): validate params set on team creation (circles#2524)](https://github.com/nextcloud/circles/pull/2524)
- [Test(admin-controller): add unit tests covering all controller endpoints (circles#2544)](https://github.com/nextcloud/circles/pull/2544)
- [Fix(local-controller): include CFG\_OPEN in config mask for visible circles (circles#2545)](https://github.com/nextcloud/circles/pull/2545)
- [Feat: add pull request template (circles#2558)](https://github.com/nextcloud/circles/pull/2558)
- [Feat(teams): in-app Teams page (circles#2561)](https://github.com/nextcloud/circles/pull/2561)
- [Test: scaffold front-end testing with Vitest and Playwright (circles#2562)](https://github.com/nextcloud/circles/pull/2562)
- [Fix(permission): get permissions for user from inherited when not direct member (circles#2572)](https://github.com/nextcloud/circles/pull/2572)
- [Chore(i18n): Rename all occurrences of “circles” to “teams” (circles#2573)](https://github.com/nextcloud/circles/pull/2573)
- [Ci(dependabot): add npm updates for stable branches (circles#2583)](https://github.com/nextcloud/circles/pull/2583)
- [Fix(workflow): switch from node.yml to npm-build.yml (circles#2603)](https://github.com/nextcloud/circles/pull/2603)
- [Feat(admin-controller): add route to fetch all circles (circles#2614)](https://github.com/nextcloud/circles/pull/2614)
- [Fix: refresh user mounts when removed from a group or circle that has associated team folders (circles#2615)](https://github.com/nextcloud/circles/pull/2615)
- [Fix(url): Make team link absolute URL (circles#2630)](https://github.com/nextcloud/circles/pull/2630)
- [Fix(l10n): ignore compiled js files (circles#2631)](https://github.com/nextcloud/circles/pull/2631)
- [Feat: Add filter by role and username (circles#2659)](https://github.com/nextcloud/circles/pull/2659)
- [Feat: add release-relay.yml workflow (circles#2666)](https://github.com/nextcloud/circles/pull/2666)
- [Fix(maintenance-service): remove redundant empty check on getDisplayName (circles#2667)](https://github.com/nextcloud/circles/pull/2667)
- [Fix(reuse): add entry for .l10nignore (circles#2668)](https://github.com/nextcloud/circles/pull/2668)
- [Fix: avoid attempting to fetch protected resources when user is not a member (circles#2673)](https://github.com/nextcloud/circles/pull/2673)
- [Feat: implement scim and oidc integration (circles#2674)](https://github.com/nextcloud/circles/pull/2674)
- [Fix(types): declare vite/modulepreload-polyfill virtual module (circles#2676)](https://github.com/nextcloud/circles/pull/2676)
- [Avoid duplicate purge on inheritance (circles#2687)](https://github.com/nextcloud/circles/pull/2687)
- [Fix(local-controller): validate when trying adding member of type contact (circles#2696)](https://github.com/nextcloud/circles/pull/2696)
- [Fix: Use global members limit as default for circle (circles#2697)](https://github.com/nextcloud/circles/pull/2697)
- [Fix: add promoteToOwner method (circles#2711)](https://github.com/nextcloud/circles/pull/2711)
- [Fix(circles): preserve group display names when creating circles (circles#2722)](https://github.com/nextcloud/circles/pull/2722)

##### [files\_downloadlimit](https://github.com/nextcloud/files_downloadlimit)

- [Feat(deps): Add Nextcloud 35 support on master (files\_downloadlimit#804)](https://github.com/nextcloud/files_downloadlimit/pull/804)
- [Chore: clean up old CSS files (files\_downloadlimit#851)](https://github.com/nextcloud/files_downloadlimit/pull/851)
- [Fix: allow higher download limits than 500 (files\_downloadlimit#906)](https://github.com/nextcloud/files_downloadlimit/pull/906)

##### [files\_lock](https://github.com/nextcloud/files_lock)

- [Perf: cache negative results in LockSerivice::getLockForNodeIds (files\_lock#1057)](https://github.com/nextcloud/files_lock/pull/1057)
- [Feat(config): switch to config lexicon (files\_lock#1060)](https://github.com/nextcloud/files_lock/pull/1060)
- [Feat(deps): Add Nextcloud 35 support on main (files\_lock#1081)](https://github.com/nextcloud/files_lock/pull/1081)
- [Fix(LockWrapper): gracefully handle null user in copyFromStorage() (files\_lock#1097)](https://github.com/nextcloud/files_lock/pull/1097)
- [Perf: Avoir calling Server::get for each share mounts (files\_lock#1113)](https://github.com/nextcloud/files_lock/pull/1113)
- [Refactor: Use modern events instead of old hooks (files\_lock#1125)](https://github.com/nextcloud/files_lock/pull/1125)
- [Use SPDX license identifier (files\_lock#1130)](https://github.com/nextcloud/files_lock/pull/1130)
- [Ci(tools): Update dev dependencies (files\_lock#1131)](https://github.com/nextcloud/files_lock/pull/1131)
- [Ci(dependabot): add composer updates for stable branches (files\_lock#1150)](https://github.com/nextcloud/files_lock/pull/1150)
- [Enh: allow file owner to unlock TYPE\_TOKEN locks (files\_lock#1168)](https://github.com/nextcloud/files_lock/pull/1168)
- [Refactor: Remove CoreQueryBuilder and co (files\_lock#1193)](https://github.com/nextcloud/files_lock/pull/1193)
- [Feat: add release-relay.yml workflow (files\_lock#1197)](https://github.com/nextcloud/files_lock/pull/1197)
- [Docs(readme): restructure, expand, and revise locking documentation (files\_lock#1198)](https://github.com/nextcloud/files_lock/pull/1198)
- [Fix(webdav): align lock editor property responses (files\_lock#1199)](https://github.com/nextcloud/files_lock/pull/1199)
- [Test: clean up all lock feature test fixtures (files\_lock#1200)](https://github.com/nextcloud/files_lock/pull/1200)
- [Test(lock): access shared file as recipient in app lock test (files\_lock#1206)](https://github.com/nextcloud/files_lock/pull/1206)
- [Fix(command): clarify files:lock usage and unlock feedback (files\_lock#1207)](https://github.com/nextcloud/files_lock/pull/1207)

##### [files\_pdfviewer](https://github.com/nextcloud/files_pdfviewer)

- [Chore(performance): make the viewer component async (files\_pdfviewer#1434)](https://github.com/nextcloud/files_pdfviewer/pull/1434)
- [Feat(deps): Add Nextcloud 35 support on master (files\_pdfviewer#1441)](https://github.com/nextcloud/files_pdfviewer/pull/1441)
- [Feat(deps): Add Nextcloud 35 support on master (files\_pdfviewer#1442)](https://github.com/nextcloud/files_pdfviewer/pull/1442)
- [Fix: 1451 stop spinner once the document loaded (files\_pdfviewer#1454)](https://github.com/nextcloud/files_pdfviewer/pull/1454)
- [Chore(deps): Bump PDF.js from 4.0.189 to 4.10.38 (files\_pdfviewer#1474)](https://github.com/nextcloud/files_pdfviewer/pull/1474)
- [Chore: Bump PHP version to 8.3 (files\_pdfviewer#1488)](https://github.com/nextcloud/files_pdfviewer/pull/1488)
- [Chore: Add workflow to sync workflow templates (files\_pdfviewer#1489)](https://github.com/nextcloud/files_pdfviewer/pull/1489)
- [Fix: Add explicit dependency for vue-loader@legacy (files\_pdfviewer#1496)](https://github.com/nextcloud/files_pdfviewer/pull/1496)
- [Chore: Add explicit dependency for terser-webpack-plugin (files\_pdfviewer#1502)](https://github.com/nextcloud/files_pdfviewer/pull/1502)

##### [firstrunwizard](https://github.com/nextcloud/firstrunwizard)

- [Feat(deps): Add Nextcloud 35 support on master (firstrunwizard#2073)](https://github.com/nextcloud/firstrunwizard/pull/2073)
- [Feat(deps): Add Nextcloud 35 support on master (firstrunwizard#2074)](https://github.com/nextcloud/firstrunwizard/pull/2074)
- [Use SPDX license identifier (firstrunwizard#2128)](https://github.com/nextcloud/firstrunwizard/pull/2128)

##### [logreader](https://github.com/nextcloud/logreader)

- [Feat: Remove unnecessary whitespaces (logreader#1835)](https://github.com/nextcloud/logreader/pull/1835)
- [Feat(deps): Add Nextcloud 35 support on master (logreader#2019)](https://github.com/nextcloud/logreader/pull/2019)
- [Chore: bump PHP version to 8.3 (logreader#2064)](https://github.com/nextcloud/logreader/pull/2064)
- [Ci(dependabot): add npm updates for stable branches (logreader#2094)](https://github.com/nextcloud/logreader/pull/2094)
- [Chore: add update-stable-titles worfklow, exclude IDE dirs with .gitignore (logreader#2111)](https://github.com/nextcloud/logreader/pull/2111)
- [Fix(build): extract license information from .map files (logreader#2176)](https://github.com/nextcloud/logreader/pull/2176)

##### [nextcloud\_announcements](https://github.com/nextcloud/nextcloud_announcements)

- [Feat(deps): Add Nextcloud 35 support on master (nextcloud\_announcements#625)](https://github.com/nextcloud/nextcloud_announcements/pull/625)
- [Use SPDX license identifier (nextcloud\_announcements#662)](https://github.com/nextcloud/nextcloud_announcements/pull/662)
- [Fix(crawler): Fix phpseclib3 compatibility (nextcloud\_announcements#679)](https://github.com/nextcloud/nextcloud_announcements/pull/679)

##### [notifications](https://github.com/nextcloud/notifications)

- [Feat(deps): Add Nextcloud 35 support on master (notifications#3007)](https://github.com/nextcloud/notifications/pull/3007)
- [Fix(webpush): recover gracefully from corrupted or mismatched VAPID keys (notifications#3031)](https://github.com/nextcloud/notifications/pull/3031)
- [Chore: extend testing of `encryptAndSign` and make the methods discoverable by psalm (notifications#3050)](https://github.com/nextcloud/notifications/pull/3050)
- [Fix(push): Use OAEP padding by default in Nextcloud 35+ (notifications#3068)](https://github.com/nextcloud/notifications/pull/3068)
- [Docs(webpush): Document knowledge and trust models of webpush flow (notifications#3075)](https://github.com/nextcloud/notifications/pull/3075)
- [Fix(email): Correctly initialize next\_send\_time field (notifications#3078)](https://github.com/nextcloud/notifications/pull/3078)
- [Fix(webpush): Don’t reuse query object for second query (notifications#3088)](https://github.com/nextcloud/notifications/pull/3088)
- [Test: Push notification payload (notifications#3144)](https://github.com/nextcloud/notifications/pull/3144)
- [Use SPDX license identifier (notifications#3149)](https://github.com/nextcloud/notifications/pull/3149)
- [Fix(Makefile): Add missing composer setup for dev-setups and building… (notifications#3159)](https://github.com/nextcloud/notifications/pull/3159)
- [Ci(dependabot): add composer updates for stable branches (notifications#3175)](https://github.com/nextcloud/notifications/pull/3175)
- [Fix(push): Fix undefined index when accessing token age (notifications#3224)](https://github.com/nextcloud/notifications/pull/3224)
- [Perf(push): Send push notifications async to proxies (notifications#3234)](https://github.com/nextcloud/notifications/pull/3234)
- [Build(deps): Bump guzzlehttp/guzzle (notifications#3239)](https://github.com/nextcloud/notifications/pull/3239)
- [Fix(webpush): Skip browsers when disabled (notifications#3245)](https://github.com/nextcloud/notifications/pull/3245)

##### [office](https://github.com/nextcloud/office)

- Newly added in this release

##### [password\_policy](https://github.com/nextcloud/password_policy)

- [Feat(deps): Add Nextcloud 35 support on master (password\_policy#938)](https://github.com/nextcloud/password_policy/pull/938)
- [Feat: Add login output when password policy fails (password\_policy#958)](https://github.com/nextcloud/password_policy/pull/958)
- [Chore(deps): drops support for PHP 8.2 (password\_policy#972)](https://github.com/nextcloud/password_policy/pull/972)

##### [photos](https://github.com/nextcloud/photos)

- [Refactor: Port to newer system tag events (photos#3437)](https://github.com/nextcloud/photos/pull/3437)
- [Fix(metadata): exif\_read\_data() supports JPEG/TIFF (photos#3461)](https://github.com/nextcloud/photos/pull/3461)
- [Feat(deps): Add Nextcloud 35 support on master (photos#3518)](https://github.com/nextcloud/photos/pull/3518)
- [Feat(deps): Autoupdate rector (photos#3536)](https://github.com/nextcloud/photos/pull/3536)
- [Chore: Bump @nc/vue to v8.35.0 (photos#3550)](https://github.com/nextcloud/photos/pull/3550)
- [Fix handling of directory names with special characters (photos#3552)](https://github.com/nextcloud/photos/pull/3552)
- [Feat: display video duration (photos#3553)](https://github.com/nextcloud/photos/pull/3553)
- [Fix: faces actions and add recognize e2e tests (photos#3573)](https://github.com/nextcloud/photos/pull/3573)
- [Build(deps): Unblock dependency updates by allowing to update vite again (photos#3586)](https://github.com/nextcloud/photos/pull/3586)
- [Ci(dependabot): add composer updates for stable branches (photos#3630)](https://github.com/nextcloud/photos/pull/3630)
- [Fix: Bust full preview cache by etag (photos#3695)](https://github.com/nextcloud/photos/pull/3695)
- [Fix(dav): properly handle metadata (photos#3705)](https://github.com/nextcloud/photos/pull/3705)
- [Chore(ai): add AGENTS.md (photos#3728)](https://github.com/nextcloud/photos/pull/3728)

##### [privacy](https://github.com/nextcloud/privacy)

- [Feat(deps): Add Nextcloud 35 support on master (privacy#1339)](https://github.com/nextcloud/privacy/pull/1339)
- [Use SPDX license identifier (privacy#1380)](https://github.com/nextcloud/privacy/pull/1380)
- [Fix(ci): unblock CI — enforce PHP 8.3 in psalm.xml + sync PHP workflow templates (privacy#1381)](https://github.com/nextcloud/privacy/pull/1381)

##### [recommendations](https://github.com/nextcloud/recommendations)

- [Refactor: migrate components to Composition API (Vue 3 prep) (recommendations#1029)](https://github.com/nextcloud/recommendations/pull/1029)
- [Feat(deps): Add Nextcloud 35 support on master (recommendations#1037)](https://github.com/nextcloud/recommendations/pull/1037)
- [Refactor: Port away from deprecated APIs (recommendations#1045)](https://github.com/nextcloud/recommendations/pull/1045)
- [Chore: set Psalm PHP version to 8.3 (recommendations#1055)](https://github.com/nextcloud/recommendations/pull/1055)
- [Ci(renovate): update dependencies on maintained stable branches (recommendations#1065)](https://github.com/nextcloud/recommendations/pull/1065)
- [Ci(renovate): ignore workflows managed by the org template repo (recommendations#1124)](https://github.com/nextcloud/recommendations/pull/1124)
- [Ci: add workflow sync workflow (recommendations#1125)](https://github.com/nextcloud/recommendations/pull/1125)
- [Ci: configure coderabbitai (recommendations#1126)](https://github.com/nextcloud/recommendations/pull/1126)
- [Build: migrate from webpack to vite (recommendations#1131)](https://github.com/nextcloud/recommendations/pull/1131)
- [Refactor: migrate state management from Vuex to Pinia (recommendations#1136)](https://github.com/nextcloud/recommendations/pull/1136)
- [Refactor: migrate to Vue 3 (recommendations#1141)](https://github.com/nextcloud/recommendations/pull/1141)
- [Chore: update composer platform to PHP8.3 (recommendations#1151)](https://github.com/nextcloud/recommendations/pull/1151)

##### [related\_resources](https://github.com/nextcloud/related_resources)

- [Ci: Create update-nextcloud-ocp-approve-merge.yml (related\_resources#1037)](https://github.com/nextcloud/related_resources/pull/1037)
- [Ci: Create sync-workflow-templates.yml (related\_resources#1038)](https://github.com/nextcloud/related_resources/pull/1038)
- [Ci(psalm): Fix required PHP version (related\_resources#1039)](https://github.com/nextcloud/related_resources/pull/1039)
- [Ci(psalm): Fix nextcloud/ocp update (related\_resources#1048)](https://github.com/nextcloud/related_resources/pull/1048)
- [Chore: add release-relay.yml workflow (related\_resources#1073)](https://github.com/nextcloud/related_resources/pull/1073)
- [Feat(deps): Add Nextcloud 35 support on master (related\_resources#970)](https://github.com/nextcloud/related_resources/pull/970)
- [Refactor: Simplify request builder (related\_resources#999)](https://github.com/nextcloud/related_resources/pull/999)

##### [serverinfo](https://github.com/nextcloud/serverinfo)

- [Vue (serverinfo#1007)](https://github.com/nextcloud/serverinfo/pull/1007)
- [Ci(actions): Update workflows (serverinfo#1013)](https://github.com/nextcloud/serverinfo/pull/1013)
- [Chore: Require PHP 8.3 (serverinfo#1019)](https://github.com/nextcloud/serverinfo/pull/1019)
- [Ci(actions): Automate workflow updates (serverinfo#1027)](https://github.com/nextcloud/serverinfo/pull/1027)
- [Use a parameterized translation for CPU thread count (serverinfo#1032)](https://github.com/nextcloud/serverinfo/pull/1032)
- [Ci(actions): Add workflow to lint info.xml (serverinfo#1037)](https://github.com/nextcloud/serverinfo/pull/1037)
- [Ci: Disable npm-audit-fix on stable34 (serverinfo#1044)](https://github.com/nextcloud/serverinfo/pull/1044)
- [Fix(disk): do not divide by zero on a filesystem with no capacity (serverinfo#1062)](https://github.com/nextcloud/serverinfo/pull/1062)
- [Fix(disk): stop dropping filesystems whose mount point has unusual ch… (serverinfo#1063)](https://github.com/nextcloud/serverinfo/pull/1063)
- [Fix(disk): stop the disk card text overflowing and tidy up the chart (serverinfo#1068)](https://github.com/nextcloud/serverinfo/pull/1068)
- [Fix(layout): let info tables wrap and give PHP extensions the full width (serverinfo#1069)](https://github.com/nextcloud/serverinfo/pull/1069)
- [Fix(l10n): Ignore compiled js/ (serverinfo#1071)](https://github.com/nextcloud/serverinfo/pull/1071)
- [Ci: Add assisted-by workflow (serverinfo#1076)](https://github.com/nextcloud/serverinfo/pull/1076)
- [Background jobs (serverinfo#1084)](https://github.com/nextcloud/serverinfo/pull/1084)
- [Fix: Mark update storage stats as time insensitive (serverinfo#1085)](https://github.com/nextcloud/serverinfo/pull/1085)
- [Fix(background-jobs): adjust width for when column (serverinfo#1088)](https://github.com/nextcloud/serverinfo/pull/1088)
- [Feat(deps): Add Nextcloud 35 support on master (serverinfo#996)](https://github.com/nextcloud/serverinfo/pull/996)

##### [survey\_client](https://github.com/nextcloud/survey_client)

- [Fix(report): Fix sending huge reports (survey\_client#394)](https://github.com/nextcloud/survey_client/pull/394)
- [Feat(deps): Add Nextcloud 35 support on master (survey\_client#417)](https://github.com/nextcloud/survey_client/pull/417)
- [Use SPDX license identifier (survey\_client#450)](https://github.com/nextcloud/survey_client/pull/450)

##### [suspicious\_login](https://github.com/nextcloud/suspicious_login)

- [Feat(deps): Add Nextcloud 35 support on master (suspicious\_login#1112)](https://github.com/nextcloud/suspicious_login/pull/1112)
- [Fix(notifier): Fix label length limited to 32 characters (suspicious\_login#1114)](https://github.com/nextcloud/suspicious_login/pull/1114)
- [Fix(autoload): load rubix free functions despite Composer files dedupe (suspicious\_login#1118)](https://github.com/nextcloud/suspicious_login/pull/1118)
- [Chore: update Psalm PHP to 8.3 (suspicious\_login#1119)](https://github.com/nextcloud/suspicious_login/pull/1119)
- [Chore: make David the primary maintainer (suspicious\_login#1128)](https://github.com/nextcloud/suspicious_login/pull/1128)

##### [text](https://github.com/nextcloud/text)

- [Chore(test): add test for 4480 (text#7777)](https://github.com/nextcloud/text/pull/7777)
- [Fix(code): don’t apply inline code CSS rules to code blocks (text#8587)](https://github.com/nextcloud/text/pull/8587)
- [Test(playwright): await `setO(n|ff)line` in autosave tests (text#8588)](https://github.com/nextcloud/text/pull/8588)
- [Feat(deps): Add Nextcloud 35 support on main (text#8590)](https://github.com/nextcloud/text/pull/8590)
- [Chore(ci): add stable34 to branches that receive updates (text#8593)](https://github.com/nextcloud/text/pull/8593)
- [Fix: allow dots in markdown link text (text#8596)](https://github.com/nextcloud/text/pull/8596)
- [Fix(ActionInsertLink): allow to get title from link picker (text#8615)](https://github.com/nextcloud/text/pull/8615)
- [Fix(folderDescription): fix max height in unfocused mode (text#8616)](https://github.com/nextcloud/text/pull/8616)
- [Chore: add AI checkboxes to PR template (text#8617)](https://github.com/nextcloud/text/pull/8617)
- [Chore/upgrade vue 3 (text#8619)](https://github.com/nextcloud/text/pull/8619)
- [Chore: remove codecov (text#8625)](https://github.com/nextcloud/text/pull/8625)
- [Fix: several table button design fixes (text#8627)](https://github.com/nextcloud/text/pull/8627)
- [Fix(translate): use assistant app dialog (text#8628)](https://github.com/nextcloud/text/pull/8628)
- [Fix: Rename mobile editing file creator name to leave out “New” prefix (text#8634)](https://github.com/nextcloud/text/pull/8634)
- [Fix: disable open link button for unsafe link (text#8651)](https://github.com/nextcloud/text/pull/8651)
- [Fix(folderDescription): always use ‘Readme.md’ as filename (text#8652)](https://github.com/nextcloud/text/pull/8652)
- [Fix(headings): skip headings in details in table of contents (text#8653)](https://github.com/nextcloud/text/pull/8653)
- [Test(playwright): add summary job so we can add it to merge rules (text#8656)](https://github.com/nextcloud/text/pull/8656)
- [Fix(Editor): emit modified fileNode size on save (text#8686)](https://github.com/nextcloud/text/pull/8686)
- [Fix(mediaHandler): strip relevant bidi chars in filenames (text#8687)](https://github.com/nextcloud/text/pull/8687)
- [Add a “question” bloc in addition of Danger, Info, Positive, Warn (text#8698)](https://github.com/nextcloud/text/pull/8698)
- [Chore(github): update workflows (text#8713)](https://github.com/nextcloud/text/pull/8713)
- [Preserve Markdown reference links (text#8717)](https://github.com/nextcloud/text/pull/8717)
- [Fix(math): fix lost content after math node (text#8718)](https://github.com/nextcloud/text/pull/8718)
- [Fix(editorApi): allow to disable image lazy-loading (text#8719)](https://github.com/nextcloud/text/pull/8719)
- [Fix(autofocus): persist cursor positions in localStorage (text#8723)](https://github.com/nextcloud/text/pull/8723)
- [Fix(markdown): preserve horizontal rule markup (text#8725)](https://github.com/nextcloud/text/pull/8725)
- [Fix permission change in text doc (text#8746)](https://github.com/nextcloud/text/pull/8746)
- [Chore(psalm): bump phpVersion to 8.3 (text#8752)](https://github.com/nextcloud/text/pull/8752)
- [Fix: show Assistant icon if only translation provider available (text#8753)](https://github.com/nextcloud/text/pull/8753)
- [Performance: Only check permissions when changing content (text#8754)](https://github.com/nextcloud/text/pull/8754)
- [Chore(psalm): throw directly to make types more obvious (text#8756)](https://github.com/nextcloud/text/pull/8756)
- [Ci: remove compile command, as it happens after merge. Then, also run reuse (text#8761)](https://github.com/nextcloud/text/pull/8761)
- [Chore(ci): continue playwright jobs if one fails (text#8763)](https://github.com/nextcloud/text/pull/8763)
- [Bump php version and update baseline (text#8776)](https://github.com/nextcloud/text/pull/8776)
- [Fix(SessionService): sanitize displayName to utf8 encoding (text#8779)](https://github.com/nextcloud/text/pull/8779)
- [Fix(editor): preserve leading newlines in plain text editor (text#8787)](https://github.com/nextcloud/text/pull/8787)
- [Chore(cleanup): deprecated secureRandom-\>generate (text#8789)](https://github.com/nextcloud/text/pull/8789)
- [Fix(table): replace alert() with showWarning() for nested table paste (text#8795)](https://github.com/nextcloud/text/pull/8795)
- [Fix(Table): allow changing list indention inside tables (text#8812)](https://github.com/nextcloud/text/pull/8812)
- [Fix(ImageView): use `a` element for clickable items (text#8813)](https://github.com/nextcloud/text/pull/8813)
- [Fix/vue3 followup (text#8822)](https://github.com/nextcloud/text/pull/8822)
- [Chore(refactor): aviod extending serializer options (text#8823)](https://github.com/nextcloud/text/pull/8823)
- [Add footnotes support (text#8840)](https://github.com/nextcloud/text/pull/8840)
- [Ci(playwright): fix installing pinned NPM version (text#8844)](https://github.com/nextcloud/text/pull/8844)
- [Fix(BulletList): remove `preserveWhitespace: true` parseHTML override (text#8856)](https://github.com/nextcloud/text/pull/8856)
- [Fix(links): scroll to anchor links directly (text#8857)](https://github.com/nextcloud/text/pull/8857)
- [Chore(playwright): use `list` reporter when run locally (text#8859)](https://github.com/nextcloud/text/pull/8859)
- [Fix(FloatingButtons): in headings, leave space for the anchor icon (text#8860)](https://github.com/nextcloud/text/pull/8860)
- [Two small footnotes follow-up fixes (text#8874)](https://github.com/nextcloud/text/pull/8874)
- [Fix(filepicker): hide menu (text#8875)](https://github.com/nextcloud/text/pull/8875)
- [Chore(refactor): loop over possible footnotes once (text#8876)](https://github.com/nextcloud/text/pull/8876)
- [Fix(share): detect if documentId is outside of share early (text#8879)](https://github.com/nextcloud/text/pull/8879)
- [Upgrade/typescript v6 (text#8884)](https://github.com/nextcloud/text/pull/8884)
- [Fix: Pasting from excel inserts an image instead of a formatted table (text#8897)](https://github.com/nextcloud/text/pull/8897)
- [Feat: inline comments (text#8901)](https://github.com/nextcloud/text/pull/8901)
- [Fix: add file-access check (text#8903)](https://github.com/nextcloud/text/pull/8903)
- [Fix/autosave timer (text#8917)](https://github.com/nextcloud/text/pull/8917)
- [Chore(npm): allow scripts of known NPM dependencies (text#8922)](https://github.com/nextcloud/text/pull/8922)
- [Fix(collaboration): ellipsise user caret labels (text#8923)](https://github.com/nextcloud/text/pull/8923)
- [Fix: update ShowImageModal to use fullUrl for show original image ins… (text#8924)](https://github.com/nextcloud/text/pull/8924)
- [Fix(DirectEditing): check if user is enabled (text#8951)](https://github.com/nextcloud/text/pull/8951)
- [Fix(editor): fix viewer header overlaying page content on mobile (text#8952)](https://github.com/nextcloud/text/pull/8952)
- [Fix(editor): set `translate=yes` for read-only editor (text#8962)](https://github.com/nextcloud/text/pull/8962)
- [Fix(sync): reset #sending flag when no active connection on sendStepsNow (text#8963)](https://github.com/nextcloud/text/pull/8963)
- [Fix(attachments): check documentId matches (text#8966)](https://github.com/nextcloud/text/pull/8966)
- [Test(playwright): don’t set `webServer.url` parameter (text#8968)](https://github.com/nextcloud/text/pull/8968)
- [Chore(test): direct editing permissions (text#8969)](https://github.com/nextcloud/text/pull/8969)
- [Fix(embed): guard unavailable search commands (text#8970)](https://github.com/nextcloud/text/pull/8970)
- [Fix(lists): no margin-bottom for nested lists to prevent ugly gap (text#9004)](https://github.com/nextcloud/text/pull/9004)
- [Fix(LinkPicker): improve suggestions order and rename ‘Files’ (text#9020)](https://github.com/nextcloud/text/pull/9020)
- [Fix(viewer): align content of old version in viewer version comparison (text#9029)](https://github.com/nextcloud/text/pull/9029)
- [Fix(dbal): Adapt to new DBAL wrapper (text#9030)](https://github.com/nextcloud/text/pull/9030)
- [Feat(php): install and configure PHP rector (text#9031)](https://github.com/nextcloud/text/pull/9031)

##### [twofactor\_nextcloud\_notification](https://github.com/nextcloud/twofactor_nextcloud_notification)

- [Feat(deps): Add Nextcloud 35 support on main (twofactor\_nextcloud\_notification#1324)](https://github.com/nextcloud/twofactor_nextcloud_notification/pull/1324)
- [Use SPDX license identifier (twofactor\_nextcloud\_notification#1395)](https://github.com/nextcloud/twofactor_nextcloud_notification/pull/1395)

##### [twofactor\_totp](https://github.com/nextcloud/twofactor_totp)

- [Fix: handle potentially null return value of preg\_replace (twofactor\_totp#1762)](https://github.com/nextcloud/twofactor_totp/pull/1762)
- [Feat(deps): Add Nextcloud 35 support on master (twofactor\_totp#1768)](https://github.com/nextcloud/twofactor_totp/pull/1768)
- [Fix(migration): preserve state=2 secrets when cleaning up unverified … (twofactor\_totp#1771)](https://github.com/nextcloud/twofactor_totp/pull/1771)
- [Chore: add an agents file (twofactor\_totp#1772)](https://github.com/nextcloud/twofactor_totp/pull/1772)
- [Chore: migrate issue templates to issue forms and simplify bug reports (twofactor\_totp#1773)](https://github.com/nextcloud/twofactor_totp/pull/1773)
- [Feat: allow admins to configure TOTP algorithm and secret length (twofactor\_totp#1778)](https://github.com/nextcloud/twofactor_totp/pull/1778)
- [Feat(totp): embed favicon URL in otpauth QR code (twofactor\_totp#1779)](https://github.com/nextcloud/twofactor_totp/pull/1779)
- [Fix: add and apply nextcloud/rector (twofactor\_totp#1782)](https://github.com/nextcloud/twofactor_totp/pull/1782)
- [Ci(renovate): update dependencies on maintained stable branches (twofactor\_totp#1795)](https://github.com/nextcloud/twofactor_totp/pull/1795)
- [Ci: drop unused app publish workflow (twofactor\_totp#1835)](https://github.com/nextcloud/twofactor_totp/pull/1835)
- [Chore(deps): bump phpunit from v11 to v12 (twofactor\_totp#1843)](https://github.com/nextcloud/twofactor_totp/pull/1843)

##### [updater](https://github.com/nextcloud/updater)

- [Chore(tests): master is now 35 (updater#755)](https://github.com/nextcloud/updater/pull/755)
- [Chore: Fix linting supported PHP versions (updater#756)](https://github.com/nextcloud/updater/pull/756)
- [Feat(build): introduce reproducible builds (updater#757)](https://github.com/nextcloud/updater/pull/757)
- [Chore(deps): upgrade Rector and use Nextcloud rules (updater#758)](https://github.com/nextcloud/updater/pull/758)
- [Fix: Fix explode calls for path parsing (updater#760)](https://github.com/nextcloud/updater/pull/760)
- [Docs(README): Fix typo (overview) (updater#774)](https://github.com/nextcloud/updater/pull/774)

##### [viewer](https://github.com/nextcloud/viewer)

- [Fix: adjust z-index for color picker modals (viewer#3175)](https://github.com/nextcloud/viewer/pull/3175)
- [Feat(deps): Add Nextcloud 35 support on master (viewer#3182)](https://github.com/nextcloud/viewer/pull/3182)
- [Feat(deps): Add Nextcloud 35 support on master (viewer#3183)](https://github.com/nextcloud/viewer/pull/3183)
- [Fix(plyr): the speed selection should not go out of the viewport (viewer#3192)](https://github.com/nextcloud/viewer/pull/3192)
- [Fix(plyr): the speed settings button should not be cut (viewer#3193)](https://github.com/nextcloud/viewer/pull/3193)
- [Fix(plyr): add l10n to components (viewer#3194)](https://github.com/nextcloud/viewer/pull/3194)
- [Fix(plyr): add l10n to speed selections (viewer#3195)](https://github.com/nextcloud/viewer/pull/3195)
- [Don’t download file if file path is not defined (viewer#3200)](https://github.com/nextcloud/viewer/pull/3200)
- [Fix(files): don’t expose WebDAV XML-attribute artifacts as DOM attributes (viewer#3225)](https://github.com/nextcloud/viewer/pull/3225)
- [[master] fix(composer): Remove trailing comma breaking composer.json parsing (viewer#3271)](https://github.com/nextcloud/viewer/pull/3271)
- [Test: migrate e2e tests from Cypress to Playwright (viewer#3272)](https://github.com/nextcloud/viewer/pull/3272)
- [Fix: urlencode file source based on resource url (viewer#3320)](https://github.com/nextcloud/viewer/pull/3320)

---

<div class="post-metadata">

**Author:** ![system](https://help.nextcloud.com/user_avatar/help.nextcloud.com/system/32/29333_2.png) [@system](https://help.nextcloud.com/u/system)\
**Post date:** [August 14, 2026, 4:11pm UTC](https://help.nextcloud.com/t/first-beta-release-of-nextcloud-hub-26-summer-v35/248008/3 "2026-08-14T16:11:29Z")

</div>

This topic was automatically closed after 3 days. New replies are no longer allowed.
