Skip to content

Android CI and binary releases #137242

@mhsmith

Description

@mhsmith

Proposal:

At the PyCon US language summit a couple of months ago, we discussed adding the following features to the mobile platforms:

  • Continuous integration on GitHub Actions
  • Official binary releases on python.org

Details of the discussion are in the link below, but I think it's fair to say that there was a consensus in favor of both features. I've talked about this with @hugovk, and he's open to including Android binaries in the 3.14 release series, as long as the process is well-automated, and there are no objections from the core team.

I've created the following PRs to implement this:

  • gh-137242: Add Android CI job #137186

    • Add a script which builds and tests on Android, and invoke it from the CI workflow.
      • This takes about 20 minutes, which is slightly faster than the existing Windows free-threading job. So the overall workflow is not slowed down.
  • Add Android support release-tools#265

    • Invoke the same script from the existing workflow which builds the source and docs releases.
      • Again, there is a slower existing job, so the overall workflow is not slowed down.
      • The Android release artifacts are attached to the workflow, from where the release manager can download them. This will be the only additional manual step required in the release process.
    • Add Android support to run_release.py and add_to_pydotorg.py.
  • Add Android release support pythondotorg#2762

    • Describes some one-time setup which will need to be done manually through the Django admin interface, and updates the test data to show what that would look like.
    • Adds an explanatory note at the top of the Android downloads page.
  • PEP 101: Add Android peps#4541

    • Updates the release checklist.

Links to previous discussion of this feature:

Linked PRs

Metadata

Metadata

Assignees

No one assigned

    Labels

    OS-androidinfraCI, GitHub Actions, buildbots, Dependabot, etc.type-featureA feature request or enhancement

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions