quorin 0.1.0 → 0.1.1
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 +6 -0
- package/README.md +12 -2
- package/package.json +33 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## Unreleased
|
|
4
|
+
|
|
5
|
+
- Add `typesVersions` so subpath imports such as `quorin/cache` type check under legacy `moduleResolution: "node"` (TypeScript 6 and earlier).
|
|
6
|
+
- Test declarations on TypeScript 5.8 as well as 7.0, including CommonJS consumers under `NodeNext`.
|
|
7
|
+
- Document TypeScript settings per project type, and align the documented `require` support with the Node 22.19.0 engines floor.
|
|
8
|
+
|
|
3
9
|
## 0.1.0 (2026-10-26)
|
|
4
10
|
|
|
5
11
|
First public preview with all nine modules.
|
package/README.md
CHANGED
|
@@ -78,7 +78,7 @@ yarn add quorin
|
|
|
78
78
|
bun add quorin
|
|
79
79
|
```
|
|
80
80
|
|
|
81
|
-
Quorin ships one ESM build with type declarations and source maps. On Node 22.
|
|
81
|
+
Quorin ships one ESM build with type declarations and source maps. On every supported Node version (22.19.0 and later) you can also `require('quorin')`, because no module in the graph uses top-level await. CommonJS TypeScript projects need `module: "NodeNext"`; see [TypeScript settings](#typescript-settings).
|
|
82
82
|
|
|
83
83
|
## Quick start
|
|
84
84
|
|
|
@@ -736,7 +736,17 @@ An `AbortSignal` cannot preempt synchronous code, undo side effects, or force a
|
|
|
736
736
|
|
|
737
737
|
Required capabilities: ES2022, `Promise`, `AbortController` and `AbortSignal`, timers, `TextEncoder` and `TextDecoder`, and `performance.now`. The core does not need `fetch`, `crypto`, `structuredClone`, `AbortSignal.any`, or `AbortSignal.timeout`.
|
|
738
738
|
|
|
739
|
-
|
|
739
|
+
### TypeScript settings
|
|
740
|
+
|
|
741
|
+
TypeScript consumers need TypeScript 5.8 or later. Declarations are tested on TypeScript 5.8 and 7.0 with `strict`, `exactOptionalPropertyTypes`, and `noUncheckedIndexedAccess`.
|
|
742
|
+
|
|
743
|
+
| Your project | `module` / `moduleResolution` | Result |
|
|
744
|
+
| --- | --- | --- |
|
|
745
|
+
| ESM (`"type": "module"`) | `NodeNext` or `Node16` | Works |
|
|
746
|
+
| Bundled app (Vite, webpack, esbuild, Bun) | `ESNext` + `Bundler` | Works |
|
|
747
|
+
| CommonJS | `NodeNext` (TS 5.8+) or `Node20` (TS 5.9+) | Works |
|
|
748
|
+
| CommonJS | `Node16` or `Node18` | Error TS1479: TypeScript assumes those Node versions cannot `require` ES modules. Switch to `NodeNext`. |
|
|
749
|
+
| Legacy `moduleResolution: "node"` (`node10`) | `CommonJS` + `Node10` | Works through `typesVersions` on TypeScript 6 and earlier. TypeScript 7 removed this mode, so plan to move to `NodeNext` or `Bundler`. |
|
|
740
750
|
|
|
741
751
|
Zero runtime dependencies reduces supply-chain exposure; it does not remove implementation risk or maintenance cost.
|
|
742
752
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "quorin",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.1",
|
|
4
4
|
"description": "Modular TypeScript utilities for data structures, bytes, objects, async work, results, validation, retries, caching, and state, with no runtime dependencies.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "arnonsang",
|
|
@@ -30,6 +30,37 @@
|
|
|
30
30
|
"sideEffects": false,
|
|
31
31
|
"main": "./dist/index.js",
|
|
32
32
|
"types": "./dist/index.d.ts",
|
|
33
|
+
"typesVersions": {
|
|
34
|
+
"*": {
|
|
35
|
+
"struct": [
|
|
36
|
+
"./dist/struct/index.d.ts"
|
|
37
|
+
],
|
|
38
|
+
"object": [
|
|
39
|
+
"./dist/object/index.d.ts"
|
|
40
|
+
],
|
|
41
|
+
"bytes": [
|
|
42
|
+
"./dist/bytes/index.d.ts"
|
|
43
|
+
],
|
|
44
|
+
"async": [
|
|
45
|
+
"./dist/async/index.d.ts"
|
|
46
|
+
],
|
|
47
|
+
"result": [
|
|
48
|
+
"./dist/result/index.d.ts"
|
|
49
|
+
],
|
|
50
|
+
"boundary": [
|
|
51
|
+
"./dist/boundary/index.d.ts"
|
|
52
|
+
],
|
|
53
|
+
"resilience": [
|
|
54
|
+
"./dist/resilience/index.d.ts"
|
|
55
|
+
],
|
|
56
|
+
"cache": [
|
|
57
|
+
"./dist/cache/index.d.ts"
|
|
58
|
+
],
|
|
59
|
+
"state": [
|
|
60
|
+
"./dist/state/index.d.ts"
|
|
61
|
+
]
|
|
62
|
+
}
|
|
63
|
+
},
|
|
33
64
|
"exports": {
|
|
34
65
|
".": {
|
|
35
66
|
"types": "./dist/index.d.ts",
|
|
@@ -97,6 +128,7 @@
|
|
|
97
128
|
"@types/node": "22.20.5",
|
|
98
129
|
"arktype": "2.2.9",
|
|
99
130
|
"typescript": "7.0.2",
|
|
131
|
+
"typescript-5.8": "npm:typescript@5.8.3",
|
|
100
132
|
"valibot": "1.5.0",
|
|
101
133
|
"zod": "4.6.7"
|
|
102
134
|
}
|