edfcore 0.4.272 → 0.4.273

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.272";
112
+ export declare const VERSION = "0.4.273";
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.272';
82
+ export const VERSION = '0.4.273';
83
83
  //# sourceMappingURL=constants.js.map
package/docs/CHANGELOG.md CHANGED
@@ -6,6 +6,20 @@ 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.273
10
+
11
+ - **Made** the fuzz suite assert the clause it was missing. `tests/README.md` states the safety
12
+ property in four parts — "it never hangs, never allocates unboundedly, never returns NaN, and
13
+ never returns believable garbage" — and attributes all four to `property/fuzz.test.ts`, which
14
+ opened by saying it asserts three and listed them. The gap was "never allocates unboundedly":
15
+ its bounded clause was a wall-clock budget, which catches slowness, and slowness is a different
16
+ failure from a corrupt header talking a reader into an allocation it cannot afford.
17
+ - Every fuzz read now runs under `maxMaterializeBytes`, and a read that succeeds must have stayed
18
+ inside it. Exceeding it throws `EdfBudgetError`, which clause 1 already accepted as a legitimate
19
+ refusal; the new half is that a decoder which allocated past the ceiling and handed the array
20
+ back anyway would have satisfied every other clause in the file. Verified by lowering the
21
+ ceiling below what the fixtures decode to and watching the violation report the byte count.
22
+
9
23
  ## 0.4.272
10
24
 
11
25
  - **Executed** the offline claim instead of stating it. `tests/README.md` opens with
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "edfcore",
3
- "version": "0.4.272",
3
+ "version": "0.4.273",
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.272';
96
+ export const VERSION = '0.4.273';