edfcore 0.4.493 → 0.4.495

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.493";
112
+ export declare const VERSION = "0.4.495";
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.493';
82
+ export const VERSION = '0.4.495';
83
83
  //# sourceMappingURL=constants.js.map
package/docs/CHANGELOG.md CHANGED
@@ -6,6 +6,39 @@ 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.495
10
+
11
+ - **Added** a test that measures the two cost tables on `large-files.md`. That page is the
12
+ random-access claim made concrete — it names two files by their exact geometry and prints, byte
13
+ for byte, what opening one and reading ten seconds out of the other costs. Four read ranges with
14
+ their offsets, two totals, a percentage, a sample count, an overread factor, and the highest byte
15
+ either read touches. None of it had ever been run.
16
+ - `documented-read-counts.test.ts` checks the read COUNTS `api-reading.md` states in prose. This
17
+ page states offsets and lengths, which is the stronger claim and the one a reader budgets
18
+ against: an HTTP round trip is priced by where a range starts and how long it is, not by how many
19
+ there are.
20
+ - Neither file is built. One is 29 MB and the other 442 MB, and both claims are about which bytes
21
+ are ASKED for, so a source that reports the length, serves a header of the right geometry and
22
+ records the ranges answers it exactly.
23
+ - Every figure comes out of the page, so the two cannot drift apart in either direction. All of
24
+ them hold: the four open reads land on the offsets printed, the ten-second window is one
25
+ 153,600-byte range at 221,191,936, and the far end of the recording is never addressed.
26
+
27
+ ## 0.4.494
28
+
29
+ - **Added** a test that produces the refusal `large-files.md` prints. That page's budget section is
30
+ a transcript — three field values and the whole error message, wrapped over three lines, for a
31
+ named file — and nothing had compared any of it with what `readRecords` throws.
32
+ - A message reworded in `io/read.ts` leaves a transcript on the site that no version of edfcore has
33
+ ever produced, and the transcript is the part a reader searches for when they hit the error.
34
+ `budget-boundary.test.ts` owns the rule; this owns the page.
35
+ - The file on that page is 442 MB and is never built. `readRecords` refuses before it allocates or
36
+ reads, which is the property the section is about, so a source reporting the length and serving
37
+ the header is all this needs — and the last case counts the bytes to prove the refusal really did
38
+ come first, rather than after a 442,368,000-byte read of zeros.
39
+ - Every number is read out of the page, including the geometry in the sentence that introduces the
40
+ file, so a fixture drifting from the prose fails rather than agreeing about the wrong recording.
41
+
9
42
  ## 0.4.493
10
43
 
11
44
  - **Added** the two edges of `readHeader`'s prefetch decision, both of which could be moved with
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "edfcore",
3
- "version": "0.4.493",
3
+ "version": "0.4.495",
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.493';
96
+ export const VERSION = '0.4.495';