shenlong
3ff0d47ee3
chore: do not cache dart_tool ( #28409 )
...
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
2026-05-13 19:46:24 -04:00
shenlong
aeaf846482
chore: cleanup unused store keys ( #28415 )
...
cleanup unused store keys
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
2026-05-13 18:03:57 -05:00
Santo Shakil
b031548791
fix(mobile): don't block app open on slow validateAccessToken ( #28405 )
...
* fix(mobile): don't block app open on slow validateAccessToken
AuthGuard.onNavigation was async so auto_route awaited the body through validateAccessToken's OS timeout. now it's sync and the validate runs in bg. kicks to login on 401.
* fix(mobile): handle re-login race in AuthGuard validate
if user logs out + logs back in during a slow validate, the old 401 was logging them out again. now we check the token hasn't changed before redirecting, and dedupe in-flight calls.
---------
Co-authored-by: Alex <alex.tran1502@gmail.com >
2026-05-13 11:52:43 -05:00
Jason Rasmussen
fcea617313
fix: ignore icc profile make and model ( #28412 )
2026-05-13 12:07:35 -04:00
Mees Frensel
024f20ea26
chore(web): use DatePicker component from UI lib ( #28406 )
2026-05-13 09:37:07 -05:00
shenlong
0a4ed6fd71
refactor: migrate viewer config to metadata table ( #28396 )
...
* refactor: app metadata
* refactor to per row store
* cleanup
* more test
* review changes
* more refactor
* refactor
* migrate primary color
* migrate dynamic theme
* migrate colorfulInterface
* cleanup providers
* migrate cleanup
* migrate mapconfig
* remove unused keys
* migrate timeline config
* migrate image config
* migrate viewer config
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
2026-05-13 09:36:19 -05:00
Alex
b6e2ce1f35
fix(mobile): revert drop deprecated deviceAssetId / deviceId from upload fields ( #28384 ) ( #28400 )
...
* Revert "chore(mobile): drop deprecated deviceAssetId / deviceId from upload fields (#28384 )"
This reverts commit 571e6a8560 .
* chore(mobile): add note on kept deprecated upload fields
---------
Co-authored-by: Santo Shakil <shakil.mezbah@gmail.com >
2026-05-13 09:36:16 -05:00
bo0tzz
e323e778cd
fix: update server-commands subcommand list ( #28402 )
2026-05-13 09:27:25 -04:00
renovate[bot]
6a87797649
chore(deps): update terraform cloudflare to v4.52.7 ( #28370 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-12 23:50:23 -04:00
renovate[bot]
f4a4649bbc
chore(deps): update dependency canvas to v3 ( #28376 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-12 23:49:22 -04:00
Alex
6ca54ee722
feat: display more info in asset viewer ( #24630 )
...
* feat(mobile): more info for asset viewer
* feat(mobile): more info for asset viewer
2026-05-13 02:07:23 +00:00
shenlong
8e3035f783
chore: run mobile tests in parallel ( #28393 )
...
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
2026-05-12 17:17:07 -05:00
shenlong
79801595db
refactor: move image config to metadata table ( #28228 )
...
* migrate image config
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
2026-05-13 03:20:35 +05:30
Yaros
3e1c8aacb1
feat(mobile): trash/restore all ( #28116 )
...
* feat(mobile): trash/restore all
* chore: remove themeData variable
* chore: filter query by user
* refactor
---------
Co-authored-by: Alex <alex.tran1502@gmail.com >
2026-05-12 14:56:19 -05:00
shenlong
91ac56cef2
refactor: move timeline config to metadata table ( #28227 )
...
* migrate timeline config
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
2026-05-13 01:23:25 +05:30
Jason Rasmussen
58beac8fe0
chore: migrate mobile makefile to mise ( #28390 )
2026-05-12 15:21:04 -04:00
Santo Shakil
f632d320f5
fix(mobile): clear linkedRemoteAlbumId in reset() so FK refs dont dangle ( #28382 )
...
* fix(mobile): clear linkedRemoteAlbumId in reset() so FK refs dont dangle
reset() runs with foreign_keys off before wiping remote_* tables, so the ON DELETE SET NULL cascade on linkedRemoteAlbumId doesnt fire. local rows keep pointing at deleted remote ids.
affects logout (clearLocalData calls reset()) and the server SyncResetV1 path (30 day idle, etc). after re-login, syncLinkedAlbum either silently warns or fires 400s (those are covered by #28299 ).
null the column manually inside the same transaction. cascade still works for normal SyncAlbumDeleteV1.
verified on pixel 9a with this branch built locally: logged out, deleted album from web, logged back in. without fix linkedRemoteAlbumId stayed dangling. with fix all three local rows have linkedRemoteAlbumId = NULL after the logout reset, and recovery is clean once manageLinkedAlbums runs again.
* fix(mobile): always re-enable foreign_keys in reset() + simplify the update
re-enable foreign_keys inside a try/finally so it always runs even if the transaction throws. without this, a failed reset would leave the connection with foreign_keys = OFF and silently disable cascades for everything after (per copilot review).
also drop the where filter on the linkedRemoteAlbumId update, unconditional update-all is simpler and we wipe everything in reset anyway (per ganka review).
2026-05-12 13:43:15 -05:00
shenlong
2ddaf6a611
fix: indexes on remote_asset_entity ( #28264 )
...
* fix: periodically execute pragma optimize
* fix: indexes on remote_asset_entity
* regen files
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
Co-authored-by: Alex <alex.tran1502@gmail.com >
2026-05-12 16:43:24 +00:00
shenlong
1932c60e1c
fix: kekab icon colors in light mode ( #28366 )
...
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
2026-05-12 11:27:55 -05:00
Brandon Wees
dc6f8e746e
fix: deep link for assets when asset viewer already open ( #27971 )
2026-05-12 16:19:54 +00:00
Jason Rasmussen
ad7aedb843
refactor: move plugins to packages ( #28389 )
2026-05-12 13:28:30 +00:00
Santo Shakil
571e6a8560
chore(mobile): drop deprecated deviceAssetId / deviceId from upload fields ( #28384 )
...
server removed both fields from AssetMediaCreateDto in #27818 . zod silently strips unknown fields so uploads still work, but we send dead weight on every request.
drop from foreground + background upload paths + share intent path. deviceAssetId stays as the internal background_downloader taskId, just not in the multipart form fields anymore.
2026-05-12 09:12:26 -04:00
bo0tzz
4791313def
fix: manage oazapfts through mise ( #28380 )
2026-05-12 08:12:27 -04:00
renovate[bot]
f88fdae048
fix(deps): update dependency @immich/ui to ^0.77.0 ( #28373 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-12 12:15:47 +02:00
renovate[bot]
bcef7aa6b6
chore(deps): update github-actions ( #28372 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-12 12:07:32 +02:00
renovate[bot]
ce292bdce9
chore(deps): update base-image to v202605051129 ( #28374 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-12 12:02:43 +02:00
renovate[bot]
4eee023648
chore(deps): update docker.io/valkey/valkey:9 docker digest to 8436e10 ( #28369 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-12 11:52:30 +02:00
shenlong
8f4b0fce49
fix: limit android background worker duration ( #23566 )
...
* fix: limit each android background run to 20 mins
# Conflicts:
# mobile/lib/domain/services/background_worker.service.dart
* review chages
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
2026-05-11 23:08:17 -05:00
Timon
c6b3127b35
feat(web): add individual filter removal from search result chips ( #28166 )
...
* feat(web): add individual filter removal from search result chips
* drop cast
* use delete
* lint
* stylings
* filter
---------
Co-authored-by: Alex <alex.tran1502@gmail.com >
2026-05-12 03:50:40 +00:00
shenlong
4d6a50c2cb
refactor: move map config to metadata table ( #28226 )
...
* refactor: app metadata
* refactor to per row store
* cleanup
* more test
* review changes
* more refactor
* refactor
* migrate primary color
* migrate dynamic theme
* migrate colorfulInterface
* cleanup providers
* migrate cleanup
* migrate mapconfig
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
2026-05-11 22:43:52 -05:00
Jason Rasmussen
15f3947ae6
chore: mise scripts ( #28367 )
2026-05-11 17:46:02 -04:00
Ben Beckford
e142e3aca7
feat: recently added assets page ( #28272 )
...
* feat(server): add ordering date option to time buckets
* feat(web): add recently added page
* feat(server): recently created assets in explore data
* feat(web): recently added in explore tab
* fix: recently added assets ordering
* fix(server): failing bucket test
* feat(web): improve recently added preview
* chore: update e2e explore/timeline tests
* chore: rename and refactor timeline ordering dates
* fix(web): invalid timeline option
* feat(mobile): recently added page
* fix(server): sync tests
* fix(mobile): resync assets to get uploadedAt column
* chore: rename assetorderby enum
* chore(mobile): formatting
* minor fixes
* stylings
---------
Co-authored-by: Alex <alex.tran1502@gmail.com >
2026-05-11 21:35:10 +00:00
Brandon Wees
38438c8d9a
refactor!: remove asset faces from AssetResponseDto ( #27779 )
...
* refactor!: remove faces from `people` in AssetResposnseDto
* chore: tests
* chore: e2e generator
* chore: code review readonly
* chore: code review changes
* chore: cleanup
* fix: openapi
* chore: format
---------
Co-authored-by: Jason Rasmussen <jason@rasm.me >
2026-05-11 17:05:40 -04:00
Alex
a278c10c75
fix: mobile upload duration type ( #28362 )
2026-05-11 15:46:00 -05:00
renovate[bot]
2276443c56
fix(deps): update dependency kysely to v0.28.17 [security] ( #28363 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-11 22:38:25 +02:00
Jason Rasmussen
bb44773e57
chore: remove unused commands ( #28361 )
2026-05-11 16:19:40 -04:00
Jason Rasmussen
14d9e90a03
refactor: move i18n formatting to workspace root ( #28360 )
...
refactor: move i18n formatting to project root
2026-05-11 16:19:28 -04:00
Jason Rasmussen
03e042213c
refactor: move e2e-auth-server to packages ( #28358 )
2026-05-11 15:39:59 -04:00
Jason Rasmussen
db589455f4
refactor: move cli to package folder ( #28356 )
2026-05-11 14:49:45 -04:00
Jason Rasmussen
fb0a54d548
chore: mise on windows ( #28351 )
...
* chore: mise on windows
* chore: bump use-mise
2026-05-11 20:04:38 +02:00
renovate[bot]
7013cc0904
fix(deps): update dependency @opentelemetry/exporter-prometheus to ^0.217.0 [security] ( #28353 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-11 18:03:30 +00:00
renovate[bot]
dcaf7b4a65
fix(deps): update dependency @opentelemetry/sdk-node to ^0.217.0 [security] ( #28354 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-11 19:48:25 +02:00
shenlong
12f7b2a005
chore: add always_put_control_body_on_new_line lint ( #28352 )
...
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
2026-05-11 13:47:24 -04:00
Jason Rasmussen
7837d40f57
chore: move sdk to packages ( #28350 )
2026-05-11 13:37:10 -04:00
bo0tzz
b4f719653f
fix: indentation and typo ( #28349 )
...
* fix: indentation and typo
* neline
2026-05-11 09:17:39 -05:00
bo0tzz
f370b4bac6
chore: fold apk comment qr in <details> ( #28348 )
2026-05-11 09:40:19 -04:00
Mert
d788169bf3
chore(server)!: remove libopus enum ( #28325 )
2026-05-11 08:02:57 -04:00
Mert
eea820fa2f
chore(server): enable hw decoding by default ( #28324 )
2026-05-11 08:02:26 -04:00
Timon
271f1cb868
feat(web): Add metadata overlay to slideshow ( #24627 )
...
* feat: add slideshow metadata overlay and settings
* Introduced a new SlideshowMetadataOverlay component to display image information during slideshows.
* Updated slideshow settings modal to include options for showing the metadata overlay and selecting its display mode (Description Only or Full).
* Added corresponding translations and store management for the new overlay features.
* remove noisy log
* constant opacity
* 2nd pass
* more
* use text components
* lint
2026-05-11 11:49:12 +02:00
Mert
8c8dc9d32f
chore(ml)!: remove deprecated envs ( #28326 )
...
remove deprecated envs
2026-05-09 22:40:05 +00:00