edfcore 0.4.391 → 0.4.393

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.391";
112
+ export declare const VERSION = "0.4.393";
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.391';
82
+ export const VERSION = '0.4.393';
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.393
10
+
11
+ - **Added** a property test for the rule `design-decisions.md` states about out-of-range samples: a
12
+ sample outside the declared digital range comes back as it was stored, is counted for free during
13
+ decode, and converts on the affine map that produced the samples inside the range. Clamping
14
+ instead flat-tops real peaks and draws saturation the hardware did not produce, so `edfcore` ships
15
+ the clamp as a separate function you call on purpose — EDFlib clamps on read, and cross-validating
16
+ against it needs the same operation.
17
+ - The unit tests check that with chosen values against chosen ranges. What examples cannot say is
18
+ that nothing clamps for some combination: a negative gain, a range that does not straddle zero, a
19
+ 24-bit signal whose declared span is narrower than a 16-bit one's. Those are the shapes where a
20
+ stray `Math.min` looks correct in review.
21
+ - Four properties over generated ranges, generated samples and both storage widths: the decoded
22
+ integers are the integers written, `outOfDigitalRangeCount` is what an independent pass finds,
23
+ the physical step per digital unit outside the range equals the step inside it — which is what
24
+ "extrapolates" means — and `clampToDigitalRange` moves exactly the samples outside the range and
25
+ nothing else.
26
+
27
+ ## 0.4.392
28
+
29
+ - **Added** a check that the docblocks reach the published types, which five other checks quietly
30
+ assume. `config/tsconfig.build.json` sets `removeComments: false`, and that one line is why the
31
+ module docblock of `src/index.ts` is the hover text an editor shows over an import, and why
32
+ `readme-status.test.ts`, `node-floor.test.ts`, `module-layers.test.ts`, `file-references.test.ts`
33
+ and `next-clause.test.ts` each say some version of "this comment ships, so a stale one is stale
34
+ in the package".
35
+ - Nothing asserted it. Flip the flag and all five keep passing — they read `src/`, and the claim
36
+ they draw from it is about `dist/`. What changes is that the published `.d.ts` files lose every
37
+ line of documentation, an editor shows a bare signature on hover, and the package's reasoning
38
+ about itself stops being visible to anyone who installs it.
39
+ - The setting is asserted and then the artifact is checked rather than the setting: a distinctive
40
+ sentence from three source docblocks has to be present, verbatim, in the `.d.ts` built from it.
41
+ `removeComments` is one of several ways to lose them, and reading the file catches the rest.
42
+
9
43
  ## 0.4.391
10
44
 
11
45
  - **Added** a check that the defaults the option tables print are the defaults the code applies.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "edfcore",
3
- "version": "0.4.391",
3
+ "version": "0.4.393",
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.391';
96
+ export const VERSION = '0.4.393';