Bautrell12 and Codex
c76bd08f73
feat(web): enable the shortcut "f" to favorite/unfavorite in multiselection mode ( #31411 )
...
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev >
(cherry picked from commit aeee9be333f4faac877b99cacd355329a5001c25)
2026-10-29 20:43:01 +03:00
Brent Saltzman and Codex
3c383e46d1
fix: avoid duplicate manufacturer in camera name ( #32657 )
...
* fix(web,mobile): avoid duplicate manufacturer in camera name
Some cameras (e.g. Canon) already include the manufacturer in the EXIF
model, which made the details view show "Canon Canon EOS R6m2". Only
prepend the make when the model does not already start with it.
* refactor(web,mobile): address review feedback on camera name helper
- Use toLowerCase instead of toLocaleLowerCase for the comparison
- Hoist the whitespace regex to a static in the Dart helper
- Match any word of the make, so "EASTMAN KODAK COMPANY" with
"KODAK EASYSHARE C875" is deduplicated too
- Compute the camera name once in DetailPanel
---------
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev >
(cherry picked from commit cb2ea1e308d8a85f2f340f50b646f161d3528670)
2026-10-29 20:41:02 +03:00
Valentin Agachi and Codex
c3933169de
feat(server): add OCR extraction workflow filter ( #32464 )
...
feat(server): add OCR workflow filter
(cherry picked from commit 2e0eb35e93dcf8468398d7015daa5ab231c7dd9c)
2026-10-29 20:41:01 +03:00
Codex
2c1f321627
Align local web integrations with updated lint rules and Cast types
2026-10-28 21:00:29 +03:00
Jason Rasmussen and Codex
6dbe72b6a1
fix: gc time for long-lived queries ( #32793 )
...
(cherry picked from commit 079568691580605e92c5d3c3c9037cfbd657f374)
2026-10-28 20:41:41 +03:00
renovate[bot] and Codex
09bb2a9fb5
fix(deps): update typescript-projects ( #32759 )
...
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev >
(cherry picked from commit f26b9c83adb12848e94bcfc77e1b67be1756bdc9)
2026-10-28 20:41:41 +03:00
renovate[bot] and Codex
7fb7699c06
chore(deps): update dependency eslint-plugin-unicorn to v78 ( #32588 )
...
Co-authored-by: Jason Rasmussen <jason@rasm.me >
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev >
(cherry picked from commit 72e2bc8b0bc4a7e0a84ac16c0bde7f5e538729fb)
2026-10-28 20:41:28 +03:00
Codex
8119a5ee22
Finalize local12 formatting and document guarded browser APIs
2026-10-27 23:27:18 +03:00
Codex
54881128d6
Adapt local features and dependency locks for SvelteKit 3 and local12
2026-10-27 23:17:33 +03:00
Mert and Codex
db411a4497
feat(server): add jxl as target format ( #32732 )
...
(cherry picked from commit 9560989cb97fb93cd6ab74f7811acce133a9b768)
2026-10-27 23:12:52 +03:00
bo0tzz and Codex
a93bbdf3e7
feat: inline hashes in helmet CSP ( #30529 )
...
* feat: inline hashes in helmet CSP
* tests
* fix: svelte3 merge
* chore: clean up
---------
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev >
Co-authored-by: Jason Rasmussen <jason@rasm.me >
(cherry picked from commit 02a5d4b2060dad6f5779c196b7bb2b43f871ffb2)
2026-10-27 23:12:41 +03:00
renovate[bot] and Codex
7a6123f8e6
fix(deps): update dependency @immich/ui to ^0.91.0 ( #32587 )
...
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev >
(cherry picked from commit d073539afdd20530baaf85ba414f396b94112b5c)
2026-10-27 23:12:40 +03:00
renovate[bot] and Codex
4960eddaf3
fix(deps): update typescript-projects ( #32755 )
...
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev >
(cherry picked from commit 8aa9054366fac2738799a2356f9b760a2a441709)
2026-10-27 23:12:40 +03:00
Mees Frensel and Codex
f96816b55f
refactor(web): bulk (un)archive actions ( #32189 )
...
(cherry picked from commit d26c0eec10f1bb49117b71b667c88a8a715b2489)
2026-10-27 23:12:21 +03:00
Kairui Liu and Codex
c482c1e53e
fix: preserve stack primary asset selection ( #31380 )
...
* fix: preserve stack primary asset selection
* test: select stacked assets by id
* chore: limit dart formatting changes
* fix: address stack viewer review feedback
* fix: align stack ordering with server
* fix: keep stack primary asset first
---------
Co-authored-by: Daniel Dietzler <36593685+danieldietzler@users.noreply.github.com >
(cherry picked from commit 5a5d7be11084969c3c00a294ce6c0527042f88e7)
2026-10-27 23:12:13 +03:00
cevdet and Codex
75a1d7c5c8
perf(web): reduce favicon assets ( #32594 )
...
(cherry picked from commit 5177913e0a1dba27d5d46ae4ba46222e94e17d0b)
2026-10-27 23:12:13 +03:00
Mees Frensel and Codex
5630e541e3
refactor(web): clean up ( #32627 )
...
(cherry picked from commit 5ff8436781681755042fe6416024d0c4885b851d)
2026-10-27 23:12:13 +03:00
Mees Frensel and Codex
27ccbee82d
refactor(web): use svelte builtin id generator ( #32631 )
...
(cherry picked from commit 285552785f1bd7cb5ad431c8b3423d1d5e858188)
2026-10-27 23:12:13 +03:00
Antonio Sarro and Codex
3458767d66
fix(web): downloads aborted when switching assets in the viewer ( #32663 )
...
* fix(web): downloads aborted when switching assets in the viewer
The service worker also handled the download request, so the viewer cancelling its image urls killed the download too. Only handle image requests there.
* chore: clean up
---------
Co-authored-by: Jason Rasmussen <jason@rasm.me >
(cherry picked from commit 8c3fdda7ead1a70158780e45a67a11413b208dba)
2026-10-27 23:12:13 +03:00
Mees Frensel and Codex
cd28300f94
fix(web): show metadata field if it is missing for one duplicate asset ( #32601 )
...
(cherry picked from commit b203227fdddff02c4686ff8db9d6054818900929)
2026-10-27 23:12:13 +03:00
renovate[bot] and Codex
f2a502448d
chore(deps): update dependency @sveltejs/enhanced-img to v1 ( #32395 )
...
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev >
(cherry picked from commit df50249c03ddac9417a2172cfbbaef848163ed4f)
2026-10-27 23:11:28 +03:00
Jason Rasmussen and Codex
a3ffe3b3c3
refactor: asset face queries ( #32679 )
...
(cherry picked from commit 5077a85d5e6775c48b38de7fcf25f2a3864b6a83)
2026-10-27 23:11:20 +03:00
Daniel Dietzler and Codex
8125af4859
chore: migrate web imports from .js to .ts ( #32742 )
...
(cherry picked from commit f97c2243fbe5f64a4e1bf96128b82a37cc481506)
2026-10-27 23:11:20 +03:00
Daniel Dietzler and Codex
e5b4dd1041
feat: sveltekit 3 ( #32737 )
...
(cherry picked from commit 2576ee28cfb790e99ddf401a129e1d9a18713121)
2026-10-27 23:11:06 +03:00
Mees Frensel and Codex
c48394aa6e
refactor(web): use declaration tags instead of @const ( #32639 )
...
(cherry picked from commit c6d1e15c77c5f3786b26b292def27247b258cde5)
2026-10-26 22:34:24 +03:00
5d1167a36c
refactor: apikeys, passkeys, and sessions ( #32670 )
...
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: jrasm91 <4334196+jrasm91@users.noreply.github.com >
2026-10-24 11:51:43 +03:00
Jason Rasmussen and Codex
e3bf54e2ba
refactor: album queries ( #32668 )
2026-10-24 11:51:43 +03:00
Codex
9e889bd4dc
Adapt local regression tests to new configuration queries
2026-10-22 20:48:48 +03:00
Jason Rasmussen and Codex
5f54700344
refactor: folder view queries ( #32667 )
...
(cherry picked from commit 6bf016964515ed65bb45cd1cf7b7bfadb405559a)
2026-10-22 20:43:53 +03:00
Jason Rasmussen and Codex
0991f506bb
refactor: shared link queries ( #32666 )
...
(cherry picked from commit 0a73481a8fdb3cfbab29f23da48e26133dc4c064)
2026-10-22 20:43:53 +03:00
Jason Rasmussen and Codex
fa77f168a0
refactor: notification queries ( #32653 )
...
(cherry picked from commit 8f3ba2c808e02e2a606b6acc65ce22f8ee3f9b34)
2026-10-22 20:43:53 +03:00
Jason Rasmussen and Codex
9a66f16102
fix: account management url visibility ( #32645 )
...
(cherry picked from commit 22fe7b4179464c73d7e0487df90f2064fa30a5e0)
2026-10-22 20:43:14 +03:00
Jason Rasmussen and Codex
493870ad7b
refactor: config queries ( #32498 )
...
(cherry picked from commit b45ec0f55abb9dc39fbbb39dcf5296d45a726ba0)
2026-10-22 20:43:14 +03:00
Jason Rasmussen and Codex
1e20bdd74e
refactor: workflow queries ( #32654 )
...
(cherry picked from commit 98680ad6993ed917e630f8f4d1dbd1fbb6c41936)
2026-10-22 20:43:14 +03:00
Codex
75517057d0
Keep Svelte compiler warning option portable with pnpm 12
2026-10-22 05:33:35 +03:00
Codex
3efc91ff9a
Prepare localized 3.3.5-local.7 release with updated dependencies
2026-10-22 05:29:35 +03:00
bo0tzz and Codex
b3bd5d1fd1
feat(server): remove deprecated password field from update-me ( #32623 )
...
* feat(server): remove deprecated password field from update-me
* fix: tests for removed password field
(cherry picked from commit 3f6a071203187681b6c06b977665dc624c431336)
2026-10-22 05:25:45 +03:00
renovate[bot] and Codex
ec3359f1cb
fix(deps): update typescript-projects ( #32132 )
...
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev >
(cherry picked from commit 767f47a8fb35e0605e49b0dd4f30587bb76085ad)
2026-10-22 05:23:59 +03:00
renovate[bot] and Codex
c1552140b0
fix(deps): update dependency happy-dom to v21 ( #32589 )
...
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev >
(cherry picked from commit f1cd87e37be8a47f463cb53241a651407a0eebf2)
2026-10-22 05:23:23 +03:00
Jason Rasmussen and Codex
b12be9119f
feat: passkeys ( #32194 )
...
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev >
(cherry picked from commit 6233a79bf7e4cec11e9ea1094908ff3b228fcbe0)
2026-10-22 05:23:22 +03:00
renovate[bot] and Codex
e09b352067
fix(deps): update typescript-projects ( #32581 )
...
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev >
(cherry picked from commit 50edbedf15526c3b43c43a261a1aaddfb782b5ce)
2026-10-22 05:20:59 +03:00
Codex
9533e7c67a
test: adapt local regressions to Vitest 5 and verify date fallback
2026-10-19 20:43:27 +03:00
743e555a1b
fix(deps): update dependency bullmq to v6 ( #31914 )
...
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev >
2026-10-19 20:31:26 +03:00
0207d48035
chore(deps): update vitest monorepo to v5 ( #31912 )
...
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev >
2026-10-19 20:27:42 +03:00
waclaw66 and Codex
f3d91f3aea
fix: missing translation ( #32485 )
2026-10-19 20:27:19 +03:00
Zaid Bin Shahab and Codex
62361b67c4
fix(web): update FaceEditor to handle HLS video elements correctly ( #32538 )
2026-10-19 20:27:19 +03:00
Codex
8b83c289be
Use scoped browser globals in memory playback
CodeQL / Analyze (javascript) (push) Canceled after 0s
CodeQL / Analyze (python) (push) Canceled after 0s
Build Mobile / pre-job (push) Canceled after 0s
Docker / pre-job (push) Canceled after 0s
Docs build / pre-job (push) Canceled after 0s
Migration Order / Verify migration ORDER (push) Canceled after 0s
Static Code Analysis / pre-job (push) Canceled after 0s
Test / pre-job (push) Canceled after 0s
Test / ShellCheck (push) Canceled after 0s
Test / OpenAPI Clients (push) Canceled after 0s
Test / SQL Schema Checks (push) Canceled after 0s
Build Mobile / Build and sign Android (push) Canceled after 0s
Build Mobile / Build and sign iOS (push) Canceled after 0s
Docker / Re-Tag ML (armnn, immich-machine-learning, linux/arm64, -armnn) (push) Canceled after 0s
Docker / Re-Tag ML (cpu, immich-machine-learning) (push) Canceled after 0s
Docker / Re-Tag ML (cuda, immich-machine-learning, linux/amd64, -cuda) (push) Canceled after 0s
Docker / Re-Tag ML (openvino, immich-machine-learning, linux/amd64, {"linux/amd64": "pokedex-large"}, -openvino) (push) Canceled after 0s
Docker / Re-Tag ML (rknn, immich-machine-learning, linux/arm64, -rknn) (push) Canceled after 0s
Docker / Re-Tag ML (rocm, immich-machine-learning, linux/amd64, {"linux/amd64": "pokedex-large"}, -rocm) (push) Canceled after 0s
Docker / Re-Tag Server (push) Canceled after 0s
Docker / Build and Push ML (armnn, immich-machine-learning, linux/arm64, -armnn) (push) Canceled after 0s
Docker / Build and Push ML (cpu, immich-machine-learning) (push) Canceled after 0s
Docker / Build and Push ML (cuda, immich-machine-learning, linux/amd64, -cuda) (push) Canceled after 0s
Docker / Build and Push ML (openvino, immich-machine-learning, linux/amd64, {"linux/amd64": "pokedex-large"}, -openvino) (push) Canceled after 0s
Docker / Build and Push ML (rknn, immich-machine-learning, linux/arm64, -rknn) (push) Canceled after 0s
Docker / Build and Push ML (rocm, immich-machine-learning, linux/amd64, {"linux/amd64": "pokedex-large"}, -rocm) (push) Canceled after 0s
Docker / Build and Push Server (push) Canceled after 0s
Docker / Mirror to Docker Hub (armnn, immich-machine-learning, linux/arm64, -armnn) (push) Canceled after 0s
Docker / Mirror to Docker Hub (cpu, immich-machine-learning) (push) Canceled after 0s
Docker / Mirror to Docker Hub (cuda, immich-machine-learning, linux/amd64, -cuda) (push) Canceled after 0s
Docker / Mirror to Docker Hub (immich-server) (push) Canceled after 0s
Docker / Mirror to Docker Hub (openvino, immich-machine-learning, linux/amd64, {"linux/amd64": "pokedex-large"}, -openvino) (push) Canceled after 0s
Docker / Mirror to Docker Hub (rknn, immich-machine-learning, linux/arm64, -rknn) (push) Canceled after 0s
Docker / Mirror to Docker Hub (rocm, immich-machine-learning, linux/amd64, {"linux/amd64": "pokedex-large"}, -rocm) (push) Canceled after 0s
Docker / Docker Build & Push Server Success (push) Canceled after 0s
Docker / Docker Build & Push ML Success (push) Canceled after 0s
Docs build / Docs Build (push) Canceled after 0s
Static Code Analysis / Run Dart Code Analysis (push) Canceled after 0s
Test / Scripts unit tests (push) Canceled after 0s
Test / Test & Lint Server (push) Canceled after 0s
Test / Unit Test CLI (push) Canceled after 0s
Test / Unit Test CLI (Windows) (push) Canceled after 0s
Test / Lint Web (push) Canceled after 0s
Test / Test Web (push) Canceled after 0s
Test / Test i18n (push) Canceled after 0s
Test / End-to-End Lint (push) Canceled after 0s
Test / Medium Tests (Server) (push) Canceled after 0s
Test / End-to-End Tests (Server & CLI) (ubuntu-24.04-arm) (push) Canceled after 0s
Test / End-to-End Tests (Server & CLI) (ubuntu-latest) (push) Canceled after 0s
Test / End-to-End Tests (Web) (ubuntu-24.04-arm) (push) Canceled after 0s
Test / End-to-End Tests (Web) (ubuntu-latest) (push) Canceled after 0s
Test / End-to-End Tests Success (push) Canceled after 0s
Test / Unit Test Mobile (push) Canceled after 0s
Test / Unit Test ML (push) Canceled after 0s
Test / .github Files Formatting (push) Canceled after 0s
2026-10-18 19:03:36 +03:00
Codex
ca7766fcd6
Show on-this-day memories from the last 20 years with automatic playback
2026-10-18 19:00:06 +03:00
Codex
04a7b4104f
test(web): align formatter stub with lint rules
2026-10-17 20:17:24 +03:00
Codex
97609ec6bd
fix(web): avoid formatting a missing user deletion date
2026-10-17 20:09:47 +03:00