edfcore 0.4.448 → 0.4.450

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.448";
112
+ export declare const VERSION = "0.4.450";
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.448';
82
+ export const VERSION = '0.4.450';
83
83
  //# sourceMappingURL=constants.js.map
package/docs/CHANGELOG.md CHANGED
@@ -6,6 +6,45 @@ 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.450
10
+
11
+ - **Added** a property test that `printable` never changes the width of what it is given. Every
12
+ table the package prints depends on it: `formatHeader` pads a label into a column, the CLI's
13
+ `signals` output is tab-separated for `cut -f2`, and the validation report lines observed ranges
14
+ up under a heading — all on text read out of a file, where EDF says a label is sixteen bytes and
15
+ says nothing about what may be in them.
16
+ - The module's docblock states the rule and rejects two alternatives, both of which are the natural
17
+ thing to reach for and both correct-looking: a stripped control character is gone, an escaped one
18
+ is legible. Either shifts a column by a character per occurrence. Those alternatives are now an
19
+ executable contrast rather than a comment — the property computes both and shows one shortens and
20
+ one lengthens.
21
+ - The generated text covers what a fixture-writer does not think of: astral characters, which are
22
+ two UTF-16 units and one iteration of a `for…of`; lone surrogates, which are one of each; the
23
+ Latin-1 supplement, which a European electrode label really contains; and the line separator the
24
+ docblock argues should pass through. DEL is drawn separately, because a generator covering only
25
+ 0x00-0x1f leaves the second half of the condition untouched while looking thorough.
26
+ - Three invariants, and the third is what makes the first two mean anything: the length is
27
+ unchanged, no C0 or DEL survives, and every character that was not one is exactly what it was.
28
+ Without the third, returning a string of dots would satisfy the other two.
29
+
30
+ ## 0.4.449
31
+
32
+ - **Added** a check that the sourcemaps in the published package point at files the package ships.
33
+ `sourceMap` and `declarationMap` in the build config and `src` in `files` are one feature: tsc
34
+ emits maps whose sources are `../src/x.ts` relative to `dist/` and inlines no `sourcesContent`,
35
+ so the maps resolve only because the TypeScript ships beside them. That is why
36
+ `check-tarball.mjs` refuses a tarball without `src/` with the words "the sourcemaps resolve to
37
+ nothing".
38
+ - Nothing checked that the maps say what the arrangement assumes, and three edits break it while
39
+ failing nothing: dropping `src` from `files` to make the tarball smaller — 250 KB of TypeScript
40
+ for a package whose `dist` is what runs looks like dead weight; turning `sourcesContent` on,
41
+ which makes `src/` redundant right up until someone turns it off again; or turning either map off.
42
+ - What breaks is not a build. It is a consumer stepping into `openEdf` in a debugger and landing in
43
+ compiled output, or "go to definition" on `EdfHeader` opening a `.d.ts` instead of the file whose
44
+ comments explain the field. The package still installs, still imports, still passes everything
45
+ here — what stops working is the reason `removeComments: false` and `declarationMap` are set at
46
+ all, that the source is what a reader reaches.
47
+
9
48
  ## 0.4.448
10
49
 
11
50
  - **Added** tests for what `edfcore json` puts in a file you are about to pipe somewhere. Piping is
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "edfcore",
3
- "version": "0.4.448",
3
+ "version": "0.4.450",
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.448';
96
+ export const VERSION = '0.4.450';