71 Commits
Author SHA1 Message Date
Jason Rasmussen f77847dda0 feat(server): create all for owner (#31924) 2026-09-29 18:12:25 -04:00
Jason Rasmussen aec7c0d97b feat: auto-sync name changes to connected users (#31923)
* feat: auto-sync name changes to connected users

* fix: rename to faceId

* fix: pr feedback

* fix: mobile build
2026-09-29 18:12:25 -04:00
immich-push-o-matic[bot] a9d102234b chore: version v3.3.0-rc.0 2026-09-28 21:54:03 +00:00
c12d5e6d35 feat: people management (#31620)
Co-authored-by: Jason Rasmussen <jason@rasm.me>
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2026-09-28 21:29:15 +02:00
renovate[bot]andDaniel Dietzler bf5b21b361 chore(deps): update node (#31813)
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev>
2026-09-28 19:22:29 +02:00
renovate[bot]andJason Rasmussen 959d46c654 chore(deps): update dependency @types/node to ^24.13.5 (#31713)
* chore(deps): update dependency @types/node to ^24.13.5

* fix: add checksum

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jason Rasmussen <jason@rasm.me>
2026-09-22 20:59:20 +00:00
Alex d6d0947383 feat: birthday memories (#30831) 2026-09-22 04:30:43 -05:00
Jason Rasmussen 54e7ffa4e6 feat: asset face v3 (#31591) 2026-09-16 16:27:01 -04:00
Jason Rasmussen 99fd561144 chore: transition to nullable user.oauthId (#31560) 2026-09-15 09:33:15 -04:00
renovate[bot]andDaniel Dietzler e55ac299a4 chore(deps): update node (#31329)
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev>
2026-09-14 21:48:02 +02:00
Daniel Dietzler 7b51c50a96 feat: people merge improvements (#31456) 2026-09-14 19:10:25 +02:00
Jason Rasmussen c0eed4902a chore: version v3.2.0 (#31441)
chore: v3.2.0
2026-09-11 11:02:34 -04:00
Mees Frensel da8131d5c2 fix(web): album date range formatting (#28564) 2026-09-03 10:31:15 +02:00
immich-push-o-matic[bot] e61312084b chore: version v3.2.0-rc.0 2026-08-27 19:43:45 +00:00
Timon 8b3d6b320b feat(server): new search API (#30179) 2026-08-27 20:39:55 +02:00
Daniel Dietzler c7d24321bf feat: allow users to re-run facial recognition for their group (#30965) 2026-08-27 16:38:07 +02:00
bo0tzz 6221e29c70 fix: throw a typed error on malformed api responses (#31006)
* fix: throw a typed error on malformed api responses

* fix: drop response body parse check

* fix(web): keep json response validation when overriding fetch (#31008)

* fix(cli): report malformed api responses (#31007)
2026-08-26 00:38:39 +00:00
351be95769 feat: memories view (#28675)
* wip web memories view

* paginate searchMemories

* improve memories ui

* feat(mobile): memories view

* improve memories web ui

* fix(web): avoid unnecessary memory refreshes

* refactor(web): move timline memory manager filter

* fix(web): memories infinitely loading on 0 results

* fix(web): memories resetting

* feat(web): animated memory previews

* feat(web): memory page dark styling

* chore(mobile): fix failing memory lane tests

* chore(mobile): remove old import

* chore(e2e): fix failing memory lane tests

* chore(server): revert searchMemories changes

* chore(server): lint

* chore(mobile): fix bad merge

* chore(e2e): fix memory ui tests

* chore(web): rename /memory to /memories

* chore(mobile): linting

* chore(web): linting

* fix(web): prevent duplicate memory page loading

* fix(web): lint

* fix(web): memories page improvements

* chore(mobile): lint

* fix(mobile): fix translations

* fix(mobile): build errors

* fix(web): prevent memories from infinitely loading

* chore(e2e)): fix failng memory viewer test

* chore(web): clean up types in memory manager

* chore(web): lint

* feat: update list and detail memory page layouts

* onlyFavorites through drift

* rename to get all

* mobile: use widgetWhen in memory list page

* remove redundant check

* fix: e2e

---------

Co-authored-by: Timon <mail@timonrieger.de>
Co-authored-by: Jason Rasmussen <jason@rasm.me>
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2026-08-24 19:16:33 -05:00
Jordan BrockandRay 79c4c00f70 feat(web): tag renaming v2 (#27909)
* implement updated rename tag feature

* Fix tag update handler

* Ensure toast displays updated tag name

* Ensure toast displays updated tag name

* Handle updates to tag closure table, prevent slash in API filename, test case updates

* delete child tags on parent delete

* Update frontend for better handling of nested tags

* pr checklist fixes

* fix unit test for tag controller

* Hide path for top-level tags

* regenerate SQL files

* name updates optional for tag update operations

* e2e tests for new tag api changes

* changes from code review, additional test coverage

* test fixes, web component refactor

* test assets

* test asset updates

* open-api rebuild

* update unit tests

* fix tag dto tests

* Update web/src/lib/modals/TagEditModal.svelte

Fix missing color bug

Co-authored-by: Ray <3608878+Pecacheu@users.noreply.github.com>

* fix tag e2e test

* remove closure table bug fixes

* remove nullish from tag name update schema

* regenerate openapi and sql

* fix test and e2e test

* simplify tag repository update process

* minor fix and sql regenerate

* fix tests, regen open-api, update dto

* Remove unused function

* Remove accidental test asset ref

* re-add test assets

* pin submodule to main branch commit

* Update test cases based on feedback

* Server fixes based on feedback

* regenerate sql

---------

Co-authored-by: Ray <3608878+Pecacheu@users.noreply.github.com>
2026-08-21 14:55:11 -04:00
Jason RasmussenandDaniel Dietzler caea849fee feat: asset file apis (#25900)
* feat: asset file endpoints

* Update server/src/controllers/asset-file.controller.ts

Co-authored-by: Daniel Dietzler <36593685+danieldietzler@users.noreply.github.com>

* Update server/src/controllers/asset-file.controller.ts

Co-authored-by: Daniel Dietzler <36593685+danieldietzler@users.noreply.github.com>

---------

Co-authored-by: Daniel Dietzler <36593685+danieldietzler@users.noreply.github.com>
2026-08-21 13:55:25 +00:00
Diogo Correia c9776fb990 fix(web): download archives via html POST forms (#30021)
* fix: download archives via html POST forms

* refactor: fix css of download panel, add translations and toasts

* style: run lint, formatter, check

* chore: generate open-api specs

* refactor(web): simplify download manager, use SvelteMap

* refactor(server): parse fields from x-www-form-urlencoded request

* refactor: move content-disposition to ImmichReadStream

* Pass asset ids as a comma-separated string

This fixes a bug where the 1000 parameter limit is being hit when
downloading 1000+ assets.

* Add download controller test

* Fix lint warnings
2026-08-20 20:58:41 -04:00
Sacha Brouté c7f6197e75 feat: add oauth account management url (#30873) 2026-08-20 21:31:34 +00:00
Jason RasmussenandDaniel Dietzler 11b1aa5ecf feat: cluster groups (#30739)
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev>
2026-08-20 20:03:00 +02:00
Jason Rasmussen e529557160 feat: new config endpoints (#30881)
* refactor: config endpoints

* chore: pr feedback
2026-08-20 11:46:17 -04:00
Jason Rasmussen 47c5a3dbf6 refactor: api key response dto (#30887) 2026-08-20 11:23:12 -04:00
Brandon Wees 93d2d30fe0 feat: rotate an API key (#30801)
* feat: rotate an API key

* fix: test response

* chore: create new api key scope

* chore: code review
2026-08-18 16:07:39 -04:00
Ben Beckford 447cc40a50 feat: workflow logging (#29878)
* feat: workflow logging

* chore: update sql and openapi patch

* chore: include id in workflow log entries

* chore(server): update sql and lint

* chore(mobile): remove openapi files

* chore(web): lint

* chore: clean up workflow logging

* chore(server): add runId to workflow logs

* chore(server): store workflow results as enum
2026-08-13 19:18:24 -07:00
Ben Beckford a939561e70 feat: workflow asset tag trigger/filter/action (#29043)
* feat: workflow asset tag trigger and filter

* feat(web): show tag names in workflow editor

* fix(web): tag picker in schema config editor

* fix: invalid plugin manifest

* chore: update workflow method wrapper type

* chore: update tag filter method declaration

* feat: workflow action to add tags to assets
2026-08-12 16:26:03 -07:00
Giacomo PinatoandGiacomo Pinato 6b6058c463 feat: store null instead of empty string for album.description (#30123)
Addresses the first column of issue #28832: album.description now stores
and returns null instead of an empty string.

Co-authored-by: Giacomo Pinato <giacomo.pinato@gmail.com>
2026-07-30 19:41:49 +00:00
github-actions 8aa95c6747 chore: version v3.1.0 2026-07-27 18:20:33 +00:00
renovate[bot]andDaniel Dietzler 8365cdd59e chore(deps): update dependency typescript to v7 (#29903)
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev>
2026-07-21 13:36:57 +02:00
renovate[bot] f18065b3c2 chore(deps): update dependency @types/node to ^24.13.3 (#29892) 2026-07-16 20:31:45 +02:00
github-actions cd308ad930 chore: version v3.0.3 2026-07-14 21:10:19 +00:00
github-actions 443b856ac3 chore: version v3.0.2 2026-07-09 17:33:21 +00:00
Daniel Dietzler 655cd01d57 fix: search metadata for album shared links (#29742) 2026-07-08 20:32:20 +02:00
Mert 69d568f289 feat(server): hls variant configuration (#29613)
* configure variants

* openapi

* dynamic level

* unnecessary width/height fields

* add web config

* allow 1440p and 2160p

* more helpful descriptions

* simplify level picker

* formatting

* integer instead of number
2026-07-06 14:57:48 -04:00
github-actions f77c8a4699 chore: version v3.0.1 2026-07-02 19:24:13 +00:00
Ben Beckford 237734bb26 feat(web): recently added link in sidebar (#29039)
* feat(web): recently added link in sidebar

* chore(mobile): update openapi patches
2026-07-01 23:12:50 +00:00
github-actions 05d838b560 chore: version v3.0.0 2026-06-30 20:03:47 +00:00
github-actions ac74bca18b chore: version v3.0.0-rc.4 2026-06-27 13:14:47 +00:00
github-actions 09d4a6815f chore: version v3.0.0-rc.3 2026-06-26 16:49:02 +00:00
Timon f22836e1bf refactor(server): describe check upload id as string (#29274) 2026-06-23 12:42:42 +02:00
github-actions 38920fc4ca chore: version v3.0.0-rc.2 2026-06-18 23:20:14 +00:00
Timon 09d0380804 refactor(server): use zod time validation (#29189) 2026-06-18 11:56:02 +00:00
Mert 7ef2de6b53 feat(server): add hls playlist hint (#29150)
* add playlist hint

* update api

* unused import

* update crf in tests
2026-06-17 19:02:10 -04:00
github-actions c9aa9ba711 chore: version v3.0.0-rc.1 2026-06-16 19:50:41 +00:00
Mees Frensel d307ab60ca fix: update datetimeRelative description to minutes instead of seconds (#29137) 2026-06-16 16:09:45 +02:00
Timon ce59cc9241 docs(server): clarify AssetBulkUploadCheckItem.id is a correlation token (#29141) 2026-06-16 14:07:36 +00:00
renovate[bot] 54895fb10e chore(deps): update node to ^24.13.2 (#29129) 2026-06-16 13:43:22 +00:00
github-actions e4dbe777a0 chore: version v3.0.0-rc.0 2026-06-12 14:55:39 +00:00