Change log cocoa-pods
4.1.0
New Features
- The SDK now reads device information from HealthKit records for blood glucose, blood pressure, oxygenation, and temperature events.
- Added support for extracting and syncing ECG events.
- Added support for new permission types:
stairAscentSpeed,cyclingPower,cyclingSpeed,waterTemperature,estimatedWorkoutEffortScore,physicalEffort, andworkoutEffortScore. - Data from these types is now included in Physical Summary and Activity Event.
4.0.0
New Authentication
The authentication flow has been redesigned to improve security and eliminate the need for embedding secret keys within your application code.
Xcode 26.0
Xcode 26.0 needed for development
Improved Synchronization
- Current day Heart Rate Events sync: Get accumulated Hear Rate measurements for the current day with
- Write Nutrition data feature in healthkit has been added
1.8.2 - LTS (Long Term Support)
Optimizations
- background optimization
1.7.9 - LTS (Long Term Support)
It will continue to receive bug fixes, security patches, and maintenance updates until May, 2026.
What this means
- Guaranteed long-term stability for existing integrations.
- Continued critical updates and security maintenance.
- Ideal for production environments requiring predictable and reliable support.
Features
- Summaries are returned in local with functions
public func getSleepSummary(date: Date) async throws -> [RookSleepSummary]
public func getPhysicalSummary(date: Date) async throws -> RookPhysicalSummary
public func getBodySummary(date: Date) async throws -> RookBodySummary
public func getSleepSummary(date: Date, completion: @escaping (Result<[RookSleepSummary], Error>) -> Void)
public func getPhysicalSummary(date: Date, completion: @escaping (Result<RookPhysicalSummary, Error>) -> Void)
public func getBodySummary(date: Date, completion: @escaping (Result<RookBodySummary, Error>) -> Void)
- Activity events are returned in local with
public func getActivityEvents(date: Date, completion: @escaping (Result<[RookActivityEvent], Error>) -> Void)
public func getActivityEvents(date: Date) async throws -> [RookActivityEvent]
- Nutrition events have been added
This events will sync automatically in background, if the permissions were granted For manual sync use the example code:
let response = try await eventSyncManager.syncEvents(date: date, eventType: .nutrition)
Optimizations
- analytics batch optimization
- apple wrist temperature has been added to sleep summaries
1.7.8
BugFix
workout crash issue for some iPhones model fixed
1.7.7
Optimizations
- Background data extraction optimization for activity events
1.7.6
Optimizations
- background optimizations have been added
1.7.4
Features
- time zone fix for time zone with offset +/- 5:30
- Data sources added for summaries and events
- sleep apnea has been added
Breaking changes
- minimum xcode version for development 16.0
- some public structs have been removed
1.7.0
-
The functions:
getAvailableDataSourcespresentDataSourceViewin DataSourcesManager have been deprecated, instead usergetAuthorizedDataSourcesandgetDataSourceAuthorizerto get a more efficient and scalable solution, reducing unnecessary data retrieval -
The functions
syncSummariessyncSleepSummarysyncPhysicalSummarysyncBodySummarysyncPendingSummariesinRookSummaryManagerhave been deprecated instead usesync()sync(_ date: Date)orsync(_ date: Date, summaryType: [SummaryTypeToUpload])
The functions syncBodyHeartRateEvent syncPhysicalHeartRateEvent syncBodyOxygenationEvent syncPhysicalOxygenationEvent syncTrainingEvent syncTemperatureEvents syncBloodPressureEvents syncBloodGlucoseEvents syncBodyMetricsEvents in RookEventsManager have been deprecated, instead use syncEvents(date: Date, eventType: EventTypeToUpload) or syncEvents()
BREAKING CHANGES
func getAuthorizedDataSources() async throws -> [DataSourceStatus] has been added, it will return an array of DataSourceStatus objects, with the status and name of the data source
AuthorizedDataSources properties have been changed to nullable in order to show data source availability.
1.6.10
Bug Fix
- Internal optimization to avoid dealloc issues
1.6.9
Optimization
- get today calories function added to RookEventsManager
- Timeout steps event ignored
- Xcode 15.0 minimum version for development
- Internal Optimization for background
1.6.7
Optimization
- Get Authorized Data Sources function added
Bug Fix
- Fix bmi decimal point
1.6.6
Bug Fix
- fix error response in method get available data sources when there is not internet connection
1.6.5
Optimization
- Background optimization.
1.6.4
Bug Fix
- Time zone fix for +12 h
1.6.3
Optimization
- Permission status added
- Partial permission request added
Bug Fix
- Vo2 max added to physical summary
1.6.2
Optimization
-
UserManager class have been added. this class contains all the functionalities related with the user such as: update user id, remove user id, get user id stored locally, sync user time zone, revoke data source.
-
Notifications have been added to track error events that occur in background processes.
-
Sleep improvement for third party delay injection.
1.6.1
Optimization
- Apple Health errors are mapped to custom Errors
1.6.0
Bug Fix
- Temperature events bug fixed
Features
- 30 days history for first time sync
- Events background and summary background independent activation and deactivation
Breaking changes
- enableEventsBackgroundSync parameter was added in setConfiguration method
- RookExtractionEventManager removed form public access
1.5.8
Optimizations
- Core data persistence
1.5.7
Optimizations
- Async await interface added
- back ground sync first time history for summaries changed for 14 days
- new variables added to non structured data for physical and body summaries
Bugs
- Typo Error description fixed
- Core data persistence
1.5.6
- Background error tracking
1.5.5
- Fix automatic background
1.5.4
Optimizations
- Optimizations for upload steps events.
1.5.3
Breaking changes
- enableBackgroundSync parameter was added to setConfiguration
- redirectURL parameter was added to getAvailableDataSources and presentDataSourceView
- RookSleepTransmissionManager removed from public declaration
- RookBodyTransmissionManager removed from public declaration
- RookPhysicalTransmissionManager removed from public declaration
1.5.2
- Optimizations
- When a new user ID is updated, all past information stored in apple health will be uploaded for this new ID.
- Bug Fix
- The issue that was preventing the upload of HRV data in the sleep summary has been fixed.
1.5.1
- Breaking changes
- RookAppleHealth removed
- RookConnectTransmission removed
- RookBackGroundExtraction removed
- Optimizations
- Step events feature added
1.5.0
- All the background functions were migrated to RookBackGroundSync