edfcore 0.4.371 → 0.4.373

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.371";
112
+ export declare const VERSION = "0.4.373";
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.371';
82
+ export const VERSION = '0.4.373';
83
83
  //# sourceMappingURL=constants.js.map
package/docs/CHANGELOG.md CHANGED
@@ -6,6 +6,40 @@ 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.373
10
+
11
+ - **Added** a cross-check between the two tables of the four onset fields — `annotations.md` lists
12
+ them by axis, `api-helpers.md` under "Which onset field to compare" — so the two agree about
13
+ which four exist, which axis each is measured from, and which two are exact. Two tables of one
14
+ fact is the shape this repository keeps finding wrong; their orders differ by design, so the sets
15
+ are what have to match.
16
+ - The "exact" column is a claim about arithmetic rather than a label, and it is now executed: it is
17
+ why `filterAnnotationsByTime` compares ticks, and the page warns that comparing the seconds
18
+ fields means "an onset and a bound that should be equal need not compare equal". Three tenths is
19
+ three times one tenth to the tick and not in seconds, on the rebased axis a window is measured
20
+ on.
21
+ - The worked example's four values are produced from a file built to its description, and the two
22
+ axes are checked to differ by exactly `timeline.startOffsetSeconds` — which is the whole reason
23
+ there are two of them.
24
+
25
+ ## 0.4.372
26
+
27
+ - **Added** checks for the sample-grid section of `api-helpers.md`. The page opens by naming what a
28
+ reader would otherwise write — `Math.round(seconds * signal.sampleRateHz)` — and tabulating three
29
+ ways it fails silently. Two of them are now demonstrated: an undefined rate on a zero-duration
30
+ file makes the expression `NaN` where the grid functions throw a `RangeError`, and rounding
31
+ rather than flooring reaches the next sample before its boundary.
32
+ - The rounding rule is checked as the property the page states it as: rounding a sample's start up
33
+ to a whole tick keeps `gridSampleStartTicks` and `gridSampleIndexAt` inverse for every index,
34
+ because a truncated tick lands inside the previous sample. Verified across every sample of six
35
+ records at 128 samples over 0.3 s — the geometry whose boundaries are half ticks — and with the
36
+ truncating alternative shown to land early.
37
+ - The third row, the index drifting by one over a long recording, is deliberately NOT asserted, and
38
+ the test says so. Fed the tick this package publishes, the naive expression agrees with the
39
+ integer arithmetic for every index of every geometry tried; the two roundings cancel. The drift
40
+ belongs to times a caller arrives at some other way, and a fixture manufacturing one would be
41
+ asserting about its own construction rather than about the library.
42
+
9
43
  ## 0.4.371
10
44
 
11
45
  - **Added** a check on where the type tests are actually verified. `tests/types/` holds five
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "edfcore",
3
- "version": "0.4.371",
3
+ "version": "0.4.373",
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.371';
96
+ export const VERSION = '0.4.373';