edfcore 0.3.100 → 0.3.102
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/CHANGELOG.md +36 -0
- package/dist/constants.d.ts +1 -1
- package/dist/constants.js +1 -1
- package/package.json +1 -1
- package/src/constants.ts +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -6,6 +6,42 @@ 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.3.102
|
|
10
|
+
|
|
11
|
+
- **Fixed** `tests/corpus/coverage.test.ts` asserting nothing on the run it exists to protect.
|
|
12
|
+
- The file's docblock says it "checks the parts that need no corpus at all — that the manifest and
|
|
13
|
+
the goldens agree. A golden for a file the manifest no longer lists ... is a real drift that no
|
|
14
|
+
amount of skipping should hide." Its one test early-returned when the corpus was absent, with
|
|
15
|
+
`expect(corpusGoldens().length).toBeGreaterThanOrEqual(0)`. A length is never negative, so on
|
|
16
|
+
`git clone && npm test` — no corpus, which is the case the whole file is about — it checked
|
|
17
|
+
nothing.
|
|
18
|
+
- The manifest-versus-goldens half is now its own test and always runs: both sides are committed,
|
|
19
|
+
so it needs no corpus. The half that genuinely needs the files still skips without them, and
|
|
20
|
+
says so.
|
|
21
|
+
- Canaried in the state that matters: with `tests/corpus/files/` moved away and a manifest entry
|
|
22
|
+
removed, the new test fails and names the orphaned golden. Before this it passed.
|
|
23
|
+
- Fifth release in this batch about defect shape (e) — a guard that would still pass if what it
|
|
24
|
+
names regressed. Found by sweeping the whole suite for self-comparisons and structurally weak
|
|
25
|
+
assertions after 0.3.101, rather than one at a time.
|
|
26
|
+
|
|
27
|
+
## 0.3.101
|
|
28
|
+
|
|
29
|
+
- **Fixed** an assertion in `tests/corpus/whole-api.test.ts` that compared a value with itself:
|
|
30
|
+
`expect(inspection.header.signals.length).toBe(inspection.header.signals.length)`. Both operands
|
|
31
|
+
are the same expression, so it held for every input.
|
|
32
|
+
- It was the only consistency check in the test the file's docblock calls "the strongest promise
|
|
33
|
+
in the package", under a comment reading "Whatever it reports must be internally consistent
|
|
34
|
+
rather than merely present". Across five corpus files it checked nothing.
|
|
35
|
+
- Replaced with invariants that can fail: the two index arrays partition the signals exactly once,
|
|
36
|
+
`headerByteLength` is the `256 * (ns + 1)` the signal count implies, `bytesRead` exceeds neither
|
|
37
|
+
the file nor the 128 KiB ceiling, and `ok` equals "no error-severity diagnostic" — the rule the
|
|
38
|
+
`inspectEdf` docblock states.
|
|
39
|
+
- Each new assertion was canaried by breaking the behaviour it names and confirming it fails.
|
|
40
|
+
Two earlier attempts were rejected: one could not distinguish anything on a clean corpus, and one
|
|
41
|
+
broke module loading instead of changing behaviour, which is not a canary.
|
|
42
|
+
- Defect shape (e), the one this project keeps re-learning: a guard that would still pass if what it
|
|
43
|
+
names regressed. It has now been the subject of 0.3.52, 0.3.78, 0.3.80, 0.3.90 and this release.
|
|
44
|
+
|
|
9
45
|
## 0.3.100
|
|
10
46
|
|
|
11
47
|
- **Fixed** `diagnostics.md` recommending, as the alternative to a gate it warns against, a gate
|
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.3.
|
|
112
|
+
export declare const VERSION = "0.3.102";
|
|
113
113
|
//# sourceMappingURL=constants.d.ts.map
|
package/dist/constants.js
CHANGED
package/package.json
CHANGED
package/src/constants.ts
CHANGED