Jason Rasmussen
cc1e236365
feat: server feature level ( #32178 )
...
* feat: server feature level
* fix: correctly compute feature level
2026-10-14 09:56:49 -04:00
Daniel Dietzler
481a7bf3ae
chore: mark people users endpoints as beta ( #32232 )
2026-10-08 15:58:16 +00:00
Daniel Dietzler
8d377bfef5
fix: memories mobile sync for older clients ( #32150 )
...
Co-authored-by: Santo Shakil <shakil.mezbah@gmail.com >
2026-10-06 15:48:29 +02:00
Daniel Dietzler
549a76cd35
fix: people page search ( #32094 )
2026-10-05 17:58:00 +02:00
Daniel Dietzler
989e7cf203
fix: clarify PUT to PATCH migration ( #32010 )
2026-10-02 15:50:08 +00:00
Jason Rasmussen
1741650348
feat: bulk person management ( #31949 )
...
* feat: bulk person access
* chore: wip
* chore: cleanup and minor UX improvements
* chore: pr feedback
---------
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev >
2026-09-30 17:15:24 -04:00
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
Daniel Dietzler
4408f49d15
fix: person management ids validation and permissions ( #31898 )
2026-09-29 18:02:33 +02:00
immich-push-o-matic[bot]
a9d102234b
chore: version v3.3.0-rc.0
2026-09-28 21:54:03 +00:00
Daniel Dietzler
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
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
Daniel Dietzler
7b51c50a96
feat: people merge improvements ( #31456 )
2026-09-14 19:10:25 +02:00
Alan Grainger
7abd625af3
docs(server): document the UTC timestamp format for timeBucket ( #31421 )
...
* docs(server): document the UTC timestamp format for timeBucket
* docs(server): wrap timeBucket description to satisfy prettier
2026-09-11 14:50:08 -04: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
Alex
fa8a191aaa
fix: incorrect edit's openapi type ( #31218 )
...
* fix: incorrect edit's openapi type
* patch
* remove type changes
2026-09-02 14:41:41 -05:00
Jason Rasmussen
2c53b76400
chore: require number format ( #31222 )
2026-09-02 12:33:22 -04: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
Timon
293dd5889c
chore: bump openapi-generator version to v7.25 ( #30995 )
2026-08-27 08:44:49 -04:00
Ben Beckford
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 Brock
1b3aa9cd51
fix(server): correct tag create operations ( #30877 )
2026-08-24 17:57:32 +02:00
Timon
2feb889b9c
chore(server): update zod to 4.4.3 and nestjs-zod to 5.5.0 ( #30532 )
2026-08-24 10:59:22 +02:00
Jordan Brock
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 Rasmussen
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 Rasmussen
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
Yaros
7165eb61eb
fix(server): unicode email validation ( #30871 )
2026-08-19 16:40:10 -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
shenlong
ff5da0f84f
chore: immich_mobile path in openapi pubspec ( #30643 )
...
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
2026-08-12 23:00:08 +05:30
Giacomo 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
Adam Gastineau
6c01b4f5d8
chore(mobile): remove OpenAPI generated code ( #30287 )
...
* chore(mobile): remove OpenAPI generated code
* Don't reference generated files for CI checks
2026-07-29 20:33:30 +00:00
Daniel Dietzler
f68815e35f
fix: calendar heatmap api key permissions ( #30314 )
2026-07-28 12:16:59 +02:00
Daniel Dietzler
6c86d39f6d
fix: calendar heatmap permissions ( #30310 )
2026-07-28 11:33:10 +02:00
github-actions
8aa95c6747
chore: version v3.1.0
2026-07-27 18:20:33 +00:00
Adam Gastineau
e3385ce183
chore(mobile): harden mobile OpenAPI codegen and dependency install ( #30202 )
...
* chore(mobile): harden mobile OpenAPI codegen and dependency install
* Cleaner mise cascade
* Version openapi-generator-cli with mise
* Relocate tool definition
* Update lock file
2026-07-27 06:07:31 -07:00
Timon
6fa3f2feac
chore: bump openapi-generator version to v7.24.0 ( #30067 )
...
* remove patch in favor of [OpenAPITools/openapi-generator#23930 ](https://github.com/OpenAPITools/openapi-generator/issues/23930 )
partially revert "chore(mobile): make openapi requests abortable (#28692 )"
* gen client
* bump openapi-generator version to v7.24.0
* gen client
* enum migration changes
* drop enum exhaustion switch check
2026-07-20 20:06:23 -04:00
Timon
3adc3920fb
chore: bump openapi-generator version to v7.23.0 ( #28916 )
2026-07-20 15:06:51 +02:00
Timon
4c2d2284aa
refactor(server): album user route params ( #29503 )
2026-07-15 18:15:41 +00:00
github-actions
cd308ad930
chore: version v3.0.3
2026-07-14 21:10:19 +00:00
Daniel Dietzler
2ed8b2bddd
fix: memory search date validation ( #29907 )
2026-07-14 16:34:38 +02:00