@ismail-elkorchi/bytefold 0.6.0 → 0.7.2

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/README.md CHANGED
@@ -15,6 +15,8 @@ Multi-format archive reader/writer for Node 24+, Deno, Bun, and Web (Browser). E
15
15
 
16
16
  ```sh
17
17
  npm install @ismail-elkorchi/bytefold
18
+ # or
19
+ deno add jsr:@ismail-elkorchi/bytefold
18
20
  ```
19
21
 
20
22
  ## Quickstart (auto-detect)
@@ -35,6 +37,7 @@ for await (const entry of reader.entries()) {
35
37
  ```
36
38
 
37
39
  Support matrix: see `SPEC.md` (Support matrix section).
40
+ Machine-readable support entrypoint: `@ismail-elkorchi/bytefold/support`.
38
41
 
39
42
  Web runtime entrypoint: `@ismail-elkorchi/bytefold/web` (HTTPS URL input only; full-fetch by design; no seekable HTTP range sessions in web adapter).
40
43
 
package/SPEC.md CHANGED
@@ -29,6 +29,7 @@ Snapshot enforced by `test/export-surface.test.ts` and `test/support-matrix.test
29
29
  - `@ismail-elkorchi/bytefold/deno`
30
30
  - `@ismail-elkorchi/bytefold/bun`
31
31
  - `@ismail-elkorchi/bytefold/web`
32
+ - `@ismail-elkorchi/bytefold/support`
32
33
 
33
34
  ### jsr (jsr.json exports)
34
35
  - `@ismail-elkorchi/bytefold`
@@ -39,6 +40,7 @@ Snapshot enforced by `test/export-surface.test.ts` and `test/support-matrix.test
39
40
  - `@ismail-elkorchi/bytefold/deno`
40
41
  - `@ismail-elkorchi/bytefold/bun`
41
42
  - `@ismail-elkorchi/bytefold/web`
43
+ - `@ismail-elkorchi/bytefold/support`
42
44
 
43
45
  ## Invariants (test-linked)
44
46
  1. Runtime dependencies count is zero; package is ESM-only and requires Node >= 24. (tests: `test/repo-invariants.test.ts`)
package/dist/index.d.ts CHANGED
@@ -1,3 +1,6 @@
1
+ /**
2
+ * Primary bytefold entrypoint exports for archive and compression APIs.
3
+ */
1
4
  export * from './archive/index.js';
2
5
  export { ArchiveError } from './archive/errors.js';
3
6
  export type { ArchiveErrorCode } from './archive/errors.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,YAAY,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,YAAY,EACV,kBAAkB,EAClB,sBAAsB,EACtB,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,YAAY,EACZ,oBAAoB,EACpB,aAAa,EACb,sBAAsB,EACtB,kBAAkB,EAClB,cAAc,EACf,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAElD,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,OAAO,EAAE,8BAA8B,EAAE,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,cAAc,oBAAoB,CAAC;AACnC,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,YAAY,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,YAAY,EACV,kBAAkB,EAClB,sBAAsB,EACtB,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,YAAY,EACZ,oBAAoB,EACpB,aAAa,EACb,sBAAsB,EACtB,kBAAkB,EAClB,cAAc,EACf,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAElD,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,OAAO,EAAE,8BAA8B,EAAE,MAAM,mBAAmB,CAAC"}
package/dist/index.js CHANGED
@@ -1,3 +1,6 @@
1
+ /**
2
+ * Primary bytefold entrypoint exports for archive and compression APIs.
3
+ */
1
4
  export * from './archive/index.js';
2
5
  export { ArchiveError } from './archive/errors.js';
3
6
  export * from './zip/index.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAiBnD,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,OAAO,EAAE,8BAA8B,EAAE,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,cAAc,oBAAoB,CAAC;AACnC,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAiBnD,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,OAAO,EAAE,8BAA8B,EAAE,MAAM,mBAAmB,CAAC"}
@@ -0,0 +1,50 @@
1
+ /**
2
+ * Machine-consumable runtime support matrix exported from bytefold.
3
+ */
4
+ import type { ArchiveFormat } from './archive/types.js';
5
+ /**
6
+ * Bytefold archive operation identifiers used by the support matrix.
7
+ */
8
+ export type ArchiveOperation = 'detect' | 'list' | 'audit' | 'extract' | 'normalize' | 'write';
9
+ /**
10
+ * Runtime identifiers used by the support matrix.
11
+ */
12
+ export type BytefoldRuntime = 'node' | 'deno' | 'bun' | 'web';
13
+ /**
14
+ * Support status for one format × operation cell.
15
+ */
16
+ export type SupportState = 'supported' | 'unsupported' | 'hint-required' | 'capability-gated';
17
+ /**
18
+ * Detailed support descriptor for one matrix cell.
19
+ */
20
+ export interface SupportCell {
21
+ state: SupportState;
22
+ errorCode?: string;
23
+ note?: string;
24
+ }
25
+ /**
26
+ * JSON support-matrix block from SPEC.md.
27
+ */
28
+ export type SupportMatrix = {
29
+ formats: readonly ArchiveFormat[];
30
+ operations: readonly ArchiveOperation[];
31
+ runtimes: readonly BytefoldRuntime[];
32
+ };
33
+ /**
34
+ * JSON support-matrix block from SPEC.md.
35
+ */
36
+ export declare const supportMatrix: SupportMatrix;
37
+ /**
38
+ * Per-format support for one runtime.
39
+ */
40
+ export type RuntimeSupport = Record<ArchiveFormat, Record<ArchiveOperation, SupportCell>>;
41
+ /**
42
+ * Per-runtime support map.
43
+ */
44
+ export type RuntimeSupportMap = Record<BytefoldRuntime, RuntimeSupport>;
45
+ /**
46
+ * Return support details aligned with SPEC.md runtime tables.
47
+ */
48
+ export declare function runtimeSupport(): RuntimeSupportMap;
49
+ export declare function runtimeSupport(runtime: BytefoldRuntime): RuntimeSupport;
50
+ //# sourceMappingURL=support.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"support.d.ts","sourceRoot":"","sources":["../src/support.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAExD;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,GAAG,WAAW,GAAG,OAAO,CAAC;AAE/F;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,MAAM,GAAG,KAAK,GAAG,KAAK,CAAC;AAE9D;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,WAAW,GAAG,aAAa,GAAG,eAAe,GAAG,kBAAkB,CAAC;AAE9F;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,YAAY,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG;IAC1B,OAAO,EAAE,SAAS,aAAa,EAAE,CAAC;IAClC,UAAU,EAAE,SAAS,gBAAgB,EAAE,CAAC;IACxC,QAAQ,EAAE,SAAS,eAAe,EAAE,CAAC;CACtC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,aAAa,EAAE,aAkB3B,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,CACjC,aAAa,EACb,MAAM,CAAC,gBAAgB,EAAE,WAAW,CAAC,CACtC,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC,eAAe,EAAE,cAAc,CAAC,CAAC;AAWxE;;GAEG;AACH,wBAAgB,cAAc,IAAI,iBAAiB,CAAC;AACpD,wBAAgB,cAAc,CAAC,OAAO,EAAE,eAAe,GAAG,cAAc,CAAC"}
@@ -0,0 +1,122 @@
1
+ /**
2
+ * JSON support-matrix block from SPEC.md.
3
+ */
4
+ export const supportMatrix = {
5
+ formats: [
6
+ 'zip',
7
+ 'tar',
8
+ 'tgz',
9
+ 'tar.gz',
10
+ 'gz',
11
+ 'bz2',
12
+ 'tar.bz2',
13
+ 'zst',
14
+ 'tar.zst',
15
+ 'br',
16
+ 'tar.br',
17
+ 'xz',
18
+ 'tar.xz'
19
+ ],
20
+ operations: ['detect', 'list', 'audit', 'extract', 'normalize', 'write'],
21
+ runtimes: ['node', 'deno', 'bun', 'web']
22
+ };
23
+ const singleFileFormats = new Set(['gz', 'bz2', 'xz', 'zst', 'br']);
24
+ const runtimeSupportMap = {
25
+ node: createNodeLikeSupport(),
26
+ deno: createDenoSupport(),
27
+ bun: createNodeLikeSupport(),
28
+ web: createWebSupport()
29
+ };
30
+ export function runtimeSupport(runtime) {
31
+ if (runtime) {
32
+ return cloneRuntimeSupport(runtimeSupportMap[runtime]);
33
+ }
34
+ return {
35
+ node: cloneRuntimeSupport(runtimeSupportMap.node),
36
+ deno: cloneRuntimeSupport(runtimeSupportMap.deno),
37
+ bun: cloneRuntimeSupport(runtimeSupportMap.bun),
38
+ web: cloneRuntimeSupport(runtimeSupportMap.web)
39
+ };
40
+ }
41
+ function createNodeLikeSupport() {
42
+ const matrix = createFullySupportedRuntime();
43
+ for (const format of singleFileFormats) {
44
+ matrix[format].normalize = unsupported('ARCHIVE_UNSUPPORTED_FEATURE');
45
+ }
46
+ for (const format of ['tar.bz2', 'bz2', 'tar.xz', 'xz']) {
47
+ matrix[format].write = unsupported('ARCHIVE_UNSUPPORTED_FORMAT');
48
+ }
49
+ matrix['tar.br'].detect = hintRequired('Specify format "tar.br" or a filename hint.');
50
+ matrix.br.detect = hintRequired('Specify format "br" or a filename hint.');
51
+ return matrix;
52
+ }
53
+ function createDenoSupport() {
54
+ const matrix = createNodeLikeSupport();
55
+ for (const format of ['tar.zst', 'zst', 'tar.br', 'br']) {
56
+ for (const operation of supportMatrix.operations) {
57
+ matrix[format][operation] = capabilityGated('COMPRESSION_UNSUPPORTED_ALGORITHM');
58
+ }
59
+ }
60
+ return matrix;
61
+ }
62
+ function createWebSupport() {
63
+ const matrix = createNodeLikeSupport();
64
+ for (const operation of supportMatrix.operations) {
65
+ matrix['tar.zst'][operation] = capabilityGated('COMPRESSION_UNSUPPORTED_ALGORITHM');
66
+ }
67
+ for (const operation of ['detect', 'list', 'audit', 'extract', 'write']) {
68
+ matrix.zst[operation] = capabilityGated('COMPRESSION_UNSUPPORTED_ALGORITHM');
69
+ }
70
+ matrix.zst.normalize = unsupported('ARCHIVE_UNSUPPORTED_FEATURE');
71
+ matrix['tar.br'].detect = hintRequired('Specify format "tar.br" or a filename hint; capability-gated when brotli streams are unavailable.');
72
+ matrix.br.detect = hintRequired('Specify format "br" or a filename hint; capability-gated when brotli streams are unavailable.');
73
+ matrix['tar.br'].write = capabilityGated('COMPRESSION_UNSUPPORTED_ALGORITHM');
74
+ matrix.br.write = capabilityGated('COMPRESSION_UNSUPPORTED_ALGORITHM');
75
+ return matrix;
76
+ }
77
+ function createFullySupportedRuntime() {
78
+ const matrix = {};
79
+ for (const format of supportMatrix.formats) {
80
+ const operations = {};
81
+ for (const operation of supportMatrix.operations) {
82
+ operations[operation] = supported();
83
+ }
84
+ matrix[format] = operations;
85
+ }
86
+ return matrix;
87
+ }
88
+ function cloneRuntimeSupport(runtime) {
89
+ const cloned = {};
90
+ for (const format of supportMatrix.formats) {
91
+ cloned[format] = {};
92
+ for (const operation of supportMatrix.operations) {
93
+ const cell = runtime[format][operation];
94
+ cloned[format][operation] = { ...cell };
95
+ }
96
+ }
97
+ return cloned;
98
+ }
99
+ function supported() {
100
+ return { state: 'supported' };
101
+ }
102
+ function unsupported(errorCode, note) {
103
+ return {
104
+ state: 'unsupported',
105
+ errorCode,
106
+ ...(note ? { note } : {})
107
+ };
108
+ }
109
+ function hintRequired(note) {
110
+ return {
111
+ state: 'hint-required',
112
+ note
113
+ };
114
+ }
115
+ function capabilityGated(errorCode, note) {
116
+ return {
117
+ state: 'capability-gated',
118
+ errorCode,
119
+ ...(note ? { note } : {})
120
+ };
121
+ }
122
+ //# sourceMappingURL=support.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"support.js","sourceRoot":"","sources":["../src/support.ts"],"names":[],"mappings":"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"}
package/jsr.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ismail-elkorchi/bytefold",
3
- "version": "0.6.0",
3
+ "version": "0.7.2",
4
4
  "license": "MIT",
5
5
  "exports": {
6
6
  ".": "./mod.ts",
@@ -10,7 +10,8 @@
10
10
  "./tar": "./tar/mod.ts",
11
11
  "./deno": "./deno/mod.ts",
12
12
  "./bun": "./bun/mod.ts",
13
- "./web": "./web/mod.ts"
13
+ "./web": "./web/mod.ts",
14
+ "./support": "./support/mod.ts"
14
15
  },
15
16
  "publish": {
16
17
  "include": [
@@ -24,6 +25,7 @@
24
25
  "tar/mod.ts",
25
26
  "deno/mod.ts",
26
27
  "bun/mod.ts",
28
+ "support/mod.ts",
27
29
  "web/mod.ts",
28
30
  "src/**",
29
31
  "jsr.json",
package/package.json CHANGED
@@ -1,9 +1,17 @@
1
1
  {
2
2
  "name": "@ismail-elkorchi/bytefold",
3
- "version": "0.6.0",
3
+ "version": "0.7.2",
4
4
  "description": "Multi-format archive reader/writer with agent-grade safety for Node, Deno, and Bun",
5
5
  "license": "MIT",
6
6
  "type": "module",
7
+ "repository": {
8
+ "type": "git",
9
+ "url": "https://github.com/Ismail-elkorchi/bytefold"
10
+ },
11
+ "bugs": {
12
+ "url": "https://github.com/Ismail-elkorchi/bytefold/issues"
13
+ },
14
+ "homepage": "https://github.com/Ismail-elkorchi/bytefold#readme",
7
15
  "engines": {
8
16
  "node": ">=24"
9
17
  },
@@ -47,6 +55,10 @@
47
55
  "./web": {
48
56
  "types": "./dist/web/index.d.ts",
49
57
  "default": "./dist/web/index.js"
58
+ },
59
+ "./support": {
60
+ "types": "./dist/support.d.ts",
61
+ "default": "./dist/support.js"
50
62
  }
51
63
  },
52
64
  "main": "./dist/index.js",
@@ -62,6 +74,7 @@
62
74
  "scripts": {
63
75
  "build": "tsc -p tsconfig.json",
64
76
  "build:test": "tsc -p tsconfig.test.json",
77
+ "prepare": "npm run build",
65
78
  "prepack": "npm run version:check && npm run build",
66
79
  "test": "npm run build && npm run build:test && node --test dist-test",
67
80
  "test:node": "npm run test",
@@ -89,13 +102,14 @@
89
102
  "check:node": "npm run lint && npm run typecheck && npm test",
90
103
  "check:all": "npm run check",
91
104
  "web:check": "node ./scripts/web-check.mjs",
92
- "check": "node ./scripts/verify-runtime-versions.mjs && npm run generated:check && npm run unicode:check && npm run fixtures:hashes:check && npm run format:check && npm run lint && npm run typecheck && npm run test && npm run test:deno && npm run test:bun && npm run web:check && npm run build && npm run jsr:check && npm run pack:check && npm run pack:smoke && npm run docs:check",
105
+ "check": "node ./scripts/verify-runtime-versions.mjs && node ./scripts/workflow-policy-check.mjs && node ./scripts/esm-only-guard.mjs && node ./scripts/docs-policy-check.mjs && npm run generated:check && npm run unicode:check && npm run fixtures:hashes:check && npm run format:check && npm run lint && npm run typecheck && npm run test && npm run test:deno && npm run test:bun && npm run web:check && npm run build && npm run jsr:check && npm run pack:check && npm run pack:smoke && npm run docs:check",
93
106
  "docs:check": "node ./scripts/docs-check.mjs",
94
107
  "context:index": "node ./scripts/dump-context.mjs --index",
95
108
  "doc:lint": "deno doc --lint --sloppy-imports mod.ts",
96
109
  "doc:test": "deno test --doc --sloppy-imports mod.ts",
97
110
  "jsr:dry": "deno publish --dry-run --allow-dirty",
98
111
  "jsr:check": "npm run build && npm run doc:lint && npm run doc:test && npm run jsr:dry",
112
+ "jsr:score": "node ./scripts/jsr-score-gate.mjs",
99
113
  "pack:check": "node ./scripts/verify-pack.mjs",
100
114
  "pack:smoke": "node ./scripts/smoke-pack.mjs",
101
115
  "version:check": "node ./scripts/sync-version.mjs"