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

App store submission : During review, your app installed or launched executable code, which is not permitted on the App Store #1655

Closed
albrownwood opened this issue Feb 18, 2024 · 6 comments
Labels
awaiting details More details are needed before the issue can be triaged. bug A crash or error in behavior. macOS The issue relates to Apple macOS support.

Comments

@albrownwood
Copy link

Describe the bug

Getting this message when submitting app created with briefcase on app store.

Guideline 2.5.2 - Performance - Software Requirements
During review, your app installed or launched executable code, which is not permitted on the App Store. Specifically, your app uses the itms-services URL scheme to install an app.
Please note that while educational apps designed to teach, develop, or allow students to test executable code may, in limited circumstances, download code, such code may not be used for other purposes and such apps must make the source code completely viewable and editable by the user.

Steps to reproduce

  1. briefcase package macOS Xcode
  2. use Xcode the sign and notarize the app
  3. use Xcode to upload to app store connect for review
  4. submit app for review
  5. app review fails as described

Expected behavior

Expectation is to be able to submit an app created with briefcase on the app store.
Is this problem solvable or does it mean that app embedding a python interpreter are simply not allowed on the app store?

Screenshots

No response

Environment

  • Operating System:
  • Python version:
  • Software versions:
    • Briefcase:
    • Toga:
    • ...

Logs


Additional context

No response

@albrownwood albrownwood added the bug A crash or error in behavior. label Feb 18, 2024
@freakboy3742
Copy link
Member

I'm not sure what you expect us to do here.

You've provided literally no information to work on, other than the rejection message returned from the App Store.

Even the platform that you're targeting is, at best, implied. Despite an explicit prompt to provide operating system and software version detail, the only hint that this is likely a macOS packaging issue is the first line of your reproduction instructions.

Ultimately - you've told us nothing about the app that you're packaging, so we have no way to know if the issue is your app, or something that Briefcase is doing.

Based on the App Store rejection message, it sounds like the packaged app contains executables. These are likely installed by one of your dependencies. However, as you haven't told us anything about your app's dependencies, we have no way to tell.

If you want to provide more (which is to say - any) detail about what you're doing, we might be able to help.

@freakboy3742 freakboy3742 added macOS The issue relates to Apple macOS support. awaiting details More details are needed before the issue can be triaged. labels Feb 18, 2024
@albrownwood
Copy link
Author

albrownwood commented Feb 18, 2024

Hello, I wanted to confirm first there is no well known restriction related to submitting an app made with briefcase and the appstore. The app in question has only 2 dependences: wxPython (4.2.1), asn1tools (0.166.0) and it does not contain any extra executable, the app shows a UI using wx and allows the user perform some data manipulations.

Operating System: Sonoma 14.3.1
Python version: 3.12
Briefcase: 7682008

@freakboy3742
Copy link
Member

Are you sure it doesn't contain any extra executables? Have you audited the full contents of the wxPython and asn1tools package (and all the dependencies of those packages) to see if there's an executable file? It's extremely common for Python packages to include utility binaries.

@albrownwood
Copy link
Author

I audited all the dependencies and indeed I found some binary utilities in there! Will update here when I get the results of submission.

@freakboy3742
Copy link
Member

FYI - in terms of automation, you may find the cleanup_paths configuration option helpful. This allows you to specify files that are installed as part of your dependencies (or any other part of the Briefcase creation process) that you want to be purged before packaging is complete. This can be useful for removing parts of the standard library or dependencies that you don't want or need at runtime.

@albrownwood
Copy link
Author

The main issue was from url_lib that includes the string "itms-services" in its code, also removed the various binary utilities and submission got accepted.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
awaiting details More details are needed before the issue can be triaged. bug A crash or error in behavior. macOS The issue relates to Apple macOS support.
Projects
None yet
Development

No branches or pull requests

2 participants