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
|
## Choosing the next slice
|
||||||
|
|
||||||
```sh
|
**Most fundamental first**, from the owner on 2026-09-13: *"please do more
|
||||||
cd /home/bob/repos/iris && git fetch upstream
|
fundamental changes first, such as library updates and core framework changes,
|
||||||
git diff --stat upstream/main..archive/full-extraction
|
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
|
So the order is by how much else depends on a thing, not by what is nearest
|
||||||
canonical `main`, leave app-specific behaviour out, and verify it independently.
|
ready, and a slice lands with tests rather than with a script in `/tmp`.
|
||||||
Pick disjoint path sets when two PRs are open, and branch each from the latest
|
|
||||||
`upstream/main` rather than stacking.
|
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:
|
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.
|
- Application-owned fonts and application-named font families.
|
||||||
- Shared resource-handle bookkeeping and replaceable glyph-atlas buckets.
|
- Shared resource-handle bookkeeping and replaceable glyph-atlas buckets.
|
||||||
- Positioned text overflow and cluster-safe ellipsis.
|
- 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
|
```sh
|
||||||
them are not in the repo: `/tmp/pr11-checks/run.sh` copies them in, renders
|
cd /home/bob/repos/iris && git fetch upstream
|
||||||
rect+glyph+image together, an image alone in a layer, and a grown atlas, then
|
git diff --stat upstream/main..archive/full-extraction
|
||||||
removes them again.
|
```
|
||||||
|
|
||||||
|
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
|
## Verifying a framework slice
|
||||||
|
|
||||||
|
|||||||
Reference in new issue
Block a user