edfcore 0.6.246 → 0.6.248
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/dist/decode/digital.d.ts.map +1 -1
- package/dist/decode/digital.js +2 -1
- package/dist/decode/digital.js.map +1 -1
- package/dist/decode/physical.d.ts.map +1 -1
- package/dist/decode/physical.js +3 -1
- package/dist/decode/physical.js.map +1 -1
- package/dist/format-header.d.ts.map +1 -1
- package/dist/format-header.js +11 -0
- package/dist/format-header.js.map +1 -1
- package/dist/options.d.ts +20 -0
- package/dist/options.d.ts.map +1 -1
- package/dist/options.js +51 -0
- package/dist/options.js.map +1 -1
- package/docs/CHANGELOG.md +34 -0
- package/package.json +1 -1
- package/src/constants.ts +1 -1
- package/src/decode/digital.ts +2 -1
- package/src/decode/physical.ts +3 -1
- package/src/format-header.ts +13 -0
- package/src/options.ts +57 -0
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.6.
|
|
112
|
+
export declare const VERSION = "0.6.248";
|
|
113
113
|
//# sourceMappingURL=constants.d.ts.map
|
package/dist/constants.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"digital.d.ts","sourceRoot":"","sources":["../../src/decode/digital.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAOH,OAAO,KAAK,EAAE,SAAS,EAAa,WAAW,EAAE,MAAM,aAAa,CAAC;AAIrE;;;;;GAKG;AACH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC;CACvC;AAED;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAC7B;;;;OAIG;IACH,QAAQ,CAAC,sBAAsB,EAAE,MAAM,CAAC;CACzC;AAmFD;;;;;;;GAOG;AACH;;;;;;;;;;;;GAYG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAgC9F;AAuFD;;;;;;;GAOG;AACH;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,aAAa,CAC3B,GAAG,EAAE,OAAO,EACZ,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EAcf,OAAO,SAAQ,GACd,IAAI,CAQN;AAgFD;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,SAAS,EACjB,WAAW,EAAE,UAAU,EACvB,OAAO,EAAE,WAAW,EACpB,WAAW,EAAE,MAAM,EACnB,GAAG,CAAC,EAAE,UAAU,EAChB,OAAO,CAAC,EAAE,kBAAkB,GAC3B,cAAc,
|
|
1
|
+
{"version":3,"file":"digital.d.ts","sourceRoot":"","sources":["../../src/decode/digital.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAOH,OAAO,KAAK,EAAE,SAAS,EAAa,WAAW,EAAE,MAAM,aAAa,CAAC;AAIrE;;;;;GAKG;AACH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC;CACvC;AAED;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAC7B;;;;OAIG;IACH,QAAQ,CAAC,sBAAsB,EAAE,MAAM,CAAC;CACzC;AAmFD;;;;;;;GAOG;AACH;;;;;;;;;;;;GAYG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAgC9F;AAuFD;;;;;;;GAOG;AACH;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,aAAa,CAC3B,GAAG,EAAE,OAAO,EACZ,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EAcf,OAAO,SAAQ,GACd,IAAI,CAQN;AAgFD;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,SAAS,EACjB,WAAW,EAAE,UAAU,EACvB,OAAO,EAAE,WAAW,EACpB,WAAW,EAAE,MAAM,EACnB,GAAG,CAAC,EAAE,UAAU,EAChB,OAAO,CAAC,EAAE,kBAAkB,GAC3B,cAAc,CAoDhB;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAC3B,MAAM,EAAE,SAAS,EACjB,WAAW,EAAE,UAAU,EACvB,OAAO,EAAE,WAAW,EACpB,WAAW,EAAE,MAAM,EACnB,GAAG,CAAC,EAAE,UAAU,EAChB,OAAO,CAAC,EAAE,kBAAkB,GAC3B,UAAU,CAEZ"}
|
package/dist/decode/digital.js
CHANGED
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
*/
|
|
12
12
|
import { isByteArray } from '../bytes/latin1.js';
|
|
13
13
|
import { EdfBudgetError, EdfChannelNotFoundError, EdfRangeError } from '../errors.js';
|
|
14
|
-
import { resolveMaterializeBudget } from '../options.js';
|
|
14
|
+
import { assertMaterializeOptions, resolveMaterializeBudget } from '../options.js';
|
|
15
15
|
import { pluralise } from '../text/counted.js';
|
|
16
16
|
import { describeRecordRange, describeValue } from '../text/describe.js';
|
|
17
17
|
const BYTES_PER_INT32 = 4;
|
|
@@ -314,6 +314,7 @@ function decodeInt24(bytes, out, plan) {
|
|
|
314
314
|
* nothing about the samples.
|
|
315
315
|
*/
|
|
316
316
|
export function decodeDigitalCounted(header, recordBytes, records, signalIndex, out, options) {
|
|
317
|
+
assertMaterializeOptions(options, 'decodeDigital');
|
|
317
318
|
assertDecodable(header, recordBytes, 'decodeDigital');
|
|
318
319
|
const signal = signalAt(header, signalIndex);
|
|
319
320
|
/*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"digital.js","sourceRoot":"","sources":["../../src/decode/digital.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,uBAAuB,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AACtF,OAAO,EAAE,wBAAwB,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"digital.js","sourceRoot":"","sources":["../../src/decode/digital.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"physical.d.ts","sourceRoot":"","sources":["../../src/decode/physical.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAkB,eAAe,EAAE,MAAM,cAAc,CAAC;AAG/D,OAAO,KAAK,EAAqC,SAAS,EAAE,MAAM,aAAa,CAAC;AAChF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAGvD,YAAY,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAiKvD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,YAAY,CAC1B,MAAM,EAAE,SAAS,EACjB,IAAI,CAAC,EAAE;IAAE,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GACnE,eAAe,CAkBjB;AAuED;;;;;;;;;;;;GAYG;AACH;;;;;;;;;;;;;GAaG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAoClE;AA4ED,wBAAgB,UAAU,CACxB,MAAM,EAAE,SAAS,EACjB,OAAO,EAAE,SAAS,CAAC,MAAM,CAAC,EAC1B,GAAG,CAAC,EAAE,YAAY,EAClB,OAAO,CAAC,EAAE,kBAAkB,GAC3B,YAAY,
|
|
1
|
+
{"version":3,"file":"physical.d.ts","sourceRoot":"","sources":["../../src/decode/physical.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAkB,eAAe,EAAE,MAAM,cAAc,CAAC;AAG/D,OAAO,KAAK,EAAqC,SAAS,EAAE,MAAM,aAAa,CAAC;AAChF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAGvD,YAAY,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAiKvD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,YAAY,CAC1B,MAAM,EAAE,SAAS,EACjB,IAAI,CAAC,EAAE;IAAE,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GACnE,eAAe,CAkBjB;AAuED;;;;;;;;;;;;GAYG;AACH;;;;;;;;;;;;;GAaG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAoClE;AA4ED,wBAAgB,UAAU,CACxB,MAAM,EAAE,SAAS,EACjB,OAAO,EAAE,SAAS,CAAC,MAAM,CAAC,EAC1B,GAAG,CAAC,EAAE,YAAY,EAClB,OAAO,CAAC,EAAE,kBAAkB,GAC3B,YAAY,CAgBd;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,SAAS,GAAG;IAClD,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB,CAoCA;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,SAAS,EACjB,OAAO,EAAE,UAAU,EACnB,GAAG,CAAC,EAAE,UAAU,EAChB,OAAO,CAAC,EAAE,kBAAkB,GAC3B,UAAU,CA8CZ"}
|
package/dist/decode/physical.js
CHANGED
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
* behaviour has to be something a caller asks for explicitly.
|
|
10
10
|
*/
|
|
11
11
|
import { EdfBudgetError, EdfScalingError } from '../errors.js';
|
|
12
|
-
import { resolveMaterializeBudget } from '../options.js';
|
|
12
|
+
import { assertMaterializeOptions, resolveMaterializeBudget } from '../options.js';
|
|
13
13
|
import { describeValue } from '../text/describe.js';
|
|
14
14
|
import { assertOutKind } from './digital.js';
|
|
15
15
|
const BYTES_PER_FLOAT64 = 8;
|
|
@@ -326,6 +326,7 @@ function assertSamples(digital, call) {
|
|
|
326
326
|
: `${describeValue(digital)}, which has no length`}. Next: pass chunkSignal.digital — the Int32Array readWindow() and readRecords() fill.`);
|
|
327
327
|
}
|
|
328
328
|
export function toPhysical(signal, digital, out, options) {
|
|
329
|
+
assertMaterializeOptions(options, 'toPhysical');
|
|
329
330
|
assertSignal(signal, 'toPhysical');
|
|
330
331
|
const scale = signal.scale;
|
|
331
332
|
if (scale === undefined)
|
|
@@ -400,6 +401,7 @@ export function physicalRangeOf(signal) {
|
|
|
400
401
|
* are empty and collapse every sample onto a single value.
|
|
401
402
|
*/
|
|
402
403
|
export function clampToDigitalRange(signal, digital, out, options) {
|
|
404
|
+
assertMaterializeOptions(options, 'clampToDigitalRange');
|
|
403
405
|
assertSignal(signal, 'clampToDigitalRange');
|
|
404
406
|
/*
|
|
405
407
|
* The ANNOTATIONS CHANNEL, whose digital fields describe nothing either.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"physical.js","sourceRoot":"","sources":["../../src/decode/physical.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/D,OAAO,EAAE,wBAAwB,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"physical.js","sourceRoot":"","sources":["../../src/decode/physical.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"format-header.d.ts","sourceRoot":"","sources":["../src/format-header.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAUH,OAAO,KAAK,EAAmB,SAAS,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAsElF;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,mBAAmB,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"format-header.d.ts","sourceRoot":"","sources":["../src/format-header.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAUH,OAAO,KAAK,EAAmB,SAAS,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAsElF;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,mBAAmB,GAAG,MAAM,CA4PrF"}
|
package/dist/format-header.js
CHANGED
|
@@ -145,6 +145,17 @@ export function formatHeader(header, options) {
|
|
|
145
145
|
*
|
|
146
146
|
* `undefined` and `null` still mean "no options", which is what they already meant.
|
|
147
147
|
*/
|
|
148
|
+
/*
|
|
149
|
+
* An ARRAY, which is an object, so the check below cannot see it. Same argument as `assertOptions`
|
|
150
|
+
* makes for the three listing formatters, and the same cost: `redactFields` is an array-valued
|
|
151
|
+
* option, so the list a caller holds is written where the options go, and the identification
|
|
152
|
+
* bytes this call exists to withhold were printed in full.
|
|
153
|
+
*/
|
|
154
|
+
if (Array.isArray(options)) {
|
|
155
|
+
throw new RangeError('formatHeader(): the options are an array, and includePatientId and redactFields are ' +
|
|
156
|
+
'fields on the options rather than entries in a list — so nothing was withheld. ' +
|
|
157
|
+
'Next: pass them on an object.');
|
|
158
|
+
}
|
|
148
159
|
if (options !== undefined && typeof options !== 'object') {
|
|
149
160
|
throw new RangeError(`formatHeader(): the options are ${describeValue(options)}, not an object — ` +
|
|
150
161
|
'includePatientId is a field on one, so the identification lines would have been left ' +
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"format-header.js","sourceRoot":"","sources":["../src/format-header.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"format-header.js","sourceRoot":"","sources":["../src/format-header.ts"],"names":[],"mappings":"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"}
|
package/dist/options.d.ts
CHANGED
|
@@ -53,6 +53,26 @@ export declare function requireFiniteOption(value: number | undefined, name: str
|
|
|
53
53
|
*
|
|
54
54
|
* `null` and `undefined` still mean "no options", which is what they already meant.
|
|
55
55
|
*/
|
|
56
|
+
/**
|
|
57
|
+
* The OPTIONS object, in the family that has `maxMaterializeBytes` and never had a guard.
|
|
58
|
+
*
|
|
59
|
+
* `ReadOptions` and `ParseOptions` have each been given one — 0.6.130 for the formatters and the
|
|
60
|
+
* cache, 0.6.154 for a parse, 0.6.166 for a read — and the read guard states the reason this family
|
|
61
|
+
* needed it most: "the read options are where the number a caller writes is likeliest to be a byte
|
|
62
|
+
* count, because `maxMaterializeBytes` is one". `MaterializeOptions` carries that field and nothing
|
|
63
|
+
* else, so the number is the WHOLE of what a caller holds, and
|
|
64
|
+
* `toPhysical(signal, digital, out, 64 * 1024 * 1024)` is what gets written.
|
|
65
|
+
*
|
|
66
|
+
* It read as `undefined`, so `resolveMaterializeBudget` returned the 256 MiB default and the
|
|
67
|
+
* allocation went ahead — on the option whose entire job, as the field's own docblock puts it, is
|
|
68
|
+
* to "refuse before allocating rather than dying inside it". A caller who capped it at four
|
|
69
|
+
* megabytes got the refusal that cap exists for on no call at all.
|
|
70
|
+
*
|
|
71
|
+
* An array is refused for the reason `assertSelection` gives one argument along — "an ARRAY, which
|
|
72
|
+
* is an object, so the check above let it through" — and `null` and `undefined` still mean "no
|
|
73
|
+
* options".
|
|
74
|
+
*/
|
|
75
|
+
export declare function assertMaterializeOptions(options: unknown, call: string): void;
|
|
56
76
|
export declare function assertOptions(options: unknown, call: string, listed: string): void;
|
|
57
77
|
/**
|
|
58
78
|
* A boolean option, refused rather than read as false.
|
package/dist/options.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../src/options.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAKH;;;;GAIG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,GACf,MAAM,CAqBR;AAED;;;;;;;;;;;;;GAaG;AACH;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../src/options.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAKH;;;;GAIG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,GACf,MAAM,CAqBR;AAED;;;;;;;;;;;;;GAaG;AACH;;;;;;;;;;;;;;;GAeG;AACH;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAc7E;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CA6BlF;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI,CAQ5F;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAOzF;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CA4BjF;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAQ1E"}
|
package/dist/options.js
CHANGED
|
@@ -76,7 +76,58 @@ export function requireFiniteOption(value, name, fallback) {
|
|
|
76
76
|
*
|
|
77
77
|
* `null` and `undefined` still mean "no options", which is what they already meant.
|
|
78
78
|
*/
|
|
79
|
+
/**
|
|
80
|
+
* The OPTIONS object, in the family that has `maxMaterializeBytes` and never had a guard.
|
|
81
|
+
*
|
|
82
|
+
* `ReadOptions` and `ParseOptions` have each been given one — 0.6.130 for the formatters and the
|
|
83
|
+
* cache, 0.6.154 for a parse, 0.6.166 for a read — and the read guard states the reason this family
|
|
84
|
+
* needed it most: "the read options are where the number a caller writes is likeliest to be a byte
|
|
85
|
+
* count, because `maxMaterializeBytes` is one". `MaterializeOptions` carries that field and nothing
|
|
86
|
+
* else, so the number is the WHOLE of what a caller holds, and
|
|
87
|
+
* `toPhysical(signal, digital, out, 64 * 1024 * 1024)` is what gets written.
|
|
88
|
+
*
|
|
89
|
+
* It read as `undefined`, so `resolveMaterializeBudget` returned the 256 MiB default and the
|
|
90
|
+
* allocation went ahead — on the option whose entire job, as the field's own docblock puts it, is
|
|
91
|
+
* to "refuse before allocating rather than dying inside it". A caller who capped it at four
|
|
92
|
+
* megabytes got the refusal that cap exists for on no call at all.
|
|
93
|
+
*
|
|
94
|
+
* An array is refused for the reason `assertSelection` gives one argument along — "an ARRAY, which
|
|
95
|
+
* is an object, so the check above let it through" — and `null` and `undefined` still mean "no
|
|
96
|
+
* options".
|
|
97
|
+
*/
|
|
98
|
+
export function assertMaterializeOptions(options, call) {
|
|
99
|
+
if (Array.isArray(options)) {
|
|
100
|
+
throw new RangeError(`${call}(): the options are an array, and maxMaterializeBytes is a field on them rather ` +
|
|
101
|
+
'than an entry in a list, so this call took the default budget. Next: pass it on an ' +
|
|
102
|
+
'options object.');
|
|
103
|
+
}
|
|
104
|
+
if (options === undefined || options === null || typeof options === 'object')
|
|
105
|
+
return;
|
|
106
|
+
throw new RangeError(`${call}(): the options are ${describeValue(options)}, not an object — maxMaterializeBytes ` +
|
|
107
|
+
'is the field on them, so this call took the default budget rather than that one. Next: ' +
|
|
108
|
+
'pass maxMaterializeBytes on an options object.');
|
|
109
|
+
}
|
|
79
110
|
export function assertOptions(options, call, listed) {
|
|
111
|
+
/*
|
|
112
|
+
* An ARRAY, which is an object, so the check below let it through — and here the slip is not
|
|
113
|
+
* hypothetical, because one of these options IS an array.
|
|
114
|
+
*
|
|
115
|
+
* `redactFields` takes `['patientId', 'recordingId']`, so a caller holding that list writes it
|
|
116
|
+
* where the options go. It has no `redactFields` of its own, so nothing was redacted: the
|
|
117
|
+
* identification bytes were printed in full, which is the one outcome that option exists to
|
|
118
|
+
* prevent. Its own docblock says why — "for an identification field those bytes are a person's
|
|
119
|
+
* name and birth date", and "withholding `header.patient` while the diagnostic below it spells
|
|
120
|
+
* the same string out is not withholding it at all". `formatValidationReport` forwards the
|
|
121
|
+
* option, so it printed them too.
|
|
122
|
+
*
|
|
123
|
+
* The bare STRING spelling was already refused by the check below; the array one is the shape
|
|
124
|
+
* the option actually takes. 0.6.245 closed the same hole in the read and parse options.
|
|
125
|
+
*/
|
|
126
|
+
if (Array.isArray(options)) {
|
|
127
|
+
throw new RangeError(`${call}(): the options are an array, and maxItems and redactFields are fields on the ` +
|
|
128
|
+
'options rather than entries in a list — so nothing was redacted and every ' +
|
|
129
|
+
`${listed} was listed. Next: pass them on an object.`);
|
|
130
|
+
}
|
|
80
131
|
if (options === undefined || typeof options === 'object')
|
|
81
132
|
return;
|
|
82
133
|
throw new RangeError(`${call}(): the options are ${describeValue(options)}, not an object — maxItems is a field ` +
|
package/dist/options.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"options.js","sourceRoot":"","sources":["../src/options.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"options.js","sourceRoot":"","sources":["../src/options.ts"],"names":[],"mappings":"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"}
|
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.6.248
|
|
10
|
+
|
|
11
|
+
- **Fixed** `MaterializeOptions` having no guard at all. `ReadOptions` and `ParseOptions` have each
|
|
12
|
+
been given one — 0.6.130 for the formatters and the cache, 0.6.154 for a parse, 0.6.166 for a
|
|
13
|
+
read — and the read guard states the reason this family needed one most: "the read options are
|
|
14
|
+
where the number a caller writes is likeliest to be a byte count, because `maxMaterializeBytes`
|
|
15
|
+
is one". This family carries that field and nothing else, so the number is the whole of what a
|
|
16
|
+
caller holds, and `toPhysical(signal, digital, out, 64 * 1024 * 1024)` is what gets written.
|
|
17
|
+
- A number, a string, a boolean and an array were each read as `undefined`, so
|
|
18
|
+
`resolveMaterializeBudget` returned the 256 MiB default and the allocation went ahead — on the
|
|
19
|
+
option whose entire job, in its own words, is to "refuse before allocating rather than dying
|
|
20
|
+
inside it". A caller who capped it at four megabytes got that refusal on no call at all.
|
|
21
|
+
- `decodeDigital`, `toPhysical` and `clampToDigitalRange` are the three published primitives that
|
|
22
|
+
take these options, and all three check them now. `null` and `undefined` still mean "no options",
|
|
23
|
+
and a budget passed on an object is unchanged.
|
|
24
|
+
|
|
25
|
+
## 0.6.247
|
|
26
|
+
|
|
27
|
+
- **Fixed** `formatDiagnostics(diagnostics, ['patientId', 'recordingId'])` printing the patient's
|
|
28
|
+
name. `redactFields` is the one option in these formatters whose VALUE is an array, so the list a
|
|
29
|
+
caller holds is exactly what gets written where the options go — and an array is an object, so
|
|
30
|
+
the guard looking for one let it through. The array has no `redactFields` of its own, so nothing
|
|
31
|
+
was redacted and the identification bytes were printed in full.
|
|
32
|
+
- That is the single outcome the option exists to prevent. Its own docblock says why: "for an
|
|
33
|
+
identification field those bytes are a person's name and birth date, and a diagnostic about them
|
|
34
|
+
is not rare — a writer that packs the name into one token is non-conformant, which is exactly the
|
|
35
|
+
file someone runs a tool on and pastes the output of", and "withholding `header.patient` while
|
|
36
|
+
the diagnostic below it spells the same string out is not withholding it at all".
|
|
37
|
+
- The bare string spelling was already refused by name; the array — the shape the option actually
|
|
38
|
+
takes — was not. 0.6.245 closed the same hole in the read and parse options; this is the family
|
|
39
|
+
where it costs a name rather than a default.
|
|
40
|
+
- `formatValidationReport` forwards the option and `formatHeader` keeps its own copy of the guard,
|
|
41
|
+
so all four formatters refuse it. A real options object and no options at all are unchanged.
|
|
42
|
+
|
|
9
43
|
## 0.6.246
|
|
10
44
|
|
|
11
45
|
- **Fixed** `--limit ""` reading as a count of zero rather than as a missing value. The guard beside
|
package/package.json
CHANGED
package/src/constants.ts
CHANGED
package/src/decode/digital.ts
CHANGED
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
|
|
13
13
|
import { isByteArray } from '../bytes/latin1.js';
|
|
14
14
|
import { EdfBudgetError, EdfChannelNotFoundError, EdfRangeError } from '../errors.js';
|
|
15
|
-
import { resolveMaterializeBudget } from '../options.js';
|
|
15
|
+
import { assertMaterializeOptions, resolveMaterializeBudget } from '../options.js';
|
|
16
16
|
import { pluralise } from '../text/counted.js';
|
|
17
17
|
import { describeRecordRange, describeValue } from '../text/describe.js';
|
|
18
18
|
import type { EdfHeader, EdfSignal, RecordRange } from '../types.js';
|
|
@@ -411,6 +411,7 @@ export function decodeDigitalCounted(
|
|
|
411
411
|
out?: Int32Array,
|
|
412
412
|
options?: MaterializeOptions,
|
|
413
413
|
): DecodedDigital {
|
|
414
|
+
assertMaterializeOptions(options, 'decodeDigital');
|
|
414
415
|
assertDecodable(header, recordBytes, 'decodeDigital');
|
|
415
416
|
const signal = signalAt(header, signalIndex);
|
|
416
417
|
/*
|
package/src/decode/physical.ts
CHANGED
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
*/
|
|
11
11
|
|
|
12
12
|
import { EdfBudgetError, EdfScalingError } from '../errors.js';
|
|
13
|
-
import { resolveMaterializeBudget } from '../options.js';
|
|
13
|
+
import { assertMaterializeOptions, resolveMaterializeBudget } from '../options.js';
|
|
14
14
|
import { describeValue } from '../text/describe.js';
|
|
15
15
|
import type { EdfChunkSignal, EdfDiagnosticCode, EdfSignal } from '../types.js';
|
|
16
16
|
import type { MaterializeOptions } from './digital.js';
|
|
@@ -428,6 +428,7 @@ export function toPhysical(
|
|
|
428
428
|
out?: Float64Array,
|
|
429
429
|
options?: MaterializeOptions,
|
|
430
430
|
): Float64Array {
|
|
431
|
+
assertMaterializeOptions(options, 'toPhysical');
|
|
431
432
|
assertSignal(signal, 'toPhysical');
|
|
432
433
|
const scale = signal.scale;
|
|
433
434
|
if (scale === undefined) throw scalingError(signal);
|
|
@@ -516,6 +517,7 @@ export function clampToDigitalRange(
|
|
|
516
517
|
out?: Int32Array,
|
|
517
518
|
options?: MaterializeOptions,
|
|
518
519
|
): Int32Array {
|
|
520
|
+
assertMaterializeOptions(options, 'clampToDigitalRange');
|
|
519
521
|
assertSignal(signal, 'clampToDigitalRange');
|
|
520
522
|
/*
|
|
521
523
|
* The ANNOTATIONS CHANNEL, whose digital fields describe nothing either.
|
package/src/format-header.ts
CHANGED
|
@@ -155,6 +155,19 @@ export function formatHeader(header: EdfHeader, options?: FormatHeaderOptions):
|
|
|
155
155
|
*
|
|
156
156
|
* `undefined` and `null` still mean "no options", which is what they already meant.
|
|
157
157
|
*/
|
|
158
|
+
/*
|
|
159
|
+
* An ARRAY, which is an object, so the check below cannot see it. Same argument as `assertOptions`
|
|
160
|
+
* makes for the three listing formatters, and the same cost: `redactFields` is an array-valued
|
|
161
|
+
* option, so the list a caller holds is written where the options go, and the identification
|
|
162
|
+
* bytes this call exists to withhold were printed in full.
|
|
163
|
+
*/
|
|
164
|
+
if (Array.isArray(options)) {
|
|
165
|
+
throw new RangeError(
|
|
166
|
+
'formatHeader(): the options are an array, and includePatientId and redactFields are ' +
|
|
167
|
+
'fields on the options rather than entries in a list — so nothing was withheld. ' +
|
|
168
|
+
'Next: pass them on an object.',
|
|
169
|
+
);
|
|
170
|
+
}
|
|
158
171
|
if (options !== undefined && typeof options !== 'object') {
|
|
159
172
|
throw new RangeError(
|
|
160
173
|
`formatHeader(): the options are ${describeValue(options)}, not an object — ` +
|
package/src/options.ts
CHANGED
|
@@ -83,7 +83,64 @@ export function requireFiniteOption(
|
|
|
83
83
|
*
|
|
84
84
|
* `null` and `undefined` still mean "no options", which is what they already meant.
|
|
85
85
|
*/
|
|
86
|
+
/**
|
|
87
|
+
* The OPTIONS object, in the family that has `maxMaterializeBytes` and never had a guard.
|
|
88
|
+
*
|
|
89
|
+
* `ReadOptions` and `ParseOptions` have each been given one — 0.6.130 for the formatters and the
|
|
90
|
+
* cache, 0.6.154 for a parse, 0.6.166 for a read — and the read guard states the reason this family
|
|
91
|
+
* needed it most: "the read options are where the number a caller writes is likeliest to be a byte
|
|
92
|
+
* count, because `maxMaterializeBytes` is one". `MaterializeOptions` carries that field and nothing
|
|
93
|
+
* else, so the number is the WHOLE of what a caller holds, and
|
|
94
|
+
* `toPhysical(signal, digital, out, 64 * 1024 * 1024)` is what gets written.
|
|
95
|
+
*
|
|
96
|
+
* It read as `undefined`, so `resolveMaterializeBudget` returned the 256 MiB default and the
|
|
97
|
+
* allocation went ahead — on the option whose entire job, as the field's own docblock puts it, is
|
|
98
|
+
* to "refuse before allocating rather than dying inside it". A caller who capped it at four
|
|
99
|
+
* megabytes got the refusal that cap exists for on no call at all.
|
|
100
|
+
*
|
|
101
|
+
* An array is refused for the reason `assertSelection` gives one argument along — "an ARRAY, which
|
|
102
|
+
* is an object, so the check above let it through" — and `null` and `undefined` still mean "no
|
|
103
|
+
* options".
|
|
104
|
+
*/
|
|
105
|
+
export function assertMaterializeOptions(options: unknown, call: string): void {
|
|
106
|
+
if (Array.isArray(options)) {
|
|
107
|
+
throw new RangeError(
|
|
108
|
+
`${call}(): the options are an array, and maxMaterializeBytes is a field on them rather ` +
|
|
109
|
+
'than an entry in a list, so this call took the default budget. Next: pass it on an ' +
|
|
110
|
+
'options object.',
|
|
111
|
+
);
|
|
112
|
+
}
|
|
113
|
+
if (options === undefined || options === null || typeof options === 'object') return;
|
|
114
|
+
throw new RangeError(
|
|
115
|
+
`${call}(): the options are ${describeValue(options)}, not an object — maxMaterializeBytes ` +
|
|
116
|
+
'is the field on them, so this call took the default budget rather than that one. Next: ' +
|
|
117
|
+
'pass maxMaterializeBytes on an options object.',
|
|
118
|
+
);
|
|
119
|
+
}
|
|
120
|
+
|
|
86
121
|
export function assertOptions(options: unknown, call: string, listed: string): void {
|
|
122
|
+
/*
|
|
123
|
+
* An ARRAY, which is an object, so the check below let it through — and here the slip is not
|
|
124
|
+
* hypothetical, because one of these options IS an array.
|
|
125
|
+
*
|
|
126
|
+
* `redactFields` takes `['patientId', 'recordingId']`, so a caller holding that list writes it
|
|
127
|
+
* where the options go. It has no `redactFields` of its own, so nothing was redacted: the
|
|
128
|
+
* identification bytes were printed in full, which is the one outcome that option exists to
|
|
129
|
+
* prevent. Its own docblock says why — "for an identification field those bytes are a person's
|
|
130
|
+
* name and birth date", and "withholding `header.patient` while the diagnostic below it spells
|
|
131
|
+
* the same string out is not withholding it at all". `formatValidationReport` forwards the
|
|
132
|
+
* option, so it printed them too.
|
|
133
|
+
*
|
|
134
|
+
* The bare STRING spelling was already refused by the check below; the array one is the shape
|
|
135
|
+
* the option actually takes. 0.6.245 closed the same hole in the read and parse options.
|
|
136
|
+
*/
|
|
137
|
+
if (Array.isArray(options)) {
|
|
138
|
+
throw new RangeError(
|
|
139
|
+
`${call}(): the options are an array, and maxItems and redactFields are fields on the ` +
|
|
140
|
+
'options rather than entries in a list — so nothing was redacted and every ' +
|
|
141
|
+
`${listed} was listed. Next: pass them on an object.`,
|
|
142
|
+
);
|
|
143
|
+
}
|
|
87
144
|
if (options === undefined || typeof options === 'object') return;
|
|
88
145
|
throw new RangeError(
|
|
89
146
|
`${call}(): the options are ${describeValue(options)}, not an object — maxItems is a field ` +
|