diff --git a/README.md b/README.md
index 7a53f1aa48eb27bbc04cfbf73ebe38655b8e4895..3c468fdf1d2d2809f35046eafa3f7c19f8c3ceb5 100644
--- a/README.md
+++ b/README.md
@@ -21,12 +21,12 @@ Deploying a Python application couldn't be easier:
     $ git push heroku master
     ...
     -----> Python app detected
-    -----> Installing python-2.7.11
+    -----> Installing python-2.7.12
          $ pip install -r requirements.txt
            Collecting requests (from -r requirements.txt (line 1))
-             Downloading requests-2.9.1-py2.py3-none-any.whl (501kB)
+             Downloading requests-2.10.0-py2.py3-none-any.whl (501kB)
            Installing collected packages: requests
-           Successfully installed requests-2.9.1
+           Successfully installed requests-2.10.0
            
     -----> Discovering process types
            Procfile declares types -> (none)
@@ -44,12 +44,12 @@ Specify a Python Runtime
 Specific versions of the Python runtime can be specified with a `runtime.txt` file:
 
     $ cat runtime.txt
-    python-3.5.1
+    python-3.5.2
 
 Runtime options include:
 
-- `python-2.7.11`
-- `python-3.5.1`
-- `pypy-5.0.1` (unsupported, experimental)
+- `python-2.7.12`
+- `python-3.5.2`
+- `pypy-5.3.1` (unsupported, experimental)
 
 Other [unsupported runtimes](https://github.com/heroku/heroku-buildpack-python/tree/master/builds/runtimes) are available as well. Use at your own risk. 
diff --git a/bin/compile b/bin/compile
index 55d2b5ac320683bdd5c7847ec332775fc59a1caa..737d2f9c29d7517caca4fe41090eb26251b504be 100755
--- a/bin/compile
+++ b/bin/compile
@@ -31,11 +31,11 @@ ENV_DIR=$3
 VIRTUALENV_LOC=".heroku/venv"
 LEGACY_TRIGGER="lib/python2.7"
 
-DEFAULT_PYTHON_VERSION="python-2.7.11"
+DEFAULT_PYTHON_VERSION="python-2.7.12"
 DEFAULT_PYTHON_STACK="cedar-14"
 PYTHON_EXE="/app/.heroku/python/bin/python"
-PIP_VERSION="8.1.1"
-SETUPTOOLS_VERSION="20.4"
+PIP_VERSION="8.1.2"
+SETUPTOOLS_VERSION="23.1"
 
 # Common Problem Warnings
 export WARNINGS_LOG=$(mktemp)
diff --git a/builds/runtimes/pypy-5.3.1 b/builds/runtimes/pypy-5.3.1
new file mode 100755
index 0000000000000000000000000000000000000000..0310dc91c72fe940cd3c231118539bfc5482fe96
--- /dev/null
+++ b/builds/runtimes/pypy-5.3.1
@@ -0,0 +1,14 @@
+#!/usr/bin/env bash
+# Build Path: /app/.heroku/python/
+# Build Deps: libraries/sqlite
+
+# NOTICE: This formula only works for the cedar-14 stack, not cedar.
+
+OUT_PREFIX=$1
+
+echo "Building PyPy..."
+SOURCE_TARBALL='https://bitbucket.org/pypy/pypy/downloads/pypy-5.3.1-linux64.tar.bz2'
+curl -L $SOURCE_TARBALL | tar jx
+cp -R pypy-5.3.1-linux64/* $OUT_PREFIX
+
+ln $OUT_PREFIX/bin/pypy $OUT_PREFIX/bin/python
diff --git a/builds/runtimes/python-2.7.11rc1 b/builds/runtimes/python-2.7.12
similarity index 70%
rename from builds/runtimes/python-2.7.11rc1
rename to builds/runtimes/python-2.7.12
index cbbeb9ed7562ee62198c2f95c6492cee75498289..6c1b38ce1fd0af9b011f8519d7cb9ba785f9e45a 100755
--- a/builds/runtimes/python-2.7.11rc1
+++ b/builds/runtimes/python-2.7.12
@@ -5,9 +5,9 @@
 OUT_PREFIX=$1
 
 echo "Building Python..."
-SOURCE_TARBALL='https://www.python.org/ftp/python/2.7.11/Python-2.7.11rc1.tgz'
+SOURCE_TARBALL='https://python.org/ftp/python/2.7.12/Python-2.7.12.tgz'
 curl -L $SOURCE_TARBALL | tar xz
-mv Python-2.7.11rc1 src
+mv Python-2.7.12 src
 cd src
 
 ./configure --prefix=$OUT_PREFIX  --with-ensurepip=no
diff --git a/builds/runtimes/python-3.5.2 b/builds/runtimes/python-3.5.2
new file mode 100755
index 0000000000000000000000000000000000000000..086e9e87010c007b91a79c0449d33d693ffa090a
--- /dev/null
+++ b/builds/runtimes/python-3.5.2
@@ -0,0 +1,18 @@
+#!/usr/bin/env bash
+# Build Path: /app/.heroku/python/
+# Build Deps: libraries/sqlite
+
+OUT_PREFIX=$1
+
+echo "Building Python..."
+SOURCE_TARBALL='https://python.org/ftp/python/3.5.2/Python-3.5.2.tgz'
+curl -L $SOURCE_TARBALL | tar xz
+mv Python-3.5.2 src
+cd src
+
+./configure --prefix=$OUT_PREFIX --with-ensurepip=no
+make
+make install
+
+ln $OUT_PREFIX/bin/python3 $OUT_PREFIX/bin/python
+
diff --git a/vendor/pip-8.1.1.tar.gz b/vendor/pip-8.1.1.tar.gz
deleted file mode 100644
index 331c4e0fccc319b7ba96496b4098c1c32ff0df6f..0000000000000000000000000000000000000000
Binary files a/vendor/pip-8.1.1.tar.gz and /dev/null differ
diff --git a/vendor/pip-8.1.2.tar.gz b/vendor/pip-8.1.2.tar.gz
new file mode 100644
index 0000000000000000000000000000000000000000..e7a1a3cc53050c4a69e6ec06a1e9f0863515d08a
Binary files /dev/null and b/vendor/pip-8.1.2.tar.gz differ
diff --git a/vendor/setuptools-20.4.tar.gz b/vendor/setuptools-20.4.tar.gz
deleted file mode 100644
index e743ab2afb9cf06184474b1eaf68b53966a910a8..0000000000000000000000000000000000000000
Binary files a/vendor/setuptools-20.4.tar.gz and /dev/null differ
diff --git a/vendor/setuptools-23.1.0.tar.gz b/vendor/setuptools-23.1.0.tar.gz
new file mode 100644
index 0000000000000000000000000000000000000000..bd5dc8879e9282d043b8c2584e05ee470ca1930c
Binary files /dev/null and b/vendor/setuptools-23.1.0.tar.gz differ