edfcore 0.4.359 → 0.4.361

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.359";
112
+ export declare const VERSION = "0.4.361";
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.359';
82
+ export const VERSION = '0.4.361';
83
83
  //# sourceMappingURL=constants.js.map
package/docs/CHANGELOG.md CHANGED
@@ -6,6 +6,36 @@ 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.361
10
+
11
+ - **Added** a check over the error-class table on `api-errors.md`. Seven classes, each with an
12
+ `edfErrorKind` — the field a caller branches on, since `instanceof` is false across a realm
13
+ boundary — so the table is the map between the class you catch and the string you switch on. Each
14
+ row now has a fixture that produces the condition it describes, so none is checked by assertion
15
+ alone, and a class whose kind changed would otherwise fall silently into a different branch of
16
+ every consumer's handler.
17
+ - The distinction below the table is checked too. An error raised from a diagnostic opens with its
18
+ code in brackets; `EdfDiagnostic.message` does not, because `formatDiagnostics` renders the code
19
+ from the field beside it. Prefixing `error.code` when displaying a diagnostic therefore prints it
20
+ twice, which is what the inspector on this site did until 0.4.185 — a convention, and a
21
+ convention is what the next message quietly breaks.
22
+
23
+ ## 0.4.360
24
+
25
+ - **Added** checks for the two things `toPhysicalEnvelope` does that `toPhysical` must not be used
26
+ for. A bucket no sample landed in carries a digital `0`, because `min` and `max` are
27
+ `Int32Array`s and cannot hold a sentinel — and through the affine map that becomes mid-scale for
28
+ any channel whose range is not centred on zero. On the 0..1000 channel the page names it is 500,
29
+ which is now computed from the scale rather than quoted: a completely believable reading, drawn
30
+ as a flat trace across a hole.
31
+ - That failure is worth a test precisely because everything about it looks right — the number is
32
+ inside the channel's range, the arrays agree in length, the trace is continuous, and the only
33
+ sign is a stretch nobody sampled drawn as a steady midpoint. Both arrays now have to be `NaN`
34
+ wherever `counts` is zero, and `counts` itself has to be untouched.
35
+ - The second is polarity: a negative gain makes the map decreasing, so mapping `min` to `min`
36
+ yields an envelope drawn inside out. Every filled bucket on such a channel is checked to come
37
+ back with its lower bound below its upper one.
38
+
9
39
  ## 0.4.359
10
40
 
11
41
  - **Added** a check for the two bucket-count rules on `api-helpers.md`. `readEnvelope` clamps
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "edfcore",
3
- "version": "0.4.359",
3
+ "version": "0.4.361",
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.359';
96
+ export const VERSION = '0.4.361';