Skip to content

v0.3.0

Choose a tag to compare

@github-actions github-actions released this 04 Sep 13:28
· 123 commits to master since this release

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)

Testing

  • migrate semianalysis layout pins to the stage-2 engine (b02d3ac)
  • pin white-space apply triples and normal override (2d44e6f)