Skip to content

Commit b3a80d6

Browse files
authored
Update template to use macOS-26 logging. (#187)
1 parent 7084493 commit b3a80d6

2 files changed

Lines changed: 48 additions & 50 deletions

File tree

.github/workflows/ci.yml

Lines changed: 42 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -45,11 +45,7 @@ jobs:
4545
- "windows-app"
4646
- "iOS"
4747
- "android"
48-
python-version: [ "3.10", "3.11", "3.12", "3.13", "3.14" ]
49-
exclude:
50-
# Android doesn't have 3.14 support packages yet
51-
- python-version: "3.14"
52-
backend: "android"
48+
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"]
5349

5450
include:
5551
- runs-on: ubuntu-latest
@@ -112,44 +108,44 @@ jobs:
112108
sudo udevadm trigger --name-match=kvm
113109
114110
steps:
115-
- name: Checkout
116-
uses: actions/checkout@v6.0.3
117-
with:
118-
fetch-depth: 0
119-
120-
- name: Set up Python
121-
uses: actions/setup-python@v6.2.0
122-
if: matrix.python-version != 'system'
123-
with:
124-
python-version: ${{ matrix.python-version }}
125-
allow-prereleases: true
126-
127-
- name: Prepare macOS
128-
# GitHub recommends explicitly selecting the desired Xcode version:
129-
# https://github.com/actions/runner-images/issues/12541#issuecomment-3083850140
130-
# This became a necessity as a result of
131-
# https://github.com/actions/runner-images/issues/12541 and
132-
# https://github.com/actions/runner-images/issues/12751.
133-
if: matrix.runs-on == 'macos-latest'
134-
run: |
135-
sudo xcode-select --switch /Applications/Xcode_16.4.app
136-
137-
- name: Install Dependencies
138-
run: ${{ matrix.pre-command }}
139-
140-
- name: Install Briefcase
141-
uses: beeware/.github/.github/actions/install-briefcase@main
142-
143-
- name: Test App
144-
timeout-minutes: 15
145-
run: briefcase run ${{ matrix.briefcase-target }} --test ${{ matrix.briefcase-run-args }}
146-
147-
- name: Package
148-
run: briefcase package ${{ matrix.briefcase-target }} --update --adhoc-sign
149-
150-
- name: Upload Logs
151-
uses: actions/upload-artifact@v7.0.1
152-
if: failure()
153-
with:
154-
name: build-failure-logs-${{ matrix.backend }}-${{ matrix.python-version }}
155-
path: logs/*
111+
- name: Checkout
112+
uses: actions/checkout@v6.0.3
113+
with:
114+
fetch-depth: 0
115+
116+
- name: Set up Python
117+
uses: actions/setup-python@v6.2.0
118+
if: matrix.python-version != 'system'
119+
with:
120+
python-version: ${{ matrix.python-version }}
121+
allow-prereleases: true
122+
123+
- name: Prepare macOS
124+
# GitHub recommends explicitly selecting the desired Xcode version:
125+
# https://github.com/actions/runner-images/issues/12541#issuecomment-3083850140
126+
# This became a necessity as a result of
127+
# https://github.com/actions/runner-images/issues/12541 and
128+
# https://github.com/actions/runner-images/issues/12751.
129+
if: matrix.runs-on == 'macos-latest'
130+
run: |
131+
sudo xcode-select --switch /Applications/Xcode_16.4.app
132+
133+
- name: Install Dependencies
134+
run: ${{ matrix.pre-command }}
135+
136+
- name: Install Briefcase
137+
uses: beeware/.github/.github/actions/install-briefcase@main
138+
139+
- name: Test App
140+
timeout-minutes: 15
141+
run: briefcase run ${{ matrix.briefcase-target }} --test ${{ matrix.briefcase-run-args }}
142+
143+
- name: Package
144+
run: briefcase package ${{ matrix.briefcase-target }} --update --adhoc-sign
145+
146+
- name: Upload Logs
147+
uses: actions/upload-artifact@v7.0.1
148+
if: failure()
149+
with:
150+
name: build-failure-logs-${{ matrix.backend }}-${{ matrix.python-version }}
151+
path: logs/*

pyproject.toml

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -23,11 +23,14 @@ requires = [
2323
"x-pth-tester",
2424

2525
# Cryptography provides an ABI3 wheel for all desktop platforms and iOS.
26-
"""cryptography; \
26+
# Crptography 49 doesn't publish x86-64 or universal macOS wheels.
27+
"""cryptography < 49.0; \
2728
(platform_system != 'Android' and python_version < '3.15') \
2829
or (platform_system == 'Android' and python_version < '3.14')""",
2930
# lru_dict available everywhere
30-
"lru_dict; python_version < '3.15'",
31+
"""lru_dict; \
32+
(platform_system != 'Android' and python_version < '3.15') \
33+
or (platform_system == 'Android' and python_version < '3.14')""",
3134
# pillow not available anywhere on 3.15, or on Android for 3.14+.
3235
"""pillow; \
3336
(platform_system != 'Android' and python_version < '3.15') \
@@ -60,7 +63,7 @@ requirement_installer_args = [
6063
requires = [
6164
# Provide a source of binary wheels that aren't provided on PyPI.
6265
"rubicon-objc",
63-
"std-nslog~=1.0.3",
66+
"std-nslog~=2.0.0",
6467
]
6568
# support_package = "../Python-Apple-support/dist/Python-3.14-macOS-support.custom.tar.gz"
6669

@@ -119,7 +122,6 @@ requires = [
119122
[tool.briefcase.app.testbed.iOS]
120123
requires = [
121124
"rubicon-objc",
122-
"std-nslog~=1.0.3",
123125
]
124126
min_os_version = "17.0"
125127
# support_package = "../Python-Apple-support/dist/Python-3.14-iOS-support.custom.tar.gz"

0 commit comments

Comments
 (0)