Order the remaining Iris slices by how fundamental they are
The owner asked for library updates and core framework changes first, so code is only written once, and for tests to arrive with a slice rather than as scripts outside the repository. So wgpu 28 -> 30 and the headless rig and harness come before any of the feature slices. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
1 parent
2937a48133
commit
912602d52b
1 file changed
+30
-16
@@ -165,15 +165,28 @@ URLs are `https://git.arirex.me/iris/iris/pulls/{number}`.
|
||||
|
||||
## Choosing the next slice
|
||||
|
||||
```sh
|
||||
cd /home/bob/repos/iris && git fetch upstream
|
||||
git diff --stat upstream/main..archive/full-extraction
|
||||
```
|
||||
**Most fundamental first**, from the owner on 2026-09-13: *"please do more
|
||||
fundamental changes first, such as library updates and core framework changes,
|
||||
so that code only has to be written once"*, and *"should probably start adding
|
||||
tests early on rather than later, so you don't have to make separate test
|
||||
scripts and stuff. This might involve making the harness eventually, depends
|
||||
on what needs tested."*
|
||||
|
||||
The archive is a reference, not a patch to apply. Recreate a change on top of
|
||||
canonical `main`, leave app-specific behaviour out, and verify it independently.
|
||||
Pick disjoint path sets when two PRs are open, and branch each from the latest
|
||||
`upstream/main` rather than stacking.
|
||||
So the order is by how much else depends on a thing, not by what is nearest
|
||||
ready, and a slice lands with tests rather than with a script in `/tmp`.
|
||||
|
||||
1. **wgpu 28.0.0 -> 30.0.1.** Two majors behind, and it is under everything
|
||||
the renderer does; any renderer slice written first is written twice.
|
||||
`winit` is at 0.30.12 with only a 0.31 prerelease available, so it stays
|
||||
until that is stable; `image` 0.25.9 -> 0.25.10 is a patch to take at the
|
||||
same time. `parley` 0.11.1 is current.
|
||||
2. **The headless rig and the test harness** -- `scripts/run-headless.sh`,
|
||||
`headless.conf`, `rig-input` and `iris::harness` live in ai-app's iris
|
||||
submodule, not in canonical Iris. Until they are extracted, canonical Iris
|
||||
can only be tested by the four `tests/text_edit.rs` tests, and anything
|
||||
about rendering is verified by hand from another checkout. Extracting them
|
||||
is what lets every later slice arrive with tests.
|
||||
3. Everything below, once those two are in.
|
||||
|
||||
Still in the target and not yet claimed:
|
||||
|
||||
@@ -184,15 +197,16 @@ Still in the target and not yet claimed:
|
||||
- Application-owned fonts and application-named font families.
|
||||
- Shared resource-handle bookkeeping and replaceable glyph-atlas buckets.
|
||||
- Positioned text overflow and cluster-safe ellipsis.
|
||||
- **The headless rig** — `scripts/run-headless.sh`, `headless.conf` and
|
||||
`rig-input` live in ai-app's iris submodule and not in canonical Iris.
|
||||
Everything below depends on running them from there; extracting them is a
|
||||
slice of its own.
|
||||
|
||||
The three sampling paths each need a real render, and the examples for two of
|
||||
them are not in the repo: `/tmp/pr11-checks/run.sh` copies them in, renders
|
||||
rect+glyph+image together, an image alone in a layer, and a grown atlas, then
|
||||
removes them again.
|
||||
```sh
|
||||
cd /home/bob/repos/iris && git fetch upstream
|
||||
git diff --stat upstream/main..archive/full-extraction
|
||||
```
|
||||
|
||||
The archive is a reference, not a patch to apply. Recreate a change on top of
|
||||
canonical `main`, leave app-specific behaviour out, and verify it
|
||||
independently. Pick disjoint path sets when two PRs are open, and branch each
|
||||
from the latest `upstream/main` rather than stacking.
|
||||
|
||||
## Verifying a framework slice
|
||||
|
||||
|
||||
Reference in new issue
Block a user