edfcore 0.4.382 → 0.4.384

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.382";
112
+ export declare const VERSION = "0.4.384";
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.382';
82
+ export const VERSION = '0.4.384';
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.384
10
+
11
+ - **Added** the browser half of `node-floor.test.ts`. The Node floor is checked in eleven places
12
+ against `engines.node`, a field a package manager reads; the browser floor has no such field —
13
+ no browserslist, nothing in `package.json` — and its three statements (the README's compatibility
14
+ line, the Runtimes table on `installation.md`, and the summary string `llms.txt` hands an agent)
15
+ were three independent sentences that happened to agree.
16
+ - The table is the source, since it is the one with the reasoning printed under it, and the other
17
+ two are checked against it. A floor raised in one place tells a reader their browser is supported
18
+ on one page and unsupported on the next.
19
+ - The check with teeth is the last one. The table's stated basis is "ES2022 syntax, `BigInt`,
20
+ `Blob.prototype.slice`, and `TextDecoder`", and the first of those is not an observation about
21
+ the code — it is `target` and `lib` in `config/tsconfig.build.json`. Raising either to ES2023 is
22
+ a one-word edit that compiles, ships, passes every other test here, and invalidates all three
23
+ published floors at once.
24
+ - It does not check that 94, 93 and 15.4 are the right versions for those four features. That is a
25
+ question about browser release history, which nothing in this repository can settle.
26
+
27
+ ## 0.4.383
28
+
29
+ - **Added** a check for the last paragraph of `data-sources.md`, which says what survives
30
+ `close()`: the header and the timeline stay readable, and `readRecords`, `readWindow`,
31
+ `readAnnotations` and an unmemoised `index.locate` fail. Every `fileSource` example on the site
32
+ is wrapped in `try { … } finally { await source.close?.() }`, so a recording outliving its handle
33
+ is the ordinary shape of a program here, and that paragraph was the only statement of which half
34
+ of the object still works.
35
+ - The carve-out in it turned out to be narrower than it reads. A probed index memoises records 0
36
+ and n−1 at open and every record a search walks over, so `locate(0.5)` answers after the close
37
+ only if it already ran before it — on a freshly opened file the binary search probes a midpoint
38
+ first. Both cases are pinned, since a later memoisation change makes that quietly more generous.
39
+ - It does not claim the rejection is an `EdfError`. It is whatever the source raises: for
40
+ `fileHandleSource` that is Node's own `Error: file closed`, and `isEdfError` returns false for
41
+ it. Closing your own handle is not a file defect.
42
+
9
43
  ## 0.4.382
10
44
 
11
45
  - **Fixed** the docblock at the top of `scripts/release.mjs`, which described the scheme that was
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "edfcore",
3
- "version": "0.4.382",
3
+ "version": "0.4.384",
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.382';
96
+ export const VERSION = '0.4.384';