Repository navigation
v2.1.2
What this cut is
- A
polygonpack is the least total page area of three whole packs (#1104 → #1111). A candidate was anchored at its owned box's corner, so a large region whose mesh draws a small part of it could never be placed on an empty page — which is why the polygon packer produced the rectangle page to the texel on production rigs in 2.1.0. The pack now lays the set out three ways —rect, the owned-box anchor, and one that may also put a cell's own corner where that anchor would leave the page — and writes the one with the least page area over every page, so no polygon pack is larger thanrect's on any set, a spill's pages included (a defect on main where a spilledpotpack came out 33 % larger thanrectcloses with it). On a replica of the slow production rig: 4,367,445 → 2,585,264 texels underfree(−40.8 %), −20 % underpot; on the galleryflex−1.7 %,nod−1.3 %. Cost is bounded at 25×rectin the packer's own tally on the production-shaped set (seed 1107 13.6×; a second pack of 1.1 s against 0.06 s).tools/pack_anchor.tsis the instrument that measured it, over any recipes document or a region list. - The entry without spine-core, refusing
validateon a rigc build, says the build already ran its gate (#1097 → #1109). A consumer read the old refusal as a gate its install could not run and kept the runtime as a dependency for it (#1095). When the refused target is a rigc build —skeleton.model.jsonbeside the pair — the refusal now says that a rigc build writes nothing until its gate is green, that the gate ran when the pair was written, and that the document records what was compiled withspine.sha256naming the bytes the gate read. A Spine export's refusal is byte-identical to before. - The editor round trip refuses a
skeleton.jsonthat is not one JSON object before the editor starts (#1090 → #1108). Half the shapes threw a stack; the other half —[],7— started the editor on a file that is not a skeleton. The file is read and parsed once, first, and refused by its path and what was found (not JSON, empty, a directory, an array,null), with the probe's fields refused by name when they are the wrong kind. A readable build prints the same output as before, byte for byte.
Not in this cut: the round trip's stacks after the editor has run (#1107); converting region attachments to meshes (stage 2 of #1093).
Bug Fixes
- atlas: a
polygonpack is the least total page area of three whole packs —rect's, the owned-box anchor's, and one that may also put a cell's own corner where that anchor would leave the page — so a large region whose mesh draws a small part of it no longer forces therectpage, and no polygon pack is larger thanrect's on any set, a spill's pages included (#1111) (3e889a2) - cli: the entry without spine-core, refusing
validateon a rigc build, says the build already ran its gate before it wrote — an export's refusal is unchanged (#1109) (c87ef94), closes #1097 - tools: the editor round trip refuses a build whose
skeleton.jsonis not one JSON object by its path and what it found there — not JSON, empty, a directory,[],null— before the editor starts, where it used to throw a stack or start the editor on a file that is not a skeleton (#1108) (ef2fbdb), closes #1090