edfcore 0.4.472 → 0.4.473

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.472";
112
+ export declare const VERSION = "0.4.473";
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.472';
82
+ export const VERSION = '0.4.473';
83
83
  //# sourceMappingURL=constants.js.map
package/docs/CHANGELOG.md CHANGED
@@ -6,6 +6,24 @@ 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.473
10
+
11
+ - **Added** tests for a runtime with no `TextDecoder`, which `tal/grammar.ts` is written for and
12
+ nothing had ever run. `utf8Decoder()` is two branches — build one, or record that this runtime
13
+ has none — and every test in the suite runs on Node, where the global is always there. Both the
14
+ `null` and the message it selects were dead.
15
+ - The degradation is the point of the branch. Annotation text is the one place edfcore decodes
16
+ UTF-8, and without the fallback a runtime lacking the global would throw while parsing a file
17
+ that is perfectly valid, losing the onsets, the timeline and every event over text nobody may be
18
+ reading.
19
+ - What is pinned is the MESSAGE, not just the code. `ANNOTATION_TEXT_NOT_UTF8` also fires for a
20
+ text run that really is malformed, and the two call for opposite responses: one is a broken
21
+ file, the other is a working file on a runtime that cannot check it. Both are asserted, each
22
+ against the other's wording.
23
+ - The Latin-1 expectation is derived from the fixture's own bytes rather than written out, so it
24
+ cannot drift from the string it is about, and the global is stubbed and restored rather than
25
+ deleted, so the decoder the module caches cannot leak into another file.
26
+
9
27
  ## 0.4.472
10
28
 
11
29
  - **Documented and tested** what `threeFields` actually tolerates in a date or time field. Its
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "edfcore",
3
- "version": "0.4.472",
3
+ "version": "0.4.473",
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.472';
96
+ export const VERSION = '0.4.473';