Skip to content

Bump Courier_iOS to 5.9.0 - #68

Merged
mikemilla merged 2 commits into
mainfrom
bump-courier-ios-5.9.0
Oct 1, 2026
Merged

mikemilla merged 2 commits into
mainfrom
bump-courier-ios-5.9.0

Conversation

@courier-pr-bot

Copy link
Copy Markdown
Contributor

Auto-generated PR to update Courier_iOS dependency to 5.9.0 (published to CocoaPods).

@courier-pr-bot
courier-pr-bot Bot force-pushed the bump-courier-ios-5.9.0 branch from a8def71 to ed8119e Compare September 21, 2026 23:27
@courier-pr-bot
courier-pr-bot Bot force-pushed the bump-courier-ios-5.9.0 branch from ed8119e to fe86929 Compare September 22, 2026 00:12
Courier_iOS 5.9.0 made the zero-argument CourierDevice() init @mainactor
(it reads UIDevice). Building it inside the `??` autoclosure in a
nonisolated Task no longer compiles:

  error: call to main actor-isolated initializer
  'init(appId:adId:platform:manufacturer:)' in a synchronous nonisolated context

5.9.0 also changed TokenClient.putUserToken to take `CourierDevice? = nil`
and build the default device on the main actor itself, so pass the
optional through. The default device it builds is the same one.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@mikemilla

Copy link
Copy Markdown
Collaborator

Pushed a fix: this bump did not compile on iOS. The green checks here are JS/Dart-only and never build the Swift bridge.

Courier_iOS 5.9.0 made the zero-argument CourierDevice() init @MainActor. The device ?? CourierDevice() call in putUserToken sits in a nonisolated context, so it fails:

error: call to main actor-isolated initializer
'init(appId:adId:platform:manufacturer:)' in a synchronous nonisolated context

5.9.0 also changed TokenClient.putUserToken to take CourierDevice? = nil and build the default device on the main actor itself, so the fix passes the optional through. The default device it builds is the same one.

How I checked: built Courier_iOS 5.8.6 and 5.9.0 as modules and type-checked this wrapper's Swift call patterns against each one in Swift 5 mode. 5.8.6 is clean, 5.9.0 errors, and the fix is clean on 5.9.0, including under -strict-concurrency=complete. A swift-api-digester diff of 5.8.6 → 5.9.0 flags only the CourierDevice / putUserToken signature changes. The other wrapper call sites I checked (auth listener, permission callbacks, setAPNSToken) still compile. Note that the fix only compiles against 5.9.0+, so it has to land together with the pin bump.

🤖 Generated with Claude Code

@mikemilla
mikemilla merged commit 927b699 into main Oct 1, 2026
3 checks passed
mikemilla added a commit that referenced this pull request Oct 1, 2026
Nothing in CI compiled the Swift bridge in ios/, so the Courier_iOS 5.9.0
bump (#68) went green while putUserToken no longer compiled. The new
build-ios job runs on macos-15, resolves Courier_iOS from the podspec pin,
and builds example-085 for the iOS Simulator with signing disabled.

The example Podfile also pinned Courier_iOS to git tag 5.8.3, which
overrode the podspec pin; drop it so the build uses the pinned version.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
mikemilla added a commit that referenced this pull request Oct 1, 2026
Nothing in CI compiled the Swift bridge in ios/, so the Courier_iOS 5.9.0
bump (#68) went green while putUserToken no longer compiled. The new
build-ios job runs on macos-15, resolves Courier_iOS from the podspec pin,
and builds example-085 for the iOS Simulator with signing disabled.

The example Podfile also pinned Courier_iOS to git tag 5.8.3, which
overrode the podspec pin; drop it so the build uses the pinned version.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
mikemilla added a commit that referenced this pull request Oct 1, 2026
Nothing in CI compiled the Swift bridge in ios/, so the Courier_iOS 5.9.0
bump (#68) went green while putUserToken no longer compiled. The new
build-ios job runs on macos-15, resolves Courier_iOS from the podspec pin,
and builds example-085 for the iOS Simulator with signing disabled.

The example Podfile also pinned Courier_iOS to git tag 5.8.3, which
overrode the podspec pin; drop it so the build uses the pinned version.

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant