edfcore 0.5.2 → 0.5.4
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/dist/constants.d.ts +1 -1
- package/dist/constants.js +1 -1
- package/docs/CHANGELOG.md +38 -0
- package/package.json +1 -1
- package/src/constants.ts +1 -1
package/dist/constants.d.ts
CHANGED
|
@@ -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.5.
|
|
112
|
+
export declare const VERSION = "0.5.4";
|
|
113
113
|
//# sourceMappingURL=constants.d.ts.map
|
package/dist/constants.js
CHANGED
package/docs/CHANGELOG.md
CHANGED
|
@@ -6,6 +6,44 @@ 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.5.4
|
|
10
|
+
|
|
11
|
+
- **Added** the rest of the block `discontinuous.md` prints for `index.segments` and `index.gaps`.
|
|
12
|
+
The page prints three objects in full — fifteen fields between them — and the tests checked four:
|
|
13
|
+
the two record ranges and the two `startSeconds`. Each segment's own `index`, its `startTicks`,
|
|
14
|
+
its `endSeconds`, and the gap's `beforeSegmentIndex`/`afterSegmentIndex` were printed and never
|
|
15
|
+
run.
|
|
16
|
+
- Those are the fields most worth running. `startTicks` is the exact value the whole time model
|
|
17
|
+
rests on and the only one a reader cannot check by eye against the diagram above it;
|
|
18
|
+
`endSeconds` is derived from two other printed numbers, so a page printing all three can
|
|
19
|
+
contradict itself while every individual number matches something; and the gap's two segment
|
|
20
|
+
indices are what make it a gap between a specific pair rather than a free-floating interval.
|
|
21
|
+
- The fields are enumerated from the page rather than listed in the test — the block is parsed into
|
|
22
|
+
objects and each `name: value` compared against the object the scan produced — so a field added to
|
|
23
|
+
the block is checked by having been printed. Adding `1n` to a segment's `startTicks` fails it.
|
|
24
|
+
- The derived fields are also checked against each other rather than only against the page:
|
|
25
|
+
`endSeconds` is `startSeconds + durationSeconds` on every segment and gap, and the gap runs from
|
|
26
|
+
where the earlier segment ends to where the later one starts, in ticks.
|
|
27
|
+
|
|
28
|
+
## 0.5.3
|
|
29
|
+
|
|
30
|
+
- **Added** the claim `api-reading.md` makes in one clause: "that makes `startSeconds` trustworthy
|
|
31
|
+
on an EDF+D file even when the index is only probed". A chunk decodes its start from the
|
|
32
|
+
timekeeping TALs in its own bytes, so an index that has read two records cannot make it wrong.
|
|
33
|
+
- It is worth checking because the cheap answer is available and wrong. Every record has a nominal
|
|
34
|
+
position, `start + r * recordDuration`, that a reader can compute without touching the file — and
|
|
35
|
+
on a contiguous file it is right. On an EDF+D file it is short by every gap before it, which is
|
|
36
|
+
the number nobody notices: the samples are fine, the record numbers are fine, and only the clock
|
|
37
|
+
has moved.
|
|
38
|
+
- The fixture puts a seven-second hole after record 3 and reads a chunk on each side of it through
|
|
39
|
+
an index that has never looked. The far chunk is asserted not to report the nominal position, to
|
|
40
|
+
report the true one in ticks, and to report the same value the scanned index does — which is what
|
|
41
|
+
"trustworthy" has to mean. The near chunk reports a position where the two answers coincide,
|
|
42
|
+
which is why testing only that half would conclude the nominal grid was fine.
|
|
43
|
+
- `precededByGap` is asserted `undefined` on the same chunk, deliberately. It is the field a probed
|
|
44
|
+
index genuinely cannot fill, and the one `mergeChunks` stopped keying its refusal on in 0.2.19 —
|
|
45
|
+
before that, two chunks a minute apart on an EDF+D file joined in silence.
|
|
46
|
+
|
|
9
47
|
## 0.5.2
|
|
10
48
|
|
|
11
49
|
- **Added** the map of how far `strict` reaches on a read, which has three cells rather than the
|
package/package.json
CHANGED
package/src/constants.ts
CHANGED