Problem
test/aot/ExampleWebAotTest.php compiles examples/001-SimpleWeb/example.php with -q name=Example and runs once. #49 tracks full runtime superglobal population; we lack a regression test that proves the same AOT binary honors different QUERY_STRING values without re-running bin/compile.php.
lib/AOT/runtime/superglobals_refresh.c and phpc serve --aot suggest partial runtime refresh; this issue makes the behavior testable and blocks closing #49.
Goal
One compiled binary, two invocations, two different HTML bodies:
QUERY_STRING='name=Alice' ./simpleweb | grep 'Hello Alice'
QUERY_STRING='name=Bob' ./simpleweb | grep 'Hello Bob'
Scope
Acceptance criteria
Verification (local only)
make docker-build-22
docker run --rm -v "$(pwd):/compiler" -w /compiler php-compiler:22.04-dev \
vendor/bin/phpunit --group llvm --filter ExampleWebAotTest
Do not require GitHub Actions.
Related
Problem
test/aot/ExampleWebAotTest.phpcompilesexamples/001-SimpleWeb/example.phpwith-q name=Exampleand runs once. #49 tracks full runtime superglobal population; we lack a regression test that proves the same AOT binary honors differentQUERY_STRINGvalues without re-runningbin/compile.php.lib/AOT/runtime/superglobals_refresh.candphpc serve --aotsuggest partial runtime refresh; this issue makes the behavior testable and blocks closing #49.Goal
One compiled binary, two invocations, two different HTML bodies:
Scope
ExampleWebAotTest(or newRuntimeSuperglobalsAotTestcase) to compile without-qwhen runtime path is readyQUERY_STRING/ env; assert distinct output@group llvm(Docker:php-compiler:22.04-devwith/opt/llvm9)Acceptance criteria
masterwhen runtime refresh is correct-qworks — until Web: Runtime-populated superglobals for JIT and AOT (per-request $_GET/$_POST) #49 landsVerification (local only)
make docker-build-22 docker run --rm -v "$(pwd):/compiler" -w /compiler php-compiler:22.04-dev \ vendor/bin/phpunit --group llvm --filter ExampleWebAotTestDo not require GitHub Actions.
Related
phpc serve --aot— closed)