shenlong
dafe9d7966
chore: pump version ( #28231 )
...
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
2026-05-05 16:27:04 -05:00
Alex
bc4abd18e4
feat: update iOS CI/CD with FUTO build credential ( #28146 )
...
* update email
* Update fastfile
* use different apple id
* debug build
* build only
2026-04-29 09:06:35 -05:00
Alex
f0835d06f8
chore: migrate to FUTO Apple's account ( #28020 )
...
* chore: migrate to FUTO Apple's account
* chore: migrate to FUTO Apple's account
* chore: match widget and share extension
* chore: update app share group
* reuse group.app.immich.share
2026-04-22 11:53:20 -05:00
Luis Nachtigall
539a39ae49
refactor(mobile): Migrate durationInSeconds to durationMs ( #26615 )
2026-04-20 23:28:11 -04:00
shenlong
0eef15a3ab
chore(mobile): minor dependency updates ( #27949 )
...
* chore: minor dependency updates
* regenerate pod and remove unused imports
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
2026-04-19 11:56:39 -05:00
shenlong
fd5e8d6521
chore: pump auto_route ( #27876 )
...
* chore: pump auto_route
* make build
* chore: use drift from pubdev (#27877 )
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
2026-04-17 20:28:36 +00:00
shenlong
2a47c35eb7
chore: pump flutter to 3.41.6 ( #27834 )
...
* chore: pump flutter to 3.41.6
* more isar cleanup
* ignore experimental use for TableMigration
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
2026-04-16 22:26:46 +05:30
shenlong
79fccdbee0
refactor: yeet old timeline ( #27666 )
...
* refactor: yank old timeline
# Conflicts:
# mobile/lib/presentation/pages/editing/drift_edit.page.dart
# mobile/lib/providers/websocket.provider.dart
# mobile/lib/routing/router.dart
* more cleanup
* remove native code
* chore: bump sqlite-data version
* remove old background tasks from BGTaskSchedulerPermittedIdentifiers
* rebase
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
2026-04-15 23:00:27 +05:30
github-actions
95e57a24cb
chore: version v2.7.5
2026-04-13 14:27:31 +00:00
github-actions
bee49cef02
chore: version v2.7.4
2026-04-10 16:32:26 +00:00
Luis Nachtigall
8a975e5ea9
refactor(mobile): cleanup iOS image loading pipeline ( #27672 )
...
* refactor: replace DispatchQueue + DispatchSemaphore with OperationQueue for image processing
* implement RequestRegistry and UnfairLock for managing cancellable requests
* implement requests registry for local and remote image processing
* remove Cancellable protocol and cancel method from request registry
* refactor: introduce ImageRequest base class with unified cancellation and finish helpers
* refactor: add get method to RequestRegistry and streamline request removal in image processing
* add guard to cancel to prevent double onCancel calls
* fix duplicate code merge issue
* refactor(ios): enhance finish method to return callback status
* remove unfitting methods form ImageRequest.swift and fix memory issue
* revert bad merge
* refactor(ios): resolve cancellation issues
* refactor(ios): streamline image request completion handling
* add return statements
* refactor(ios): simplify image request cancellation and registry handling
---------
Co-authored-by: Alex <alex.tran1502@gmail.com >
2026-04-10 10:56:35 -05:00
github-actions
3254d31cd2
chore: version v2.7.3
2026-04-09 17:51:40 +00:00
github-actions
6a63e814a5
chore: version v2.7.2
2026-04-07 20:58:38 +00:00
github-actions
b03a649e74
chore: version v2.7.1
2026-04-07 20:22:28 +00:00
github-actions
afec61addc
chore: version v2.7.0
2026-04-07 15:08:18 +00:00
Luis Nachtigall
cd86a83c33
refactor(mobile): introduce image request registry on iOS ( #27486 )
...
* refactor: replace DispatchQueue + DispatchSemaphore with OperationQueue for image processing
* implement RequestRegistry and UnfairLock for managing cancellable requests
* implement requests registry for local and remote image processing
* remove Cancellable protocol and cancel method from request registry
* use mutex
---------
Co-authored-by: mertalev <101130780+mertalev@users.noreply.github.com >
2026-04-05 18:55:43 -04:00
Luis Nachtigall
6fcf651d76
refactor(mobile): IOS replace DispatchQueue + DispatchSemaphore with OperationQueue for image processing ( #27471 )
...
refactor: replace DispatchQueue + DispatchSemaphore with OperationQueue for image processing
2026-04-05 16:11:02 -04:00
Jason Rasmussen
207672c481
fix: user-agent format ( #27488 )
...
* fix: user-agent format
* ci: fix static analysis
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
2026-04-03 12:26:50 -04:00
github-actions
a2ff075e9a
chore: version v2.6.3
2026-03-26 16:23:35 +00:00
Mert
a9666d2cef
fix(mobile): remove upload timeout ( #27237 )
...
remove timeout
2026-03-24 14:40:48 -04:00
github-actions
ce9b32a61a
chore: version v2.6.2
2026-03-24 02:51:55 +00:00
github-actions
e939fde6f1
chore: version v2.6.1
2026-03-19 17:56:42 +00:00
github-actions
f413f5c692
chore: version v2.6.0
2026-03-18 20:37:39 +00:00
Mert
b66c97b785
fix(mobile): use shared auth for background_downloader ( #26911 )
...
shared client for background_downloader on ios
2026-03-13 22:23:07 -05:00
Mert
226b9390db
fix(mobile): video auth ( #26887 )
...
* fix video auth
* update commit
2026-03-13 09:38:21 -05:00
Mert
c403e03a42
fix(mobile): logout on upgrade ( #26827 )
...
* use cookiejar
* cookie duping hook
* remove old pref
* handle network switching on logout
* remove bootstrapCookies
* dead code
* fix cast
* use constants
* use new event name
* update api
2026-03-11 12:07:27 -05:00
Mert
a05c8c6087
feat(mobile): use shared native client ( #25942 )
...
* use shared client in dart
fix android
* websocket integration
platform-side headers
update comment
consistent platform check
tweak websocket handling
support streaming
* redundant logging
* fix proguard
* formatting
* handle onProgress
* support videos on ios
* inline return
* improved ios impl
* cleanup
* sync stopForegroundBackup
* voidify
* future already completed
* stream request on android
* outdated ios ws code
* use `choosePrivateKeyAlias`
* return result
* formatting
* update tests
* redundant check
* handle custom headers
* move completer outside of state
* persist auth
* dispose old socket
* use group id for cookies
* redundant headers
* cache global ref
* handle network switching
* handle basic auth
* apply custom headers immediately
* video player update
* fix
* persist url
* potential logout fix
---------
Co-authored-by: Alex <alex.tran1502@gmail.com >
2026-03-05 11:04:45 -06:00
Luis Nachtigall
ac5ef6a56d
feat(mobile): add support for encoded image requests in local/remote image APIs ( #26584 )
...
* feat(mobile): add support for encoded image requests in local and remote image APIs
* fix(mobile): handle memory cleanup for cancelled image requests
* refactor(mobile): simplify memory management and response handling for encoded image requests
* fix(mobile): correct formatting in cancellation check for image requests
* Apply suggestion from @mertalev
Co-authored-by: Mert <101130780+mertalev@users.noreply.github.com >
* refactor(mobile): rename 'encoded' parameter to 'preferEncoded' for clarity in image request APIs
* fix(mobile): ensure proper resource cleanup for cancelled image requests
* refactor(mobile): streamline codec handling by removing unnecessary descriptor disposal in loadCodec request
---------
Co-authored-by: Mert <101130780+mertalev@users.noreply.github.com >
2026-02-28 11:43:58 -05:00
Luis Nachtigall
d6c724b13b
feat(mobile): add playbackStyle to native sync API ( #26541 )
...
* feat(mobile): add playbackStyle to native sync API
Adds a `playbackStyle` field to `PlatformAsset` in the pigeon sync API so
native platforms can communicate the asset's playback style (image, video,
animated, livePhoto) to Flutter during sync.
- Add `playbackStyleValue` computed property to `PHAsset` extension (iOS)
- Populate `playbackStyle` in `toPlatformAsset()` and the full-sync path
- Update generated Dart/Kotlin/Swift files
* fix(tests): add playbackStyle to local asset test cases
* fix(tests): update playbackStyle to use integer values in local sync tests
* feat(mobile): extend playbackStyle enum to include videoLooping
* Update PHAssetExtensions.swift
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* fix(playback): simplify playbackStyleValue implementation by removing iOS version check
* feat(android): implement proper playbackStyle detection
* add PlatformAssetPlaybackStyle enum
* linting
---------
Co-authored-by: Mert <101130780+mertalev@users.noreply.github.com >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-02-28 03:08:51 +00:00
github-actions
3be8e265cd
chore: version v2.5.6
2026-02-10 18:24:40 +00:00
github-actions
ff9052f7f5
chore: version v2.5.5
2026-02-06 03:49:02 +00:00
github-actions
8581b4f350
chore: version v2.5.4
2026-02-05 21:16:52 +00:00
Mert
fd49d7d566
chore(mobile): skip macro validation ( #25744 )
...
* use podfile
* update deps
2026-02-05 14:16:21 -05:00
Mert
27a2808470
fix(mobile): mtls on native clients ( #25802 )
...
* handle mtls on ios
* update android impl
* ui improvements
* dead code
* no need to store data separately
* improve concurrency
* dead code
* add migration
* remove unused dependency
* trust user-installed certs
* removed print statement
* fix ios
* improve android styling
* outdated comments
* update lock file
* handle translation
* fix prompt cancellation
* fix video playback
* Apply suggestion from @shenlong-tanwen
Co-authored-by: shenlong <139912620+shenlong-tanwen@users.noreply.github.com >
* Apply suggestion from @shenlong-tanwen
Co-authored-by: shenlong <139912620+shenlong-tanwen@users.noreply.github.com >
* formatting
---------
Co-authored-by: shenlong <139912620+shenlong-tanwen@users.noreply.github.com >
2026-02-05 17:42:53 +00:00
github-actions
38c1f0b1fd
chore: version v2.5.3
2026-02-03 18:14:21 +00:00
Alex
8872d2c7ae
chore: remove swift logs ( #25857 )
2026-02-03 16:00:17 +00:00
github-actions
eadb2f89af
chore: version v2.5.2
2026-01-28 22:05:10 +00:00
Mert
e07a91f9c2
fix(mobile): actually load original image ( #25646 )
...
fix decoding
2026-01-28 15:14:37 -06:00
Alex
12d23e987b
chore: post release tasks ( #25582 )
2026-01-28 08:55:58 -05:00
github-actions
41e2ed3754
chore: version v2.5.1
2026-01-27 23:10:13 +00:00
github-actions
6fd3c9fffa
chore: version v2.5.0
2026-01-27 18:19:23 +00:00
Brandon Wees
da590995ab
fix: use edited thumbs for widgets ( #25550 )
...
* fix(server): enforce crop is the first action
* chore: test
* fix: use edited thumbs for widgets
---------
Co-authored-by: Alex <alex.tran1502@gmail.com >
2026-01-27 03:16:27 +00:00
Mert
df7efc4945
fix(mobile): use cached asset when possible ( #25526 )
...
always use cache
2026-01-26 15:52:48 +00:00
Mert
1803692eab
feat(mobile): native clients ( #21459 )
...
* platform clients
* uppercase http method
* fix hot reload
* custom user agent
* init before app launch
* set defaults
* move to bootstrap
* unrelated change
* disable disk cache by default
* optimized decoding
* remove incremental
* android impl
* memory optimization
* lock approach is slower on ios
* conditional cronet
* clarify parameter
* enable disk cache
* set user agent
* flutter-side decode
* optimized http
* fixed locking
* refactor
* potential race conditions
* embedded cronet
* refactor, fix capacity handling
* fast path for known content length
* ios optimizations
* re-enable cache
* formatting
* bump concurrency
* clear cache button
* fix eviction race condition
* add extra cancellation check
* tighten dispose
* better error handling
* fix disposal
---------
Co-authored-by: Alex <alex.tran1502@gmail.com >
2026-01-24 19:34:29 +00:00
Alex
e4443fa43e
chore: dart http foreground upload ( #24883 )
...
* feat: bring back manual backup
* expose iCloud retrieval progress
* wip
* unify http upload method, check for connectivity on iOS
* handle LivePhotos progress
* feat: speed calculation
* wip
* better upload detail page
* handle error
* handle error
* pr feedback
* feat: share intent upload
* feat: manual upload
* feat: manual upload progress
* chore: styling
* refactor
* refactor
* remove unused logs
* fix: background android backup
* feat: add error section
* remove complete section
* remove empty state and prevent slot jumps
* more refactor
* fix: background test
* chore: add metadata to foreground upload
* fix: email and name get reset in auth provider
* pr feedback
* remove version check for metadata field in upload payload
* chore: fix unit test
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
2026-01-15 20:10:08 -06:00
shenlong
9fa8de7baa
feat: add cloud id during native sync ( #20418 )
...
* use adjustment time in iOS for hash reset
# Conflicts:
# mobile/lib/infrastructure/repositories/local_album.repository.dart
# mobile/lib/presentation/pages/drift_asset_troubleshoot.page.dart
* migration
* feat: sync cloudId and eTag on sync
* fixes fixes
* more fixes
* re-sync updated eTags
* add server version check & auto sync cloud ids on compatible servers
* fix test
* remove button from sync status page
* chore: modify for testing
* more changes
* chore: add commas in toString
* use cached provider in splash screen
* read upload service provider to prevent reset
* log errors from fetching cloud id mapping
* WIP: migrate cloud id - debug log
* ignore locked asset update
* bulk update metadata
* change log text
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
Co-authored-by: Alex <alex.tran1502@gmail.com >
2026-01-14 12:34:11 -06:00
Alex
1f20b6471c
feat: use fastlane sigh to manage signing profiles ( #25089 )
...
* feat: use fastlane sigh to manage signing profiles
* remove unused secrects
* remove unused fallback
2026-01-08 03:02:21 +00:00
Alex
4b3b458bb6
chore: update info.plist app version in bump-version ( #24722 )
2025-12-20 21:02:11 -06:00
Kurt McKee
15e58595fd
fix(mobile): iOS local permission dialog extra whitespace ( #24491 )
...
Fix a iOS rendering issue caused by extra whitespace
2025-12-10 16:17:08 -06:00
shenlong
bbba1bfe8c
fix: use adjustment time in iOS for hash reset ( #24047 )
...
* use adjustment time in iOS for hash reset
* migration
* fix equals check
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com >
2025-12-03 21:15:58 -06:00