tosijs-ui 1.15.0 → 1.15.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,36 @@
1
1
  # Changelog
2
2
 
3
+ ## 1.15.1
4
+
5
+ ### Doc-test failures reported the wrong line — the same wrong line, every time (#142)
6
+
7
+ Reported by an adopter converting a WebGL project to test fences: two failures in two
8
+ *different* blocks both named `(line 114)`. Reproduced in Chromium — blocks failing at lines 2
9
+ and 10 both reported **131**.
10
+
11
+ Nothing was being recognised as the user's frame, so the first bundle frame won and every
12
+ failure named one constant wrong line. The cause is narrow and unlucky: the only mechanism was
13
+ a list of bundle filenames to skip, it matched a bare `/iife.js`, and a doc site serves
14
+ `/iife.js?v=<hash>` — the cache-busting stamp — which the `$` anchor rejects. It also never
15
+ listed `hydrate.js`, which is the bundle an *adopter's* site actually loads. So on a real doc
16
+ site nothing was skipped at all.
17
+
18
+ The user's frame is now identified **positively**, by the `sourceURL` the code was tagged with,
19
+ which is immune to query strings, to bundle names we did not anticipate, and to whatever an
20
+ adopter calls theirs. The exclusion list survives as a fallback for untagged stacks, now
21
+ matching on the path with any query or fragment stripped. When a tag is expected and no tagged
22
+ frame exists — WebKit routinely produces none — it reports **nothing** rather than guessing.
23
+
24
+ The reporter's framing was right and is worth keeping: *a wrong line is worse than none,
25
+ because it sends you confidently to the wrong place.*
26
+
27
+ ### `toBeCloseTo`, `toBeGreaterThanOrEqual`, `toBeLessThanOrEqual` in doc tests (#142)
28
+
29
+ Also from that report. Everything renderer-shaped is floats — intensities, densities, bounding
30
+ boxes — and without `toBeCloseTo` they were writing `Math.round(x * 1e6) / 1e6` at every
31
+ assertion. Jest's semantics exactly, so the habit transfers: `digits` is decimal places and the
32
+ tolerance is half a unit in the last one. All three compose with `.not`.
33
+
3
34
  ## 1.15.0
4
35
 
5
36
  ### `save-to-source` wrote edits into the wrong fence, silently
File without changes