Skip to content

Commit d77dd2a

Browse files
committed
Merge branch 'main' into 3.11
2 parents b4140e8 + 600b9e0 commit d77dd2a

File tree

3 files changed

+35
-26
lines changed

3 files changed

+35
-26
lines changed

.github/workflows/ci.yaml

+4
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,10 @@
11
name: CI
22
on:
33
pull_request:
4+
push:
5+
branches:
6+
- main
7+
- 3.*
48

59
env:
610
FORCE_COLOR: "1"

.github/workflows/release.yaml

+9-6
Original file line numberDiff line numberDiff line change
@@ -55,15 +55,17 @@ jobs:
5555
run: |
5656
PYTHON_VERSION=$(grep "Python version:" support/${{ steps.build-vars.outputs.PYTHON_VER }}/${{ matrix.target }}/VERSIONS | cut -d " " -f 3)
5757
BZIP2_VERSION=$(grep "BZip2:" support/${{ steps.build-vars.outputs.PYTHON_VER }}/${{ matrix.target }}/VERSIONS | cut -d " " -f 2)
58-
XZ_VERSION=$(grep "XZ:" support/${{ steps.build-vars.outputs.PYTHON_VER }}/${{ matrix.target }}/VERSIONS | cut -d " " -f 2)
59-
OPENSSL_VERSION=$(grep "OpenSSL:" support/${{ steps.build-vars.outputs.PYTHON_VER }}/${{ matrix.target }}/VERSIONS | cut -d " " -f 2)
6058
LIBFFI_VERSION=$(grep "libFFI:" support/${{ steps.build-vars.outputs.PYTHON_VER }}/${{ matrix.target }}/VERSIONS | cut -d " " -f 2)
59+
MPDECIMAL_VERSION=$(grep "mpdecimal:" support/${{ steps.build-vars.outputs.PYTHON_VER }}/${{ matrix.target }}/VERSIONS | cut -d " " -f 2)
60+
OPENSSL_VERSION=$(grep "OpenSSL:" support/${{ steps.build-vars.outputs.PYTHON_VER }}/${{ matrix.target }}/VERSIONS | cut -d " " -f 2)
61+
XZ_VERSION=$(grep "XZ:" support/${{ steps.build-vars.outputs.PYTHON_VER }}/${{ matrix.target }}/VERSIONS | cut -d " " -f 2)
6162
6263
echo "PYTHON_VERSION=${PYTHON_VERSION}" | tee -a ${GITHUB_OUTPUT}
6364
echo "BZIP2_VERSION=${BZIP2_VERSION}" | tee -a ${GITHUB_OUTPUT}
64-
echo "XZ_VERSION=${XZ_VERSION}" | tee -a ${GITHUB_OUTPUT}
65-
echo "OPENSSL_VERSION=${OPENSSL_VERSION}" | tee -a ${GITHUB_OUTPUT}
6665
echo "LIBFFI_VERSION=${LIBFFI_VERSION}" | tee -a ${GITHUB_OUTPUT}
66+
echo "MPDECIMAL_VERSION=${MPDECIMAL_VERSION}" | tee -a ${GITHUB_OUTPUT}
67+
echo "OPENSSL_VERSION=${OPENSSL_VERSION}" | tee -a ${GITHUB_OUTPUT}
68+
echo "XZ_VERSION=${XZ_VERSION}" | tee -a ${GITHUB_OUTPUT}
6769
6870
- name: Upload Build Artifact
6971
uses: actions/[email protected]
@@ -95,8 +97,9 @@ jobs:
9597
9698
Includes:
9799
* Python ${{ needs.build.outputs.PYTHON_VERSION }}
98-
* OpenSSL ${{ needs.build.outputs.OPENSSL_VERSION }}
99100
* BZip2 ${{ needs.build.outputs.BZIP2_VERSION }}
101+
* libFFI ${{ needs.build.outputs.LIBFFI_VERSION }}
102+
* mpdecimal ${{ needs.build.outputs.MPDECIMAL_VERSION }}
103+
* OpenSSL ${{ needs.build.outputs.OPENSSL_VERSION }}
100104
* XZ ${{ needs.build.outputs.XZ_VERSION }}
101-
* LibFFI ${{ needs.build.outputs.LIBFFI_VERSION }}
102105
artifacts: "dist/*"

Makefile

+22-20
Original file line numberDiff line numberDiff line change
@@ -13,21 +13,23 @@ BUILD_NUMBER=custom
1313

1414
# Version of packages that will be compiled by this meta-package
1515
# PYTHON_VERSION is the full version number (e.g., 3.10.0b3)
16+
# PYTHON_PKG_VERSION is the version number with binary package releases to use
17+
# for macOS binaries. This will be less than PYTHON_VERSION towards the end
18+
# of a release cycle, as official binaries won't be published.
1619
# PYTHON_MICRO_VERSION is the full version number, without any alpha/beta/rc suffix. (e.g., 3.10.0)
1720
# PYTHON_VER is the major/minor version (e.g., 3.10)
1821
PYTHON_VERSION=3.11.9
22+
PYTHON_PKG_VERSION=$(PYTHON_VERSION)
1923
PYTHON_MICRO_VERSION=$(shell echo $(PYTHON_VERSION) | grep -Eo "\d+\.\d+\.\d+")
24+
PYTHON_PKG_MICRO_VERSION=$(shell echo $(PYTHON_PKG_VERSION) | grep -Eo "\d+\.\d+\.\d+")
2025
PYTHON_VER=$(basename $(PYTHON_VERSION))
2126

2227
# The binary releases of dependencies, published at:
23-
# macOS:
24-
# https://github.com/beeware/cpython-macOS-source-deps/releases
25-
# iOS, tvOS, watchOS:
26-
# https://github.com/beeware/cpython-apple-source-deps/releases
28+
# https://github.com/beeware/cpython-apple-source-deps/releases
2729
BZIP2_VERSION=1.0.8-1
30+
LIBFFI_VERSION=3.4.6-1
2831
MPDECIMAL_VERSION=4.0.0-1
2932
OPENSSL_VERSION=3.0.14-1
30-
LIBFFI_VERSION=3.4.6-1
3133
XZ_VERSION=5.4.7-1
3234

3335
# Supported OS
@@ -105,11 +107,11 @@ downloads/Python-$(PYTHON_VERSION).tar.gz:
105107
curl $(CURL_FLAGS) -o $@ \
106108
https://www.python.org/ftp/python/$(PYTHON_MICRO_VERSION)/Python-$(PYTHON_VERSION).tgz
107109

108-
downloads/python-$(PYTHON_VERSION)-macos11.pkg:
110+
downloads/python-$(PYTHON_PKG_VERSION)-macos11.pkg:
109111
@echo ">>> Download macOS Python package"
110112
mkdir -p downloads
111113
curl $(CURL_FLAGS) -o $@ \
112-
https://www.python.org/ftp/python/$(PYTHON_MICRO_VERSION)/python-$(PYTHON_VERSION)-macos11.pkg
114+
https://www.python.org/ftp/python/$(PYTHON_PKG_MICRO_VERSION)/python-$(PYTHON_PKG_VERSION)-macos11.pkg
113115

114116
###########################################################################
115117
# Build for specified target (from $(TARGETS-*))
@@ -267,10 +269,10 @@ PYTHON_STDLIB-$(target)=$$(PYTHON_INSTALL-$(target))/lib/python$(PYTHON_VER)
267269
$$(PYTHON_SRCDIR-$(target))/configure: \
268270
downloads/Python-$(PYTHON_VERSION).tar.gz \
269271
$$(BZIP2_LIB-$(target)) \
270-
$$(XZ_LIB-$(target)) \
271-
$$(OPENSSL_SSL_LIB-$(target)) \
272+
$$(LIBFFI_LIB-$(target)) \
272273
$$(MPDECIMAL_LIB-$(target)) \
273-
$$(LIBFFI_LIB-$(target))
274+
$$(OPENSSL_SSL_LIB-$(target)) \
275+
$$(XZ_LIB-$(target))
274276
@echo ">>> Unpack and configure Python for $(target)"
275277
mkdir -p $$(PYTHON_SRCDIR-$(target))
276278
tar zxf downloads/Python-$(PYTHON_VERSION).tar.gz --strip-components 1 -C $$(PYTHON_SRCDIR-$(target))
@@ -345,14 +347,14 @@ vars-$(target):
345347
@echo "SDK_ROOT-$(target): $$(SDK_ROOT-$(target))"
346348
@echo "BZIP2_INSTALL-$(target): $$(BZIP2_INSTALL-$(target))"
347349
@echo "BZIP2_LIB-$(target): $$(BZIP2_LIB-$(target))"
348-
@echo "XZ_INSTALL-$(target): $$(XZ_INSTALL-$(target))"
349-
@echo "XZ_LIB-$(target): $$(XZ_LIB-$(target))"
350-
@echo "OPENSSL_INSTALL-$(target): $$(OPENSSL_INSTALL-$(target))"
351-
@echo "OPENSSL_SSL_LIB-$(target): $$(OPENSSL_SSL_LIB-$(target))"
352-
@echo "MPDECIMAL_INSTALL-$(target): $$(MPDECIMAL_INSTALL-$(target))"
353-
@echo "MPDECIMAL_LIB-$(target): $$(MPDECIMAL_LIB-$(target))"
354350
@echo "LIBFFI_INSTALL-$(target): $$(LIBFFI_INSTALL-$(target))"
355351
@echo "LIBFFI_LIB-$(target): $$(LIBFFI_LIB-$(target))"
352+
@echo "MPDECIMAL_INSTALL-$(target): $$(MPDECIMAL_INSTALL-$(target))"
353+
@echo "MPDECIMAL_LIB-$(target): $$(MPDECIMAL_LIB-$(target))"
354+
@echo "OPENSSL_INSTALL-$(target): $$(OPENSSL_INSTALL-$(target))"
355+
@echo "OPENSSL_SSL_LIB-$(target): $$(OPENSSL_SSL_LIB-$(target))"
356+
@echo "XZ_INSTALL-$(target): $$(XZ_INSTALL-$(target))"
357+
@echo "XZ_LIB-$(target): $$(XZ_LIB-$(target))"
356358
@echo "PYTHON_SRCDIR-$(target): $$(PYTHON_SRCDIR-$(target))"
357359
@echo "PYTHON_INSTALL-$(target): $$(PYTHON_INSTALL-$(target))"
358360
@echo "PYTHON_FRAMEWORK-$(target): $$(PYTHON_FRAMEWORK-$(target))"
@@ -531,15 +533,15 @@ ifeq ($(os),macOS)
531533
PYTHON_FRAMEWORK-$(os)=$$(PYTHON_INSTALL-$(sdk))/Python.framework
532534

533535
$$(PYTHON_XCFRAMEWORK-$(os))/Info.plist: \
534-
downloads/python-$(PYTHON_VERSION)-macos11.pkg
536+
downloads/python-$(PYTHON_PKG_VERSION)-macos11.pkg
535537
@echo ">>> Repackage macOS package as XCFramework"
536538

537539
# Unpack .pkg file. It turns out .pkg files are readable by tar... although
538540
# their internal format is a bit of a mess. From tar's perspective, the .pkg
539541
# is a tarball that contains additional tarballs; the inner tarball has the
540542
# "payload" that is the framework.
541543
mkdir -p build/macOS/macosx/python-$(PYTHON_VERSION)
542-
tar zxf downloads/python-$(PYTHON_VERSION)-macos11.pkg -C build/macOS/macosx/python-$(PYTHON_VERSION)
544+
tar zxf downloads/python-$(PYTHON_PKG_VERSION)-macos11.pkg -C build/macOS/macosx/python-$(PYTHON_VERSION)
543545

544546
# Unpack payload inside .pkg file
545547
mkdir -p $$(PYTHON_FRAMEWORK-macosx)
@@ -604,10 +606,10 @@ $$(PYTHON_XCFRAMEWORK-$(os))/Info.plist: \
604606
echo "Build: $(BUILD_NUMBER)" >> support/$(PYTHON_VER)/$(os)/VERSIONS
605607
echo "Min $(os) version: $$(VERSION_MIN-$(os))" >> support/$(PYTHON_VER)/$(os)/VERSIONS
606608
echo "---------------------" >> support/$(PYTHON_VER)/$(os)/VERSIONS
607-
echo "libFFI: $(LIBFFI_VERSION)" >> support/$(PYTHON_VER)/$(os)/VERSIONS
608609
echo "BZip2: $(BZIP2_VERSION)" >> support/$(PYTHON_VER)/$(os)/VERSIONS
609-
echo "OpenSSL: $(OPENSSL_VERSION)" >> support/$(PYTHON_VER)/$(os)/VERSIONS
610+
echo "libFFI: $(LIBFFI_VERSION)" >> support/$(PYTHON_VER)/$(os)/VERSIONS
610611
echo "mpdecimal: $(MPDECIMAL_VERSION)" >> support/$(PYTHON_VER)/$(os)/VERSIONS
612+
echo "OpenSSL: $(OPENSSL_VERSION)" >> support/$(PYTHON_VER)/$(os)/VERSIONS
611613
echo "XZ: $(XZ_VERSION)" >> support/$(PYTHON_VER)/$(os)/VERSIONS
612614

613615
dist/Python-$(PYTHON_VER)-$(os)-support.$(BUILD_NUMBER).tar.gz: \

0 commit comments

Comments
 (0)