edfcore 0.4.435 → 0.4.437
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 +39 -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.4.
|
|
112
|
+
export declare const VERSION = "0.4.437";
|
|
113
113
|
//# sourceMappingURL=constants.d.ts.map
|
package/dist/constants.js
CHANGED
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.437
|
|
10
|
+
|
|
11
|
+
- **Added** a check that the throwaway probes stay runnable and cannot reach the suite, the
|
|
12
|
+
typecheck or a commit. `tests/scratch/` holds reproductions written while chasing a defect: they
|
|
13
|
+
assert whatever behaviour was current when they were written, which makes them useful for an
|
|
14
|
+
afternoon and poison afterwards, because a committed probe pins a defect as if it were a
|
|
15
|
+
decision.
|
|
16
|
+
- Four mechanisms keep that true, in four different files, and none was checked. `.gitignore` keeps
|
|
17
|
+
them out of a commit, which matters because `scripts/release.mjs` stages with `git add -A`. The
|
|
18
|
+
main vitest config excludes the directory so a leftover probe cannot join the run that gates a
|
|
19
|
+
tag. `tsconfig.json` excludes it for the same reason on the other half of `npm run check`, and
|
|
20
|
+
the vitest config's own comment says the two move together — only one of which is where anyone
|
|
21
|
+
would look. And the scratch config is what makes a probe runnable anyway, because vitest applies
|
|
22
|
+
`exclude` even to an explicit filename filter.
|
|
23
|
+
- The exemption is stated too: the scratch config deliberately does not load the offline trap, since
|
|
24
|
+
a probe reproducing a defect against a real server is a legitimate thing to write. That is an
|
|
25
|
+
absence, and an absence is what someone adds for consistency.
|
|
26
|
+
- The strongest check is the live one — nothing under `tests/scratch/` is tracked, asked of git
|
|
27
|
+
rather than of the ignore file, because that is the property and the rest is mechanism.
|
|
28
|
+
|
|
29
|
+
## 0.4.436
|
|
30
|
+
|
|
31
|
+
- **Added** tests that a real `AbortSignal` reaches `fetch` and a bare `{ aborted }` shim never
|
|
32
|
+
does. `FetchLike` deliberately does not name `signal` — naming it would pull the DOM
|
|
33
|
+
`AbortSignal` into the published types by parameter contravariance, the exact dependency the
|
|
34
|
+
structural shims exist to avoid — so the signal is handed over at runtime, on one line.
|
|
35
|
+
- Both halves matter and they fail differently. Attaching a shim is loud: the platform `fetch`
|
|
36
|
+
throws a `TypeError` on an init whose `signal` is not an `AbortSignal`, so every request from a
|
|
37
|
+
caller using the published `AbortSignalLike` type would fail at once. Not attaching a real one is
|
|
38
|
+
silent, and that is the half nothing had exercised — no test had ever given `httpSource` a
|
|
39
|
+
genuine `AbortSignal`.
|
|
40
|
+
- Without the attach, `throwIfSignalAborted` still rejects the caller's promise at the next poll,
|
|
41
|
+
so an abort looks like it worked, while the request runs to completion. On a range covering a few
|
|
42
|
+
hundred megabytes that is the difference between cancelling a transfer and paying for it, and the
|
|
43
|
+
only visible symptom is a bill, or a phone that stays warm after the user navigated away.
|
|
44
|
+
- The caller's own signal object has to be the one attached, not a copy, or aborting theirs aborts
|
|
45
|
+
nothing. A source-level signal and a per-read one are both checked, since the page documents the
|
|
46
|
+
first as the default for every request and the second as winning over it.
|
|
47
|
+
|
|
9
48
|
## 0.4.435
|
|
10
49
|
|
|
11
50
|
- **Added** a check that the announce script cuts one release and that a dry run cuts none.
|
package/package.json
CHANGED
package/src/constants.ts
CHANGED