Skip to content

Conversation

@bjorkert
Copy link
Contributor

Xcode now stores the provisioning profile in a new location, which renders the hardcoded path in Scripts/capture-build-details.sh ineffective. This PR resolves the issue by reading the provisioning profile at runtime and storing it in a cached constant within the BuildDetails class.

Example of expire date using Xcode 16 and iOS 18.
image

@marionbarker
Copy link
Contributor

Status

This code fixes the problem of the expiration date being N/A.

Preparation

Remove *.mobileprovision from folders used by Xcode 15 and Xcode 16 before testing.

rm ~/Library/MobileDevice/Provisioning\ Profiles/*.mobileprovision
rm ~/Library/Developer/Xcode/UserData/Provisioning\ Profiles/*.mobileprovision

Test

  1. Build Loop 3.5.0 with no modifications, the expiration profile is not found
  2. Apply patch from PR 2226
  3. Build Loop 3.5.0 and expiration profile is reported as expected

@ps2 ps2 merged commit 56ac6bb into LoopKit:dev Oct 5, 2024
@bjorkert bjorkert deleted the xcode16_profile_support branch October 5, 2024 17:33
@marionbarker
Copy link
Contributor

Checking this PR - no testing was done for TestFlight expiration when using GitHub build action. (Apologies)
Lesson learned for the future.

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