edfcore 0.4.464 → 0.4.465

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.464";
112
+ export declare const VERSION = "0.4.465";
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.464';
82
+ export const VERSION = '0.4.465';
83
83
  //# sourceMappingURL=constants.js.map
package/docs/CHANGELOG.md CHANGED
@@ -6,6 +6,21 @@ 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.465
10
+
11
+ - **Added** the close half of `cachedSource`'s pass-through, which had never run. At `maxBytes: 0`
12
+ the function returns a different object entirely — built and returned before any cache state
13
+ exists — with its own `read` and its own `close`. The read half was covered twice over; the
14
+ close half is the one whose failure a test cannot see indirectly.
15
+ - `cachedSource(await fileSource(path), { maxBytes: 0 })` is a reasonable thing to write. The page
16
+ documents the budget as floored at 0, and wrapping unconditionally while tuning the number per
17
+ environment is how a caller arrives there. A pass-through that dropped the delegation would hold
18
+ the descriptor open for the life of the process, with nothing about the reads looking wrong.
19
+ - The optional-`close` case is pinned alongside it: `ByteSource.close` is optional and
20
+ `byteSource(bytes)` is the adapter that omits it, so `source.close?.()` is what makes closing a
21
+ zero-budget wrapper over an in-memory file resolve rather than throw a `TypeError` — the shape a
22
+ caller hits while swapping adapters.
23
+
9
24
  ## 0.4.464
10
25
 
11
26
  - **Added** tests for the `maxMaterializeBytes` boundary in all three modules that check it —
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "edfcore",
3
- "version": "0.4.464",
3
+ "version": "0.4.465",
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.464';
96
+ export const VERSION = '0.4.465';