Nextcloud 35.0.2: many fixes, clean Docker upgrade from 35.0.1

released
lab run
upgraded from
35.0.1
guest
Ubuntu 26.04 VM
tested
yes, in our lab

Summary

Nextcloud 35.0.2 is a maintenance release with many fixes. The release notes group them as follows (reported, not tested by us beyond the upgrade):

  • Sharing: link expiry defaults follow the configured setting, share presets are limited to the resharer’s permissions, and calendar and address book sharing is restricted to the owner.
  • Sessions and login: remember-me cookie handling was tightened, and password reset link expiry is checked against the interactive login time.
  • Files: filenames containing newline characters are rejected. Several fixes for live photos, renames and mounts.
  • Admin: a code integrity background job, trashbin:expire continues past errors, and user:resetpassword now dispatches password reset events.
  • Fixes: an ImageMagick segfault in theming app icon rendering, and phpseclib updated to 3.0.57.
  • Bundled apps: updates to text, circles, activity, notifications, serverinfo and others. files_lock widens lock identifiers and durations to bigint and runs migrations.

Breaking changes and deprecations

The release notes list no breaking changes. They report one deprecation: long, non-lazy app and user config values. Filenames with newline characters are now rejected, which could matter if you have scripts that create such names.

Tested in our lab

We upgraded the official Docker image from nextcloud:35.0.1 to nextcloud:35.0.2, using a named volume and the built-in SQLite database. We did not test a Postgres or MariaDB setup, Redis, or the sharing, session or DAV changes.

  • 35.0.1 installed and answered on status.php. We added a file for the admin user.
  • We stopped the container cleanly, then started 35.0.2 on the same volume.
  • The entrypoint upgraded the database and apps automatically. files_lock went from 35.0.0 to 35.0.1.
  • After the upgrade status.php reported 35.0.2, maintenance mode was off, and no further DB upgrade was needed.
  • The test file was still there with the same content, and a file scan reported 0 errors.
  • The Nextcloud log had two entries at warning level or above, both during the upgrade. They were about not reaching the app store from our lab guest. We do not count them as release problems.

Lab log

$ docker run -d --name nc -p 8080:80 -v nc_data:/var/www/html -e SQLITE_DATABASE=nc -e NEXTCLOUD_ADMIN_USER=admin -e NEXTCLOUD_ADMIN_PASSWORD=[redacted] nextcloud:35.0.1
$ docker exec -u www-data nc php occ status
  - installed: true
  - version: 35.0.1.1
  - versionstring: 35.0.1
[...]
$ docker stop nc && docker rename nc nc-old && docker pull nextcloud:35.0.2 && docker run -d --name nc -p 8080:80 -v nc_data:/var/www/html nextcloud:35.0.2
$ curl -s http://localhost:8080/status.php
{"installed":true,"maintenance":false,"needsDbUpgrade":false,"version":"35.0.2.2","versionstring":"35.0.2","edition":"","productname":"Nextcloud","extendedSupport":false}
$ docker exec -u www-data nc cat /var/www/html/data/admin/files/lab.txt
hello-lab
$ docker exec -u www-data nc php occ files:scan admin
| Folders | Files | New | Updated | Removed | Errors | Elapsed time |
+---------+-------+-----+---------+---------+--------+--------------+
| 5       | 65    | 0   | 0       | 0       | 0      | 00:00:00     |
$ docker logs nc 2>&1 | grep -iE "error|warn|upgrade|Update"
[...]
Updated database
[...]
Updated <files_lock> to 35.0.1
[...]
Updated <notifications> to 8.0.1

Reported by others

We did not search issues or forums for reports on this release. The only source is the release notes.

Verdict

Upgrade. The 35.0.1 to 35.0.2 step was uneventful in our Docker and SQLite test, and the release carries many fixes. Take a backup first, as with any Nextcloud upgrade, and stop the old container before starting the new one.

sources