diff --git a/CHANGELOG.md b/CHANGELOG.md index c8467618c2a285b8c973701007011eb8f6ed3e0e..bc463f75d37554fee46b5a7dab00f2bc96207d50 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ # Python Buildpack Changelog +## v93 + +Improved support for PyPy. + ## v92 Improved cache functionality and fix egg-links regression. diff --git a/bin/steps/pip-install b/bin/steps/pip-install index ffea9130ae32ee0e6ab74872e90f3bce546a0a7b..50a029f93b81e94e6dc52202621aa47963b50ff8 100755 --- a/bin/steps/pip-install +++ b/bin/steps/pip-install @@ -1,13 +1,17 @@ # Install dependencies with Pip. puts-cmd "pip install -r requirements.txt" +set +e # rewrite any existing egg links to point to the build dir so pip does not fail with a mismatch error find .heroku/python/lib/python*/site-packages/ -name "*.egg-link" -print0 | xargs -r -0 -n 1 sed -i -e "s#/app/#$(pwd)/#" find .heroku/python/lib/python*/site-packages/ -name "*.pth" -print0 | xargs -r -0 -n 1 sed -i -e "s#/app/#/$(pwd)/#" +set -e +set +e # Support for PyPy find .heroku/python/lib-python/*/site-packages/ -name "*.egg-link" -print0 | xargs -r -0 -n 1 sed -i -e "s#/app/#$(pwd)/#" find .heroku/python/lib-python/*/site-packages/ -name "*.pth" -print0 | xargs -r -0 -n 1 sed -i -e "s#/app/#/$(pwd)/#" +set -e [ ! "$FRESH_PYTHON" ] && bpwatch start pip_install [ "$FRESH_PYTHON" ] && bpwatch start pip_install_first @@ -31,13 +35,16 @@ cp requirements.txt .heroku/python/requirements-declared.txt [ ! "$FRESH_PYTHON" ] && bpwatch stop pip_install [ "$FRESH_PYTHON" ] && bpwatch stop pip_install_first +set +e # rewrite build dir in egg links to /app so things are found at runtime find .heroku/python/lib/python*/site-packages/ -name "*.egg-link" -print0 | xargs -r -0 -n 1 sed -i -e "s#$(pwd)/#/app/#" find .heroku/python/lib/python*/site-packages/ -name "*.pth" -print0 | xargs -r -0 -n 1 sed -i -e "s#$(pwd)/#/app/#" +set -e +set +e # Support for PyPy find .heroku/python/lib-python/*/site-packages/ -name "*.egg-link" -print0 | xargs -r -0 -n 1 sed -i -e "s#$(pwd)/#/app/#" find .heroku/python/lib-python/*/site-packages/ -name "*.pth" -print0 | xargs -r -0 -n 1 sed -i -e "s#$(pwd)/#/app/#" - +set -e echo