Skip to content

Commit 8cb8525

Browse files
authored
Merge pull request #99 from mhsmith/android-3.13
Enable Python 3.11 - 3.13 on Android
2 parents b1b8168 + 2d2a91c commit 8cb8525

File tree

4 files changed

+11
-22
lines changed

4 files changed

+11
-22
lines changed

.github/workflows/ci.yml

Lines changed: 2 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ jobs:
4545
- "windows-app"
4646
- "iOS"
4747
- "android"
48-
python-version: [ "3.9", "3.10", "3.11", "3.12", "3.13-dev" ]
48+
python-version: [ "3.9", "3.10", "3.11", "3.12", "3.13" ]
4949
include:
5050
- runs-on: ubuntu-latest
5151
- pre-command:
@@ -105,23 +105,6 @@ jobs:
105105
| sudo tee /etc/udev/rules.d/99-kvm4all.rules
106106
sudo udevadm control --reload-rules
107107
sudo udevadm trigger --name-match=kvm
108-
exclude:
109-
# Cryptography isn't available for 3.11+ on Android yet
110-
- backend: android
111-
python-version: "3.11"
112-
- backend: android
113-
python-version: "3.12"
114-
# Binary packages aren't available for 3.13 on Android yet
115-
- backend: android
116-
python-version: "3.13-dev"
117-
# Support package isn't available for 3.13 on Linux
118-
- backend: "linux-flatpak"
119-
python-version: "3.13-dev"
120-
# Support package isn't available for 3.13 on Window
121-
- backend: "windows-VisualStudio"
122-
python-version: "3.13-dev"
123-
- backend: "windows-app"
124-
python-version: "3.13-dev"
125108
126109
steps:
127110
- name: Checkout
@@ -134,6 +117,7 @@ jobs:
134117
if: matrix.python-version != 'system'
135118
with:
136119
python-version: ${{ matrix.python-version }}
120+
allow-prereleases: true
137121

138122
- name: Install Dependencies
139123
run: ${{ matrix.pre-command }}

pyproject.toml

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,9 +22,9 @@ requires = [
2222
"cryptography",
2323
"lru_dict",
2424
"pillow",
25-
# Numpy/pandas aren't available on 3.13.
26-
"numpy; python_version < '3.13'",
27-
"pandas; python_version < '3.13'",
25+
# Numpy/pandas aren't available for iOS on 3.13+.
26+
"numpy; python_version < '3.13' or platform_system != 'iOS'",
27+
"pandas; python_version < '3.13' or platform_system != 'iOS'",
2828
]
2929
test_requires = [
3030
"pytest",
@@ -77,7 +77,8 @@ flatpak_sdk = "org.gnome.Sdk"
7777

7878
[tool.briefcase.app.testbed.windows]
7979
requires = [
80-
"pythonnet>=3.0.0rc6",
80+
# Python.net isn't avaialble for 3.13 yet.
81+
"pythonnet>=3.0.0rc6; python_version < '3.13'",
8182
# Windows doesn't provide the zoneinfo TZ database; use the Python provided one
8283
"tzdata",
8384
]

tests/test_common.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -106,6 +106,7 @@ def test_stdlib_modules():
106106

107107
# Modules that do not exist on Android
108108
if hasattr(sys, "getandroidapilevel"):
109+
all_modules.remove("_multiprocessing")
109110
all_modules.remove("grp")
110111

111112
# Modules that do not exist on iOS

tests/test_windows.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,13 @@
66

77
import pytest
88

9+
from .test_thirdparty import xfail_if_not_installed
10+
911
if sys.platform != "win32":
1012
pytest.skip("Skipping Windows-only tests", allow_module_level=True)
1113

1214

15+
@xfail_if_not_installed("pythonnet")
1316
def test_pythonnet():
1417
"Python.net integration works as expected"
1518
# Set up CLR

0 commit comments

Comments
 (0)