[2.x] Prefix FrankenPHP version with v
for version_compare()
#776
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I was experimenting with creating a Docker image to run a FrankenPHP web server with Octane. I made the following
Dockerfile
:When I started the container it immediately exited, and when inspecting the logs I found that Octane was attempting to download the FrankenPHP binary despite it already existing in the Docker image at
/usr/local/bin/frankenphp
:After some debugging I found that the version_compare() on this line might not be working the way we think. The frankenphp binary returns
v1.0.1
as its version and it's being compared to1.0.0
without thev
. As you can see herev1.0.1 >= 1.0.0
returns false, and causes Octane to re-download the binary: https://3v4l.org/uWjgXAfter changing
$requiredFrankenPhpVersion
tov1.0.1
in my local files and starting the container again, Octane doesn't try to re-download the frankenphp binary and the container runs successfully.