Repository navigation
Description
I have 37 open PRs here: bug fixes, plus some M2 and M9–M12 work. To make batch merging easier, this is the order that avoids surprises. All 37 are mergeable on main as of 924c4da.
1. First: #2812
#2812 makes six timing-dependent render and UI tests deterministic, and FredApps has approved it. Those tests are behind most of the red Windows and FreeBSD runs on this repo, mine included: #3011, #3012, #3013, #3028, #2772 and #2777 fail only on them.
2. Stand-alone fixes, any order
#2412, #2772, #3007, #3008, #3010, #3011, #3012, #3013, #3015, #3017, #3019, #3021, #3022.
3. hayro-interpret patches, in number order
These PRs each add a numbered patch to vendor/README.md. Merged in this order, the list stays in sequence:
| Patch | PR |
|---|---|
| (34) | #2812 |
| (35)–(36) | #2770 |
| (37) | #3016 |
| (38) | #3018 |
| (39) | #3023 |
| (40) | #3020 |
| (41) | #3053 (stacked on #3023) |
#3035 (mesh shading seams, by mtlcl410) also claims (41). Whichever of #3035 and #3053 lands second gets renumbered; I'll do it for mine.
4. Stacked PRs: base first
A stacked PR contains its base's commits. If it's squash-merged first, the base gets folded into it. Please merge the base first; I rebase each follow-up onto main as soon as its base lands.
| Base | Then |
|---|---|
| #2769 (verify PDF/X) | #2776 (Preflight), #2777 (Save as PDF/X), #3054 (/Pattern shadings) |
| #2777 | #3028 (PDF/X-1a converts more) |
| #2771 (verify PDF/UA) | #3026 (font conditions) |
| #2773 (linearized save) | #3027 (object streams) |
| #2774 (Arlington validation) | #3025 (checks on a worker thread) |
| #2775 (Tags panel, Reading Order) | #3055 (tag form fields) |
| #3009 (#2837, marks previews) | #3024 (#2817, file pictures in those previews) |
| #3014 (Read mode command) | #3056 (back arrows) |
| #3023 (#2269, export colours) | #3053 (CalGray, CalRGB and Lab) |
5. Expected overlaps
Most overlaps between these PRs come from appending to the same place:
- the
ROADMAP.mdprogress log; docs/gaps.md,docs/roadmap.mdand the parity docs;ATTRIBUTION.toml's catalog hashes;- the i18n TSV catalogs.
Whichever lands second gets a mechanical conflict there. A few overlap in code:
- M11: Output Preview — separations, ink coverage, overprint simulation and output-intent soft proofing #2770 with fix(render): draw device colour in the resources' /DefaultGray, /DefaultRGB and /DefaultCMYK (vendored hayro-interpret patch 38) #3018, fix(render): draw each ICC profile through itself when two have the same stream dictionary (vendored hayro-interpret patch 40) #3020 and M10: exported CalGray, CalRGB and Lab images keep the page's colours (#2269 follow-up) #3053, in vendored hayro-interpret files;
- M11: Preflight with profiles, single checks, results, reports and safe fixups (optimize.preflight) #2776 with M11: Save as PDF/X (PDF/X-1a, -3, -4) and PDF/A levels u and a (optimize.pdfx-convert, optimize.pdfa-accessible-levels) #2777 and M11: Save as PDF/X-1a converts Lab, Cal, spot alternates, shadings and pictures of any depth (optimize.pdfx-convert) #3028, in the preflight and engine lists;
- M11: linearized save (Fast Web View, ISO 32000-2 Annex F) and telling linearized files apart on open #2773 and M11: linearized save with object streams and cross-reference streams (Fast Web View, Annex F) #3027 with fix(ui): the mode tabs keep the hand over a page scrolled under them #3010 and fix(web): host mode can wait for the page to confirm a save (opt-in, #1792) #3019, in
ui-egui/src/editing.rs.
After each batch, I rebase whatever conflicts within a day, so merging in any order is fine too. This order just means fewer of those rebases.
If you'd rather I split, combine or close any of these, tell me here.
Activity
ticket-craft commentedon Oct 17, 2026
Closed automatically by Ticket Relay triage as not needing any action. If that’s wrong, reopen this issue.