edfcore 0.5.5 → 0.5.7

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.5.5";
112
+ export declare const VERSION = "0.5.7";
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.5.5';
82
+ export const VERSION = '0.5.7';
83
83
  //# sourceMappingURL=constants.js.map
package/docs/CHANGELOG.md CHANGED
@@ -6,6 +6,47 @@ 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.5.7
10
+
11
+ - **Added** the one worked `readWindow` result on `api-reading.md`, built and run. The page shows a
12
+ 65-second window over a discontinuous file coming back as two chunks — `{ start: 498, count: 2 }`
13
+ at 498 s and `{ start: 500, count: 3 }` at 560 s with a gap before it — and it is the only place
14
+ the page shows what "one chunk per contiguous run" produces. Every figure in it was prose.
15
+ - The counts are the part worth running. 2 and 3 are not the same number and neither is 5, so a
16
+ reader can see from them that the window did not return every record between its ends. Both fall
17
+ out of the half-open rule: record 499 ends exactly at 500 s and is in, record 503 starts exactly
18
+ at 563 s and is out — the rule that decides whether consecutive epochs partition or overlap. The
19
+ run asserts the excluded record starts exactly at the window's end.
20
+ - `startSeconds: 560` is the other half: sixty seconds of the window lie inside the gap, so the
21
+ second chunk starts 62 seconds after the first while being only 2 records later. A consumer that
22
+ assumed `startSeconds` advanced with the record number would place three records a minute early.
23
+ - The window and both chunks are parsed out of the page, anchored to the printed line rather than
24
+ to the first `startSeconds` on it — an unanchored pattern picked up an earlier example's window
25
+ and built one nothing on the page describes, which passed its own parse and tested a different
26
+ file.
27
+
28
+ ## 0.5.6
29
+
30
+ - **Fixed** two lines of the `EdfSignal` block on `api-types.md` describing a different file from
31
+ the other five. The page prints one running example — six one-second records, one 100-sample
32
+ signal — and its test builds that file and checks `index`, `kind`, `samplesPerRecord`,
33
+ `sampleRateHz` and `sampleCount`. It stopped there, and the two lines it stopped before are the
34
+ two that would have failed: `signal.scale` prints a bitValue of `0.1221001221001221` and
35
+ `signal.raw.digitalMinimum` prints `'-2048 '`, while the fixture took the writer's defaults and
36
+ produced `0.015259021896696421` and `'-32768 '`.
37
+ - The page is the specification and the fixture is the reconstruction, so the fixture moved: the
38
+ printed values imply 500 µV over 4,095 digital steps and nothing else, and the conventions
39
+ paragraph at the top of the page introduces the "exposed twice" rule with the same `-2048` as its
40
+ example. Declaring `-250`..`250` over `-2048`..`2047` makes every line of the block true of one
41
+ file, and makes the sentence at the top true of it too.
42
+ - `bitValue` is re-derived through the pinned expression from the declared fields rather than
43
+ compared against the printed float. It is the number a reader checks their own port against, and
44
+ copying the page's sixteen digits into the test would make the two agree without either being
45
+ right.
46
+ - The whole block is now under test, including the raw field with its padding intact — compared
47
+ against the page without collapsing whitespace, since collapsing turns `'-2048 '` into
48
+ `'-2048 '` and quietly passes the check the sentence exists to make.
49
+
9
50
  ## 0.5.5
10
51
 
11
52
  - **Added** the table under "Files with several sample rates" on `reading-signals.md`, and the
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "edfcore",
3
- "version": "0.5.5",
3
+ "version": "0.5.7",
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.5.5';
96
+ export const VERSION = '0.5.7';