edfcore 0.4.413 → 0.4.415

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.
package/README.md CHANGED
@@ -78,7 +78,7 @@ for (const event of annotations) {
78
78
  }
79
79
  ```
80
80
 
81
- > **Status: 0.4.x, early.** edfcore runs 2,000+ tests on generated fixtures, and it's checked
81
+ > **Status: 0.4.x, early.** edfcore runs 2,500+ tests on generated fixtures, and it's checked
82
82
  > against public corpora it didn't author: the EDF, EDF+ and 24-bit BDF+ test files from
83
83
  > teuniz.net, and PhysioNet's sleep-edfx (a real 22-hour polysomnography recording and its
84
84
  > sleep-staging file). Those checks are numeric. Channels labelled `sine 8.5 Hz` decode to
@@ -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.413";
112
+ export declare const VERSION = "0.4.415";
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.413';
82
+ export const VERSION = '0.4.415';
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.415
10
+
11
+ - **Raised** the test-count figure from 2,000 to 2,500 in the README's status line, the note at the
12
+ foot of `installation.md` and the docblock of `browser-safety.test.ts`. The suite has outgrown
13
+ the old number: 2,002 written-out cases, and vitest reports around 2,900 once `it.each` rows
14
+ expand.
15
+ - Found by `test-count-claims.test.ts`, added in 0.4.388 for exactly this. A claim of the form
16
+ "N or more" stays true forever once it is true, which is the property that makes it worthless —
17
+ it can never be wrong, so it is never re-read, and half the real scale is a wrong impression
18
+ conveyed in a true sentence. This is the first time the guard has fired.
19
+ - **Fixed** the same self-quotation trap in that file, for the second time. The comment documenting
20
+ the regex illustrated it with the two spellings it matches, so the scanner read its own examples
21
+ as a fourth statement of the figure — and the one place raising the claim elsewhere would never
22
+ touch. The comment now describes the shape instead of spelling a number.
23
+
24
+ ## 0.4.414
25
+
26
+ - **Added** a check that binds every entry of AGENTS.md's "Things that look like bugs and are not"
27
+ to the test that pins it. The section exists because each entry is something a reader improves on
28
+ sight — the scaling expression has an obviously better rearrangement, `readWindow` returning an
29
+ array for a continuous file is an obviously unnecessary wrapper, an optional `signal.scale` is an
30
+ obviously missing default — and every one of them has been proposed.
31
+ - It closes with a promise about itself: "Each of the code rules has a test pinning it and a comment
32
+ explaining why." Nothing checked that sentence, and both ways it stops being true are ordinary. A
33
+ rule gets added because someone was bitten by it and no test comes with it, so the list reads as
34
+ enforced while it is not. Or a test is renamed in a tidy-up, and nothing fails — the rule is still
35
+ checked, or it is not, and nobody can tell which from the list.
36
+ - The binding is checked in both directions: a new bullet with no entry fails, and an entry naming
37
+ a file that no longer exists or no longer mentions the rule fails too. Each binding carries a
38
+ phrase the file must contain, so a filename alone cannot stand in for a check.
39
+ - The last entry is exempt by the sentence's own words — it is a fact about a branch on a remote,
40
+ which an offline suite cannot see — and it is required to still BE the last, because a rule
41
+ appended after it would inherit an excuse written for something else.
42
+
9
43
  ## 0.4.413
10
44
 
11
45
  - **Added** tests for the calendar edfcore validates against. `isValidCalendarDate` exists because
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "edfcore",
3
- "version": "0.4.413",
3
+ "version": "0.4.415",
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.413';
96
+ export const VERSION = '0.4.415';