Release 0.43: iOS 16 minimum and expanded task API - #4
Merged
Merged
Conversation
Drop the bundled Core Data Model.momd moms and per-slice configuration.plist; add the new resource bundles (ContentStorage, LocationStorage, Statistics, SDKAttachments, SynchronizationMechanism), PrivacyInfo.xcprivacy, and the re-exported OnfleetReactiveKit swiftmodule. Refresh the public swiftinterface/abi for the 0.43 API and reorder the xcframework Info.plist slices with dSYM paths.
Move the podspec to iOS 16 and add the integration flags the new binary needs: -ObjC for the statically linked Objective-C components and SWIFT_INCLUDE_PATHS for the re-exported OnfleetReactiveKit module, all prepending $(inherited). Refresh Podfile.lock to the 0.43 checksum, document the release in CHANGELOG.md, and correct the README sample to use ApplicationConfig.
Rebuild the jazzy HTML site and add the DocC archive for the 0.43 API surface (custom fields, route plans, self-assign, end-of-route task types, barcode and age-verification models, and more); remove pages for types no longer public. Drop the generated docset bundle and tarball.
Restructure around a tab bar (MainTabBarController) with a new DriverInfoViewController, and split the task UI into current (TaskViewController/TasksViewController) and Legacy variants. Update the App, Duty, OffDuty, and Initial controllers and the storyboard for the new API, and refresh the tuist-generated project (SampleApp.xcodeproj, Derived/Sources).
dbarbos
approved these changes
Jun 24, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Releases version 0.43 of the OnfleetDriver SDK — the first cut since 0.17.2. It bumps the vendored
OnfleetDriver.xcframeworkto the 0.43 binary, raises the minimum deployment target to iOS 16, and ships a substantially expanded API (custom fields, route plans, self-assign, end-of-route task types, barcode/age-verification, custom completion requirements and reasons, and more). The CHANGELOG carries the authoritative, itemized list.Most of the diff (~7,800 files) is regenerated output — the binary framework, the jazzy/DocC documentation site, and the tuist-generated sample project. The hand-authored surface is the podspec, CHANGELOG, README, and the SampleApp source.
Changes
OnfleetDriver.xcframeworkfor 0.43 — addPrivacyInfo.xcprivacyand the re-exported OnfleetReactiveKit module; drop the bundled Core DataModel.momd.Podfile.lockto 0.43, raise the platform to iOS 16, and add the integration flags the new binary requires (-ObjC, plusSWIFT_INCLUDE_PATHSfor the re-exported OnfleetReactiveKit module, all$(inherited)-prefixed). Correct the README sample to useApplicationConfig..docsetbundle.MainTabBarController), a newDriverInfoViewController, and a current/Legacysplit of the task UI.Breaking changes
For integrators upgrading from 0.17.x (full detail in
CHANGELOG.md):Sendable…ManagerProtocolfamily;DriverContext.tasksManagernow returnsany TasksManagerProtocol.CompletedTask.pickupTask: Bool→CompletedTask.type: TaskType(usetype.isPickUpfor the old boolean).Recipient.name/Recipient.notes:String?→OverrideableProperty<String?>(read.value).photo/signature/notes) are now tri-stateBool?.CompleteTaskError(andStartTaskError/DutyStatusError/UpdateProfileError/SelfAssignError) realigned onto a sharedInternalReasonError; all now conform toLocalizedError.tasksproperty renamed toavailableTasks.AppConfigreshaped intoApplicationConfig(typed group identifier, keychain access group, throwingApplicationConfigError).Test plan
.github/workflows/ci.yml) builds the SampleApp against the vendored 0.43 binary on every PR tomaster:pod install --deployment(fails fast onPodfile.lockdrift), thenxcodebuild buildfor the iOS Simulator with signing disabled.pod install, openSampleApp.xcworkspace, and confirm it builds and runs against 0.43 on an iOS 16+ simulator or device.Notes
.gitignorepolicy so integrators canpod installwithout Tuist.