You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I'm on the team that maintains Heroku's build system and official buildpacks, and wanted to let you know about a future incompatibility with this buildpack.
The directory in which the Heroku build system performs builds is currently a path like/tmp/build_<hash>.
In the near future this path will be changing to /app so that the build-time and run-time app locations are the same path - in order to resolve a number of long standing bugs, and reduce the number of hacks buildpacks have to use to work around non-relocatable languages/toolchains.
This change will mean builds using this buildpack will show warnings like:
remote: -----> Python + OpenCV + Numpy + Scipy app detected
remote: cp: '/app/requirements.txt' and '/app/requirements.txt' are the same file
remote: cp: '/app/test' and '/app/test' are the same file
remote: -----> Generating environment
remote: Fetching...
remote: Unpacking...
...
remote: -----> Creating environment variables.
remote: cp: '/app/.heroku' and '/app/.heroku' are the same file
remote: cp: '/app/.profile.d' and '/app/.profile.d' are the same file
remote: -----> Buildpack installed.
...and worse, the build will appear to succeed (exit non-zero) due to this buildpack not using Bash "exit on error", however the contents of the app source will not be copied correctly into the build, meaning the app will fail to boot.
To reproduce, the new behaviour can be enabled manually (ahead of it being the new default), using:
heroku labs:enable build-in-app-dir -a my_app_name
To fix, some reworking of these parts will be needed (eg skipping the move if BUILD_DIR is already /app):
Hi
I'm on the team that maintains Heroku's build system and official buildpacks, and wanted to let you know about a future incompatibility with this buildpack.
The directory in which the Heroku build system performs builds is currently a path like
/tmp/build_<hash>
.In the near future this path will be changing to
/app
so that the build-time and run-time app locations are the same path - in order to resolve a number of long standing bugs, and reduce the number of hacks buildpacks have to use to work around non-relocatable languages/toolchains.This change will mean builds using this buildpack will show warnings like:
...and worse, the build will appear to succeed (exit non-zero) due to this buildpack not using Bash "exit on error", however the contents of the app source will not be copied correctly into the build, meaning the app will fail to boot.
To reproduce, the new behaviour can be enabled manually (ahead of it being the new default), using:
To fix, some reworking of these parts will be needed (eg skipping the move if
BUILD_DIR
is already/app
):heroku-buildpack-python-opencv-scipy/bin/compile
Lines 21 to 60 in c9605c2
heroku-buildpack-python-opencv-scipy/bin/compile
Line 99 in c9605c2
The text was updated successfully, but these errors were encountered: