Codex
32b55555b5
chore(release): prepare local.6 dependency lock and Android version
2026-10-19 20:33:59 +03:00
bo0tzz and Codex
c4c5b8ae3a
fix(server): apply shared link metadata visibility in asset mapper ( #32561 )
2026-10-19 20:31:26 +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
renovate[bot] and Codex
c3f050d7c9
chore(deps): update machine-learning ( #32134 )
2026-10-19 20:31:01 +03:00
Santo Shakil and Codex
f64adb5b36
fix(mobile): fallback localizations for unsupported locales ( #32452 )
...
* fix(mobile): fallback localizations for unsupported locales
* load the default delegates with an explicit english locale
2026-10-19 20:27:43 +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
f3db8d8b59
fix: unsupported locale for date format ( #32267 )
...
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
Co-authored-by: Santo Shakil <shakil.mezbah@gmail.com >
2026-10-19 20:27:19 +03:00
bo0tzz and Codex
8b288f9ee0
fix(ci): docs deploy and destroy terragrunt arguments ( #32557 )
2026-10-19 20:27:19 +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
MaximAL and Codex
9af9d35040
chore(mobile): Change x to typographically correct × (× in HTML) symbol ( #32518 )
...
Similar to #31304
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
Codex
43b94defd9
fix(mobile): use JSON maps for nested config compatibility defaults
2026-10-17 19:47:28 +03:00
Codex
ffb8c84e48
test: provide required user deletion request body
2026-10-17 19:41:22 +03:00
Codex
85820ca45e
test: cover user admin queries and config compatibility for local.4
2026-10-17 19:37:37 +03:00
Jason Rasmussen and Codex
36a6e033aa
fix: public config properties ( #32500 )
...
fix: public config visibility
2026-10-17 19:32:36 +03:00
Jason Rasmussen and Codex
49f65aa3b0
chore: remove unused code ( #32497 )
2026-10-17 19:32:36 +03:00
Jason Rasmussen and Codex
4341a2f34c
fix: smpt email visibility ( #32492 )
2026-10-17 19:32:36 +03:00
Jason Rasmussen and Codex
424c26c697
chore: remove unused feature flag ( #32495 )
2026-10-17 19:32:35 +03:00
Jason Rasmussen and Codex
1b058dbcf3
fix: user admin actions ( #32491 )
2026-10-17 19:32:35 +03:00
Jason Rasmussen and Codex
5351fecc08
refactor: user admin queries ( #32490 )
2026-10-17 19:32:35 +03:00
Codex
5910639efd
test(web): return formatter mock without an unnecessary async function
2026-10-16 21:08:41 +03:00
Codex
4649313c29
chore: prepare local.3 release with query regression coverage
2026-10-16 20:58:44 +03:00
Jason Rasmussen and Codex
ae7cb3192e
refactor: library queries ( #32489 )
...
* refactor: library queries
* fix: mutation options signature
2026-10-16 20:51:29 +03:00
Jason Rasmussen and Codex
2ebe288010
refactor: server endpoints ( #32467 )
2026-10-16 20:51:28 +03:00
Jason Rasmussen and Codex
6adebeda0d
refactor: system config endpoints ( #32457 )
...
* refactor(web): tanstack query
* refactor: use createQuery
* fix: pnpm lockfile
2026-10-16 20:51:28 +03:00
Dag Stuan and Codex
92ab6e9c41
fix(mobile): Keep asset viewer controls hidden if they were hidden before zooming. ( #31832 )
2026-10-16 20:51:28 +03:00
Lee, Hyo jun and Codex
9e89e65d23
fix(mobile): sort time zones by name within the same offset ( #32087 )
2026-10-16 20:51:28 +03:00
Santo Shakil and Codex
12196bef4f
fix(mobile): save typed coordinates in the location picker ( #32460 )
2026-10-16 20:51:28 +03:00
6e89915bc5
fix(deps): update dependency intl-messageformat to v12 ( #31918 )
...
* fix(deps): update dependency intl-messageformat to v12
* fix: pnpmfile checksum
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev >
2026-10-16 20:51:28 +03:00
Codex
b1a0e38dba
test(web): use typed JSON responses in updater checks
2026-10-15 15:09:20 +03:00
Codex
6665bb4796
feat: add verified Android and web update checks in settings
2026-10-15 14:54:44 +03:00
Codex
9c76f93015
chore(deps): resolve reviewed upgrades against the local release lockfile
2026-10-15 14:45:01 +03:00
renovate[bot] and Codex
3effae72a7
fix(deps): update dependency nestjs-cls to v7 ( #31920 )
...
* fix(deps): update dependency nestjs-cls to v7
* fix: pnpmfile checksum
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev >
(cherry picked from commit 93d376ac5119510b10f34945c0b04e4116266425)
2026-10-15 14:33:11 +03:00
renovate[bot] and Codex
cd6421be4b
chore(deps): update dependency @types/node to ^24.19.2 ( #32129 )
...
* chore(deps): update dependency @types/node to ^24.19.2
* fix: pnpmfile checksum
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev >
(cherry picked from commit 9bb78b30fbb374157146f3bede657d293cda508f)
2026-10-15 14:33:10 +03:00
renovate[bot] and Codex
c36be7692c
fix(deps): update dependency react-email to v6 ( #32143 )
...
* fix(deps): update dependency react-email to v6
* fix: move all react email imports to react-email
* fix: linting
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev >
(cherry picked from commit 9755f64684de63f1e9c5d14d31d00f599f8925b9)
2026-10-15 14:33:10 +03:00
Luis Nachtigall and Codex
3ca0d0c7db
fix(mobile): update share quality option text from "Thumbnail" to "Preview" ( #32340 )
...
fix(translations): update share preview text
Co-authored-by: Santo Shakil <santoshakil@users.noreply.github.com >
(cherry picked from commit 2a8f8324e43487f29fd475832107f279da1c39c3)
2026-10-15 14:32:48 +03:00
Lee, Hyo jun and Codex
42c84fdb2c
fix(mobile): render random widget images at the widget's display resolution ( #32215 )
...
* fix(mobile): render random widget images at the widget's display resolution
* fix(mobile): cap widget image decode size for panoramas
(cherry picked from commit 3d07c061a38275f8b0d406e1ecc67446497be0e2)
2026-10-15 14:32:48 +03:00
Codex
3b04c1c4dc
test(mobile): mock wakelock binary transport for video regression checks
2026-10-14 21:42:22 +03:00
Codex
d25c946c29
test(local): cover shared link access and video readiness; fix lint dependency
2026-10-14 21:37:42 +03:00
Codex
a06a589936
fix(local): translate expanded mobile tags control
2026-10-14 21:25:19 +03:00
Luis Nachtigall and Codex
57b2b007a8
fix(mobile): show play instead of replay button for unplayed videos ( #32307 )
...
* fix(mobile): show play instead of replay button for unplayed videos
* fix(video): clarify comment for playback status handling
(cherry picked from commit 0d1e1ffecd5df8793ee020f90ddb10d6252dd5d8)
2026-10-14 21:24:14 +03:00
Luis Nachtigall and Codex
645f333d04
feat(mobile): limit max zoom by image pixel size ( #32423 )
...
* fix(mobile): limit max zoom by visible image pixels
* fix(mobile): limit max zoom by image pixel size
(cherry picked from commit b246fa7c8a458da2d89c0efa2b2a8db85182ea9c)
2026-10-14 21:24:14 +03:00
Jason Rasmussen and Codex
c318714fdc
feat: server feature level ( #32178 )
...
* feat: server feature level
* fix: correctly compute feature level
(cherry picked from commit cc1e2363651eaff63848baad2c7932923ca66554)
2026-10-14 21:24:14 +03:00
Will and Codex
1daf922555
feat(mobile): mobile tags ( #30753 )
...
* feat(mobile): mobile tags
* fix(mobile); refactoring, replaced hook
* tag provider through asset service
* make search use a tag set
* use tag action directly
* use notification listener
* untag action
* handle untag response
* fix tests and add untag action test
* fix material error from tag picker dialog
* fix(mobile): clip tag picker tiles and update tag overflow
---------
Co-authored-by: Alex <alex.tran1502@gmail.com >
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
Co-authored-by: Santo Shakil <shakil.mezbah@gmail.com >
(cherry picked from commit 83c7ec50056bbefa10869c78457f8882c72275e2)
2026-10-14 21:24:13 +03:00
bo0tzz and Codex
4fe7d42cfc
perf(server): stop aggregating every album asset when loading a shared link ( #32412 )
...
SharedLinkRepository.get (shared link page load, /shared-links/me, and the
OpenGraph tags rendered for /share/:key) json_agg'd every asset of the
album, with its full exif row, ordered by fileCreatedAt. The only things
used from it are the asset count and the first/last localDateTime.
Load the album without assets and fill assetCount/startDate/endDate from
getMetadataForIds, which is what GET /albums/:id already uses. The counts
now also respect the default visibility filter, and the dates are
formatted the same as on /albums/:id.
150k-asset album link, PG 14:
| | before | after |
|------------------------|-----------------|--------|
| query | 4.2-6.5 s | ~0.26 s (metadata aggregate) |
| JSON built by postgres | 261 MB | - |
| GET /shared-links/me | - | 0.28 s, 961 B |
(cherry picked from commit ac453b5557e42ad45962d3079a4e4450671053e9)
2026-10-14 21:24:13 +03:00
bo0tzz and Codex
1978b77a40
perf(server): stop loading every album asset to build album responses ( #32413 )
...
* perf(server): stop loading every album asset to build album responses
Album create, update (rename, description, cover, sort order, activity
toggle) and add-users json_agg'd every asset of the album with its exif
row, only for mapAlbum to read the count and the first/last
localDateTime. Use getMetadataForIds for those fields, as GET /albums/:id
already does, and drop the now unused withAssets option from getById.
The responses now carry the same date format and lastModifiedAssetTimestamp
as GET /albums/:id.
PATCH /albums/:id on a 150k-asset album, PG 14 (response is ~900 B either
way): 3.4-3.6 s -> 0.13-0.16 s.
* refactor(server): share album metadata mapping
(cherry picked from commit 2a4e876ec990a4a8d5fdca00291cbeebd3d1bccf)
2026-10-14 21:24:13 +03:00