Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release 1.7.2 #655

Merged
merged 6 commits into from
Nov 8, 2021
Merged

Release 1.7.2 #655

merged 6 commits into from
Nov 8, 2021

Conversation

ncreated
Copy link
Member

@ncreated ncreated commented Nov 5, 2021

What and why?

📦 This PR ships second hotfix for #609 by adding a workaround to potential iOS 15 issue.

How?

We suspect that accessing processInfo.isLowPowerModeEnabled from pending NSProcessInfoPowerStateDidChange notification block leads to a deadlock on the main thread. As a workaround, we read iLPME value from the next run loop, where all underlying locks should already be released.

I reported this issue to Apple: https://openradar.appspot.com/FB9741207

💡 This branch includes version bump to 1.7.2, but it's not visible in diff because I had to resolve conflict with the main branch (it conflicts becase we made 1.8.0-beta1 release after 1.7.0). I also cherry picked recent fixes to release automation, so we can deploy this hotfix smoothly. If approved, I will put the release tag on 950b087.

Review checklist

  • Feature or bugfix MUST have appropriate tests (unit, integration)
  • Make sure each commit and the PR mention the Issue number or JIRA reference

@ncreated ncreated self-assigned this Nov 5, 2021
@ncreated ncreated requested a review from a team as a code owner November 5, 2021 10:36
Copy link
Member

@maxep maxep left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good 🤞 I've a couple of minor comments

Sources/Datadog/Core/System/MobileDevice.swift Outdated Show resolved Hide resolved
…LowPowerModeEnabled`

We suspect an iOS 15 bug (ref.: https://openradar.appspot.com/FB9741207) which leads to rare
`_os_unfair_lock_recursive_abort` crash when `processInfo.isLowPowerModeEnabled` is accessed
directly in the notification handler. As a workaround, we defer its access to the next run loop
where underlying lock should be already released.

ref.: https://openradar.appspot.com/FB9741207
ncreated and others added 3 commits November 8, 2021 10:32
…utomation-issues

RUMM-1667 Enhance release automation

(cherry picked from commit 0ebcb7f)
…b-for-distro

RUMM-1667: Fix distribution tool
(cherry picked from commit 3f98760)
# Conflicts:
#	DatadogSDK.podspec
#	DatadogSDKAlamofireExtension.podspec
#	DatadogSDKCrashReporting.podspec
#	DatadogSDKObjc.podspec
#	Sources/Datadog/Versioning.swift
@ncreated ncreated merged commit 57a1e3b into master Nov 8, 2021
@ncreated ncreated deleted the hotfix/1.7.2 branch November 8, 2021 11:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants