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
Compatibility: run php-src's own test corpus (Zend/tests, ext/standard/tests, ext/spl/tests …) under VM and AOT with SKIPIF honoured — a scoreboard per directory replaces the hand-written compliance numbers (test/php-src/, script/php-src-phpt.sh) #36381
Foundation: · compatibility program · child of #36379
Why
test/compliance/cases (11,704 .phpt) is in-house; php-src ships ~17,000 .phpt for PHP 8.2 that define what PHP is. Every serious PHP implementation (HHVM, KPHP, PeachPie) reports against that corpus. Nothing in this repo runs it. The in-house baselines (423 VMTest / 486 JITTest failing names) measure agreement with recorded expectations the same authors wrote.
Deliverable
script/php-src-phpt.sh --php-src=<checkout at php-8.2.x tag> --dirs=Zend/tests,ext/standard/tests/strings,… --backend=vm|aot --shards=N: reuse test/BaseTest.php's .phpt parser (SKIPIF, INI, ENV, EXPECT/EXPECTF/EXPECTREGEX, CLEAN) and the hash-stable sharding of shard-compliance.sh; per-case timeout; TeamCity-style streaming; results as failing-name sets like compliance-baseline.sh.
test/php-src/BASELINE-<dir>.txt committed per directory with executed/failing name sets; --diff reports REGRESSED / FIXED / DROPPED.
Scoreboard docs/pages/php-src.html (directory, executed, passing %, top failure signatures) generated and gated.
Category
Foundation:· compatibility program · child of #36379Why
test/compliance/cases(11,704.phpt) is in-house; php-src ships ~17,000.phptfor PHP 8.2 that define what PHP is. Every serious PHP implementation (HHVM, KPHP, PeachPie) reports against that corpus. Nothing in this repo runs it. The in-house baselines (423 VMTest / 486 JITTest failing names) measure agreement with recorded expectations the same authors wrote.Deliverable
script/php-src-phpt.sh --php-src=<checkout at php-8.2.x tag> --dirs=Zend/tests,ext/standard/tests/strings,… --backend=vm|aot --shards=N: reusetest/BaseTest.php's.phptparser (SKIPIF, INI, ENV, EXPECT/EXPECTF/EXPECTREGEX, CLEAN) and the hash-stable sharding ofshard-compliance.sh; per-case timeout; TeamCity-style streaming; results as failing-name sets likecompliance-baseline.sh.test/php-src/BASELINE-<dir>.txtcommitted per directory with executed/failing name sets;--diffreports REGRESSED / FIXED / DROPPED.docs/pages/php-src.html(directory, executed, passing %, top failure signatures) generated and gated.Done when
Zend/tests+ext/standard/tests+ext/spl/testsrun under VM in < 45 min sharded; baselines committed; scoreboard publishedrelease-readiness --jsonreports php-src pass % as a release criterion