mirror of
https://github.com/pyenv/pyenv.git
synced 2025-11-08 11:33:49 -05:00
Compare commits
8 Commits
yy-no-real
...
v2.3.5
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
bb0f2ae1a7 | ||
|
|
ea6085e3f3 | ||
|
|
2c2619a49e | ||
|
|
1f526edbdd | ||
|
|
8b226c9679 | ||
|
|
f3521e88be | ||
|
|
5b08a6492b | ||
|
|
d722f059a0 |
83
.travis.yml
83
.travis.yml
@@ -1,83 +0,0 @@
|
||||
# Two types of tests:
|
||||
#
|
||||
# 1. shell tests run using bats
|
||||
# 2. build tests also run using bats
|
||||
#
|
||||
# Shell tests are run unconditionally on Linux (see jobs.include).
|
||||
#
|
||||
# Build tests can be skipped by starting the commit message with
|
||||
# '[skip build]'.
|
||||
#
|
||||
# Build tests are run on platforms generated from all combinations
|
||||
# of keys below.
|
||||
language: c
|
||||
|
||||
os:
|
||||
- linux
|
||||
- osx
|
||||
|
||||
dist:
|
||||
- focal
|
||||
|
||||
# https://docs.travis-ci.com/user/reference/osx/#macos-version
|
||||
osx_image:
|
||||
- xcode9.4.1 # macOS 10.13.6
|
||||
- xcode10.3 # macOS 10.14.4
|
||||
- xcode11.6 # macOS 10.15.7
|
||||
- xcode12.2 # macOS 10.15.7
|
||||
|
||||
env:
|
||||
- PYTHON_BUILD_VERSION=3.9.1
|
||||
- PYTHON_BUILD_VERSION=3.7.5
|
||||
|
||||
before_install:
|
||||
- date +%Y-%m-%dT%H:%M:%S
|
||||
|
||||
install: git clone --depth 1 --branch v1.2.0 https://github.com/bats-core/bats-core.git bats
|
||||
|
||||
# Default for auto-generated jobs.
|
||||
script: make test-build
|
||||
|
||||
jobs:
|
||||
include:
|
||||
# Shell-based tests should execute every time.
|
||||
- stage: test shell
|
||||
script: make test
|
||||
env: PYENV_NATIVE_EXT=1
|
||||
after_script: []
|
||||
os: linux
|
||||
- stage: test shell
|
||||
script: make test
|
||||
env: PYENV_NATIVE_EXT=
|
||||
after_script: []
|
||||
os: linux
|
||||
|
||||
exclude:
|
||||
# For each osx_image but one there should be an entry in the exclude
|
||||
# list, to prevent duplicate Linux builds.
|
||||
- os: linux
|
||||
osx_image: xcode9.4
|
||||
- os: linux
|
||||
osx_image: xcode10
|
||||
|
||||
allow_failures:
|
||||
- env: PYTHON_BUILD_VERSION=3.9.1
|
||||
|
||||
stages:
|
||||
- test shell
|
||||
- name: test
|
||||
if: NOT (commit_message =~ /^\[skip build\]/)
|
||||
|
||||
# Default
|
||||
|
||||
notifications:
|
||||
email:
|
||||
on_success: never
|
||||
|
||||
deploy:
|
||||
provider: releases
|
||||
api_key:
|
||||
secure: FLWevL09KYp7V1SjJUNEdWzuomuocXwNvPr1DSAFH7mmrjKTtjzwrjINAthSqzjlDrs5B//P47l1VLyHp5byEzy673W+bOmEg8swmqc7E9FrHLRyEByd/yca3DzkZgXEXgGdY/cl7tHhM4V2fYKEgAIWbFV+takmTFMK4WkEtNg=
|
||||
on:
|
||||
repo: pyenv/pyenv
|
||||
tags: true
|
||||
13
CHANGELOG.md
13
CHANGELOG.md
@@ -1,5 +1,18 @@
|
||||
## Version History
|
||||
|
||||
## Release 2.3.5
|
||||
|
||||
* Add CPython 3.10.7 (#2454)
|
||||
* Docs: update Fish PATH update (#2449)
|
||||
* Add CPython 3.7.14, 3.8.14 and 3.9.14 (#2456)
|
||||
* Update miniconda3-3.9-4.12.0 (#2460)
|
||||
* Add CPython 3.11.0rc2 (#2459)
|
||||
* Add patches for 3.7.14 to support Apple Silicon (#2463)
|
||||
* Add ability to skip all use of Homebrew (#2464)
|
||||
* Drop Travis integration (#2468)
|
||||
* Build CPython 3.12+ with --with-dsymutil in MacOS (#2471)
|
||||
* Add Pyston 2.3.5 (#2476)
|
||||
|
||||
## Release 2.3.4
|
||||
|
||||
* Add CPython 3.11.0rc1 (#2434)
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
set -e
|
||||
[ -n "$PYENV_DEBUG" ] && set -x
|
||||
|
||||
version="2.3.4"
|
||||
version="2.3.5"
|
||||
git_revision=""
|
||||
|
||||
if cd "${BASH_SOURCE%/*}" 2>/dev/null && git remote -v 2>/dev/null | grep -q pyenv; then
|
||||
|
||||
@@ -779,6 +779,7 @@ build_package_standard_build() {
|
||||
else
|
||||
use_homebrew_zlib || true
|
||||
fi
|
||||
use_dsymutil || true
|
||||
fi
|
||||
|
||||
( if [ "${CFLAGS+defined}" ] || [ "${!PACKAGE_CFLAGS+defined}" ]; then
|
||||
@@ -1626,6 +1627,16 @@ use_tcltk() {
|
||||
fi
|
||||
}
|
||||
|
||||
# Since 3.12, CPython can add DWARF debug information in MacOS
|
||||
# using Apple's nonstandard way, `dsymutil', that creates a "dSYM bundle"
|
||||
# that's supposed to be installed alongside executables
|
||||
# (https://github.com/python/cpython/issues/95973).
|
||||
use_dsymutil() {
|
||||
if [[ -n "$PYTHON_BUILD_CONFIGURE_WITH_DSYMUTIL" ]] && is_mac; then
|
||||
package_option python configure --with-dsymutil
|
||||
fi
|
||||
}
|
||||
|
||||
build_package_enable_shared() {
|
||||
package_option python configure --enable-shared
|
||||
}
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
prefer_openssl11
|
||||
export PYTHON_BUILD_CONFIGURE_WITH_OPENSSL=1
|
||||
export PYTHON_BUILD_CONFIGURE_WITH_DSYMUTIL=1
|
||||
install_package "openssl-1.1.1k" "https://www.openssl.org/source/openssl-1.1.1k.tar.gz#892a0875b9872acd04a9fde79b1f943075d5ea162415de3047c327df33fbaee5" mac_openssl --if has_broken_mac_openssl
|
||||
install_package "readline-8.0" "https://ftpmirror.gnu.org/readline/readline-8.0.tar.gz#e339f51971478d369f8a053a330a190781acb9864cf4c541060f12078948e461" mac_readline --if has_broken_mac_readline
|
||||
install_git "Python-3.12-dev" "https://github.com/python/cpython" main standard verify_py312 copy_python_gdb ensurepip
|
||||
|
||||
@@ -0,0 +1,30 @@
|
||||
From 245427d207ee88a4ba26a66c3de350bcbcc036f2 Mon Sep 17 00:00:00 2001
|
||||
From: Ronald Oussoren <ronaldoussoren@mac.com>
|
||||
Date: Sat, 14 Nov 2020 16:07:47 +0100
|
||||
Subject: [PATCH] bpo-42351: Avoid error when opening header with non-UTF8
|
||||
encoding (GH-23279)
|
||||
|
||||
grep_headers_for() would error out when a header contained
|
||||
text that cannot be interpreted as UTF-8.
|
||||
|
||||
cherry-picked from 7a27c7ed4b by Pedro Fonini <fonini@ip.tv>
|
||||
---
|
||||
setup.py | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/setup.py b/setup.py
|
||||
index f211989aac..467362813d 100644
|
||||
--- a/setup.py
|
||||
+++ b/setup.py
|
||||
@@ -159,7 +159,7 @@ def is_macosx_sdk_path(path):
|
||||
|
||||
def grep_headers_for(function, headers):
|
||||
for header in headers:
|
||||
- with open(header, 'r') as f:
|
||||
+ with open(header, 'r', errors='surrogateescape') as f:
|
||||
if function in f.read():
|
||||
return True
|
||||
return False
|
||||
--
|
||||
2.34.1
|
||||
|
||||
23
plugins/python-build/share/python-build/pyston-2.3.5
Normal file
23
plugins/python-build/share/python-build/pyston-2.3.5
Normal file
@@ -0,0 +1,23 @@
|
||||
# sha256sum used for checksum values
|
||||
|
||||
# version of pyston
|
||||
VER='2.3.5'
|
||||
# alias for download location
|
||||
DOWNLOAD='https://github.com/pyston/pyston/releases/download'
|
||||
|
||||
case "$(pyston_architecture 2>/dev/null || true)" in
|
||||
"linux64" )
|
||||
install_package "pyston_${VER}_portable_amd64" "${DOWNLOAD}/pyston_${VER}/pyston_${VER}_portable_amd64.tar.gz#c71c711d60a9c18f243a9e30fd35e0818674ae96f534c67c27b0cdfbc9132ef8" "pyston" verify_py38 get_pip
|
||||
;;
|
||||
"linux-aarch64" )
|
||||
install_package "pyston_${VER}_portable_arm64" "${DOWNLOAD}/pyston_${VER}/pyston_${VER}_portable_arm64.tar.gz#c578cb806c62d9dca8728f190a87e172305bd80887e206df42c4c5658ab469c1" "pyston" verify_py38 get_pip
|
||||
;;
|
||||
* )
|
||||
{ echo
|
||||
colorize 1 "ERROR"
|
||||
echo ": A Pyston ${VER} binary is not available for $(pyston_architecture 2>/dev/null || true)."
|
||||
echo
|
||||
} >&2
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
@@ -515,14 +515,41 @@ make install DOGE="such wow"
|
||||
OUT
|
||||
}
|
||||
|
||||
@test "setting MAKE_INSTALL_OPTS to a multi-word string" {
|
||||
@test "configuring with dSYM in MacOS" {
|
||||
cached_tarball "Python-3.6.2"
|
||||
|
||||
for i in {1..8}; do stub uname '-s : echo Linux'; done
|
||||
for i in {1..9}; do stub uname '-s : echo Darwin'; done
|
||||
for i in {1..2}; do stub sw_vers '-productVersion : echo 1010'; done
|
||||
for i in {1..4}; do stub brew false; done
|
||||
stub_make_install
|
||||
|
||||
export MAKE_INSTALL_OPTS="DOGE=\"such wow\""
|
||||
run_inline_definition <<DEF
|
||||
export PYTHON_BUILD_CONFIGURE_WITH_DSYMUTIL=1
|
||||
install_package "Python-3.6.2" "http://python.org/ftp/python/3.6.2/Python-3.6.2.tar.gz"
|
||||
DEF
|
||||
assert_success
|
||||
|
||||
unstub sw_vers
|
||||
unstub uname
|
||||
unstub brew
|
||||
unstub make
|
||||
|
||||
assert_build_log <<OUT
|
||||
Python-3.6.2: CPPFLAGS="-I${TMP}/install/include " LDFLAGS="-L${TMP}/install/lib "
|
||||
Python-3.6.2: --prefix=$INSTALL_ROOT --libdir=${TMP}/install/lib --with-dsymutil
|
||||
make -j 2
|
||||
make install
|
||||
OUT
|
||||
}
|
||||
|
||||
@test "configuring with dSYM has no effect in non-MacOS" {
|
||||
cached_tarball "Python-3.6.2"
|
||||
|
||||
for i in {1..9}; do stub uname '-s : echo Linux'; done
|
||||
stub_make_install
|
||||
|
||||
run_inline_definition <<DEF
|
||||
export PYTHON_BUILD_CONFIGURE_WITH_DSYMUTIL=1
|
||||
install_package "Python-3.6.2" "http://python.org/ftp/python/3.6.2/Python-3.6.2.tar.gz"
|
||||
DEF
|
||||
assert_success
|
||||
@@ -532,9 +559,41 @@ DEF
|
||||
|
||||
assert_build_log <<OUT
|
||||
Python-3.6.2: CPPFLAGS="-I${TMP}/install/include " LDFLAGS="-L${TMP}/install/lib "
|
||||
Python-3.6.2: --prefix=$INSTALL_ROOT --libdir=$INSTALL_ROOT/lib
|
||||
Python-3.6.2: --prefix=$INSTALL_ROOT --libdir=${TMP}/install/lib
|
||||
make -j 2
|
||||
make install DOGE="such wow"
|
||||
make install
|
||||
OUT
|
||||
}
|
||||
|
||||
@test "tcl-tk is not linked from Homebrew when explicitly defined" {
|
||||
cached_tarball "Python-3.6.2"
|
||||
|
||||
# python build
|
||||
tcl_tk_version_long="8.6.10"
|
||||
tcl_tk_version="${tcl_tk_version_long%.*}"
|
||||
|
||||
for i in {1..8}; do stub uname '-s : echo Darwin'; done
|
||||
for i in {1..2}; do stub sw_vers '-productVersion : echo 1010'; done
|
||||
|
||||
for i in {1..4}; do stub brew false; done
|
||||
stub_make_install
|
||||
|
||||
export PYTHON_CONFIGURE_OPTS="--with-tcltk-libs='-L${TMP}/custom-tcl-tk/lib -ltcl$tcl_tk_version -ltk$tcl_tk_version'"
|
||||
run_inline_definition <<DEF
|
||||
install_package "Python-3.6.2" "http://python.org/ftp/python/3.6.2/Python-3.6.2.tar.gz"
|
||||
DEF
|
||||
assert_success
|
||||
|
||||
unstub uname
|
||||
unstub sw_vers
|
||||
unstub brew
|
||||
unstub make
|
||||
|
||||
assert_build_log <<OUT
|
||||
Python-3.6.2: CPPFLAGS="-I${TMP}/install/include " LDFLAGS="-L${TMP}/install/lib "
|
||||
Python-3.6.2: --prefix=$INSTALL_ROOT --libdir=$INSTALL_ROOT/lib --with-tcltk-libs=-L${TMP}/custom-tcl-tk/lib -ltcl8.6 -ltk8.6
|
||||
make -j 2
|
||||
make install
|
||||
OUT
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user