edfcore 0.4.490 → 0.4.492

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.
@@ -109,5 +109,5 @@ export declare const SIGNAL_FIELD_BLOCK_OFFSETS: {
109
109
  readonly reserved: 224;
110
110
  };
111
111
  /** Published package version. Kept in sync with package.json by a test. */
112
- export declare const VERSION = "0.4.490";
112
+ export declare const VERSION = "0.4.492";
113
113
  //# sourceMappingURL=constants.d.ts.map
package/dist/constants.js CHANGED
@@ -79,5 +79,5 @@ export const SIGNAL_FIELD_BLOCK_OFFSETS = {
79
79
  reserved: 224,
80
80
  };
81
81
  /** Published package version. Kept in sync with package.json by a test. */
82
- export const VERSION = '0.4.490';
82
+ export const VERSION = '0.4.492';
83
83
  //# sourceMappingURL=constants.js.map
package/docs/CHANGELOG.md CHANGED
@@ -6,6 +6,40 @@ alone does not tell you whether you were affected.
6
6
  edfcore is pre-1.0. Patch releases have carried behaviour changes where the old behaviour was a
7
7
  defect; those are called out below.
8
8
 
9
+ ## 0.4.492
10
+
11
+ - **Added** a test that runs the worked example on `reading-signals.md`. That page carries the
12
+ argument the whole indexing design exists for — `trimToWindow` compares integers taken from the
13
+ header as written, never `round(t * sampleRateHz)` — and it makes the case with six concrete
14
+ numbers and a footnote counting how often the two disagree. Nothing ran any of them.
15
+ `documented-examples.test-d.ts` compiles the snippets, which proves they are valid TypeScript
16
+ and says nothing about whether 8534 is the answer.
17
+ - Numbers in prose rot in a direction that is hard to see. A value that was right when it was
18
+ written stays plausible for ever, because a reader checks it against their intuition rather than
19
+ against the library — and this page exists to correct an intuition. The footnote is the extreme
20
+ case: "1,000 of the first 3,001, always by exactly one sample" is a claim nobody can check by
21
+ reading, and the argument leans on it.
22
+ - Every figure is read OUT OF THE PAGE and compared with what the library does, the way
23
+ `scaling-page-arithmetic.test.ts` reads the count it checks, so neither side can drift from the
24
+ other. All of them hold, footnote included: 1,000 disagreements over 3,001 second boundaries,
25
+ every one of them exactly one sample, and the float answer earlier every time.
26
+ - Restoring the pre-0.3.56 rounding — the defect the code's own comment records — now fails this
27
+ file rather than only the unit tests written for it.
28
+
29
+ ## 0.4.491
30
+
31
+ - **Added** the `maxMaterializeBytes` boundary for `toPhysical` and `clampToDigitalRange` — the
32
+ fifth module that compares a requirement against that budget, and the last one still untested at
33
+ the edge.
34
+ - Finding them one at a time is the thing that kept going wrong. 0.4.464 covered three, found by
35
+ grepping for `resolveMaterializeBudget`; 0.4.482 found a fourth in `validate.ts` whose local
36
+ variable the grep walked past; this is the fifth. So the file now enumerates the refusal sites
37
+ out of `src/` and fails on a sixth until it is listed — which is the only way this stops being a
38
+ rule that most of the code follows.
39
+ - Both array widths are checked here rather than one, because they are different numbers reached
40
+ through the same comparison: eight bytes a sample for the float64 result, four for the clamped
41
+ int32. A boundary correct for one and wrong for the other would look tested.
42
+
9
43
  ## 0.4.490
10
44
 
11
45
  - **Added** a check that every published export is reached by the suite a fresh clone actually
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "edfcore",
3
- "version": "0.4.490",
3
+ "version": "0.4.492",
4
4
  "description": "Modern, typed, zero-dependency reader for EDF, EDF+, BDF and BDF+ biosignal files. Works in browsers and Node with true random access.",
5
5
  "keywords": [
6
6
  "edf",
package/src/constants.ts CHANGED
@@ -93,4 +93,4 @@ export const SIGNAL_FIELD_BLOCK_OFFSETS = {
93
93
  } as const;
94
94
 
95
95
  /** Published package version. Kept in sync with package.json by a test. */
96
- export const VERSION = '0.4.490';
96
+ export const VERSION = '0.4.492';