github the-momentum/open-wearables 0.6.1
0.6.1 - Data Coverage & Observability

5 hours ago

Highlights

Data Coverage tab

We have added a new Data Coverage tab to the admin panel which shows the data that we support for each provider. This information is always up to date.

Note

Although it includes OpenWearables capabilities, it does not display which data has already been synchronised with the system.

image image

Observability, deployments & logs

The focus of this release was on making debugging and troubleshooting easier by improving the visibility of logs and sync statuses. These changes include the following:

  • adding a workflow to publish an image to Docker Hub
  • linked webhook logs to users and/or traces (including failed attempts to receive a webhook).
  • the application version has been added to Sentry logs
  • improved reliability when saving sync statuses from webhooks to Redis (new skippedstatus added).
  • new metadata has been added to sync statuses, dividing new items into inserted and updated.
image image

Lookback for pull syncs

Although we recommend using webhooks, we have added lookbacks as a safeguard against data gaps if you need to use periodic pull syncs for any reason. This could happen if a user has not opened their wearables app for a long time, causing the live sync window to expire. This issue can now be resolved by syncing data from a specified number of minutes, hours or days in the past.

In order to use this feature, you will need to set the PULL_SYNC_LOOKBACK environment variable, specifying a string containing a number and a time unit. For example, 2d would mean 2 days, 3h would mean 3 hours, and 15m would mean 15 minutes. In periodic pull mode, live sync by default retrieves data recorded from the start of the day on which it is called until the present moment. Setting the lookback extends the start of the sync window by the specified duration and unit of time.

Note

PULL_SYNC_LOOKBACK is disabled by default.

image

This session is in committed state error

Thanks to our new contributor, the bug that caused ORM objects to be downgraded has been fixed.

What's Changed

Observability, deployments & logs

  • ci: add manual Docker Hub image publish workflow by @kczpl in #1179
  • fix(backend): build data source display name from reloaded provider strings by @knowald in #1154
  • chore(backend): add user/trace correlation to webhook logs by @bartmichalak in #1183
  • feat(backend): set Sentry release from version + commit SHA by @bartmichalak in #1196
  • docs: remove publishing the images section by @bartmichalak in #1205
  • fix(backend): webhooks syncs being saved into sync logs by @KaliszS in #1209
  • refactor: improved sync metadata logging by @KaliszS in #1211
  • fix(integrations): drop non-retriable 4xx webhook deliveries instead of retrying forever by @slavarosin in #1053

Docs & chores

Suunto

  • fix(backend): report accurate Suunto sleep sync stats, skip unsaveable sessions by @bwickner in #1182
  • fix(integrations): handle Suunto workout webhook edge cases by @HugoHeneault in #1042
  • fix(backend): suunto tests by @KaliszS in #1189

Garmin

  • fix(backend): persist body composition muscle mass from Garmin webhooks by @bartmichalak in #1194
  • fix(backend): persist blood pressure from Garmin webhooks by @bartmichalak in #1193

Polar

Whoop

  • refactor(backend): construct default Whoop sync window as UTC-aware datetimes by @knowald in #1157

Fitbit

  • fix(integrations): coerce Fitbit string start/end dates to datetime before strftime by @slavarosin in #1054

Other improvements

New Contributors

Full Changelog: 0.6.0...0.6.1

Don't miss a new open-wearables release

NewReleases is sending notifications on new releases.