* feat: add CPython 3.15 support for iOS and Android Add cp315 identifiers to build-platforms.toml for both iOS (arm64_iphoneos, x86_64_iphonesimulator, arm64_iphonesimulator) and Android (arm64_v8a, x86_64). Update bin/update_pythons.py to route iOS 3.15+ to python.org instead of BeeWare GitHub releases. Update README.md platform table to show Android and iOS as supported for 3.15. Add cp315-cp315 to expected_wheels test defaults for android and ios platforms. Assisted-by: OpenCode:Kimi-K2.6 Signed-off-by: Henry Schreiner <henryfs@princeton.edu> * fix: adjust expectations All changes made and linting passes. Here's a summary of what was done: 1. test/utils.py:390-394 — Added "cp315-cp315": 24 to the Android API level mapping, fixing the KeyError: 'cp315-cp315' in test_android.py::test_expected_wheels. 2. cibuildwheel/resources/build-platforms.toml:247 — Removed the cp315-ios_x86_64_iphonesimulator entry since CPython 3.15 dropped Intel iOS simulator support. 3. test/utils.py:397-405 — Updated the iOS expected wheels logic to return an empty platform_tags list for x86_64 when the Python version is 3.15+, so no x86_64_iphonesimulator wheels are expected for cp315+ on Intel Macs. The XCframework slice name (ios-arm64_x86_64-simulator) stays the same in ios.py — I verified the 3.15 tarball still uses that name. The target_python.exists() iOS ARM64 failure on the feature branch is a separate issue (the 3.15 python.org distribution has a different structure than the beeware distributions used for 3.13/3.14) — left alone per your request. Signed-off-by: Henry Schreiner <henryfs@princeton.edu> Assisted-by: OpenCode:glm-5.1 * revert: x86 is still supposed to exist Signed-off-by: Henry Schreiner <henryfs@princeton.edu> * docs: fix readme for Pyodide Signed-off-by: Henry Schreiner <henryfs@princeton.edu> * docs: mention eol Signed-off-by: Henry Schreiner <henryfs@princeton.edu> * fix: drop assert Signed-off-by: Henry Schreiner <henryfs@princeton.edu> * feat: add CPython 3.15 support for Android only Cherry-picked all changes from henryiii/feat/cp315-ios-android, then reverted iOS-specific parts (iOS 3.15 build configs, ios.py assert removal, update_pythons.py iOS URL logic, iOS test expectations, and README iOS column for 3.15). Android cp315 entries, test expectations, and README Android column remain. Assisted-by: OpenCode:glm-5 --------- Signed-off-by: Henry Schreiner <henryfs@princeton.edu>
This folder contains integration tests for cibuildwheel.