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

Allow single-platform macOS apps #1482

Closed
freakboy3742 opened this issue Oct 7, 2023 · 0 comments · Fixed by #1492
Closed

Allow single-platform macOS apps #1482

freakboy3742 opened this issue Oct 7, 2023 · 0 comments · Fixed by #1492
Labels
enhancement New features, or improvements to existing features. good first issue Is this your first time contributing? This could be a good place to start! macOS The issue relates to Apple macOS support.

Comments

@freakboy3742
Copy link
Member

freakboy3742 commented Oct 7, 2023

What is the problem or limitation you are having?

With the addition of #1475, macOS apps are guaranteed to be universal, regardless of whether the wheels supplying binary components are universal.

However, there are legitimate use case for not producing universal binaries:

  1. Concern over app size
  2. Lack of availability of wheels on a given platform
  3. A desire to drop x86_64 as a supported platform.

The last 2 points points in particular will only increase in frequency over time, as x86_64 macOS machines become increasingly uncommon.

Briefcase should allow an app to specify that it should not build a universal app.

Describe the solution you'd like

A new option, universal_build, honored by the macOS backends. The default value is True for now; new apps templates should include an explicit value for this setting. At some point in the future, this default will be changed to False, and then the setting will be deprecated completely.

The current (post-#1475) behavior should continue if universal_build==True. If the user specifies universal_build=False, the older pre-#1475 pip install behavior should be restored (i.e., only wheels that match the current platform will be installed)

Describe alternatives you've considered

Do nothing, and force all apps to be universal.

Additional context

Updates to the macOS App and macOS Xcode templates will also be required to set the new value explicitly.

@freakboy3742 freakboy3742 added enhancement New features, or improvements to existing features. good first issue Is this your first time contributing? This could be a good place to start! macOS The issue relates to Apple macOS support. labels Oct 7, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New features, or improvements to existing features. good first issue Is this your first time contributing? This could be a good place to start! macOS The issue relates to Apple macOS support.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant