Commit Graph
2049 Commits
Author SHA1 Message Date
timonrieger 34c25b43fc no smart search cursor 2026-07-25 18:33:45 +02:00
timonrieger 8bcf23789d strict search shapes 2026-07-25 16:54:33 +02:00
timonrieger 9b40ef069c split search opts from scope 2026-07-25 16:11:42 +02:00
timonrieger 547634efb9 enum op exhaustion 2026-07-25 16:11:42 +02:00
timonrieger 72e2a18f03 page defaults 2026-07-25 16:11:42 +02:00
timonrieger fe0f4e2140 tests 2026-07-25 16:11:42 +02:00
timonrieger 740fccf3d2 deprecate controller 2026-07-25 16:11:42 +02:00
timonrieger 0b2c97103c fmt 2026-07-25 16:11:42 +02:00
timonrieger c962016d4b services and simplify 2026-07-25 16:11:42 +02:00
timonrieger b52d5d4ddb repos 2026-07-25 16:11:42 +02:00
timonrieger 5b9db14bbc dtos 2026-07-25 16:11:42 +02:00
timonrieger 6a728b7159 enum condition filters 2026-07-25 16:11:41 +02:00
timonrieger d26b6151e0 cursor en-/decoder 2026-07-25 16:11:41 +02:00
bo0tzzandGitHub 4a5f13d0e5 fix: don't skip person thumbnail generation if ML is disabled (#30194) 2026-07-24 10:06:32 -04:00
Jason RasmussenandGitHub acc7e6b299 fix: min faces user preference (#30177) 2026-07-23 17:06:09 -04:00
TimonandGitHub f24a128319 feat(server): new search schemas and query builders (#28686) 2026-07-22 22:33:23 +00:00
Jason RasmussenandGitHub b9f6c4aaf2 feat: password invalidate sessions (#30125) 2026-07-22 12:09:05 -04:00
Aditya Raj SinghandGitHub a0c7b81142 fix(server): dissolve stack when its non-primary assets are deleted (#29354) 2026-07-22 13:00:52 +02:00
a560e08693 fix: re-evaluate OIDC role claim on every login and support array values (#29991)
* fix(server): re-evaluate OIDC role claim on every login and support array values

Previously the OIDC role claim (immich_role) was only read at user
auto-registration time and only accepted as a scalar string, so admin
status never updated after the first login and array-valued role/group
claims (common with Keycloak, Entra ID, etc.) were silently ignored.

Now the role claim is normalized from either a string or an array of
strings, and existing users have their isAdmin flag synced from the
claim on every login, keeping the IdP as the source of truth for
privileges while leaving isAdmin untouched when the claim is blank.

* fix(server): use .includes() instead of .some() for role claim check

Satisfies unicorn/prefer-includes lint rule flagged by CI.

* fix(server): resolve missing role claim to standard user and fix test mock

Default the OIDC role claim to 'user' when the IdP omits it so
auto-registration doesn't crash, and add the missing getAdmin mock in the
auth.service test so it correctly simulates an existing admin rather than
the first-user-registration path.

* fix: claim sync logic

---------

Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
2026-07-21 17:21:19 -04:00
Daniel DietzlerandGitHub 5d7283e44d fix: album update event emitting (#30120) 2026-07-21 19:43:27 +00:00
73329a8ce8 fix(server): send id_token_hint on OIDC logout (#29720)
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev>
2026-07-21 19:19:13 +02:00
TimonandGitHub ee4bd3f833 feat: add album asset event handling (#29008)
* feat: add album asset event handling

* fix medium tests

* patch medium test

* collapse in AlbumUpdate
2026-07-21 10:55:46 -05:00
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
1b4d41324e fix(server): file uploads for files with extension only filenames (#30024)
Co-authored-by: Daniel Dietzler <36593685+danieldietzler@users.noreply.github.com>
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev>
2026-07-21 11:57:28 +00:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>Daniel Dietzler
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
Daniel DietzlerandGitHub 77091b0107 fix: search statistics locked folder permissions (#30063)
fix; search statistics locked folder permissions
2026-07-20 20:08:42 -04:00
Daniel DietzlerandGitHub 4c754f2999 fix: timebuckets locked permissions (#30066) 2026-07-20 20:07:56 -04:00
Ben BeckfordandGitHub f2c00c107d fix(server): return workflow steps in ascending order (#29999) 2026-07-17 11:30:40 +02:00
a3dd19cd2f fix(deps): update typescript-projects (#29633)
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev>
2026-07-16 20:14:05 +02:00
Ryan RockeyandGitHub 80cdfebbc7 fix: zero byte image uploads (#29426) 2026-07-16 13:00:07 +02:00
cevdetandGitHub f73c53c563 chore(seo): remove redundant twitter metadata tags (#29801) 2026-07-16 12:29:38 +02:00
MertandGitHub d2744f52b1 fix(server): disable heif security limit (#29954)
disable security limit
2026-07-16 04:40:33 -05:00
TimonandGitHub 4c2d2284aa refactor(server): album user route params (#29503) 2026-07-15 18:15:41 +00:00
Andreas HeinzandGitHub e7f773197f fix(server/workflow): add trigger for external libraries AssetCreate (#29597) 2026-07-15 19:30:33 +02:00
MertandGitHub 89b0d906e8 fix(server): set hvc1 tag when using hwa (#29908)
fix hvc1 check
2026-07-14 11:03:30 -04:00
Daniel DietzlerandGitHub 2ed8b2bddd fix: memory search date validation (#29907) 2026-07-14 16:34:38 +02:00
Daniel DietzlerandGitHub 35fcca6254 fix: locked visibility in search random endpoint (#29887) 2026-07-13 20:03:20 +00:00
99883096d6 fix: still part of live photo hidden on bg upload (#29884)
* fix: still part of live photo hidden on bg upload

* add foreground tests

---------

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2026-07-13 14:50:06 -05:00
Daniel DietzlerandGitHub 84dff19ca9 fix: unauthorized album owner update (#29883) 2026-07-13 11:46:18 -05:00
Daniel DietzlerandGitHub fea0db02f3 fix: emit album update event when uploading assets through shared link (#29757) 2026-07-09 15:21:16 +02:00
Ben BeckfordandGitHub c5222c7579 chore(server): use bounded numbers in workflows (#29009)
* chore(server): use bounded numbers in workflows

* chore: increase precision for lat/lon filtering

* chore: re-add integer to a json schema type
2026-07-08 17:15:48 -07:00
Daniel DietzlerandGitHub 66e30d5fa1 fix: missing files integrity checks (#29737) 2026-07-08 14:53:46 -05:00
Daniel DietzlerandGitHub 053a52aec8 fix: iso date parsing for three digit years (#29739) 2026-07-08 14:53:16 -05:00
Daniel DietzlerandGitHub 655cd01d57 fix: search metadata for album shared links (#29742) 2026-07-08 20:32:20 +02:00
MertandGitHub cfd95f0196 fix(server): stream ffprobe packets (#29723) 2026-07-08 12:51:22 -04:00
Daniel DietzlerandGitHub 7a9b9e01be feat: user agnostic database restore (#29512) 2026-07-07 21:16:48 +02:00
Daniel DietzlerandGitHub 0cbe07c4d4 fix: integrity checks dto validation (#29621) 2026-07-07 20:49:26 +02:00
Daniel DietzlerandGitHub 704b287bba fix: integrity checks checksum pagination (#29516) 2026-07-07 18:42:14 +02:00
Daniel DietzlerandGitHub f8e78792b8 fix: oauth account linking (#29624) 2026-07-07 11:21:27 -05:00
MertandGitHub 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