edfcore 0.4.357 → 0.4.359

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.357";
112
+ export declare const VERSION = "0.4.359";
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.357';
82
+ export const VERSION = '0.4.359';
83
83
  //# sourceMappingURL=constants.js.map
package/docs/CHANGELOG.md CHANGED
@@ -6,6 +6,35 @@ 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.359
10
+
11
+ - **Added** a check for the two bucket-count rules on `api-helpers.md`. `readEnvelope` clamps
12
+ `buckets` to the densest signal's sample count, because more buckets than samples leaves holes
13
+ that mean nothing. `readEnvelopeAtResolution` does not clamp, because a resolution is a promise
14
+ about seconds per pixel and honouring it by dropping buckets would silently shorten the span the
15
+ caller is drawing.
16
+ - The page gives the case where they part company — a 4-second run of a 2 Hz signal at 0.25 s per
17
+ bucket reporting 16 buckets with 8 filled — and it is now produced. That sentence is what a
18
+ viewer's indexing depends on: `bucketCount` is the field to read before indexing, and a caller
19
+ who trusts the number they passed walks off the end of a short run or draws a grid narrower than
20
+ the window it claims to cover.
21
+
22
+ ## 0.4.358
23
+
24
+ - **Added** checks for three small pure functions on `api-primitives.md`. `decodeHeaderLatin1` is
25
+ the one with teeth: the page does not merely say `TextDecoder` is unused, it says why, with a
26
+ measurement — every relevant label reports `windows-1252` on Node and decodes `0x80` as U+0080,
27
+ while the WHATWG standard mandates U+20AC, so the same header bytes become different strings on a
28
+ server and in a tab. `text-decoder-ban.test.ts` forbids the call; this checks the behaviour the
29
+ ban buys, at the byte the two disagree about and across all 256 of them.
30
+ - `formatStartTimeNaive` returns `undefined` for two conditions, and the second is the one worth
31
+ having: a starttime of `23.59.60` fails its grammar, and without that branch the file came back
32
+ as midnight — an instant it never gave, and for a sleep study the most believable start there is.
33
+ - Its example renders `1951`, which is the FORMAT rather than the result of the field in the
34
+ fixture: the two-digit year rule puts 00..84 in 2000..2084, so `02.08.51` is 2051 and only a
35
+ four-digit EDF+ `Startdate` can say 1951. The check compares the shape against the page and the
36
+ value against the rule, which is what the first version of it got wrong.
37
+
9
38
  ## 0.4.357
10
39
 
11
40
  - **Added** an execution of the two-signal `trimToWindow` example on `api-primitives.md`. It exists
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "edfcore",
3
- "version": "0.4.357",
3
+ "version": "0.4.359",
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.357';
96
+ export const VERSION = '0.4.359';