Daniel Dietzler
481a7bf3ae
chore: mark people users endpoints as beta ( #32232 )
2026-10-08 15:58:16 +00: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
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
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
Daniel Dietzler
7b51c50a96
feat: people merge improvements ( #31456 )
2026-09-14 19:10:25 +02:00
Daniel Dietzler
221ddd31c4
feat: server imports linting ( #31537 )
2026-09-14 14:51:31 +02:00
Jason Rasmussen
f346fe1f94
refactor: error handling ( #31455 )
2026-09-11 14:11:06 -04:00
Daniel Dietzler
2a62622041
feat: NestJS 12 and ESM ( #31237 )
2026-09-10 13:22:29 +02:00
Ufuk
9e5dcc598f
fix(server): allow an empty assetIds array when creating an album shared link ( #31098 )
2026-08-31 17:31:47 +02: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
Jordan Brock
1b3aa9cd51
fix(server): correct tag create operations ( #30877 )
2026-08-24 17:57:32 +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
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
7cd0a7d30c
refactor: e2e tests ( #30870 )
2026-08-19 14:31:57 -04:00
Jason Rasmussen
db3b31709d
refactor: library controller tests ( #30863 )
2026-08-19 09:54:08 -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
Daniel Dietzler
03da1ba108
chore: single line block comments ( #30852 )
2026-08-18 17:55:26 +02:00
renovate[bot]
11755e5a53
chore(deps): update dependency eslint-plugin-unicorn to v73 ( #30844 )
...
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev >
2026-08-18 12:00:16 +02:00
Daniel Dietzler
6a61901e79
fix: shared link create validation ( #30762 )
2026-08-14 22:04:32 +02: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
Jason Rasmussen
1b8cbaab97
refactor(server): migrate e2e auth/validation tests to controller specs ( #30715 )
...
Co-authored-by: Claude (thor) <claude@thor.local >
2026-08-11 11:02:14 -04:00
bo0tzz
a316ba35ca
fix: shared check for server setup availability ( #30311 )
...
* fix: shared check for server setup availability
* chore: add medium test
* feat: require @Authenticated decorator everywhere
* fix: lints
2026-07-30 15:12:25 -04:00
bo0tzz
b468459b1a
chore: add test for admin controller permissions ( #30316 )
2026-07-28 15:44:51 +02: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
Timon
f24a128319
feat(server): new search schemas and query builders ( #28686 )
2026-07-22 22:33:23 +00:00
renovate[bot]
aa08dad1f5
chore(deps): update dependency eslint-plugin-unicorn to v72 ( #30092 )
...
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev >
2026-07-21 15:33:46 +02:00
renovate[bot]
df970da59e
chore(deps): update dependency eslint-plugin-unicorn to v70 - abandoned ( #29684 )
...
* chore(deps): update dependency eslint-plugin-unicorn to v70
* fix: linting
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev >
2026-07-20 23:47:14 -04:00
Timon
4c2d2284aa
refactor(server): album user route params ( #29503 )
2026-07-15 18:15:41 +00:00
Daniel Dietzler
655cd01d57
fix: search metadata for album shared links ( #29742 )
2026-07-08 20:32:20 +02:00
Timon
48861b085e
chore(server): organize integrity dtos ( #29191 )
2026-06-18 14:44:28 +02:00
Timon
09d0380804
refactor(server): use zod time validation ( #29189 )
2026-06-18 11:56:02 +00:00
Timon
83091d2834
fix(server): allow non-utc datetime offsets ( #29186 )
2026-06-18 11:27:11 +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
Mert
aa126e377c
fix(server): add hint header for segment after init.mp4 ( #28867 )
...
* add hint header for segment after init.mp4
* use zod
* actually validate
* update openapi
* linting
2026-06-10 19:18:36 -04:00
Paul Makles
74878628c8
feat: integrity check jobs (missing files, untracked files, checksums) ( #24205 )
...
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev >
Signed-off-by: izzy <me@insrt.uk >
2026-06-10 21:02:27 +02:00
Timon
5c38373808
refactor(server): allow -1 rating again ( #28886 )
2026-06-10 10:55:51 +02:00
Timon
9e453440e6
refactor(server): deprecate PUT routes in favor of PATCH ( #28859 )
...
* add patch routes and deprecate put
* gen client
2026-06-07 09:40:01 -04:00
Abhijeet Sanjiv Bonde
b3d49045de
feat: user upload heatmap ( #28593 )
...
* Feat - Heatmap
* Implemented Comments to prettify and code cleanup
* fixing code to pass cases.
* fixing errors for OpenAPI Clients
* Improving the code.
* Fix code
* Rerun generated client check
* Rerun generated client
* feat: command for user pages (#28554 )
* fix(web): timeline stuttering with many assets in 1 day (#28509 )
* fix(web): timeline stuttering with many assets in 1 day
* cache isInOrNearViewport per day
* skip inOrNearViewport check on first run
* chore(ml): allow insightface 1.x (#28595 )
* chore(ml): allow insightface 1.x
The new insightface 1.0 release appears to have no breaking code changes nor relevant license changes ([before](https://github.com/deepinsight/insightface/blob/2a78baec428354883e0cda39c54b555a5ed8358a/README.md ), [after](https://github.com/deepinsight/insightface/blob/70f3269ea628d0658c5723976944c9de414e96f8/README.md ), c.f. https://github.com/immich-app/immich/blob/fd7ddfef54cdf2b6256c4fc08bc5ff3f86176775/machine-learning/README.md ), and it works on my machine.
* Update uv.lock
* please excuse my incompetence
* Triggering the actions.
* bad merge
* Fix code
* Code clear
* Resolve conflict
* Resolve conflict
* Resolve conflict
* Resolve errors
* Resolve errors
* Resolve errors more
* chore: clean up
---------
Co-authored-by: Alex <alex.tran1502@gmail.com >
Co-authored-by: Ben Beckford <ben@benjaminbeckford.com >
Co-authored-by: Aaron Liu <aaronliu0130@gmail.com >
Co-authored-by: Jason Rasmussen <jason@rasm.me >
2026-06-04 15:36:09 -04:00
Mees Frensel
99281de6ab
refactor!: disallow star rating < 1 ( #27896 )
...
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev >
Co-authored-by: timonrieger <mail@timonrieger.de >
2026-06-04 17:06:28 +00:00
Timon
5c33eb3204
refactor(server)!: drop empty string to null conversion ( #28808 )
...
refactor(server): drop empty string to null conversion
2026-06-03 18:16:53 -04:00
Jason Rasmussen
e4352a7817
fix: error log on aborted uploads ( #28806 )
2026-06-03 12:47:38 -04:00
Mert
7eabac6702
feat(server): hls with real-time transcoding ( #28230 )
...
* hls implementation
* fix stale state after ffmpeg exit
2026-06-01 18:52:29 +00:00