Skip to content

[WCiOS17] Bump minimum deployment target to iOS17 #16003

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

Merged
merged 5 commits into from
Aug 19, 2025
Merged

Conversation

iamgabrielma
Copy link
Contributor

@iamgabrielma iamgabrielma commented Aug 12, 2025

Closes WOOMOB-1000. Part of WOOMOB-1003

Description

This PR bumps WooCommerce iOS minimum deployment target to iOS17.

Testing information

  • When building the app in Xcode you'll see ~200 warnings, we'll be addressing these as part of the project.
  • You might need to close Xcode, and clean the build folder before building the app. It generally worked fine on my end after clearing the build folder and re-opening Xcode, then rebuilding on the first try.
  • Running the app on an iOS17+ device and simulator should run it normally.

Tested on iPhone 14 running 17.6.1, and simulators running 18+

Screenshots

N/A


  • I have considered if this change warrants user-facing release notes and have added them to RELEASE-NOTES.txt if necessary.

@iamgabrielma iamgabrielma added type: task An internally driven task. type: technical debt Represents or solves tech debt of the project. labels Aug 12, 2025
@iamgabrielma iamgabrielma added this to the 23.1 milestone Aug 12, 2025
@iamgabrielma iamgabrielma marked this pull request as ready for review August 12, 2025 03:38
@wpmobilebot
Copy link
Collaborator

wpmobilebot commented Aug 12, 2025

App Icon📲 You can test the changes from this Pull Request in WooCommerce iOS Prototype by scanning the QR code below to install the corresponding build.

App NameWooCommerce iOS Prototype
Build Numberpr16003-1282948
Version23.0
Bundle IDcom.automattic.alpha.woocommerce
Commit1282948
Installation URL0ssjqdsmjdfro
Automatticians: You can use our internal self-serve MC tool to give yourself access to those builds if needed.

@iamgabrielma
Copy link
Contributor Author

Only 1 review is needed!

Copy link
Contributor

@staskus staskus left a comment

Choose a reason for hiding this comment

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

Thanks!

All these repeating changes suggest that there should be another part of the code that switches from 16.0 -> 17.0 in a more centralized place.

In this case I think are two files that need to be updated:

  • /config/Common.xcconfig
  • Package.swift

There comes from the new apps infra created module infrastructure.

@dangermattic
Copy link
Collaborator

1 Warning
⚠️ Modules/Package.swift was changed without updating its corresponding Package.resolved. Please resolve the Swift packages as appropriate to your project setup (e.g. in Xcode or by running swift package resolve).

Generated by 🚫 Danger

@iamgabrielma
Copy link
Contributor Author

iamgabrielma commented Aug 13, 2025

Thanks!

All these repeating changes suggest that there should be another part of the code that switches from 16.0 -> 17.0 in a more centralized place.

In this case I think are two files that need to be updated:

  • /config/Common.xcconfig
  • Package.swift

There comes from the new apps infra created module infrastructure.

Thanks for the review! Interestingly, the common.xcconfig file is not findable in Xcode, but has to be updated via finder. Is good to know that we have this to update all targets though, I would have expected some compiler error or warning in any case by missing this bit 🤔

Addressed here: 45730e4

@iamgabrielma iamgabrielma requested a review from staskus August 14, 2025 02:23
@iamgabrielma
Copy link
Contributor Author

Modules/Package.swift was changed without updating its corresponding Package.resolved. Please resolve the Swift packages as appropriate to your project setup (e.g. in Xcode or by running swift package resolve).

I did resolve these in Xcode after updating the config, but there was no updates/changes to commit, so we should be good to go here.

@itsmeichigo if you have the time this week could you please take a look into this one? As Povilas will be AFK the rest of the week and I'll be AFK next week 😅

If you don't have the time that's fine, no rush! 🙇

@@ -18948,6 +18971,7 @@
CLANG_ENABLE_OBJC_WEAK = YES;
CODE_SIGN_STYLE = Automatic;
INFOPLIST_FILE = WooCommerceScreenshots/Info.plist;
IPHONEOS_DEPLOYMENT_TARGET = 17.0;
Copy link
Contributor

Choose a reason for hiding this comment

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

@iamgabrielma I think all these should be reverted, since they are probably overriding the common config file.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Ooof you're right, sorry for the back and forth. Confirmed that after reverting on d50f5ee that we still see the targets individually marked as 17.0 under General and builds normally. So it would seem that after the infra changes the only needs are, as you mentioned:

/config/Common.xcconfig
/Modules/Package.swift 

@iamgabrielma iamgabrielma requested a review from staskus August 14, 2025 08:51
Copy link
Contributor

@itsmeichigo itsmeichigo left a comment

Choose a reason for hiding this comment

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

The app builds and runs successfully. Project settings all display the iOS 17 as the target deployment.

:shipit:

@iamgabrielma
Copy link
Contributor Author

Seems we're blocked from merging until you approve it @staskus ! 😂

Screenshot 2025-08-14 at 16 54 01

I'll leave this one in auto-merge for now, no rush!

@iamgabrielma iamgabrielma enabled auto-merge August 14, 2025 09:55
@iamgabrielma iamgabrielma merged commit cdc327f into trunk Aug 19, 2025
14 checks passed
@iamgabrielma iamgabrielma deleted the task/wcios17-bump branch August 19, 2025 05:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type: task An internally driven task. type: technical debt Represents or solves tech debt of the project.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants