edfcore 0.4.321 → 0.4.323

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.321";
112
+ export declare const VERSION = "0.4.323";
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.321';
82
+ export const VERSION = '0.4.323';
83
83
  //# sourceMappingURL=constants.js.map
package/docs/CHANGELOG.md CHANGED
@@ -6,6 +6,30 @@ 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.323
10
+
11
+ - **Added** an execution of the four-line record arithmetic on `edf-format.md` — the sample width
12
+ per family, the record length as the summed sample counts, each signal's offset within a record
13
+ as the sum of the counts before it, and the file offset of record `r`. The four lines are checked
14
+ to still be on the page, then run against four shapes: both families, a five-signal file, a
15
+ one-signal file, and the mixed-rate case the page describes, EEG at 256 samples per record beside
16
+ a channel at 1.
17
+ - `concepts-arithmetic.test.ts` covers one specific file from the concepts page. These are the
18
+ general equations that file is an instance of, including the closing one: the last record has to
19
+ end exactly at the end of the file, with no padding and no trailer.
20
+
21
+ ## 0.4.322
22
+
23
+ - **Fixed** a wrong claim on `edf-format.md`. It named `|0`, `<<` and `>>>` together as operators
24
+ that "wrap it negative without warning" past 2^31. `>>>` is the unsigned shift and never returns
25
+ a negative number: it truncates to 32 bits and keeps handing back a plausible offset until 2^32,
26
+ then a wrong one. Grouping it with the other two described the safer failure and hid the more
27
+ dangerous one — a negative offset is caught by the first bounds check it meets, and a positive
28
+ wrong one is not.
29
+ - Found while writing 0.4.321, whose demonstration would not assert what the sentence said. The
30
+ corrected wording is now pinned by that test, and both behaviours are shown at the sizes where
31
+ they actually occur.
32
+
9
33
  ## 0.4.321
10
34
 
11
35
  - **Added** a guard for the offset rule `edf-format.md` states: offsets stay in plain floats, which
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "edfcore",
3
- "version": "0.4.321",
3
+ "version": "0.4.323",
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.321';
96
+ export const VERSION = '0.4.323';