Immich 2.7.0 → 3.2.4
13 versions, 2 with breaking changes, 1 with upstream notes or warnings only, 0 required stops
Version by version, oldest first
2.7.2 – 2.7.5: no action items (4 versions)
3.0.0 2026-07-02
Breaking
This release includes several breaking changes; read the full migration guide here. It's worth mentioning that many of the breaking changes are updates to API endpoints and affect only third-party tools that integrate with Immich's API. For the vast majority of users, updating works exactly as it always has.
Note
How to update
Warning
v3.0.0drops support for pgvecto.rs. If you run Immich beforev1.133.0and haven't done the migration step yet, see the migration guide here. https://docs.immich.app/install/upgrading/#migrating-to-vectorchord
First, update the IMMICH_VERSION in your .env file to v3:
- IMMICH_VERSION=v2
+ IMMICH_VERSION=v3
Then run the usual update commands:
docker compose pull && docker compose up -dNote
For assets imported prior to v3, you will also need to re-run Metadata Extraction in the job panel for them to be re-processed.
Breaking
- refactor!: migrate class-validator to zod by @timonrieger in https://github.com/immich-app/immich/pull/26597
- refactor!: remove replace asset by @jrasm91 in https://github.com/immich-app/immich/pull/27022
- refactor!: remove my shared link dto by @jrasm91 in https://github.com/immich-app/immich/pull/27023
- chore!: remove deprecated env variables by @jrasm91 in https://github.com/immich-app/immich/pull/27802
- chore!: remove getRandom api endpoint by @bwees in https://github.com/immich-app/immich/pull/27780
- chore!: remove unused token response param by @jrasm91 in https://github.com/immich-app/immich/pull/27805
- refactor: yeet old timeline by @shenlong-tanwen in https://github.com/immich-app/immich/pull/27666
- chore!: remove old timeline sync endpoints by @jrasm91 in https://github.com/immich-app/immich/pull/27804
- chore!: remove deviceId and deviceAssetId by @danieldietzler in https://github.com/immich-app/immich/pull/27818
- chore!: rename API key schemas by @jrasm91 in https://github.com/immich-app/immich/pull/27828
- chore!: remove without assets by @jrasm91 in https://github.com/immich-app/immich/pull/27835
- fix: oauth issuerUrl validation by @bo0tzz in https://github.com/immich-app/immich/pull/27848
- fix!: do not allow insecure oauth requests by default by @bo0tzz in https://github.com/immich-app/immich/pull/27844
- fix!: set duration to null when not present by @meesfrensel in https://github.com/immich-app/immich/pull/26982
- chore!: remove /api/server/theme endpoint by @jrasm91 in https://github.com/immich-app/immich/pull/27880
- chore!: migrate album owner to album_user by @danieldietzler in https://github.com/immich-app/immich/pull/27467
- refactor!: change number to integer types by @timonrieger in https://github.com/immich-app/immich/pull/27912
- refactor(server)!: move correlationId to X-Correlation-ID response header by @timonrieger in https://github.com/immich-app/immich/pull/28139
- refactor(server)!: remove redundant error and statusCode fields from error responses by @timonrieger in https://github.com/immich-app/immich/pull/28140
- chore(server)!: drop pgvecto.rs support by @mertalev in https://github.com/immich-app/immich/pull/28159
- chore!: duration in milliseconds by @mertalev in https://github.com/immich-app/immich/pull/28003
- refactor(server)!: sanitize error messages to avoid leaking resource details by @timonrieger in https://github.com/immich-app/immich/pull/28154
- refactor(server)!: structured validation error responses by @timonrieger in https://github.com/immich-app/immich/pull/28204
- feat(server)!: add isOwned filter to albums API by @timonrieger in https://github.com/immich-app/immich/pull/28213
- chore(ml)!: require numpy 2.4 by @mertalev in https://github.com/immich-app/immich/pull/28158
- fix(deps): update dependency nestjs-otel to v8 by @renovate[bot] in https://github.com/immich-app/immich/pull/27863
- chore(ml)!: remove deprecated envs by @mertalev in https://github.com/immich-app/immich/pull/28326
- chore(server)!: remove libopus enum by @mertalev in https://github.com/immich-app/immich/pull/28325
- refactor!: remove asset faces from AssetResponseDto by @bwees in https://github.com/immich-app/immich/pull/27779
- refactor(server)!: drop empty string to null conversion by @timonrieger in https://github.com/immich-app/immich/pull/28808
- refactor(server)!: remove changeExpiryTime by @timonrieger in https://github.com/immich-app/immich/pull/28816
- refactor!: disallow star rating < 1 by @meesfrensel in https://github.com/immich-app/immich/pull/27896
- fix!: search endpoints visibility can be omitted by @danieldietzler in https://github.com/immich-app/immich/pull/29385
3.0.1 – 3.0.2: no action items (2 versions)
3.0.3 2026-07-15
Note
In some specific circumstances, newly uploaded Live Photos could have broken thumbnails. If you see any such cases, please run the "missing" job for thumbnails or wait for the respective nightly job to clear it up.
3.1.0 2026-07-29
Breaking
- chore(mobile): drop support for iOS 14 by @agg23 in https://github.com/immich-app/immich/pull/29780
3.2.0 – 3.2.4: no action items (4 versions)
Release notes from github.com/immich-app/immich/releases, checked 17 hours ago. Only text the vendor marks as breaking, or puts in a warning/caution/important note, or a plain note, is shown (a note that asks nothing of the admin, such as a call for feedback or testing, is not); read the full notes for anything else.