forked from ircmaxell/php-compiler
-
Notifications
You must be signed in to change notification settings - Fork 1
All issues
Issue creation is restricted in this repository
Issues
is:issue state:open
is:issue state:open
Search results
Process: an automated weekly status report (bench ratios, sizes, app/php-src scoreboards, matrix counts, CI streak, open P0s, closed-but-partial list) posted as a docs page and a tracker comment — replaces hand-written status issues (script/status-report.php, .github/workflows/status-weekly.yml)
area:toolingTooling / CI / docsTooling / CI / docsenhancementNew feature or requestNew feature or requestimplementation-readySpec complete: repro, php-src ref, done-when — safe for workers to claimSpec complete: repro, php-src ref, done-when — safe for workers to claimphase-0:FoundationPhase 0 – foundation & DevExPhase 0 – foundation & DevExStatus: Open.#36404 In PurHur/php-compiler;Process: size budgets and an ownership map — lib/Compiler.php < 20k lines (#36230 continues), lib/JIT.php (34k) gets the same trait decomposition, script/ ≤ 150 files, ci-defaults.env ≤ 60 exports; CODEOWNERS-style map of load-bearing files with their gates (docs/OWNERSHIP.md, script/check-size-budgets.sh)
area:toolingTooling / CI / docsTooling / CI / docsenhancementNew feature or requestNew feature or requestimplementation-readySpec complete: repro, php-src ref, done-when — safe for workers to claimSpec complete: repro, php-src ref, done-when — safe for workers to claimphase-0:FoundationPhase 0 – foundation & DevExPhase 0 – foundation & DevExStatus: Open.#36403 In PurHur/php-compiler;Process: architecture decision records — write the ten decisions the code already embodies (value representation, memory model, TU granularity, extension boundary, JIT tier, PHP baseline, supported extension set, self-host scope, LLVM version, patch strategy) and open the four the maintainer still has to make (docs/adr/)
area:toolingTooling / CI / docsTooling / CI / docsenhancementNew feature or requestNew feature or requestimplementation-readySpec complete: repro, php-src ref, done-when — safe for workers to claimSpec complete: repro, php-src ref, done-when — safe for workers to claimIMPORTANTCritical pathCritical pathphase-0:FoundationPhase 0 – foundation & DevExPhase 0 – foundation & DevExStatus: Open.#36402 In PurHur/php-compiler;Process: master must be green — branch protection requiring the Compiler gate once #36377 lands, a CI-streak metric in release-readiness, and a rule that a red master blocks all non-fix merges (.github/workflows/compiler-gate.yml, script/release-readiness.sh, CONTRIBUTING.md)
area:toolingTooling / CI / docsTooling / CI / docsenhancementNew feature or requestNew feature or requestimplementation-readySpec complete: repro, php-src ref, done-when — safe for workers to claimSpec complete: repro, php-src ref, done-when — safe for workers to claimMOST IMPORTANTThis are the most important targetsThis are the most important targetsphase-0:FoundationPhase 0 – foundation & DevExPhase 0 – foundation & DevExStatus: Open.#36401 In PurHur/php-compiler;Reliability: reproducible builds and signed releases — byte-identical binaries across machines for the same inputs, pinned TargetMachine, sorted symbol emission, SOURCE_DATE_EPOCH, checksums and signatures on release artifacts (lib/JIT/Context.php emitToFile, lib/AOT/Linker.php, .github/workflows/release.yml)
area:compilerCompiler / CFG / JITCompiler / CFG / JITenhancementNew feature or requestNew feature or requestimplementation-readySpec complete: repro, php-src ref, done-when — safe for workers to claimSpec complete: repro, php-src ref, done-when — safe for workers to claimphase-3:aotPhase 3 – AOT deploymentPhase 3 – AOT deploymentStatus: Open.#36399 In PurHur/php-compiler;Reliability: differential fuzzing — a grammar-based PHP program generator (types × operators × control flow × builtins) run nightly against Zend vs VM vs AOT with automatic reduction and dedup by crash signature (script/fuzz/, test/differential/cases/fuzz/)
area:toolingTooling / CI / docsTooling / CI / docsenhancementNew feature or requestNew feature or requestimplementation-readySpec complete: repro, php-src ref, done-when — safe for workers to claimSpec complete: repro, php-src ref, done-when — safe for workers to claimIMPORTANTCritical pathCritical pathphase-2:languagePhase 2 – language featuresPhase 2 – language featuresStatus: Open.#36398 In PurHur/php-compiler;Reliability: memory-safety CI — ASan/UBSan runtime build, valgrind on the smoke set, a
PHPC_RUNTIME_ASSERT=1mode that checks refcount/ownership invariants, and a written memory-model spec the assertions are derived from (lib/AOT/Linker.php, lib/JIT/Builtin/Refcount.php, docs/runtime-semantics.md)area:compilerCompiler / CFG / JITCompiler / CFG / JITenhancementNew feature or requestNew feature or requestimplementation-readySpec complete: repro, php-src ref, done-when — safe for workers to claimSpec complete: repro, php-src ref, done-when — safe for workers to claimIMPORTANTCritical pathCritical pathphase-3:aotPhase 3 – AOT deploymentPhase 3 – AOT deploymentStatus: Open.#36397 In PurHur/php-compiler;DX: every "unsupported" error names the feature, links its matrix row and issue, and suggests the supported alternative;
phpc lint --projectpublished aspurhur/phpc-lintfor users' CI (lib/Lint/, lib/UnsupportedRegistry.php, composer package)area:toolingTooling / CI / docsTooling / CI / docsenhancementNew feature or requestNew feature or requestimplementation-readySpec complete: repro, php-src ref, done-when — safe for workers to claimSpec complete: repro, php-src ref, done-when — safe for workers to claimphase-2:languagePhase 2 – language featuresPhase 2 – language featuresStatus: Open.#36396 In PurHur/php-compiler;DECISION + epic: what the self-host north star buys the user — a static
phpcbinary as the distribution artifact (no host PHP, no composer, no patches), with a scoped M5 that stops at "compiles user projects natively" (docs/self-host-target.md, prelinked/bootstrap-gen0/)area:compilerCompiler / CFG / JITCompiler / CFG / JITphase-3:aotPhase 3 – AOT deploymentPhase 3 – AOT deploymentquestionFurther information is requestedFurther information is requestedrelease-roadmapRelease roadmap meta issueRelease roadmap meta issueStatus: Open.#36393 In PurHur/php-compiler;Product: the web deployment story end to end —
phpc fcgiworker + nginx recipe +phpc deploy --ociproducing a from-scratch container, a living demo of 003-MiniWebApp on purh.pw with uptime monitoring, and req/s + memory vs php-fpm in the docs (bin/fcgi.php, docs/deploy-production.md, examples/003-MiniWebApp)area:webWeb / CGI / superglobalsWeb / CGI / superglobalsenhancementNew feature or requestNew feature or requestimplementation-readySpec complete: repro, php-src ref, done-when — safe for workers to claimSpec complete: repro, php-src ref, done-when — safe for workers to claimIMPORTANTCritical pathCritical pathphase-5:reference-appPhase 5 – reference web applicationPhase 5 – reference web applicationStatus: Open.#36392 In PurHur/php-compiler;Distribution: platform matrix — linux/arm64 first (per-arch helper cache, CI on an arm64 runner or QEMU), then macOS arm64; a target-triple abstraction in Linker/TargetMachine instead of x86_64 assumptions (prelinked/helper-runtime/<arch>/, lib/AOT/Linker.php, lib/JIT/Context.php)
area:compilerCompiler / CFG / JITCompiler / CFG / JITenhancementNew feature or requestNew feature or requestimplementation-readySpec complete: repro, php-src ref, done-when — safe for workers to claimSpec complete: repro, php-src ref, done-when — safe for workers to claimphase-3:aotPhase 3 – AOT deploymentPhase 3 – AOT deploymentStatus: Open.#36391 In PurHur/php-compiler;Distribution: one-command install —
ghcr.io/purhur/phpcimage (LLVM 9 + prelinked runtime + helper cache) and a tarball SDK, with a "fresh machine to hello binary in < 5 min" gate (Docker/release/, script/cold-build-check.sh, docs/GETTING-STARTED.md)area:toolingTooling / CI / docsTooling / CI / docsenhancementNew feature or requestNew feature or requestimplementation-readySpec complete: repro, php-src ref, done-when — safe for workers to claimSpec complete: repro, php-src ref, done-when — safe for workers to claimIMPORTANTCritical pathCritical pathphase-3:aotPhase 3 – AOT deploymentPhase 3 – AOT deploymentStatus: Open.#36390 In PurHur/php-compiler;