From 7dcb4ca95bfde3cfca3a9f0a7e933f1d17cc4836 Mon Sep 17 00:00:00 2001 From: Osyotr Date: Fri, 18 Oct 2024 08:25:41 +0300 Subject: [PATCH] [python3] Update port to 3.11.10, tools to 3.12.7 (#41232) --- ports/python3/portfile.cmake | 4 ++-- ports/python3/vcpkg.json | 3 +-- ports/vcpkg-get-python-packages/vcpkg.json | 2 +- .../x_vcpkg_get_python_packages.cmake | 13 +++++-------- .../vcpkg_find_acquire_program(PYTHON3).cmake | 18 +++++++++++++----- scripts/vcpkgTools.xml | 16 ++++++++-------- versions/baseline.json | 6 +++--- versions/p-/python3.json | 5 +++++ versions/v-/vcpkg-get-python-packages.json | 5 +++++ 9 files changed, 43 insertions(+), 29 deletions(-) diff --git a/ports/python3/portfile.cmake b/ports/python3/portfile.cmake index 414a4244f7..7da8fa9bd1 100644 --- a/ports/python3/portfile.cmake +++ b/ports/python3/portfile.cmake @@ -86,8 +86,8 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO python/cpython - REF v${PYTHON_VERSION} - SHA512 c2ebe72ce53dd2d59750a7b0bdaf15ebb7ecb6f67d2913a457bf5d32bd0f640815f9496f2fa3ebeac0722264d000735d90d3ffaeac2de1f066b7aee994bf9b24 + REF v${VERSION} + SHA512 411f43495943b8aeec287d4339bac6beb6a7224b0844cc4d48188b208fbbbc6404ad031b6e7a3bed0900baf972c4536a54f4da1ab39202f4f405a188ca04ae07 HEAD_REF master PATCHES ${PATCHES} ) diff --git a/ports/python3/vcpkg.json b/ports/python3/vcpkg.json index 8918f1d921..50b1b51d2a 100644 --- a/ports/python3/vcpkg.json +++ b/ports/python3/vcpkg.json @@ -1,7 +1,6 @@ { "name": "python3", - "version": "3.11.8", - "port-version": 5, + "version": "3.11.10", "description": "The Python programming language", "homepage": "https://github.com/python/cpython", "license": "Python-2.0", diff --git a/ports/vcpkg-get-python-packages/vcpkg.json b/ports/vcpkg-get-python-packages/vcpkg.json index 8d7870ca00..4590bd8cde 100644 --- a/ports/vcpkg-get-python-packages/vcpkg.json +++ b/ports/vcpkg-get-python-packages/vcpkg.json @@ -1,6 +1,6 @@ { "name": "vcpkg-get-python-packages", - "version-date": "2024-01-24", + "version-date": "2024-09-29", "documentation": "https://learn.microsoft.com/en-us/vcpkg/maintainers/functions/vcpkg_get_python_packages", "license": "MIT", "supports": "native" diff --git a/ports/vcpkg-get-python-packages/x_vcpkg_get_python_packages.cmake b/ports/vcpkg-get-python-packages/x_vcpkg_get_python_packages.cmake index fdda6cfe80..73e9bc049f 100644 --- a/ports/vcpkg-get-python-packages/x_vcpkg_get_python_packages.cmake +++ b/ports/vcpkg-get-python-packages/x_vcpkg_get_python_packages.cmake @@ -18,10 +18,6 @@ function(x_vcpkg_get_python_packages) endif() endif() - if(arg_PYTHON_VERSION STREQUAL "3") - set(PYTHON_VERSION_MINOR 11) - endif() - if(NOT DEFINED arg_OUT_PYTHON_VAR) set(arg_OUT_PYTHON_VAR "PYTHON${arg_PYTHON_VERSION}") endif() @@ -42,8 +38,8 @@ function(x_vcpkg_get_python_packages) vcpkg_from_github( OUT_SOURCE_PATH PYFILE_PATH REPO pypa/get-pip - REF 38e54e5de07c66e875c11a1ebbdb938854625dd8 #2022-03-07 - SHA512 431a9f66618a2f251db3a8c3311e7fc3af3ff7364ec1d14a99f1b9c237646b6146cef8b9471d83e1086dba2ed448bccc48d99b2bb375e4235d78e76d9970d3e5 + REF 24.2 + SHA512 7bcbc841564b7fc3cd2c109b9d3cfd34d853508edc9e040e9615fc0f9f18f74c7826d53671f65fa1abda3fd29a0a3f9f6114d9e9bdd6d120175ac207fd7ce321 ) vcpkg_execute_required_process(COMMAND "${arg_PYTHON_EXECUTABLE}" "${PYFILE_PATH}/public/get-pip.py" --no-warn-script-location WORKING_DIRECTORY "${CURRENT_BUILDTREES_DIR}" @@ -75,8 +71,9 @@ function(x_vcpkg_get_python_packages) file(MAKE_DIRECTORY "${python_dir}/DLLs") set(python_sub_path /Scripts) set(python_venv virtualenv) - if(EXISTS "${python_dir}/python3${PYTHON_VERSION_MINOR}.zip") - file(COPY "${python_dir}/python3${PYTHON_VERSION_MINOR}.zip" DESTINATION "${venv_path}/Scripts") + file(GLOB python_zipped_stdlib "${python_dir}/python3*.zip") + if(python_zipped_stdlib) + file(COPY ${python_zipped_stdlib} DESTINATION "${venv_path}/Scripts") endif() set(python_venv_options "--app-data" "${venv_path}/data") else() diff --git a/scripts/cmake/vcpkg_find_acquire_program(PYTHON3).cmake b/scripts/cmake/vcpkg_find_acquire_program(PYTHON3).cmake index cd2d4e4a07..e740918567 100644 --- a/scripts/cmake/vcpkg_find_acquire_program(PYTHON3).cmake +++ b/scripts/cmake/vcpkg_find_acquire_program(PYTHON3).cmake @@ -1,6 +1,6 @@ if(CMAKE_HOST_WIN32) set(program_name python) - set(program_version 3.11.8) + set(program_version 3.12.7) if(DEFINED ENV{PROCESSOR_ARCHITEW6432}) set(build_arch $ENV{PROCESSOR_ARCHITEW6432}) else() @@ -8,23 +8,31 @@ if(CMAKE_HOST_WIN32) endif() if(build_arch MATCHES "^(ARM|arm)64$") set(tool_subdirectory "python-${program_version}-arm64") + # https://www.python.org/ftp/python/3.12.7/python-3.12.7-embed-arm64.zip set(download_urls "https://www.python.org/ftp/python/${program_version}/python-${program_version}-embed-arm64.zip") set(download_filename "python-${program_version}-embed-arm64.zip") - set(download_sha512 42b820e34c4a77fe928e0af395292d804dcbf7e1132cf353ce6ce23435a687ec580f03ccbf3cd94d98c9dc5ac951f8ca64dbd65cded7ef1d675a39d63f8ace8d) + set(download_sha512 D1D1183682D20AC057C45BF2AD264B6568CDEB54A1502823C76A2448386CAEF79A3AB9EA8FF57A5C023D432590FCCB5E3E9980F8760CD9BAAC5A2A82BA240D73) elseif(build_arch MATCHES "(amd|AMD)64") set(tool_subdirectory "python-${program_version}-x64") + # https://www.python.org/ftp/python/3.12.7/python-3.12.7-embed-amd64.zip set(download_urls "https://www.python.org/ftp/python/${program_version}/python-${program_version}-embed-amd64.zip") set(download_filename "python-${program_version}-embed-amd64.zip") - set(download_sha512 da5f01e94d3505eebdfd4d2e70d9cf494925199024479cc29ef144567906b2e8ad55a855b199a755318f5fb9a260f21b987a5fc85f31acf631af4b677921251d) + set(download_sha512 2F67A8487A9EDECE26B73AAB27E75249E538938AD976D371A9411B54DBAE20AFEAC82B406AD4EEEE38B1CF6F407E7620679D30C0FFF82EC8E8AE62268C322D59) else() set(tool_subdirectory "python-${program_version}-x86") + # https://www.python.org/ftp/python/3.12.7/python-3.12.7-embed-win32.zip set(download_urls "https://www.python.org/ftp/python/${program_version}/python-${program_version}-embed-win32.zip") set(download_filename "python-${program_version}-embed-win32.zip") - set(download_sha512 c88ef02f0860000dbc59361cfe051e3e8dc7d208ed39bb5bc20a3e8b8711b578926e281a11941787ea61b2ef05b945ab3133322dcb85b916f79ac4ada57f6309) + set(download_sha512 15542080E0CC25C574391218107FE843006E8C5A7161D1CD48CF14A3C47155C0244587273D9C747F35B15EA17676869ECCE079214824214C1A62ABFC86AD9F9B) endif() set(paths_to_search "${DOWNLOADS}/tools/python/${tool_subdirectory}") - vcpkg_list(SET post_install_command "${CMAKE_COMMAND}" -E rm python311._pth) + + # We want to be able to import stuff from outside of this embeddable package. + # https://docs.python.org/3/library/sys_path_init.html#pth-files + string(REGEX MATCH "^3\\.[0-9]+" _python_version_plain "${program_version}") + string(REPLACE "." "" _python_version_plain "${_python_version_plain}") + vcpkg_list(SET post_install_command "${CMAKE_COMMAND}" -E rm "python${_python_version_plain}._pth") else() set(program_name python3) set(brew_package_name "python") diff --git a/scripts/vcpkgTools.xml b/scripts/vcpkgTools.xml index 81f990cd17..f5be75dc68 100644 --- a/scripts/vcpkgTools.xml +++ b/scripts/vcpkgTools.xml @@ -1,18 +1,18 @@ - 3.11.8 + 3.12.7 python.exe - https://www.python.org/ftp/python/3.11.8/python-3.11.8-embed-win32.zip - c88ef02f0860000dbc59361cfe051e3e8dc7d208ed39bb5bc20a3e8b8711b578926e281a11941787ea61b2ef05b945ab3133322dcb85b916f79ac4ada57f6309 - python-3.11.8-embed-win32.zip + https://www.python.org/ftp/python/3.12.7/python-3.12.7-embed-win32.zip + 15542080e0cc25c574391218107fe843006e8c5a7161d1cd48cf14a3c47155c0244587273d9c747f35b15ea17676869ecce079214824214c1a62abfc86ad9f9b + python-3.12.7-embed-win32.zip - 3.11.8 + 3.12.7 tools\python.exe - https://www.nuget.org/api/v2/package/python/3.11.8 - 8c1abd622fb2795fb87ab5208764fe13f7f4d69f2283b4237ea47b7c14b0989b5b4169f1ac1d3b1f417c6c2cc3d85ce151370dae8efc807c93e57cd67fa3c8cf - python-3.11.8.nupkg.zip + https://www.nuget.org/api/v2/package/python/3.12.7 + 6d5cac329808e31d4d8d593da6eeaa9ea4ec0296679335e7b7811f6c6fa6cbb96948d2f7845071798c6f73f83852dd731dc2b0fda48c520b9bec8a86cc56134e + python-3.12.7.nupkg.zip 3.30.1 diff --git a/versions/baseline.json b/versions/baseline.json index cf51c57dba..9a461ea8bd 100644 --- a/versions/baseline.json +++ b/versions/baseline.json @@ -7261,8 +7261,8 @@ "port-version": 7 }, "python3": { - "baseline": "3.11.8", - "port-version": 5 + "baseline": "3.11.10", + "port-version": 0 }, "qca": { "baseline": "2.3.7", @@ -9301,7 +9301,7 @@ "port-version": 0 }, "vcpkg-get-python-packages": { - "baseline": "2024-01-24", + "baseline": "2024-09-29", "port-version": 0 }, "vcpkg-gfortran": { diff --git a/versions/p-/python3.json b/versions/p-/python3.json index 84dabbd288..9455c9434c 100644 --- a/versions/p-/python3.json +++ b/versions/p-/python3.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "62c1ff180dae6af1ba4aff966bd87f9683c6d8f1", + "version": "3.11.10", + "port-version": 0 + }, { "git-tree": "cd869d19271e7b865248145bb3e14093faa1b687", "version": "3.11.8", diff --git a/versions/v-/vcpkg-get-python-packages.json b/versions/v-/vcpkg-get-python-packages.json index 7733d85484..d375b4b185 100644 --- a/versions/v-/vcpkg-get-python-packages.json +++ b/versions/v-/vcpkg-get-python-packages.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "c7d017ccabcaf02739662b60cc1000b8489acb22", + "version-date": "2024-09-29", + "port-version": 0 + }, { "git-tree": "9205135e78e0cad47fd43c2f7abada1f4fbbdbaa", "version-date": "2024-01-24",