From 18a4073705e3b8eb552f699535b804a353950d11 Mon Sep 17 00:00:00 2001 From: PurHur Date: Sun, 24 May 2026 23:48:49 +0000 Subject: [PATCH] Docs: sync roadmap-wave3 to 11/12 language, 13/13 stdlib (#1811) Mark #1360, #1366, and #1378 closed on master; only #1354 attributes remains open. Wave3RoadmapSyncTest/check-wave3-roadmap-sync.php pass. Co-authored-by: Cursor --- docs/pages/development-status.md | 4 ++-- docs/roadmap-wave3.md | 14 +++++++------- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/docs/pages/development-status.md b/docs/pages/development-status.md index e49e824ad19..de2f3f2c77b 100644 --- a/docs/pages/development-status.md +++ b/docs/pages/development-status.md @@ -47,8 +47,8 @@ Indicative composite toward a **web-capable, self-hosting** compiler (not line-c | Area | Progress | Summary | |------|----------|---------| | **Foundation** (CI, CLI, Docker) | ~88% | `phpc` CLI, local/Docker CI; GitHub Actions + CircleCI disabled ([#1338](https://github.com/PurHur/php-compiler/pull/1338), [#1340](https://github.com/PurHur/php-compiler/pull/1340)); contributor CI matrix doc in repo only | -| **Language** (OOP, types, CFG) | ~74% | VM/JIT OOP largely works; wave-3 language **10/13** on master; open: attributes ([#1354](https://github.com/PurHur/php-compiler/issues/1354)), readonly ([#1360](https://github.com/PurHur/php-compiler/issues/1360) / [#1473](https://github.com/PurHur/php-compiler/pull/1473)) | -| **Stdlib** | ~58% | Wave-3 batch ([#1367](https://github.com/PurHur/php-compiler/issues/1367)–[#1379](https://github.com/PurHur/php-compiler/issues/1379)): 12/13 closed; `debug_backtrace` ([#1378](https://github.com/PurHur/php-compiler/issues/1378)) in [#1404](https://github.com/PurHur/php-compiler/pull/1404) | +| **Language** (OOP, types, CFG) | ~74% | VM/JIT OOP largely works; wave-3 language **11/12** on master; open: attributes ([#1354](https://github.com/PurHur/php-compiler/issues/1354)) | +| **Stdlib** | ~58% | Wave-3 batch ([#1367](https://github.com/PurHur/php-compiler/issues/1367)–[#1379](https://github.com/PurHur/php-compiler/issues/1379)): **13/13** closed on master | | **Web AOT** (build, deploy) | ~65% | Project link ✅; home-route execute ✅; PATH_INFO / layout chain 🚧 | | **Reference app** (MiniWebApp) | ~55% | VM ✅; AOT link ✅; AOT execute **partial** | | **Self-host** (North Star 2, M0–M5) | ~97% | M0–M1 ✅; M2 spine **574/586**; M3 partial (native run ✅, Zend emit); M4–M5 ⬜ — [self-host-target.md](https://github.com/PurHur/php-compiler/blob/master/docs/self-host-target.md) | diff --git a/docs/roadmap-wave3.md b/docs/roadmap-wave3.md index a93715010be..5443ac3db51 100644 --- a/docs/roadmap-wave3.md +++ b/docs/roadmap-wave3.md @@ -8,12 +8,12 @@ Regenerate capability truth: `php script/capability-matrix.php`, `php script/cap | Track | Done | Open | |-------|-----:|-----:| -| Stdlib (#1367–#1379) | 12 | 1 ([#1378](https://github.com/PurHur/php-compiler/issues/1378)) | -| Language (#1354–#1366) | 9 | 3 | +| Stdlib (#1367–#1379) | 13 | 0 | +| Language (#1354–#1366) | 11 | 1 ([#1354](https://github.com/PurHur/php-compiler/issues/1354)) | -**Language landed (master):** `never` ([#1358](https://github.com/PurHur/php-compiler/issues/1358) / [#1466](https://github.com/PurHur/php-compiler/pull/1466)), enums ([#1356](https://github.com/PurHur/php-compiler/issues/1356) / [#1463](https://github.com/PurHur/php-compiler/pull/1463)), ctor promotion ([#1359](https://github.com/PurHur/php-compiler/issues/1359) / [#1464](https://github.com/PurHur/php-compiler/pull/1464)), multi-catch ([#1362](https://github.com/PurHur/php-compiler/issues/1362) / [#1468](https://github.com/PurHur/php-compiler/pull/1468)), intersection types ([#1357](https://github.com/PurHur/php-compiler/issues/1357) / [#1474](https://github.com/PurHur/php-compiler/pull/1474)), unpack ([#1361](https://github.com/PurHur/php-compiler/issues/1361) / [#1476](https://github.com/PurHur/php-compiler/pull/1476)), `__serialize` ([#1365](https://github.com/PurHur/php-compiler/issues/1365) / [#1477](https://github.com/PurHur/php-compiler/pull/1477)), first-class callable JIT ([#1363](https://github.com/PurHur/php-compiler/issues/1363) / [#1472](https://github.com/PurHur/php-compiler/pull/1472)), variable-variables JIT ([#1364](https://github.com/PurHur/php-compiler/issues/1364) / [#1381](https://github.com/PurHur/php-compiler/pull/1381)). +**Language landed (master):** `never` ([#1358](https://github.com/PurHur/php-compiler/issues/1358) / [#1466](https://github.com/PurHur/php-compiler/pull/1466)), enums ([#1356](https://github.com/PurHur/php-compiler/issues/1356) / [#1463](https://github.com/PurHur/php-compiler/pull/1463)), ctor promotion ([#1359](https://github.com/PurHur/php-compiler/issues/1359) / [#1464](https://github.com/PurHur/php-compiler/pull/1464)), multi-catch ([#1362](https://github.com/PurHur/php-compiler/issues/1362) / [#1468](https://github.com/PurHur/php-compiler/pull/1468)), intersection types ([#1357](https://github.com/PurHur/php-compiler/issues/1357) / [#1474](https://github.com/PurHur/php-compiler/pull/1474)), unpack ([#1361](https://github.com/PurHur/php-compiler/issues/1361) / [#1476](https://github.com/PurHur/php-compiler/pull/1476)), `__serialize` ([#1365](https://github.com/PurHur/php-compiler/issues/1365) / [#1477](https://github.com/PurHur/php-compiler/pull/1477)), first-class callable JIT ([#1363](https://github.com/PurHur/php-compiler/issues/1363) / [#1472](https://github.com/PurHur/php-compiler/pull/1472)), variable-variables JIT ([#1364](https://github.com/PurHur/php-compiler/issues/1364) / [#1381](https://github.com/PurHur/php-compiler/pull/1381)), readonly classes ([#1360](https://github.com/PurHur/php-compiler/issues/1360) / [#1473](https://github.com/PurHur/php-compiler/pull/1473)), WeakReference/WeakMap ([#1366](https://github.com/PurHur/php-compiler/issues/1366) / [#1478](https://github.com/PurHur/php-compiler/pull/1478)). -**Language open (3):** attributes ([#1354](https://github.com/PurHur/php-compiler/issues/1354) — no PR yet), readonly classes ([#1360](https://github.com/PurHur/php-compiler/issues/1360) — [#1473](https://github.com/PurHur/php-compiler/pull/1473) needs rebase), WeakReference/WeakMap ([#1366](https://github.com/PurHur/php-compiler/issues/1366) — [#1478](https://github.com/PurHur/php-compiler/pull/1478) open). +**Language open (1):** attributes ([#1354](https://github.com/PurHur/php-compiler/issues/1354) — no PR yet). Related merges outside this wave: `goto` ([#1228](https://github.com/PurHur/php-compiler/issues/1228) / [#1333](https://github.com/PurHur/php-compiler/pull/1333)), anonymous classes ([#1233](https://github.com/PurHur/php-compiler/issues/1233) / [#1386](https://github.com/PurHur/php-compiler/pull/1386)). @@ -28,13 +28,13 @@ Related merges outside this wave: `goto` ([#1228](https://github.com/PurHur/php- | [#1357](https://github.com/PurHur/php-compiler/issues/1357) | Intersection types | Closed (master) | [#1474](https://github.com/PurHur/php-compiler/pull/1474); JIT deferred — `capabilities-syntax.md` | | [#1358](https://github.com/PurHur/php-compiler/issues/1358) | `never` return type | Closed | [#1466](https://github.com/PurHur/php-compiler/pull/1466) | | [#1359](https://github.com/PurHur/php-compiler/issues/1359) | Constructor property promotion | Closed | [#1464](https://github.com/PurHur/php-compiler/pull/1464) | -| [#1360](https://github.com/PurHur/php-compiler/issues/1360) | readonly classes | Open | [#1473](https://github.com/PurHur/php-compiler/pull/1473) — rebase conflicts | +| [#1360](https://github.com/PurHur/php-compiler/issues/1360) | readonly classes | Closed | [#1473](https://github.com/PurHur/php-compiler/pull/1473) | | [#1361](https://github.com/PurHur/php-compiler/issues/1361) | Array/argument unpack `...$x` | Closed | [#1476](https://github.com/PurHur/php-compiler/pull/1476) | | [#1362](https://github.com/PurHur/php-compiler/issues/1362) | Multi-type catch | Closed | [#1468](https://github.com/PurHur/php-compiler/pull/1468) | | [#1363](https://github.com/PurHur/php-compiler/issues/1363) | First-class callable JIT | Closed | [#1472](https://github.com/PurHur/php-compiler/pull/1472) | | [#1364](https://github.com/PurHur/php-compiler/issues/1364) | Variable variables JIT | Closed | [#1381](https://github.com/PurHur/php-compiler/pull/1381) | | [#1365](https://github.com/PurHur/php-compiler/issues/1365) | `__serialize` / `__unserialize` | Closed | [#1477](https://github.com/PurHur/php-compiler/pull/1477); VM via `VmSerialize` | -| [#1366](https://github.com/PurHur/php-compiler/issues/1366) | WeakReference / WeakMap | Open | [#1478](https://github.com/PurHur/php-compiler/pull/1478) | +| [#1366](https://github.com/PurHur/php-compiler/issues/1366) | WeakReference / WeakMap | Closed | [#1478](https://github.com/PurHur/php-compiler/pull/1478) | ## Stdlib (#1367–#1379) @@ -51,7 +51,7 @@ Related merges outside this wave: `goto` ([#1228](https://github.com/PurHur/php- | [#1375](https://github.com/PurHur/php-compiler/issues/1375) | `pack` | Closed | [#1395](https://github.com/PurHur/php-compiler/pull/1395) | | [#1376](https://github.com/PurHur/php-compiler/issues/1376) | `sleep` / `usleep` | Closed | [#1389](https://github.com/PurHur/php-compiler/pull/1389) | | [#1377](https://github.com/PurHur/php-compiler/issues/1377) | `stream_context_create` | Closed (VM) | [#1399](https://github.com/PurHur/php-compiler/pull/1399); JIT arg helper still missing in audit | -| [#1378](https://github.com/PurHur/php-compiler/issues/1378) | `debug_backtrace` | Open | [#1404](https://github.com/PurHur/php-compiler/pull/1404) (rebase needed) | +| [#1378](https://github.com/PurHur/php-compiler/issues/1378) | `debug_backtrace` | Closed | [#1404](https://github.com/PurHur/php-compiler/pull/1404) | | [#1379](https://github.com/PurHur/php-compiler/issues/1379) | `set_error_handler` | Closed (VM) | [#1406](https://github.com/PurHur/php-compiler/pull/1406); `restore_error_handler` JIT deferred | ## Do not duplicate