v0.3.0
v0.3.0 (2026-09-04)
Changes since v0.2.4:
Features
- relayout on the images toggle, remote images seat after fetch (40a6ef7)
- carry the images render flag through the open job (cea062b)
- size images on the images-on render path (1d7f278)
- stage-2 link-label injection for the F-key render (1490852)
- stage-2 table strip quantization (982bb9f)
- stage-2 quantization of text rows, images, markers, and hr (21aca4d)
- stage-2 facade frame with px quantization and page colors (2842b52)
- export the span line model, image display px, and list ordinals (6e0234f)
- pin image used px in the wrap budget and re-resolve on re-layout (1a9d310)
- inline layout resolves images to used px and emits them at that width (cc9d01a)
- make ResolveImages intrinsic tests load-bearing per review (14a6ddf)
- ResolveImages pre-pass fills intrinsic sizes from a caller loader (8c07247)
- keep specified img height under a max-width clamp (probe-pinned) (e8e9c9a)
- replaced-image sizing core (weasyprint-faithful used size and extent width) (3d4e686)
- cascade width/height/max-width as px and percent lengths (3dad4c0)
- nested tables and block content in cells (2876697)
- rowspan claims expire by row index, not per-row tick (2343b53)
- colspan and rowspan grid occupancy (590d20e)
- table auto layout and Cells row emission (2e4ff43)
- consume x/net/html table grammar without re-implementing it (5d5e012)
- build table-family boxes with anonymous repair (b70f963)
- block flow with margin collapse and list gutters (2e12a22)
- cascade px margins and UA margin defaults (1583c70)
- linear inline atomizing and char-break measurement (c772a78)
- greedy inline line fill with normalize and alignment (08cf685)
- flatten inline box children into an atom stream (a09e025)
- collapse text leaves into inline atoms (7491505)
- metrics interface for px text measurement (b0ffe39)
- white-space behavior table for inline layout (2357af7)
- build flow boxes with blockification and list markers (b31bfcd)
- UA display and white-space floor table (b71d5d7)
- parse precise white-space class into Style (d220efd)
Bug Fixes
- isolated images seat at the block text-align lead (05c35d8)
- kitty images re-place per image instead of wiping on scroll (a3a2c90)
- standalone images fill the column and center (170e9f3)
- presence-check semianalysis pins and tighten stage-2 pins (8705d15)
- stage-2 link labels on block anchors and pre text (e5ba84d)
- track inline image runs at placeholder text columns (da30e36)
- cap image extent width by px max-width on the measure side (f25aa73)
- clear a percent width attribute under a css px width (6acc51c)
- translate cell markers with block rows (872460d)
- sort scheduled list by send time, not the display string (7e2fdb3)
- hang list markers per owning li gutter and keep empty-item rows (869d31d)
- stop re-appending a settled summary error on every tick (b287697)
- account for the dropped break space in wrap remainder width (83cb18e)
- track preserved-wrap remainder width instead of re-measuring (781ab59)
- stop preserved wrap scanning past the width budget (72111bd)
- inherit html element style and pin tree contracts (ce54922)
- UA li display and 3+ marker depth nesting (76a67fc)
Documentation
- standalone images align to the block, not the window (0664fb9)
- feature-table the in-process HTML renderer (af2a065)
- standalone images fill and center on the images-on view (20020a3)
- document the images-on relayout (259a429)
- mark the architecture sketch superseded (7cea93e)
- describe the stage-2 engine and recorded divergences (f74b2c2)
- plan stage-2 terminal wiring of the html engine (20ee36a)
- record plan-5 post-review test hardening (8bf1f84)
- record plan-5 image stage-1 divergences (bd69c96)
- correct Task 2 verbatim - runExtents file, pct-height guard, Fatalf escape (028744e)
- html images and replaced elements (plan 5) (850ac56)
- record html table stage-1 divergences (aa11fe4)
- note parser depth cap bounds Task 4 Step 6 scratch test (b89a86c)
- rowspan claims expire by row index (Task 3a) (451acdd)
- lock library consumption contract for html plans (3f6ad8f)
- conform table build to x/net/html grammar (Task 1a) (354adf7)
- memoize nested-table extents in the table plan (a9c4ffa)
- plan the table stage (0a622c9)
- plan the block-flow stage and the layout foundation (0e1dd27)
- close html inline O(n^2) and contract-pin bugs, and the schedule sort bug (091203a)
- note scheduled-list sort bug and collect review nice-to-haves (98c972c)
- name marker-only rows in the Row contract (72d8abb)
- provider-neutral crm row model (9838c46)
- provider-neutral crm row model (5ddacc9)
- align plan 2 snippets with the reviewed code (56d0337)
- hubspot follow-up workflow implementation (c2d531f)
- hubspot follow-up workflow design (b7755a9)
- hubspot follow-up workflow design (4ec51fd)
- plan the inline layout and whitespace stage (5010a91)
Refactoring
- delete the walker, stage-2 engine is the renderer (6ced3d2)
- drop dead ul margin guard and pin rem and heading-ladder rows (99e3ea9)
- canonical block runs and body style inheritance (17d49bc)