diff --git a/bin/compile b/bin/compile
index 10d5ebda0ca57d96b4ecc58e52df041973ff8b28..1532cddcaaac46f1a6377eca060ad0106135597b 100755
--- a/bin/compile
+++ b/bin/compile
@@ -158,6 +158,9 @@ source $BIN_DIR/steps/python
 # Sanity check for setuptools/distribute.
 source $BIN_DIR/steps/setuptools
 
+# Mercurial support.
+source $BIN_DIR/steps/pipenv
+
 # If no requirements.txt file given, assume `setup.py develop` is intended.
 if [ ! -f requirements.txt ] && [ ! -f Pipfile ]; then
   echo "-e ." > requirements.txt
diff --git a/bin/steps/pip-install b/bin/steps/pip-install
index 1e4868a16e31cafc4440d36085584b8ab42a49b2..cbec332642150e01d58d5a1ab9536657ceaa4ff3 100755
--- a/bin/steps/pip-install
+++ b/bin/steps/pip-install
@@ -13,17 +13,6 @@ find .heroku/python/lib-python/*/site-packages/ -name "*.egg-link" -print0 2> /d
 find .heroku/python/lib-python/*/site-packages/ -name "*.pth" -print0 2> /dev/null | xargs -r -0 -n 1 sed -i -e "s#/app/#/$(pwd)/#" &> /dev/null
 set -e
 
-# Pipenv support (Generate requriements.txt with pipenv).
-if [[ -f Pipfile ]]; then
-    if [[ ! -f requirements.txt ]]; then
-        puts-step "Generating 'requirements.txt' with pipenv"
-
-        /app/.heroku/python/bin/pip install pipenv --upgrade &> /dev/null
-        /app/.heroku/python/bin/pipenv lock --requirements --no-hashes > $BUILD_DIR/requirements.txt 2> /dev/null
-        pipstrip requirements.txt
-    fi
-fi
-
 
 [ ! "$FRESH_PYTHON" ] && bpwatch start pip_install
 [ "$FRESH_PYTHON" ] && bpwatch start pip_install_first
diff --git a/bin/steps/pipenv b/bin/steps/pipenv
new file mode 100644
index 0000000000000000000000000000000000000000..622c7613ed752c229d877aec2f21a5841ddfeffb
--- /dev/null
+++ b/bin/steps/pipenv
@@ -0,0 +1,10 @@
+# Pipenv support (Generate requriements.txt with pipenv).
+if [[ -f Pipfile ]]; then
+    if [[ ! -f requirements.txt ]]; then
+        puts-step "Generating 'requirements.txt' with pipenv"
+
+        /app/.heroku/python/bin/pip install pipenv --upgrade &> /dev/null
+        /app/.heroku/python/bin/pipenv lock --requirements --no-hashes > $BUILD_DIR/requirements.txt 2> /dev/null
+        pipstrip requirements.txt
+    fi
+fi
\ No newline at end of file