mirror of
https://github.com/immich-app/immich.git
synced 2026-07-25 14:00:45 +03:00
New timeline doesn't upload new photos and videos #7320
Open
opened 2026-02-05 12:56:26 +03:00 by OVERLORD
·
35 comments
No Branch/Tag Specified
main
chore/translations
fix/partner-ownership-contention
renovate/machine-learning
renovate/pypi-pillow-vulnerability
renovate/pypi-pydantic-settings-vulnerability
renovate/java-25.x
renovate/mobile
chore/harden-mobile-openapi-gen
renovate/java-21.x
fix/min-faces
refactor/asset-update
feat/merge-people-mobile
chore/face-cluster-abstraction
refactor/search-v3/pr-2a
fcast
fix/android-local-album-date
fix/24545-sync-retry-cx
fix/android-locked-folder-delete
make-sure-memory-widget-render
chore/freezed-example
fix/clamp-local-date-time-to-valid-value
fix/datetime-max-limit
fix/viewer-long-image-aspect
feat/native-core
feat/yucca-integration
refactor/mobile-actions
fix/ws-reconnect-battery
renovate/sharp
renovate/pigeon-27.x
refactor/auto-trash-sync
feat/release-source-branch
refactor/session-repository
fix/library-map-live-bounds-updates
renovate/permission_handler-12.x
renovate/node-24.x
fix/mobile-scroll-velocity-placeholders
fix/library-map-loading-flash
agg23/appbar-experiments
renovate/pep621-lock-file-maintenance-machine-learning
refactor/undo-actions
refactor/actions
feat/restore-action
feat/delete-action
fix/29853-thumbnail-decode-size
bugfix/live-photo-stuck
feature/load-previews
chore/pub-upgrade
custom-app-logo
fix/failed-sync-blocks-resume
feat/ml-hwaccel-testing
feat/workflow-logs
feat/server-chunked-uploads
feat/upload-action
fix-29727
feat/download-tag-action
feat/share-action
feat/album-actions
fix/android-cr3-save
feat/browser-profile-action
feat/cast-slideshow-action
feat/locked-folder-action
fix/unauthorized-memory-creation
feat/context-actions
refactor/action-class
feat/memories-view
refactor/asset-action-filter
feat/archive-action
feat/stack-action
feat/mobile-hls-player
refactor/stack-actions
feat/workflow-asset-tags
fix/timeline-drag-select-stops
fix/featured-photo-thumbnail-cache
fix/album-timeline-date-ordering
chore/album-remove-assets
feat/partner-table-permissions
fix/ocr-after-edit
fix/re-enable-pruning
refactor/delete-restore-actions
apk-build-deployment
edit-photo-stacking
fix/mise-lockfile
feat/web-hls-hover
refactor/store-cleanup
fix/hash-mismatch
refactor/app-metadata
refactor/advanced-settings
refactor/current-user
fix/dedupe-integrity-missing-paths
chore/albums-select
fix/fdroid-meta
refactor/per-asset-backup-flag
fix/av1-threads
fix/pass-secrets
fix/download-progress-stuck
fix/negative-backup-remainder
feat/map-asset-number
test-bump-prerelease
fix/handle-unlinking-motion-photos
fix/date-range-formatting
fix/mobile-album-action-msg
asset-add-to-album-trigger
refactor/face-editor-decoupling
feat/zoom-aware-face-editing
refactor/adaptive-image-dimensions
fix-face-editor-video-preview
fix-stack-face-tag-selection
fix/face-boxes-edit-panel
workflow-webhook-step
feat/hero_view_transitions
fix/map-sidepanel-queries
feat/dart-openapi-generator
claude/share-quality-5d7Gn
drag-drop-ghost-target
refactor/workflow-page
refactor/mobile-upload
fix-scroll-flicker-2
update-mise-lock-file
feat/kysely-0.29
release-candidate-flow-1
fix/mobile-22522-sqlite-2067
fix/job-lock
release-candidate-flow-3
release-candidate-flow-2
show-in-timeline-toggle
fix/mise-windows
plan-local-image-display
fix/remote-thumbnail-fallback
chore/riverpod-update
album-order-per-user
fix/web-timeline-dom-node-retention
chore/svelte-enable-state-referenced-locally
feat/favorite-albums
feat/patch-release-from-branch
fix/oauth-linking
feat/timeline_scroll_buffer
panorama-face-overlay
push-txxyuusptoru
push-zpwsovysllvn
chore/queue-endpoint-migration
fix/remove-from-album
chore/thumbnail-histogram
fix/video-thumbnail-bindthis-regression
fix/scrubber-drag-edge-cases
fix/timeline_layout_row_height
refactor-cancellable-task
uhthomas/fix-mobile-use-timer
uhthomas/fix-mobile-video-controls-key
uhthomas/chore-mobile-search-declarative
owner-role-album-user
feat/livephoto-editing
favorite-albums
uhthomas/fix-mobile-isolate-auth
fix/library-watcher-excludes
chore/library-e2e-to-medium
push-ynllunsvrpxy
fix/dont-delete-offline-library-files
push-zvwwxmvkrspv
push-kywsnvvkwzts
push-xxnxokokzrou
push-voozlrlkxsnu
view-in-timeline-transition
push-uymvmlknxpmx
push-qslzsplnusoz
fix/mobile-video-stall
uhthomas/draft-mobile-image-cache-cancel
push-yquostpqnkxp
feat/vitest-4
claude/offload-icloud-hashing-bI3GZ
midzelis/wip
uhthomas/fix-server-fsync-all
feat/mobile-widget-shared-client
push-lnyuzsutzkqq
push-vqqqxxvkunru
push-wvnmqoswptww
push-nwxlpmyzkyrl
fix/map-webgl-error
fix/mobile-player-fit
feat/panorama-tiles
csp-policy
push-rsywxvptwxuv
refactor/restores-file-interceptor
postgres-socketio
claude/auto-screenshot-web-changes-Y7efI
visual-review/pr-26535
push-lvyturrtwkrq
feat/library-offline-count
fix/mobile-video-aspect-ratio
uhthomas/fix-mobile-search-results
uhthomas/feat-sort-smart-search
uhthomas/chore-mobile-maplibre
uhthomas/mobile-fix-asset-details-album-pop
feat/crawl-wrapper
push-skvzqoozqkpl
feat/edit-filters
feat/pg-queue
refactor/asset-upload
better-project-structure
uhthomas/mobile-feat-asset-viewer-details
fix/ml-rocm-build
feat/asset-file-apis
feature/bottom-buttons-order
sqlite_thumbs
fix-keep-correct-ios-shared-album-asset
push-vpxwmwwxwnvw
fix-migration-width-height
shared-deep-link-handler
feat/thumbnail-native-clients
feat/platform-clients
fix/foreground-cloud-sync
filter-by-person
refactor/sidebar
fix/merged-edited-assets
feat/create-job-with-dto
feat/ios-fastlane-match
match-signing
fix-update-time-update-timeline
feat/modal-routes
feature/mobile-view-asset-owner
feat/system-settings
feature/show-activity-count
feat/location-favorites
feature/rearrange-buttons-2
fix/download-storage-template
chore/originals-in-asset-files
ben/tree-a11y
new-search-filter-ui
refactor/expectSelectedReadonly
refactor/mobile-grdb
feat/mobile-native-local-sync
refactor/timeline_ops
fix/scrubber_end
refactor/virtualsegment
refactor/rename_daymonth_groups
fix-remote-sync-clean-up
debug/cf-chunked-uploads
feat/search-filter-album/web
feat/session-permissions
feat/mobile-dynamic-thumbnails
refactor/extract_photostream
refactor/rename_load_api
refactor/timeline2
refactor/timeline3
feat-no-thumbhash-cache
feat/mobile-hdr-images
feat/beta-background-upload
fix/beta-timeline-memories-setting
fix/failed-uploads-not-removed
feat/groups
drift-map-page
feat/add-to-album-action
track-livephotos
feat/maintenance-worker
refactor/server-side-dedupe
feat/integrity-checks
dev/recognition-eval
lighter_buckets_test
perf/postgres-queue
tmp/demo-snapshot-preview
fix/server-migration-file-extension
rknn-toolkit-lite2
feature/Add-rocm-support-for-machine-learning
chore/async-hash-file
feat/shared-link-view-count
feat/graphql
no-video-player
fix/server-qsv-output-format
chore/server-geodata-tweaks
mobile/native-video-player-no-hero
feat/local-tileserver
feat/ml-armnn-conversion
chore/handle-output_dims
feat/capacitor-mobile-app-poc
feat/server-nvenc-hw-decoding
web/automation-ui
object-storage
ml/tflite
feat/ml-export-cli
v3.0.3
v3.0.2
v3.0.1
v3.0.0
v3.0.0-rc.4
v3.0.0-rc.3
v3.0.0-rc.2
v3.0.0-rc.1
v3.0.0-rc.0
v2.7.5
v2.7.4
v2.7.3
v2.7.2
v2.7.1
v2.7.0
v2.6.3
v2.6.2
v2.6.1
v2.6.0
v2.5.6
v2.5.5
v2.5.4
v2.5.3
v2.5.2
v2.5.1
v2.5.0
v2.4.1
v2.4.0
v2.3.1
v2.3.0
v2.2.3
v2.2.2
v2.2.1
v2.2.0
v2.1.0
v2.0.1
v2.0.0
v1.144.1
v1.144.0
v1.143.1
v1.143.0
v1.142.1
v1.142.0
v1.141.1
v1.141.0
v1.140.1
v1.140.0
v1.139.4
v1.139.3
v1.139.2
v1.139.1
v1.139.0
v1.138.1
v1.138.0
v1.137.3
v1.137.2
v1.137.1
v1.137.0
v1.136.0
v1.135.3
v1.135.2
v1.135.1
v1.135.0
v1.134.0
v1.133.1
v1.133.0
v1.132.3
v1.132.2
v1.132.1
v1.132.0
v1.131.3
v1.131.2
v1.131.1
v1.131.0
v1.130.3
v1.130.2
v1.130.1
v1.130.0
v1.129.0
v1.128.0
v1.127.0
v1.126.1
v1.126.0
v1.125.7
v1.125.6
v1.125.5
v1.125.4
v1.125.3
v1.125.2
v1.125.1
v1.125.0
v1.124.2
v1.124.1
v1.124.0
v1.123.0
v1.122.3
v1.122.2
v1.122.1
v1.122.0
v1.121.0
v1.120.2
v1.120.1
v1.120.0
v1.119.1
v1.119.0
v1.118.2
v1.118.1
v1.118.0
v1.117.0
v1.116.2
v1.116.1
v1.116.0
v1.115.0
v1.114.0
v1.113.1
v1.113.0
v1.112.1
v1.112.0
v1.111.0
v1.110.0
v1.109.2
v1.109.1
v1.109.0
v1.108.0
v1.107.2
v1.107.1
v1.107.0
v1.106.4
v1.106.3
v1.106.2
v1.106.1
v1.106.0
v1.105.1
v1.105.0
v1.104.0
v1.103.1
v1.103.0
v1.102.3
v1.102.2
v1.102.1
v1.102.0
v1.101.0
v1.100.0
v1.99.0
v1.98.2
v1.98.1
v1.98.0
v1.97.0
v1.96.0
v1.95.1
v1.95.0
v1.94.1
v1.94.0
v1.93.3
v1.93.2
v1.93.1
v1.93.0
v1.92.1
v1.92.0
v1.91.4
v1.91.3
v1.91.2
v1.91.1
v1.91.0
v1.90.2
v1.90.1
v1.90.0
v1.89.0
v1.88.2
v1.88.1
v1.88.0
v1.87.0
v1.86.0
v1.85.0
v1.84.0
v1.83.0
v1.82.1
v1.82.0
v1.81.1
v1.81.0
v1.80.0
v1.79.1
v1.79.0
v1.78.1
v1.78.0
v1.77.0
v1.76.1
v1.76.0
v1.75.2
v1.75.1
v1.75.0
v1.74.0
v1.73.0
v1.72.2
v1.72.1
v1.72.0
v1.71.0
v1.70.0
v1.69.0
v1.68.0
v1.67.2
v1.67.1
v1.67.0
v1.66.1
v1.66.0
v1.65.0
v1.64.0
v1.63.2
v1.63.1
v1.63.0
v1.62.1
v1.62.0
v1.61.0
v1.60.0
v1.59.1
v1.59.0
v1.58.0
v1.57.1
v1.57.0
v1.56.2
v1.56.1
v1.56.0
v1.55.1
v1.55.0
v1.54.1
v1.54.0
v1.53.0
v1.52.1
v1.52.0
v1.51.2
v1.51.1
v1.51.0
v1.50.1
v1.50.0
v1.49.0
v1.48.1
v1.48.0
v1.47.3
v1.47.2
v1.47.1
v1.47.0
v1.46.1
v1.46.0
v1.45.0
v1.44.0
v1.43.1
v1.43.0
v1.42.0_65-dev
v1.41.1_64-dev
v1.41.0_64-dev
v1.40.1_63-dev
v1.40.0_63-dev
v1.39.0_61-dev
v1.38.2_60-dev
v1.38.1_60-dev
v1.38.0_60-dev
v1.37.0_58-dev
v1.36.2_56-dev
v1.36.1_55-dev
v1.36.0_55-dev
v1.35.0_54-dev
v1.34.0_53-dev
v1.33.1_52-dev
v1.33.0_52-dev
v1.32.1_51-dev
v1.32.0_50-dev
v1.31.1_49-dev
v1.31.0_49-dev
v1.30.2_48-dev
v1.30.0_46-dev
v1.29.6_45-dev
v1.29.6_44-dev
v1.29.5_44-dev
v1.29.4_44-dev
v1.29.3_43-dev
v1.29.2_43-dev
v1.29.1_43-dev
v1.29.0_42-dev
v1.28.4_41-dev
v1.28.4_42-dev
v1.28.3_41-dev
v1.28.2_40-dev
v1.28.1_39-dev
v1.28.0_38-dev
v1.27.0_37-dev
v1.26.0_36-dev
v1.25.0_35-dev
v1.24.0_34-dev
v1.23.0_33-dev
v1.22.0_32-dev
v1.21.1_31-dev
v1.21.0_31-dev
v1.20.3_30-dev
v1.20.2_30-dev
v1.20.1_30-dev
v1.20.0_30-dev
v1.19.1_29-dev
v1.19.0_29-dev
v1.18.0_27-dev
v1.17.0_25-dev
v1.16.0_23-dev
v1.15.1_21-dev
v1.15.0_21-dev
v1.14.0_21-dev
v1.13.0_20-dev
v1.12.0_18-dev
v1.11.0_17-dev
v1.10.0_15-dev
v1.9.1_14-dev
v1.9.0_13-dev
v1.8.0_12-dev
v1.7.0_11-dev
v1.6.0_10-dev
v1.5.1+9-dev
v1.5.0+8-dev
v1.4.0+7-dev
v1.4.0+6-dev
v1.4.0-dev
v1.3.0-dev
v1.3.1-dev
v0.6-dev
v0.5-dev
v0.4-dev
v0.3-dev
v0.2-dev
first-android-release
Labels
Clear labels
accessibility
changelog:enhancement
changelog:security
changelog:skip
changelog:translation
cli
date-time
dependencies
documentation
external-library
format
good first issue
mobile-beta
mobile-beta
mobile-beta
needs-answer
nice to have
pull-request
sharing
tech-debt
📱mobile
🖥️web
🗄️server
🧠machine-learning
Mirrored from GitHub Pull Request
No Label
Milestone
No items
No Milestone
Projects
Clear projects
No project
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: immich-app/immich#7320
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @StayPirate on GitHub (Sep 23, 2025).
I have searched the existing issues, both open and closed, to make sure this is not a duplicate report.
The bug
I've been using the beta version of the timeline before and everything was working as expected. After I upgraded the server to the version where the new timeline is enforced, the iOS app is no longer able to upload new media. In order to upload I have to switch back by disabling the timeline on the iOS app.
I tried to logout/login again, but it does not help. I found the following logs in the container, I'm not sure if those could be related to my issue. How can I fix them? Did I understand correctly that there are multiple entries with the same key in my DB? If yes, how can I sanitize it?
The OS that Immich Server is running on
TrueNAS
Version of Immich Server
v1.142.1
Version of Immich Mobile App
v1.142.1 build.224
Platform with the issue
Device make and model
iPhone 14
Your docker-compose.yml content
Your .env content
Reproduction steps
...
Relevant log output
Additional information
No response
@alextran1502 commented on GitHub (Sep 23, 2025):
Please share the mobile app logs
@StayPirate commented on GitHub (Sep 23, 2025):
I re-enabled Timeline Beta before extracting the following logs:
@something15525 commented on GitHub (Sep 23, 2025):
I'm having the same issue, turning off the new timeline fixed it. FWIW, before I turned it off, it seemed like I had no albums selected for backup (like the new timeline wiped out my settings?) Hope this information helps.
I'm on Android, also running Scale and am on 1.142.1 client and 1.142.1 build.3015 server.
Hope this helps! Also, I never turned on the new timeline feature and got opted in to the beta automatically. This could have been fine if this issue didn't arise, but shouldn't betas be opt-in?
Thanks so much for all your hard work on this free product, it is much appreciated!
@alextran1502 commented on GitHub (Sep 23, 2025):
I encourage you all to move to the new timeline and get them setup properly either by updating the server or by letting us know if you run into problem, as we have seized adding bug fixes and developments in the old timeline and they will be removed in the next few months.
@something15525 commented on GitHub (Sep 23, 2025):
Sure thing, I understand. What would you recommend as the path to move forward here? Should we just reselect the albums we were backing up before?
I'd be worried everything would be duplicated and backed up again.
@alextran1502 commented on GitHub (Sep 23, 2025):
@something15525 yes, please reselect the album, the mobile app will index and hash the files and compare them with files on the server, so they won't get uploaded as duplicated. Also, the server has deduplication mechanism built-in based on file content 😊
@Meliox commented on GitHub (Sep 23, 2025):
This was necessary to make it work for me.
@alextran1502 commented on GitHub (Sep 24, 2025):
@StayPirate The logs look good, do you mind sharing the Backup page and the Sync Status page under App Settings?
@black-dragon74 commented on GitHub (Sep 24, 2025):
@alextran1502 IIUC, the upload flow on iOS is like:
Download from iCloud > Hash the file > Upload if needed. Asking as I have almost 8k+ resources in ready to upload state but the backup queue is empty/not starting.
Something's amiss in the ready to upload > uploading flow. The device storage is full due to pending resources and the backup queue doesn't start. Rarely if it does start, it only uploads the first 100 assets and then waits forever.
Is the backup queue handling OS specific? The app is open and in foreground. I really don't want to delete the app and then re-download my entire iCloud library for sync 😞
The old flow was relatively much simpler where images were uploaded one by one instead of waiting in a queue.
@StayPirate commented on GitHub (Sep 24, 2025):
In my case I do not select albums, instead I want to upload any recent photo/video.
I don't have 8K+ media. I don't even use iCloud to sync media from my iPhone, my iCloud online storage is empty.
@alextran1502 commented on GitHub (Sep 24, 2025):
@StayPirate so there is one asset that cannot be uploaded and it is a video. How are you connecting to your instance? Is there any reverse proxy and CloudFlare tunnel involved? Can you try connecting to your instance directly via IP to see if the video is uploaded?
@StayPirate commented on GitHub (Sep 24, 2025):
Yes, I'm connected to the server. In this case there was only one new file, but if I take new photos and/or videos right now, they are affected the same way. See screenshots below
Another point is that if I tap on one of those red banner, it says that the media is 0 bytes. I'm not sure this is expected.
Yes, I'm using Traefik. But, if I perform an upload from the webUI (same domain:
https://immich.home) the upload works. And as I mentioned before, if I turn off the Beta Timeline, the upload works as expected.A couple of hours ago I updated the container and I'm now running immich server
v1.143.0, and the problem persists.I cannot connect directly to the container via its IP from my mobile, because the server's port is not published. It's only reachable by Traefik.
@StayPirate commented on GitHub (Sep 24, 2025):
I updated again the server, now on
v1.143.1and the issue persists.@ianhattendorf commented on GitHub (Sep 26, 2025):
I'm experiencing this issue with server
1.143.1iOS app1.143.1.build.226when mTLS is enabled. Everything else appears to be working on the beta timeline (loading remote images, server stats, etc.).When clicking the backup icon -> toggling
Enable Backup-> clickingView DetailsI see that no progress is made on the uploads and they turn red.If I turn off the beta timeline, uploads start working again. If I log out and change to my server URL without mTLS enabled (same Traefik config minus mTLS config), uploads start working again.
@gaelj commented on GitHub (Sep 27, 2025):
I'm having the same symptoms on my wife's pixel 9 and latest server in docker (1.143.1) although I think she's had the problem since we switched to the beta timeline.
I have a pixel 8 pro and I do not have any issue at all with the new timeline.
The only obvious difference is that hers is in french while my android is in US English.
I can upload my wife's assets by switching temporarily to the legacy timeline but then a lot of albums aren't visible so she does prefer the new timeline (I had this problem too with the old timeline).
Note: if either of us use the web page rather than Android app, all albums are visible and we can upload our photos, but it's less convenient than a native mobile app.
I don't see any error logs in the android app's logs - just failed uploads shown in red.
Other than this, the new timeline and apps in general are really good now. I'll be donating when this bug gets fixed.
Update: I finally solved it thanks to meta thread linked above ! My wife's app had a custom header setting (chunked encoding) dating from when I used cloudflare, which I had removed from my app. Clearing the setting solves the upload problem.
Heading over to the donation page right now.
@jamesob commented on GitHub (Sep 27, 2025):
I can confirm that I'm seeing the same "fail to upload from iOS" behavior that is fixed once disabling the new timeline (Settings > Advanced > deselect "New timeline").
I'm using the
releaseserver version and whatever the latest iOS release is in the App Store. My Android device syncs fine.@alextran1502 commented on GitHub (Sep 27, 2025):
@jamesob what is your networking setup? Any reverse proxy, self-signed cert?
@StayPirate commented on GitHub (Sep 28, 2025):
@ianhattendorf how do you disable mTLS in Traefik? I'd like to test your solution.
@ianhattendorf commented on GitHub (Sep 28, 2025):
@StayPirate I have two endpoints for immich set up in traefik: one with mTLS and one without:
with a traefik tls conf of:
@StayPirate commented on GitHub (Sep 29, 2025):
Here is the list of Traefik labels I assigned to the Immich container:
I tried to change my Traefik configuration from:
to:
But nothing changed. I also believe that even before I was not implementing mTLS. @ianhattendorf, do you think I missed any important part of configuration with my attempt of testing your solution?
@ianhattendorf commented on GitHub (Sep 29, 2025):
If you weren't setting
clientAuthType: RequireAndVerifyClientCertbefore, you weren't requiring mTLS (AFAIK that's the only way to require it in Traefik).@StayPirate commented on GitHub (Oct 7, 2025):
With the iOS app version
v2.0.1 Build.230and server versionv2.0.0. I now get a more detailed error, it's indeed related to the HTTPS certificate.Traefik was using a self-signed certificate for
immich.home, so I created a new CA (namedscale.home) and after that a server certificate forimmich.homeissued/signed by this new CA. I then installed and trusted the CA in iOS:But, the problem persist :(. Do you have any suggestion?
@StayPirate commented on GitHub (Oct 7, 2025):
FTR: when I disable HTTPS in favor of HTTP, everything works as expected.
@thomas-phillips commented on GitHub (Oct 7, 2025):
I can confirm using mTLS through Traefik with Authentik as an OAuth provider I can log into Immich server (
2.0.1) on the iOS app (2.0.0 build.229).I can browse photos but backing up does not work as it seems the iOS app does not utilise the provide SSL certificates for uploading anymore.
@thomas-phillips commented on GitHub (Oct 9, 2025):
I can confirm I can backup my photos on the iOS with Traefik mTLS if I switch the app back to the old timeline.
@aleksilassila commented on GitHub (Oct 13, 2025):
Same problem here when using caddy + mTLS, iOS as well. No issues when using http, internal domains or ip. Switching to old timeline fixes the issue.
@Dleewee commented on GitHub (Oct 20, 2025):
Also having issues with backup though I'm not using mTLS. I am behind Cloudflare free account and suspect the chunking is not working correctly based on the errors I see on the backup details screen including "payload too large." Issue only seems to affect videos over a certain size.
Update - bypassing Cloudflare and using local IP did allow my videos to backup. I hope that file chunking or whatever workaround happened on old timeline can be reimplemented for Cloudflare users. Thanks!
@Gaudv commented on GitHub (Oct 21, 2025):
Hello,
Same problem here, on iOS,
on my side it seems that even with the "Allow self-signed certificates" that the backup process on the new timeline does not consider this option, the upload of new image failed wuth a HttpException (Invalid Certificat).
@Gaudv commented on GitHub (Oct 22, 2025):
probable cause : #15230
@dsech commented on GitHub (Oct 23, 2025):
Similar issue here on the Android app with mTLS through Cloudflare tunnel.
The backup wasn't working since September (assuming then the new timeline was enabled), no images were getting uploaded due to 403 errors from Cloudflare.
After switching back to the old timeline the remaining files were successfully uploaded.
@webvictim commented on GitHub (Oct 23, 2025):
I'm experiencing the same problem - failure to back up when using the beta/new timeline on iOS. My server and app are configured to use mTLS via Caddy as a reverse proxy.
Switching back to the old timeline fixes the issue.
@agentdr8 commented on GitHub (Oct 31, 2025):
Maybe related, but using the new timeline on the latest server and client version on my Pixel 10 Pro, immich refuses to sync photos that are taken using portrait mode. If I turn off new timeline and reopen, it will then sync these images.
@waleedhad commented on GitHub (Nov 26, 2025):
I'm experiencing the same problem - failure to back up when using the beta/new timeline on iOS. Android devices work fine with the beta/new timeline enabled and same exact setup. My server and app are configured to use mTLS via Nginx as a reverse proxy. Switching back to the old timeline fixes the issue. I am strong proponent of mtls and I think its needed for the security even though I have OIDC/OAuth configured and enabled as the only login option.
@yaroslav-ilin commented on GitHub (Dec 30, 2025):
Facing the same issue here.
TaskException: A TLS error caused the secure connection to fail.TaskException: Error for url https://<public.domain>/api/assets: Read error: ssl=0xb40000717b0c5cd8: I/O error during system call, Success(thesslcode is different every time).@ZktSn0w commented on GitHub (Jan 19, 2026):
Same issue here on my Iphone.
Connecting to the immich instance woks, no errors in Logs etc.
But Uploading does not work with the same error regarding my letsencrypt certificates