From 9d3639685a5a0081cb0925177a6ce1130fabbe6b Mon Sep 17 00:00:00 2001 From: Casey Faist Date: Wed, 3 Apr 2019 09:12:44 -0700 Subject: [PATCH] add new python and update default --- CHANGELOG.md | 6 +++++- bin/default_pythons | 2 +- builds/runtimes/python-3.7.3 | 32 ++++++++++++++++++++++++++++++++ 3 files changed, 38 insertions(+), 2 deletions(-) create mode 100755 builds/runtimes/python-3.7.3 diff --git a/CHANGELOG.md b/CHANGELOG.md index 9c1c7c5..a9c0805 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,10 @@ # Python Buildpack Changelog -# 151 (2019-03-) +# 152 (2019-04-02) + +Python 3.7.3 now available. + +# 151 (2019-03-21) Python 3.5.7 and 3.4.10 now available on all Heroku stacks. diff --git a/bin/default_pythons b/bin/default_pythons index dbdb106..db3b6d0 100755 --- a/bin/default_pythons +++ b/bin/default_pythons @@ -2,7 +2,7 @@ DEFAULT_PYTHON_VERSION="python-3.6.8" LATEST_36="python-3.6.8" -LATEST_37="python-3.7.2" +LATEST_37="python-3.7.3" LATEST_35="python-3.5.7" LATEST_34="python-3.4.10" LATEST_27="python-2.7.16" diff --git a/builds/runtimes/python-3.7.3 b/builds/runtimes/python-3.7.3 new file mode 100755 index 0000000..4254362 --- /dev/null +++ b/builds/runtimes/python-3.7.3 @@ -0,0 +1,32 @@ +#!/usr/bin/env bash +# Build Path: /app/.heroku/python/ + +OUT_PREFIX=$1 +BIN_DIR="$(cd "$(dirname "$0")"/../.. || exit; pwd)/bin" +export BIN_DIR + +# shellcheck source=bin/utils +source "$BIN_DIR/steps/sqlite3" + +sqlite3_version +echo "Setting up SQLite3 Headers for $SQLITE3_VERSION" +sqlite3_install "$OUT_PREFIX" "$SQLITE3_VERSION" 1 + +echo "Building Python…" +SOURCE_TARBALL='https://python.org/ftp/python/3.7.3/Python-3.7.3.tgz' +curl -L $SOURCE_TARBALL | tar xz +mv Python-3.7.3 src +cd src + +./configure --prefix=$OUT_PREFIX --with-ensurepip=no +make +make install + +# Remove unneeded test directories, similar to the official Docker Python images: +# https://github.com/docker-library/python +find "${OUT_PREFIX}" \( -type d -a \( -name test -o -name tests \) \) -exec rm -rf '{}' + + +# Remove spare / +LOCATION=${OUT_PREFIX%?} + +ln $LOCATION/bin/python3 $LOCATION/bin/python