edfcore 0.4.368 → 0.4.370

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.368";
112
+ export declare const VERSION = "0.4.370";
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.368';
82
+ export const VERSION = '0.4.370';
83
83
  //# sourceMappingURL=constants.js.map
package/docs/CHANGELOG.md CHANGED
@@ -6,6 +6,38 @@ 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.370
10
+
11
+ - **Added** an execution of the annotations-signal section of `concepts.md`, the page the README
12
+ calls the mental model the rest of the API follows from. Both claims in it describe a wrong
13
+ answer that looks right.
14
+ - Decoding an annotations channel as samples yields "a plausible-looking trace made of ASCII" with
15
+ no wobble to say anything went wrong, so the refusal is the feature and the page prints the whole
16
+ message — now compared word for word. It is a plain `RangeError` rather than an `EdfError`
17
+ because it can only be a caller's mistake, which is checked from the consumer's side: a handler
18
+ branching on `isEdfError` must not catch it, or a caller's bug gets reported as a bad file.
19
+ - The second is that only the first annotations signal carries timekeeping, so only its first TAL
20
+ is stripped. Stripping the others deletes a real event silently — the annotation is simply not in
21
+ the list and nothing says one is missing — so a file with two annotation channels now has to
22
+ return both of their first events.
23
+
24
+ ## 0.4.369
25
+
26
+ - **Added** a check over what a `ValidationReport` promises on `validation.md`. `ok` is the field a
27
+ caller branches on and means less than it looks like — exactly "no diagnostic has severity
28
+ `error`", not a claim that the file is conformant, and a false `ok` not a claim it is unreadable.
29
+ The four codes the page says survive to a report at that severity are checked to be the only ones
30
+ that do, on a file where one signal has no scale and the other is fine.
31
+ - The sentence pinned hardest is the one about what cannot appear: no always-fatal code reaches a
32
+ report, because a file carrying one cannot be opened, and a report about such a file would be
33
+ incoherent rather than merely wrong. The single exception is asserted from the other side —
34
+ `TIMELINE_NOT_MONOTONIC` makes the sweep reject.
35
+ - `signalStats` has a shape a caller indexes by: one entry per data signal in `dataSignalIndices`
36
+ order, with annotation channels excluded because their bytes are text, so an off-by-one gives
37
+ every channel its neighbour's statistics. And a signal with no samples reports zeroes rather than
38
+ infinities — `-Infinity` is what an unseeded reduce produces, and it is a number a caller would
39
+ plot.
40
+
9
41
  ## 0.4.368
10
42
 
11
43
  - **Added** `tests/property/inspect-safety.test.ts`. `inspectEdf` is the triage call and makes the
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "edfcore",
3
- "version": "0.4.368",
3
+ "version": "0.4.370",
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.368';
96
+ export const VERSION = '0.4.370';