Peter Ombodi
3eb2bf0342
optimize, refactor code
...
remove redundant code and checking
getTrashedAssetsForAlbum for iOS
tests for hash trashed assets
2025-10-06 11:41:34 +03:00
Peter Ombodi
3839e72028
fix merge conflicts
2025-10-02 11:32:02 +03:00
Peter Ombodi
3cc3637862
Merge remote-tracking branch 'origin/main' into feature/sync_assets_trashed_state
...
# Conflicts:
# mobile/drift_schemas/main/drift_schema_v12.json
# mobile/lib/infrastructure/repositories/db.repository.dart
# mobile/lib/infrastructure/repositories/db.repository.steps.dart
# mobile/test/drift/main/generated/schema.dart
# mobile/test/drift/main/generated/schema_v12.dart
2025-10-02 10:40:39 +03:00
shenlong
8f1bc7e821
fix: show un-hashed remainder assets ( #22492 )
...
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-09-30 08:19:03 -05:00
shenlong
ee3c07d049
fix: process upload only after successful remote sync ( #22360 )
...
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-09-29 10:10:00 -05:00
shenlong
fea5e6783c
fix: merged timeline orderby localtime ( #22371 )
...
* chore: refactor dateFmt to truncateDate
* fix: merged timeline orderby localtime
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-09-29 09:53:40 -05:00
shenlong
7d8cd05bc2
fix: remote album timeline filter ( #22423 )
...
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-09-26 17:35:46 +00:00
Mert
5116b215a2
fix(mobile): load local thumbnails in album timeline ( #22329 )
...
* join local asset in album query
* missed one
* formatting
2025-09-26 00:38:19 +05:30
Peter Ombodi
739f675c19
Merge remote-tracking branch 'origin/main' into feature/sync_assets_trashed_state
2025-09-25 13:14:02 +03:00
Peter Ombodi
cdfa7ccbff
refactor code
...
remove unused model
2025-09-25 13:11:14 +03:00
Peter Ombodi
4b2b99942c
refactor TrashedAsset model
...
fix missed data transfering
2025-09-24 18:57:31 +03:00
Peter Ombodi
ccc86d8440
refactor and format code
2025-09-24 18:07:24 +03:00
Peter Ombodi
bec1b30554
trashed_local_asset table mirror of local_asset table structure
...
trashed_local_asset<->local_asset transfer data on move to trash or restore
refactor code
2025-09-24 16:58:56 +03:00
Alex
7a0107fc79
feat: show preparing/hashing status in backup page ( #22222 )
...
* only show preparing information while hashing
* pr feedback
* use count
* use a single query for count
* use Mert's query
2025-09-21 14:34:19 -05:00
Peter Ombodi
b15056deb9
fix format
2025-09-19 18:30:41 +03:00
Peter Ombodi
a1fd3ef54a
fix merge conflicts
2025-09-19 18:15:27 +03:00
Peter Ombodi
c00526d03a
Merge remote-tracking branch 'origin/main' into feature/sync_assets_trashed_state
...
# Conflicts:
# mobile/drift_schemas/main/drift_schema_v11.json
# mobile/lib/infrastructure/repositories/db.repository.dart
# mobile/lib/infrastructure/repositories/db.repository.steps.dart
# mobile/test/drift/main/generated/schema_v11.dart
2025-09-19 18:02:16 +03:00
Peter Ombodi
55fe480cc1
Include trashed items in getMediaChanges
...
Process trashed items delta during incremental sync
2025-09-19 17:55:20 +03:00
Jason Rasmussen
86df09a0e4
fix(mobile): smaller search page size ( #22210 )
2025-09-19 10:11:11 -04:00
shenlong
e1e24f3d60
fix: sqlite parameters limit ( #22119 )
...
* fix isNotIns
* fix isIns
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-09-19 09:47:56 -04:00
Peter Ombodi
bd9e4871ec
Merge remote-tracking branch 'origin/main' into feature/sync_assets_trashed_state
...
# Conflicts:
# mobile/android/app/src/main/kotlin/app/alextran/immich/sync/Messages.g.kt
# mobile/ios/Runner/Sync/Messages.g.swift
# mobile/lib/domain/services/hash.service.dart
# mobile/lib/domain/services/local_sync.service.dart
# mobile/lib/platform/native_sync_api.g.dart
# mobile/lib/providers/infrastructure/sync.provider.dart
# mobile/pigeon/native_sync_api.dart
# mobile/test/domain/services/hash_service_test.dart
2025-09-18 14:07:13 +03:00
Peter Ombodi
f7e5288173
rework trashed assets handling
...
- add new table trashed_local_asset
- mirror trashed assets data in trashed_local_asset.
- compute checksums for assets trashed out-of-app.
- restore assets present in trashed_local_asset and non-trashed in remote_asset.
- simplify moving-to-trash logic based on remote_asset events.
2025-09-18 13:55:56 +03:00
Mert
9ae42106cc
fix(mobile): stack row blocking gestures and not showing up ( #21854 )
2025-09-18 06:16:14 +00:00
shenlong
532ec10d5f
refactor: hashing service ( #21997 )
...
* download only backup selected assets
* android impl
* fix tests
* limit concurrent hashing to 16
* extension cleanup
* optimized hashing
* hash only selected albums
* remove concurrency limit
* address review comments
* log more info on failure
* add native cancellation
* small batch size on ios, large on android
* fix: get correct resources
* cleanup getResource
* ios better hash cancellation
* handle graceful cancellation android
* do not trigger multiple hashing ops
* ios: fix circular reference, improve cancellation
* kotlin: more cancellation checks
* no need to create result
* cancel previous task
* avoid race condition
* ensure cancellation gets called
* fix cancellation not happening
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
Co-authored-by: mertalev <101130780+mertalev@users.noreply.github.com>
Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-09-17 23:42:37 -05:00
Mert
b79a2eb6b9
chore(mobile): const platform checks ( #21878 )
...
* use `defaultTargetPlatform`
* extension
* formatting
2025-09-15 11:13:39 -04:00
shenlong
dcee34095b
fix: reset sqlite on beta migration ( #20735 )
...
reset sync stream on migration
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-09-14 16:30:25 -05:00
Alex
0166e99d90
chore: remove main timeline query watch throttle ( #21942 )
2025-09-14 02:09:07 -05:00
shenlong
7893ac25fb
fix: always use en locale for parsing timeline datetime ( #21796 )
...
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-09-11 14:20:39 -05:00
Peter Ombodi
3d56a5ca9c
Merge remote-tracking branch 'public/main' into feature/sync_assets_trashed_state
...
# Conflicts:
# mobile/lib/infrastructure/repositories/local_asset.repository.dart
2025-09-11 12:37:56 +03:00
shenlong
67a8cab286
feat: resurrect advanced info ( #21633 )
...
* feat: resurrect advanced info
* display null values as well
* add exif details
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-09-10 08:38:53 -05:00
Peter Ombodi
c1e9e48713
fix index creating on migration
2025-09-10 11:36:39 +03:00
Peter Ombodi
910ec79409
resolve merge conflicts
2025-09-09 19:13:36 +03:00
Peter Ombodi
a2f726e8e7
Merge remote-tracking branch 'public/main' into feature/sync_assets_trashed_state
...
# Conflicts:
# mobile/drift_schemas/main/drift_schema_v10.json
# mobile/lib/infrastructure/repositories/db.repository.dart
# mobile/lib/infrastructure/repositories/db.repository.drift.dart
# mobile/lib/infrastructure/repositories/db.repository.steps.dart
# mobile/test/drift/main/generated/schema_v10.dart
2025-09-09 19:06:33 +03:00
Peter Ombodi
020dfa7818
feat(db): add local_trashed_asset table and integrate with restoration flow
...
- Add new `local_trashed_asset` table to store metadata of trashed assets
- Save trashed asset info into `local_trashed_asset` before deletion
- Use `local_trashed_asset` as source for asset restoration
- Implement file restoration by `mediaId`
2025-09-09 18:54:37 +03:00
Alex
59accbf32a
fix: prevent isolate deadlock ( #21692 )
2025-09-08 19:18:13 +00:00
shenlong
059a0e8aa8
feat: sync AuthUserV1 ( #21565 )
...
* feat: sync AuthUserV1
* migration
* chore: fix analyze
* fix user updatedAt check
* fix: auth user sync query
* generate sql
* bump schema version and update migration
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
Co-authored-by: Jason Rasmussen <jason@rasm.me>
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2025-09-08 14:00:10 -05:00
Peter Ombodi
57540f6259
Merge remote-tracking branch 'public/main' into feature/sync_assets_trashed_state
...
# Conflicts:
# mobile/test/domain/services/sync_stream_service_test.dart
2025-09-08 17:58:30 +03:00
shenlong
fd4c2acde8
feat: handle SyncResetV1 ( #20732 )
...
* feat: handle SyncResetV1
* auto retry on reset and handle SyncCompleteV1
* fix tests
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-09-08 09:48:26 -05:00
Peter Ombodi
8888657b64
sync trash only for backup-selected assets
2025-09-08 17:38:42 +03:00
Peter Ombodi
c9da959ec2
fix format
2025-09-08 10:57:54 +03:00
Peter Ombodi
f7573ae317
Merge remote-tracking branch 'origin/main' into feature/sync_assets_trashed_state
2025-09-05 17:47:17 +03:00
Peter Ombodi
d8fb41e795
group local assets by checksum before moving to trash
...
delete LocalAssetEntity records when moved to trash
refactor code
2025-09-05 17:41:30 +03:00
Alex
bcfb5bee1f
feat: album info sync ( #21103 )
...
* wip
* album creation
* fix: album api repository no invalidating after logging out
* add linkedRemoteAlbumId column and migration
* link/unlink remote album
* logic to find and add new assets to album
* pr feedback
* add toggle option to backup option page
* refactor: provider > service
* rename
* Handle page pop manually
* UI feedback for user creation and sync linked album
* uncomment migration
* remove unused method
2025-09-04 18:44:10 +00:00
Alex
2ef8d55cc8
Merge branch 'main' into feature/sync_assets_trashed_state
2025-09-02 21:24:46 -05:00
shenlong
674faf2e57
fix: local sync task never runs on iOS ( #21491 )
...
* fix: local sync task never runs on iOS
* chore: rename ios register method
* refactor from using dart callback to dart entrypoint + more logs
* check if file exists before hashing
* reschedule local sync task
* chore: rename background worker logger
* refactor: move file exists check inside repo
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2025-09-03 02:05:58 +05:30
Mert
303307e1ac
fix(mobile): memory lane query ( #21422 )
2025-08-29 19:33:58 -05:00
Peter Ombodi
bec675a420
Merge remote-tracking branch 'origin/main' into feature/sync_assets_trashed_state
2025-08-28 12:44:46 +03:00
Mert
a5841a8bf4
fix(mobile): memory lane rebuild ( #21350 )
...
* avoid unnecessary timeline rebuild
* add key
* handle disabled memories
* avoid rebuild if no memories
2025-08-27 21:16:41 -05:00
Yaros
204299d500
fix(mobile): user storage quota not showing ( #21263 )
2025-08-26 15:34:19 -05:00
Mert
e67265cef2
fix(mobile): caching thumbnails to disk ( #21275 )
2025-08-26 11:49:12 -04:00