@moqtap/codec 0.11.0 → 0.12.0
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 +28 -0
- package/README.md +3 -2
- package/dist/{auth-redaction-DsdLq4Qs.d.cts → auth-redaction-B9JJOlIY.d.cts} +0 -2
- package/dist/{auth-redaction-DsdLq4Qs.d.ts → auth-redaction-B9JJOlIY.d.ts} +0 -2
- package/dist/chunk-OBATJBNL.cjs +868 -0
- package/dist/chunk-T2TCLZZV.js +2304 -0
- package/dist/chunk-WB65UG7G.cjs +2304 -0
- package/dist/chunk-XPCBPACE.js +868 -0
- package/dist/{codec-c0YEwwWn.d.ts → codec-B-oUU-cp.d.ts} +2 -2
- package/dist/{codec-DHzKAUCa.d.cts → codec-B3RpCI9k.d.cts} +2 -2
- package/dist/{codec-Clu_skx8.d.cts → codec-B5pcOS3m.d.cts} +2 -2
- package/dist/{codec-DxtgPxJS.d.ts → codec-BLjxwK2f.d.ts} +2 -2
- package/dist/{codec-BkheTXO7.d.ts → codec-BV3CL_3m.d.ts} +2 -2
- package/dist/{codec-Bb6GKTrv.d.ts → codec-BYCDWgED.d.ts} +2 -2
- package/dist/{codec-ejDu-va6.d.ts → codec-Bwqq7ZQT.d.ts} +2 -2
- package/dist/{codec-76xzrLTL.d.cts → codec-BzWxOFby.d.cts} +2 -2
- package/dist/{codec-CM5yd6n3.d.ts → codec-C-nJhNNl.d.ts} +2 -2
- package/dist/{codec-BgpfHoAd.d.cts → codec-C11VEPbQ.d.cts} +2 -2
- package/dist/codec-C9U0Vzy9.d.cts +68 -0
- package/dist/{codec-yYKGOipj.d.ts → codec-CCx22jnd.d.ts} +2 -2
- package/dist/{codec-mVYqkIUF.d.ts → codec-CP3zkfTv.d.ts} +2 -2
- package/dist/{codec-qSbO5nOa.d.ts → codec-CRmOLDpt.d.ts} +2 -2
- package/dist/{codec-CpOpemR8.d.cts → codec-CUu56DDU.d.cts} +2 -2
- package/dist/codec-Cb8mUre3.d.ts +68 -0
- package/dist/{codec-DELe00w_.d.cts → codec-CemqAQdR.d.cts} +2 -2
- package/dist/{codec-8p40WdLg.d.ts → codec-CxMvsVMS.d.ts} +2 -2
- package/dist/{codec-zfzg9uiy.d.cts → codec-DIgMVTi4.d.cts} +2 -2
- package/dist/{codec-DdVBtvx7.d.ts → codec-DYzozF68.d.ts} +2 -2
- package/dist/{codec-kaBUzdpV.d.ts → codec-D_O9zxax.d.ts} +2 -2
- package/dist/{codec-XLrnreeu.d.cts → codec-Ddc-QxV6.d.cts} +2 -2
- package/dist/{codec-C5s1eBJX.d.cts → codec-DoojMl2z.d.cts} +2 -2
- package/dist/{codec-DlxGuYMv.d.ts → codec-DqdjiOQF.d.ts} +2 -2
- package/dist/{codec-Cshdl9Tt.d.cts → codec-Dstemwrq.d.cts} +2 -2
- package/dist/{codec-BN2Bu0KI.d.ts → codec-Dt6nuejp.d.ts} +2 -2
- package/dist/{codec-BwVDkokh.d.cts → codec-DuYhd8fP.d.cts} +2 -2
- package/dist/{codec-I8u2pfS4.d.cts → codec-DwNOFgPU.d.cts} +2 -2
- package/dist/{codec-GAY4lybi.d.cts → codec-l01BpNhF.d.cts} +2 -2
- package/dist/{codec-Cb8HC3XV.d.cts → codec-psN2vB6I.d.cts} +2 -2
- package/dist/draft07-session.d.cts +3 -3
- package/dist/draft07-session.d.ts +3 -3
- package/dist/draft07.d.cts +4 -4
- package/dist/draft07.d.ts +4 -4
- package/dist/draft08-session.d.cts +3 -3
- package/dist/draft08-session.d.ts +3 -3
- package/dist/draft08.d.cts +5 -5
- package/dist/draft08.d.ts +5 -5
- package/dist/draft09-session.d.cts +3 -3
- package/dist/draft09-session.d.ts +3 -3
- package/dist/draft09.d.cts +5 -5
- package/dist/draft09.d.ts +5 -5
- package/dist/draft10-session.d.cts +3 -3
- package/dist/draft10-session.d.ts +3 -3
- package/dist/draft10.d.cts +5 -5
- package/dist/draft10.d.ts +5 -5
- package/dist/draft11-session.d.cts +3 -3
- package/dist/draft11-session.d.ts +3 -3
- package/dist/draft11.d.cts +5 -5
- package/dist/draft11.d.ts +5 -5
- package/dist/draft12-session.d.cts +3 -3
- package/dist/draft12-session.d.ts +3 -3
- package/dist/draft12.d.cts +5 -5
- package/dist/draft12.d.ts +5 -5
- package/dist/draft13-session.d.cts +3 -3
- package/dist/draft13-session.d.ts +3 -3
- package/dist/draft13.d.cts +5 -5
- package/dist/draft13.d.ts +5 -5
- package/dist/draft14-session.d.cts +3 -3
- package/dist/draft14-session.d.ts +3 -3
- package/dist/draft14.d.cts +5 -5
- package/dist/draft14.d.ts +5 -5
- package/dist/draft15-session.d.cts +3 -3
- package/dist/draft15-session.d.ts +3 -3
- package/dist/draft15.d.cts +5 -5
- package/dist/draft15.d.ts +5 -5
- package/dist/draft16-session.d.cts +3 -3
- package/dist/draft16-session.d.ts +3 -3
- package/dist/draft16.d.cts +5 -5
- package/dist/draft16.d.ts +5 -5
- package/dist/draft17-session.d.cts +3 -3
- package/dist/draft17-session.d.ts +3 -3
- package/dist/draft17.d.cts +4 -4
- package/dist/draft17.d.ts +4 -4
- package/dist/draft18-session.d.cts +3 -3
- package/dist/draft18-session.d.ts +3 -3
- package/dist/draft18.d.cts +4 -4
- package/dist/draft18.d.ts +4 -4
- package/dist/draft19-session.d.cts +3 -3
- package/dist/draft19-session.d.ts +3 -3
- package/dist/draft19.d.cts +4 -4
- package/dist/draft19.d.ts +4 -4
- package/dist/draft20-session.d.cts +3 -3
- package/dist/draft20-session.d.ts +3 -3
- package/dist/draft20.d.cts +4 -4
- package/dist/draft20.d.ts +4 -4
- package/dist/draft21-session.cjs +8 -0
- package/dist/draft21-session.d.cts +195 -0
- package/dist/draft21-session.d.ts +195 -0
- package/dist/draft21-session.js +8 -0
- package/dist/draft21.cjs +222 -0
- package/dist/draft21.d.cts +176 -0
- package/dist/draft21.d.ts +176 -0
- package/dist/draft21.js +222 -0
- package/dist/index.cjs +7 -1
- package/dist/index.d.cts +23 -18
- package/dist/index.d.ts +23 -18
- package/dist/index.js +7 -1
- package/dist/{session-types-Dn7b3RZM.d.ts → session-types-Cxx7W8zZ.d.ts} +1 -1
- package/dist/{session-types-B9idsih-.d.cts → session-types-DZkI_qFG.d.cts} +1 -1
- package/dist/session.cjs +5 -1
- package/dist/session.d.cts +5 -3
- package/dist/session.d.ts +5 -3
- package/dist/session.js +5 -1
- package/dist/{types-DG5_iKuv.d.cts → types-2NisMA8_.d.cts} +1 -1
- package/dist/{types-DG5_iKuv.d.ts → types-2NisMA8_.d.ts} +1 -1
- package/dist/types-DDwidj2d.d.cts +371 -0
- package/dist/types-DDwidj2d.d.ts +371 -0
- package/package.json +14 -2
- package/src/core/auth-redaction.ts +0 -2
- package/src/core/types.ts +1 -0
- package/src/drafts/draft19/codec.ts +1 -1
- package/src/drafts/draft20/codec.ts +1 -1
- package/src/drafts/draft21/codec.ts +1816 -0
- package/src/drafts/draft21/data-streams.ts +1338 -0
- package/src/drafts/draft21/error-codes.ts +135 -0
- package/src/drafts/draft21/index.ts +168 -0
- package/src/drafts/draft21/messages.ts +68 -0
- package/src/drafts/draft21/rules.ts +107 -0
- package/src/drafts/draft21/session-fsm.ts +1063 -0
- package/src/drafts/draft21/session.ts +21 -0
- package/src/drafts/draft21/types.ts +473 -0
- package/src/index.ts +9 -1
- package/src/session.ts +4 -0
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,34 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
This file starts at 0.9.0. Earlier releases are in the git history.
|
|
9
9
|
|
|
10
|
+
## [0.12.0] - 2026-09-17
|
|
11
|
+
|
|
12
|
+
### Added
|
|
13
|
+
|
|
14
|
+
- **draft-21, as `@moqtap/codec/draft21` and `createCodec({ draft: '21' })`.**
|
|
15
|
+
Draft-21 restructures draft-20 and changes nothing on the wire: every code
|
|
16
|
+
point, every table row and every wire diagram is identical, so the codec, the
|
|
17
|
+
message and data-stream tables, the wire rules, the error registries and the
|
|
18
|
+
session FSM are draft-20's. The two are told apart only by what they
|
|
19
|
+
negotiate, `moqt-21` against `moqt-20`.
|
|
20
|
+
|
|
21
|
+
`message-type-names.test.ts` records that as a fact rather than a claim:
|
|
22
|
+
`20/21` joins the list of draft pairs whose whole name table coincides, which
|
|
23
|
+
until now held only drafts 08, 09 and 10.
|
|
24
|
+
|
|
25
|
+
What did move is where the draft says things -- 200 numbered sections became
|
|
26
|
+
214 and only 11 keep both their title and their number -- so every citation
|
|
27
|
+
in the new module is retargeted, two figure references with them. Requires
|
|
28
|
+
`@moqtap/test-vectors` 0.17.0, which adds the draft-21 corpus.
|
|
29
|
+
|
|
30
|
+
### Fixed
|
|
31
|
+
|
|
32
|
+
- **A private path no longer ships in the package.** Three source files carried
|
|
33
|
+
a "Spec of record" reference to an internal planning document. `files`
|
|
34
|
+
includes `src`, and the generated `dist/*.d.ts` reproduced it, so the path was
|
|
35
|
+
in the published tarball. The comments now say why the code is as it is
|
|
36
|
+
without naming the document.
|
|
37
|
+
|
|
10
38
|
## [0.11.0] - 2026-09-17
|
|
11
39
|
|
|
12
40
|
### Added
|
package/README.md
CHANGED
|
@@ -71,6 +71,7 @@ Each draft is available as a subpath import with its own codec and session state
|
|
|
71
71
|
| `@moqtap/codec/draft18` | Draft-18 codec |
|
|
72
72
|
| `@moqtap/codec/draft19` | Draft-19 codec |
|
|
73
73
|
| `@moqtap/codec/draft20` | Draft-20 codec |
|
|
74
|
+
| `@moqtap/codec/draft21` | Draft-21 codec |
|
|
74
75
|
| `@moqtap/codec/draft{N}/session` | Session state machine for draft N |
|
|
75
76
|
|
|
76
77
|
> **Note:** A default (versionless) codec will be available once the MoQT specification reaches RFC status. Until then, always specify a draft version.
|
|
@@ -78,11 +79,11 @@ Each draft is available as a subpath import with its own codec and session state
|
|
|
78
79
|
`DRAFT_VERSIONS` is a table of numeric keys, and only the entries up to `'14'` are values a peer
|
|
79
80
|
ever puts on the wire. From draft-15 the version is negotiated by ALPN (raw QUIC) or
|
|
80
81
|
`WT-Available-Protocols` (WebTransport) as the string `moqt-NN`, and no version number is sent at
|
|
81
|
-
all — so `DRAFT_VERSIONS['
|
|
82
|
+
all — so `DRAFT_VERSIONS['21']` is a derived identifier, not something observed. Each draft module
|
|
82
83
|
from 15 on exports the real one:
|
|
83
84
|
|
|
84
85
|
```typescript
|
|
85
|
-
import { PROTOCOL_STRING } from '@moqtap/codec/
|
|
86
|
+
import { PROTOCOL_STRING } from '@moqtap/codec/draft21' // 'moqt-21'
|
|
86
87
|
```
|
|
87
88
|
|
|
88
89
|
## Draft-Specific Imports
|
|
@@ -46,8 +46,6 @@
|
|
|
46
46
|
* the capture, runs one decode to completion, and closes it in a `finally`.
|
|
47
47
|
* There is no `await` between those points, so no second capture can interleave
|
|
48
48
|
* with the first.
|
|
49
|
-
*
|
|
50
|
-
* Spec of record: `wt-logging-1-collector.md` Section 1.6.
|
|
51
49
|
*/
|
|
52
50
|
/**
|
|
53
51
|
* The byte written over a redacted Token Value.
|
|
@@ -46,8 +46,6 @@
|
|
|
46
46
|
* the capture, runs one decode to completion, and closes it in a `finally`.
|
|
47
47
|
* There is no `await` between those points, so no second capture can interleave
|
|
48
48
|
* with the first.
|
|
49
|
-
*
|
|
50
|
-
* Spec of record: `wt-logging-1-collector.md` Section 1.6.
|
|
51
49
|
*/
|
|
52
50
|
/**
|
|
53
51
|
* The byte written over a redacted Token Value.
|