node-liblzma 4.0.2 → 5.0.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/README.md CHANGED
@@ -7,7 +7,7 @@ Node-liblzma
7
7
  [![Documentation](https://img.shields.io/badge/docs-TypeDoc-blue.svg)](https://oorabona.github.io/node-liblzma/)
8
8
  [![License](https://img.shields.io/npm/l/node-liblzma.svg)](https://github.com/oorabona/node-liblzma/blob/master/LICENSE)
9
9
  [![Node Version](https://img.shields.io/node/v/node-liblzma.svg)](https://nodejs.org)
10
- [![TypeScript](https://img.shields.io/badge/TypeScript-5.x-blue.svg)](https://www.typescriptlang.org/)
10
+ [![TypeScript](https://img.shields.io/badge/TypeScript-6.x-blue.svg)](https://www.typescriptlang.org/)
11
11
  [![npm provenance](https://img.shields.io/badge/npm-provenance-green.svg)](https://docs.npmjs.com/generating-provenance-statements)
12
12
  [![codecov](https://codecov.io/gh/oorabona/node-liblzma/graph/badge.svg)](https://codecov.io/gh/oorabona/node-liblzma)
13
13
  [![code style: biome](https://img.shields.io/badge/code_style-biome-60a5fa.svg)](https://biomejs.dev)
@@ -18,6 +18,7 @@ Native Node.js bindings for liblzma — XZ/LZMA2 compression with **browser supp
18
18
 
19
19
  - [Quick Start](#quick-start)
20
20
  - [What's New](#whats-new)
21
+ - [v5.0.0 — TypeScript 6 & Node 22](#v500--typescript-6--node-22)
21
22
  - [v4.0.0 — API Cleanup](#v400--api-cleanup)
22
23
  - [v3.0.0 — Browser & WASM Support](#v300--browser--wasm-support)
23
24
  - [v2.0.0 — TypeScript Modernization](#v200--typescript-modernization)
@@ -39,11 +40,13 @@ Native Node.js bindings for liblzma — XZ/LZMA2 compression with **browser supp
39
40
  - [Installation](#installation)
40
41
  - [Testing](#testing)
41
42
  - [Migration Guide](#migration-guide)
43
+ - [v4.x → v5.0](#v4x--v50)
42
44
  - [v3.x → v4.0](#v3x--v40)
43
45
  - [v1.x → v2.0](#v1x--v20)
44
46
  - [Contributing](#contributing)
45
47
  - [Releasing](#releasing)
46
48
  - [Troubleshooting](#troubleshooting)
49
+ - [Using node-liblzma?](#using-node-liblzma)
47
50
  - [Bugs](#bugs)
48
51
  - [Acknowledgements](#acknowledgements)
49
52
  - [License](#license)
@@ -124,6 +127,13 @@ xz(Buffer.from('Hello, World!'), (err, compressed) => {
124
127
 
125
128
  ## What's New
126
129
 
130
+ ### v5.0.0 — TypeScript 6 & Node 22
131
+
132
+ - **Node.js >= 22 required** — Node 20 reached EOL in April 2026
133
+ - **TypeScript 6** — Upgraded from TS 5.x; explicit `types` declarations in workspace tsconfigs
134
+ - **CI matrix updated** — Tests now run on Node 22 + 24 (was 20 + 22)
135
+ - **XZ Utils 5.8.3** — Updated from 5.8.2
136
+
127
137
  ### v4.0.0 — API Cleanup
128
138
 
129
139
  - **Default export removed** — Use named imports instead (see [migration guide](#v3x--v40))
@@ -155,7 +165,7 @@ xz(Buffer.from('Hello, World!'), (err, compressed) => {
155
165
  - **Full TypeScript migration**: Complete rewrite from CoffeeScript
156
166
  - **Promise-based APIs**: `xzAsync()` and `unxzAsync()`
157
167
  - **Modern tooling**: Vitest, Biome, pnpm, pre-commit hooks
158
- - **Node.js >= 16** required (updated from >= 12; bumped to >= 20 in v3.2.0)
168
+ - **Node.js >= 16** required (updated from >= 12; bumped to >= 20 in v3.2.0, >= 22 in v5.0.0)
159
169
 
160
170
  <details>
161
171
  <summary><strong>Legacy (N-API migration)</strong></summary>
@@ -332,9 +342,9 @@ Archives created by nxz are fully compatible with system `tar -xJf`.
332
342
  <summary><strong>One-shot usage (without global install)</strong></summary>
333
343
 
334
344
  ```bash
335
- # Standalone nxz-cli package (recommended — smaller, faster install)
336
- npx nxz-cli --help
337
- pnpm dlx nxz-cli --help
345
+ # Standalone nxz package (recommended — smaller, faster install)
346
+ npx @oorabona/nxz --help
347
+ pnpm dlx @oorabona/nxz --help
338
348
 
339
349
  # Or via the full node-liblzma package
340
350
  npx --package node-liblzma nxz --help
@@ -358,43 +368,61 @@ node-liblzma powers a family of focused packages:
358
368
  | Package | Description | Install |
359
369
  |---------|-------------|---------|
360
370
  | [`node-liblzma`](https://www.npmjs.com/package/node-liblzma) | Core XZ library — Node.js native + browser WASM | `npm i node-liblzma` |
361
- | [`tar-xz`](https://www.npmjs.com/package/tar-xz) | Create/extract .tar.xz archives — Node.js + browser | `npm i tar-xz` |
362
- | [`nxz-cli`](https://www.npmjs.com/package/nxz-cli) | Standalone CLI — `npx nxz-cli file.txt` | `npx nxz-cli` |
371
+ | [`tar-xz`](https://www.npmjs.com/package/tar-xz) | Create/extract .tar.xz archives — stream-first, Node + browser, same API (v6) | `npm i tar-xz` |
372
+ | [`@oorabona/nxz`](https://www.npmjs.com/package/@oorabona/nxz) | Standalone CLI — `npx @oorabona/nxz file.txt` | `npx @oorabona/nxz` |
363
373
 
364
- ### tar-xz — tar.xz archives
374
+ ### tar-xz — tar.xz archives (v6)
365
375
 
366
376
  > **[Live Demo](https://oorabona.github.io/node-liblzma/tar-xz/)** — Create and extract tar.xz archives in your browser.
367
377
 
368
- A library for working with `.tar.xz` archives, with dual Node.js (streaming) and browser (buffer-based) APIs. This fills the gap left by [node-tar](https://github.com/isaacs/node-tar) which does not support `.tar.xz`.
378
+ > **v6 redesign** unified stream-first API, same function names in Node and browser.
379
+ > See [packages/tar-xz/README.md](packages/tar-xz/README.md) for full docs and migration guide.
380
+
381
+ A library for working with `.tar.xz` archives. Fills the gap left by
382
+ [node-tar](https://github.com/isaacs/node-tar) which does not support `.tar.xz`.
369
383
 
370
384
  ```typescript
371
- // Node.js streaming API
385
+ // Same import works in Node.js AND browser (bundler resolves WASM automatically)
372
386
  import { create, extract, list } from 'tar-xz';
373
387
 
374
- await create({ file: 'archive.tar.xz', cwd: './src', files: ['index.ts', 'utils.ts'] });
375
- const entries = await list({ file: 'archive.tar.xz' });
376
- await extract({ file: 'archive.tar.xz', cwd: './output' });
388
+ // CREATE returns AsyncIterable<Uint8Array>
389
+ const archiveStream = create({
390
+ files: [
391
+ { name: 'hello.txt', source: Buffer.from('Hello!') },
392
+ { name: 'data.json', source: Buffer.from('{}') },
393
+ ],
394
+ preset: 6,
395
+ });
396
+
397
+ // EXTRACT — returns AsyncIterable<TarEntryWithData>
398
+ for await (const entry of extract(archiveStream)) {
399
+ if (entry.type === '0') console.log(entry.name, await entry.text());
400
+ }
377
401
 
378
- // Browserbuffer-based API
379
- import { createTarXz, extractTarXz, listTarXz } from 'tar-xz';
402
+ // LISTreturns AsyncIterable<TarEntry>
403
+ for await (const entry of list(archiveStream)) {
404
+ console.log(entry.name, entry.size);
405
+ }
380
406
 
381
- const archive = await createTarXz({ files: [{ name: 'hello.txt', content: data }] });
382
- const files = await extractTarXz(archive);
383
- const entries = await listTarXz(archive);
407
+ // File helpers (Node only, tar-xz/file subpath)
408
+ import { createFile, extractFile, listFile } from 'tar-xz/file';
409
+ await createFile('archive.tar.xz', { files: [{ name: 'a.txt', source: 'a.txt' }] });
410
+ await extractFile('archive.tar.xz', { cwd: './output', strip: 1 });
411
+ const entries = await listFile('archive.tar.xz');
384
412
  ```
385
413
 
386
- ### nxz-cli — standalone CLI
414
+ ### nxz — standalone CLI
387
415
 
388
416
  A lightweight wrapper package for running `nxz` without installing the full `node-liblzma`:
389
417
 
390
418
  ```bash
391
419
  # No install needed
392
- npx nxz-cli file.txt # compress
393
- npx nxz-cli -d file.txt.xz # decompress
394
- npx nxz-cli -T src/ -o app.tar.xz # create tar.xz archive
420
+ npx @oorabona/nxz file.txt # compress
421
+ npx @oorabona/nxz -d file.txt.xz # decompress
422
+ npx @oorabona/nxz -T src/ -o app.tar.xz # create tar.xz archive
395
423
 
396
424
  # Or install globally
397
- npm install -g nxz-cli
425
+ npm install -g @oorabona/nxz
398
426
  ```
399
427
 
400
428
  ## API Reference
@@ -676,6 +704,18 @@ Tests use [Vitest](https://vitest.dev/) with 100% code coverage across statement
676
704
 
677
705
  ## Migration Guide
678
706
 
707
+ ### v4.x → v5.0
708
+
709
+ #### Breaking Changes
710
+
711
+ 1. **Node.js >= 22 required** — Node 20 reached end-of-life in April 2026. If you must support Node 20, stay on v4.x.
712
+
713
+ 2. **TypeScript 6** — If your project uses TypeScript, you'll need TS 6.x to compile with this version's type definitions.
714
+
715
+ #### No API Changes
716
+
717
+ The JavaScript/TypeScript API is identical to v4.x — `xzAsync`, `unxzAsync`, `createXz`, `createUnxz`, and all other functions work the same way. This is a toolchain-only breaking change.
718
+
679
719
  ### v3.x → v4.0
680
720
 
681
721
  #### Breaking Changes
@@ -845,11 +885,15 @@ npm config set python python3
845
885
  ## Related Projects
846
886
 
847
887
  - [tar-xz](https://www.npmjs.com/package/tar-xz) — Create/extract tar.xz archives (powered by node-liblzma)
848
- - [nxz-cli](https://www.npmjs.com/package/nxz-cli) — Standalone CLI for XZ compression
888
+ - [@oorabona/nxz](https://www.npmjs.com/package/@oorabona/nxz) — Standalone CLI for XZ compression
849
889
  - [lzma-purejs](https://github.com/cscott/lzma-purejs) — Pure JavaScript LZMA implementation
850
890
  - [node-xz](https://github.com/robey/node-xz) — Node binding of XZ library
851
891
  - [lzma-native](https://github.com/addaleax/lzma-native) — Complete XZ library bindings
852
892
 
893
+ ## Using node-liblzma?
894
+
895
+ We'd love to hear from you! If you're using node-liblzma in production, a side project, or an interesting use case, feel free to [open a discussion](https://github.com/oorabona/node-liblzma/discussions) or drop a comment on [this thread](https://github.com/oorabona/node-liblzma/issues/94). It helps us understand how the library is used and prioritize features.
896
+
853
897
  ## Bugs
854
898
 
855
899
  If you find one, feel free to contribute and post a new [issue](https://github.com/oorabona/node-liblzma/issues)!
package/lib/errors.d.ts CHANGED
@@ -45,7 +45,7 @@ export declare class LZMAFormatError extends LZMAError {
45
45
  * Options error - thrown when invalid or unsupported options are provided
46
46
  */
47
47
  export declare class LZMAOptionsError extends LZMAError {
48
- constructor(errno: number);
48
+ constructor(errno: number, message?: string);
49
49
  }
50
50
  /**
51
51
  * Data error - thrown when compressed data is corrupt
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH;;GAEG;AACH,qBAAa,SAAU,SAAQ,KAAK;IAClC,SAAgB,KAAK,EAAE,MAAM,CAAC;IAC9B,SAAgB,IAAI,EAAE,MAAM,CAAC;gBAEjB,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;CAO3C;AAED;;GAEG;AACH,qBAAa,eAAgB,SAAQ,SAAS;gBAChC,KAAK,EAAE,MAAM;CAI1B;AAED;;GAEG;AACH,qBAAa,oBAAqB,SAAQ,SAAS;gBACrC,KAAK,EAAE,MAAM;CAI1B;AAED;;GAEG;AACH,qBAAa,eAAgB,SAAQ,SAAS;gBAChC,KAAK,EAAE,MAAM;CAI1B;AAED;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,SAAS;gBACjC,KAAK,EAAE,MAAM;CAI1B;AAED;;GAEG;AACH,qBAAa,aAAc,SAAQ,SAAS;gBAC9B,KAAK,EAAE,MAAM;CAI1B;AAED;;GAEG;AACH,qBAAa,eAAgB,SAAQ,SAAS;gBAChC,KAAK,EAAE,MAAM;CAI1B;AAED;;GAEG;AACH,qBAAa,oBAAqB,SAAQ,SAAS;gBACrC,KAAK,EAAE,MAAM;CAI1B;AAED;;GAEG;AAMH,eAAO,MAAM,OAAO,IAAI,CAAC;AACzB,eAAO,MAAM,eAAe,IAAI,CAAC;AACjC,eAAO,MAAM,aAAa,IAAI,CAAC;AAC/B,eAAO,MAAM,sBAAsB,IAAI,CAAC;AACxC,eAAO,MAAM,cAAc,IAAI,CAAC;AAGhC,eAAO,MAAM,cAAc,IAAI,CAAC;AAChC,eAAO,MAAM,mBAAmB,IAAI,CAAC;AACrC,eAAO,MAAM,iBAAiB,IAAI,CAAC;AACnC,eAAO,MAAM,kBAAkB,IAAI,CAAC;AACpC,eAAO,MAAM,eAAe,IAAI,CAAC;AACjC,eAAO,MAAM,cAAc,KAAK,CAAC;AACjC,eAAO,MAAM,eAAe,KAAK,CAAC;AAElC,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAuB1E"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH;;GAEG;AACH,qBAAa,SAAU,SAAQ,KAAK;IAClC,SAAgB,KAAK,EAAE,MAAM,CAAC;IAC9B,SAAgB,IAAI,EAAE,MAAM,CAAC;gBAEjB,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;CAO3C;AAED;;GAEG;AACH,qBAAa,eAAgB,SAAQ,SAAS;gBAChC,KAAK,EAAE,MAAM;CAI1B;AAED;;GAEG;AACH,qBAAa,oBAAqB,SAAQ,SAAS;gBACrC,KAAK,EAAE,MAAM;CAI1B;AAED;;GAEG;AACH,qBAAa,eAAgB,SAAQ,SAAS;gBAChC,KAAK,EAAE,MAAM;CAI1B;AAED;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,SAAS;gBACjC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM;CAI5C;AAED;;GAEG;AACH,qBAAa,aAAc,SAAQ,SAAS;gBAC9B,KAAK,EAAE,MAAM;CAI1B;AAED;;GAEG;AACH,qBAAa,eAAgB,SAAQ,SAAS;gBAChC,KAAK,EAAE,MAAM;CAI1B;AAED;;GAEG;AACH,qBAAa,oBAAqB,SAAQ,SAAS;gBACrC,KAAK,EAAE,MAAM;CAI1B;AAED;;GAEG;AAMH,eAAO,MAAM,OAAO,IAAI,CAAC;AACzB,eAAO,MAAM,eAAe,IAAI,CAAC;AACjC,eAAO,MAAM,aAAa,IAAI,CAAC;AAC/B,eAAO,MAAM,sBAAsB,IAAI,CAAC;AACxC,eAAO,MAAM,cAAc,IAAI,CAAC;AAGhC,eAAO,MAAM,cAAc,IAAI,CAAC;AAChC,eAAO,MAAM,mBAAmB,IAAI,CAAC;AACrC,eAAO,MAAM,iBAAiB,IAAI,CAAC;AACnC,eAAO,MAAM,kBAAkB,IAAI,CAAC;AACpC,eAAO,MAAM,eAAe,IAAI,CAAC;AACjC,eAAO,MAAM,cAAc,KAAK,CAAC;AACjC,eAAO,MAAM,eAAe,KAAK,CAAC;AAElC,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAuB1E"}
package/lib/errors.js CHANGED
@@ -58,8 +58,8 @@ export class LZMAFormatError extends LZMAError {
58
58
  * Options error - thrown when invalid or unsupported options are provided
59
59
  */
60
60
  export class LZMAOptionsError extends LZMAError {
61
- constructor(errno) {
62
- super('Invalid or unsupported options', errno);
61
+ constructor(errno, message) {
62
+ super(message ?? 'Invalid or unsupported options', errno);
63
63
  this.name = 'LZMAOptionsError';
64
64
  }
65
65
  }
@@ -155,6 +155,11 @@ function getErrorMessage(errno) {
155
155
  if (errno < 0 || errno >= messages.length) {
156
156
  return `Unknown LZMA error code: ${errno}`;
157
157
  }
158
- return messages[errno];
158
+ const msg = messages[errno];
159
+ /* v8 ignore start: defensive after bounds check on L172 — errno always in [0, messages.length) here */
160
+ if (msg === undefined)
161
+ return `Unknown LZMA error code: ${errno}`;
162
+ /* v8 ignore stop */
163
+ return msg;
159
164
  }
160
165
  //# sourceMappingURL=errors.js.map
package/lib/errors.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"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"}
package/lib/lzma.d.ts CHANGED
@@ -225,8 +225,27 @@ export type { LZMAOptions, CompressionCallback, LZMAActionType, LZMAStatusType,
225
225
  *
226
226
  * Emits `progress` event after each chunk with `{bytesRead, bytesWritten}` info.
227
227
  */
228
+ /**
229
+ * Internal resolved options for XzStream instances.
230
+ *
231
+ * All fields are required (defaults applied in constructor) EXCEPT memlimit,
232
+ * which is genuinely optional: validated by validateMemlimit() at the XzStream
233
+ * constructor for decode streams; passed through to both the native N-API decoder
234
+ * and the WASM Buffer API. xzAsync is compression-only and ignores this field.
235
+ */
236
+ interface ResolvedLZMAOptions {
237
+ check: number;
238
+ preset: number;
239
+ filters: number[];
240
+ mode: number;
241
+ threads: number;
242
+ chunkSize: number;
243
+ flushFlag: number;
244
+ /** Optional memlimit. Validated at the public XzStream constructor; passed through to the decoder backend (native or WASM). */
245
+ memlimit?: number | bigint;
246
+ }
228
247
  export declare abstract class XzStream extends Transform {
229
- protected _opts: Required<LZMAOptions>;
248
+ protected _opts: ResolvedLZMAOptions;
230
249
  protected _chunkSize: number;
231
250
  protected _flushFlag: number;
232
251
  protected lzma: NativeLZMA;
package/lib/lzma.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"lzma.d.ts","sourceRoot":"","sources":["../src/lzma.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lzma.d.ts","sourceRoot":"","sources":["../src/lzma.ts"],"names":[],"mappings":"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"}
package/lib/lzma.js CHANGED
@@ -22,9 +22,11 @@ import * as path from 'node:path';
22
22
  import { Transform } from 'node:stream';
23
23
  import { fileURLToPath } from 'node:url';
24
24
  import { createLZMAError, LZMABufferError, LZMADataError, LZMAError, LZMAFormatError, LZMAMemoryError, LZMAMemoryLimitError, LZMAOptionsError, LZMAProgrammingError, } from './errors.js';
25
+ import { validateMemlimit } from './wasm/bindings.js';
25
26
  // Re-export error classes for public API
26
27
  export { LZMAError, LZMAMemoryError, LZMAMemoryLimitError, LZMAFormatError, LZMAOptionsError, LZMADataError, LZMABufferError, LZMAProgrammingError, };
27
28
  // Re-export pool for concurrency control
29
+ // biome-ignore lint/suspicious/noImportCycles: intentional ESM cycle resolved at runtime; LZMAPool re-exports from lzma.ts to keep public surface flat
28
30
  export { LZMAPool } from './pool.js';
29
31
  const __filename = fileURLToPath(import.meta.url);
30
32
  const __dirname = path.dirname(__filename);
@@ -216,19 +218,6 @@ export const LZMA_FILTER_ARM = LZMAFilter.ARM_ALT;
216
218
  export const LZMA_FILTER_ARMTHUMB = LZMAFilter.ARMTHUMB_ALT;
217
219
  /** Maximum number of filters in a chain */
218
220
  export const LZMA_FILTERS_MAX = LZMAFilter.FILTERS_MAX;
219
- /**
220
- * Abstract base class for XZ compression/decompression streams.
221
- * Extends Node.js Transform stream with LZMA2 encoding/decoding.
222
- *
223
- * @example
224
- * ```ts
225
- * // Use Xz or Unxz classes instead of XzStream directly
226
- * const compressor = new Xz({ preset: 6 });
227
- * readStream.pipe(compressor).pipe(writeStream);
228
- * ```
229
- *
230
- * Emits `progress` event after each chunk with `{bytesRead, bytesWritten}` info.
231
- */
232
221
  export class XzStream extends Transform {
233
222
  // biome-ignore lint/complexity/noExcessiveCognitiveComplexity: Constructor needs complex validation for LZMA options
234
223
  constructor(streamMode, opts = {}, options) {
@@ -250,6 +239,12 @@ export class XzStream extends Transform {
250
239
  else {
251
240
  clonedFilters = [filter.LZMA2];
252
241
  }
242
+ // Validate memlimit early for decoder streams so callers get LZMAOptionsError
243
+ // (not a raw RangeError) before any native object is allocated.
244
+ // Encoder streams pass memlimit through but it has no effect on the C side.
245
+ if (streamMode === liblzma.STREAM_DECODE && opts.memlimit !== undefined) {
246
+ validateMemlimit(opts.memlimit);
247
+ }
253
248
  this._opts = {
254
249
  check: opts.check ?? check.NONE,
255
250
  preset: opts.preset ?? preset.DEFAULT,
@@ -258,6 +253,9 @@ export class XzStream extends Transform {
258
253
  threads: opts.threads ?? 1,
259
254
  chunkSize: opts.chunkSize ?? liblzma.BUFSIZ,
260
255
  flushFlag: opts.flushFlag ?? liblzma.LZMA_RUN,
256
+ // memlimit is passed through to the native binding for STREAM_DECODE.
257
+ // Validated above for decode streams. Ignored for encode streams.
258
+ memlimit: opts.memlimit,
261
259
  };
262
260
  this._chunkSize = this._opts.chunkSize;
263
261
  this._flushFlag = this._opts.flushFlag;
@@ -515,7 +513,9 @@ export class XzStream extends Transform {
515
513
  /* v8 ignore start - async error path handling */
516
514
  // F-003: If LZMA engine returned an error, emit onerror event (matches sync path at line 438)
517
515
  if (errno !== liblzma.LZMA_OK && errno !== liblzma.LZMA_STREAM_END) {
518
- this.emit('onerror', errno);
516
+ if (!this._closed) {
517
+ this.emit('onerror', errno);
518
+ }
519
519
  return false;
520
520
  }
521
521
  /* v8 ignore stop */
package/lib/lzma.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"lzma.js","sourceRoot":"","sources":["../src/lzma.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lzma.js","sourceRoot":"","sources":["../src/lzma.ts"],"names":[],"mappings":"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"}
package/lib/pool.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"pool.d.ts","sourceRoot":"","sources":["../src/pool.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,KAAK,WAAW,EAAsB,MAAM,WAAW,CAAC;AAEjE;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,sEAAsE;IACtE,MAAM,EAAE,MAAM,CAAC;IACf,gDAAgD;IAChD,MAAM,EAAE,MAAM,CAAC;IACf,wDAAwD;IACxD,SAAS,EAAE,MAAM,CAAC;IAClB,wCAAwC;IACxC,MAAM,EAAE,MAAM,CAAC;CAChB;AAWD;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,qBAAa,QAAS,SAAQ,YAAY;IAc5B,OAAO,CAAC,aAAa;IAbjC,OAAO,CAAC,KAAK,CAAoB;IAEjC,OAAO,CAAC,OAAO,CAKb;IAEF;;;OAGG;gBACiB,aAAa,SAAK;IAQtC;;;;;OAKG;IACG,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC;IAIjE;;;;;OAKG;IACG,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC;IAInE;;;OAGG;IACH,UAAU,IAAI,QAAQ,CAAC,WAAW,CAAC;IAInC;;;OAGG;IACH,IAAI,WAAW,IAAI,MAAM,CAExB;IAED;;;OAGG;IACH,IAAI,WAAW,IAAI,MAAM,CAExB;IAED;;;OAGG;IACH,IAAI,YAAY,IAAI,OAAO,CAE1B;IAED;;;;OAIG;YACW,OAAO;IASrB;;OAEG;IACH,OAAO,CAAC,YAAY;IAkCpB;;;;OAIG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAgB5B;;;;OAIG;IACH,UAAU,IAAI,MAAM;CAYrB"}
1
+ {"version":3,"file":"pool.d.ts","sourceRoot":"","sources":["../src/pool.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,OAAO,EAAE,KAAK,WAAW,EAAsB,MAAM,WAAW,CAAC;AAEjE;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,sEAAsE;IACtE,MAAM,EAAE,MAAM,CAAC;IACf,gDAAgD;IAChD,MAAM,EAAE,MAAM,CAAC;IACf,wDAAwD;IACxD,SAAS,EAAE,MAAM,CAAC;IAClB,wCAAwC;IACxC,MAAM,EAAE,MAAM,CAAC;CAChB;AAWD;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,qBAAa,QAAS,SAAQ,YAAY;IAc5B,OAAO,CAAC,aAAa;IAbjC,OAAO,CAAC,KAAK,CAAoB;IAEjC,OAAO,CAAC,OAAO,CAKb;IAEF;;;OAGG;gBACiB,aAAa,SAAK;IAQtC;;;;;OAKG;IACG,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC;IAIjE;;;;;OAKG;IACG,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC;IAInE;;;OAGG;IACH,UAAU,IAAI,QAAQ,CAAC,WAAW,CAAC;IAInC;;;OAGG;IACH,IAAI,WAAW,IAAI,MAAM,CAExB;IAED;;;OAGG;IACH,IAAI,WAAW,IAAI,MAAM,CAExB;IAED;;;OAGG;IACH,IAAI,YAAY,IAAI,OAAO,CAE1B;IAED;;;;OAIG;YACW,OAAO;IASrB;;OAEG;IACH,OAAO,CAAC,YAAY;IA2CpB;;;;OAIG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAgB5B;;;;OAIG;IACH,UAAU,IAAI,MAAM;CAYrB"}
package/lib/pool.js CHANGED
@@ -16,6 +16,7 @@
16
16
  * along with this program. If not, see <https://www.gnu.org/licenses/>.
17
17
  */
18
18
  import { EventEmitter } from 'node:events';
19
+ // biome-ignore lint/suspicious/noImportCycles: intentional ESM cycle resolved at runtime; LZMAPool re-exports from lzma.ts to keep public surface flat
19
20
  import { unxzAsync, xzAsync } from './lzma.js';
20
21
  /**
21
22
  * LZMA Pool with concurrency control and event monitoring
@@ -128,6 +129,15 @@ export class LZMAPool extends EventEmitter {
128
129
  return;
129
130
  }
130
131
  const item = this.queue.shift();
132
+ /* v8 ignore start: defensive after queue.length > 0 guard on L163 — shift() always returns a value here */
133
+ if (item === undefined) {
134
+ // The `this.queue.length === 0` early-return guard above means shift()
135
+ // must return a value here. Returning silently would let queued tasks
136
+ // stall on a future invariant breach (re-entrancy, refactor, etc.).
137
+ // Throw so the bug surfaces at the breach instead of as a hung pool.
138
+ throw new Error('Invariant violation: queue was non-empty but shift() returned undefined');
139
+ }
140
+ /* v8 ignore stop */
131
141
  this.metrics.active++;
132
142
  this.metrics.queued = this.queue.length;
133
143
  this.emit('start', { ...this.metrics });
package/lib/pool.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"pool.js","sourceRoot":"","sources":["../src/pool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pool.js","sourceRoot":"","sources":["../src/pool.ts"],"names":[],"mappings":"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"}
package/lib/types.d.ts CHANGED
@@ -28,6 +28,33 @@ export interface LZMAOptions {
28
28
  chunkSize?: number;
29
29
  /** Flush flag to use */
30
30
  flushFlag?: number;
31
+ /**
32
+ * Memory usage limit for decompression, in bytes.
33
+ *
34
+ * **Honored by all decoder APIs** (`unxz`, `unxzAsync`, `Unxz`, `createUnxz` — both native
35
+ * and WASM paths). `xzAsync` is compression-only and does not read `memlimit`.
36
+ *
37
+ * Accepted types: `number` or `bigint`. Both are validated before reaching the
38
+ * decoder. The native binding accepts either type directly via N-API; the WASM
39
+ * Buffer API coerces to `bigint` for the C ABI. The `number` form must be a
40
+ * finite, non-negative integer; passing
41
+ * `NaN`, `Infinity`, a fractional value, or a negative number throws
42
+ * `LZMAOptionsError` before any decompression is attempted.
43
+ * For values ≥ `Number.MAX_SAFE_INTEGER` (2^53 - 1), use `bigint` to avoid
44
+ * precision loss on coercion; passing a `number` above this threshold also
45
+ * throws `LZMAOptionsError`.
46
+ * `bigint` values above `UINT64_MAX` (2^64 - 1) are also rejected with
47
+ * `LZMAOptionsError`.
48
+ *
49
+ * Default: `UINT64_MAX` (no limit) for native; `BigInt(256 * 1024 * 1024)` (256 MiB)
50
+ * for WASM buffer APIs (`unxz`/`unxzAsync`).
51
+ *
52
+ * When the compressed stream requires more memory than this limit,
53
+ * decompression throws/emits `LZMAMemoryLimitError` with
54
+ * `code === LZMA_MEMLIMIT_ERROR` (numeric constant `6`, re-exported from
55
+ * `src/errors.ts`).
56
+ */
57
+ memlimit?: number | bigint;
31
58
  }
32
59
  /**
33
60
  * Callback function for asynchronous compression/decompression operations.
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
@@ -39,6 +39,7 @@ export declare function encoderInit(stream: WasmLzmaStream, preset: number, chec
39
39
  *
40
40
  * @param stream - Allocated WasmLzmaStream
41
41
  * @param memlimit - Memory limit in bytes (default: 256MB)
42
+ * @throws LZMAOptionsError if memlimit is invalid
42
43
  * @throws LZMAError on initialization failure
43
44
  */
44
45
  export declare function decoderInit(stream: WasmLzmaStream, memlimit?: number | bigint): void;
@@ -47,6 +48,7 @@ export declare function decoderInit(stream: WasmLzmaStream, memlimit?: number |
47
48
  *
48
49
  * @param stream - Allocated WasmLzmaStream
49
50
  * @param memlimit - Memory limit in bytes (default: 256MB)
51
+ * @throws LZMAOptionsError if memlimit is invalid
50
52
  * @throws LZMAError on initialization failure
51
53
  */
52
54
  export declare function autoDecoderInit(stream: WasmLzmaStream, memlimit?: number | bigint): void;
@@ -84,6 +86,19 @@ export declare function easyBufferEncode(input: Uint8Array, preset: number, chec
84
86
  * @returns Decompressed data
85
87
  * @throws LZMAError on decompression failure
86
88
  */
89
+ /**
90
+ * Validate a memlimit value before coercion to BigInt.
91
+ *
92
+ * BigInt() throws a native RangeError for NaN, Infinity, and non-integer
93
+ * numbers (e.g. 1.5). Negative integers produce a huge unsigned value when
94
+ * interpreted by the C ABI (uint64_t wrap-around). Numbers above
95
+ * Number.MAX_SAFE_INTEGER (2^53 - 1) lose precision on coercion to BigInt.
96
+ * All these cases are rejected here with LZMAOptionsError so callers always
97
+ * get an LZMAError subclass.
98
+ *
99
+ * @throws LZMAOptionsError if the value is invalid
100
+ */
101
+ export declare function validateMemlimit(memlimit: number | bigint): void;
87
102
  export declare function streamBufferDecode(input: Uint8Array, memlimit?: number | bigint): Uint8Array;
88
103
  /**
89
104
  * Process a full input buffer through an initialized encoder/decoder stream,
@@ -1 +1 @@
1
- {"version":3,"file":"bindings.d.ts","sourceRoot":"","sources":["../../src/wasm/bindings.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAA4B,KAAK,cAAc,EAAuB,MAAM,aAAa,CAAC;AACjG,OAAO,EAOL,KAAK,UAAU,EAChB,MAAM,YAAY,CAAC;AAWpB;;;;;;;;;GASG;AACH,wBAAsB,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,OAAO,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,CA+BxF;AAED;;GAEG;AACH,wBAAgB,SAAS,IAAI,UAAU,CAKtC;AAED;;GAEG;AACH,wBAAgB,WAAW,IAAI,IAAI,CAGlC;AAID;;;;;;;GAOG;AACH,wBAAgB,WAAW,CACzB,MAAM,EAAE,cAAc,EACtB,MAAM,EAAE,MAAM,EACd,KAAK,SAAmB,GACvB,IAAI,CAQN;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CACzB,MAAM,EAAE,cAAc,EACtB,QAAQ,GAAE,MAAM,GAAG,MAAyB,GAC3C,IAAI,CASN;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAC7B,MAAM,EAAE,cAAc,EACtB,QAAQ,GAAE,MAAM,GAAG,MAAyB,GAC3C,IAAI,CASN;AAED;;;;;;GAMG;AACH,wBAAgB,IAAI,CAAC,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAGnE;AAED;;GAEG;AACH,wBAAgB,GAAG,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,CAGhD;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,CAGvD;AAID;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,UAAU,EACjB,MAAM,EAAE,MAAM,EACd,KAAK,SAAmB,GACvB,UAAU,CAsCZ;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,UAAU,EACjB,QAAQ,GAAE,MAAM,GAAG,MAAyB,GAC3C,UAAU,CA8DZ;AAID;;;;;;;;;;;GAWG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,cAAc,EAAE,KAAK,EAAE,UAAU,GAAG,UAAU,CAoDnF;AAID;;GAEG;AACH,wBAAgB,aAAa,IAAI,MAAM,CAStC;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAGvD"}
1
+ {"version":3,"file":"bindings.d.ts","sourceRoot":"","sources":["../../src/wasm/bindings.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAA4B,KAAK,cAAc,EAAuB,MAAM,aAAa,CAAC;AACjG,OAAO,EAOL,KAAK,UAAU,EAChB,MAAM,YAAY,CAAC;AAWpB;;;;;;;;;GASG;AACH,wBAAsB,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,OAAO,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,CA+BxF;AAED;;GAEG;AACH,wBAAgB,SAAS,IAAI,UAAU,CAKtC;AAED;;GAEG;AACH,wBAAgB,WAAW,IAAI,IAAI,CAGlC;AAID;;;;;;;GAOG;AACH,wBAAgB,WAAW,CACzB,MAAM,EAAE,cAAc,EACtB,MAAM,EAAE,MAAM,EACd,KAAK,SAAmB,GACvB,IAAI,CAQN;AAED;;;;;;;GAOG;AACH,wBAAgB,WAAW,CACzB,MAAM,EAAE,cAAc,EACtB,QAAQ,GAAE,MAAM,GAAG,MAAyB,GAC3C,IAAI,CAUN;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAC7B,MAAM,EAAE,cAAc,EACtB,QAAQ,GAAE,MAAM,GAAG,MAAyB,GAC3C,IAAI,CAUN;AAED;;;;;;GAMG;AACH,wBAAgB,IAAI,CAAC,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAGnE;AAED;;GAEG;AACH,wBAAgB,GAAG,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,CAGhD;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,CAGvD;AAID;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,UAAU,EACjB,MAAM,EAAE,MAAM,EACd,KAAK,SAAmB,GACvB,UAAU,CAsCZ;AAED;;;;;;;GAOG;AAEH;;;;;;;;;;;GAWG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAkChE;AAED,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,UAAU,EACjB,QAAQ,GAAE,MAAM,GAAG,MAAyB,GAC3C,UAAU,CA+DZ;AAID;;;;;;;;;;;GAWG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,cAAc,EAAE,KAAK,EAAE,UAAU,GAAG,UAAU,CAoDnF;AAID;;GAEG;AACH,wBAAgB,aAAa,IAAI,MAAM,CAStC;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAGvD"}
@@ -4,7 +4,7 @@
4
4
  * Provides typed wrappers around the raw C functions exported by liblzma.wasm,
5
5
  * with proper memory management and error handling.
6
6
  */
7
- import { createLZMAError, LZMAError } from '../errors.js';
7
+ import { createLZMAError, LZMAError, LZMA_OPTIONS_ERROR, LZMAOptionsError } from '../errors.js';
8
8
  import { copyFromWasm, copyToWasm, wasmAlloc, wasmFree } from './memory.js';
9
9
  import { LZMA_BUF_ERROR, LZMA_CHECK_CRC64, LZMA_FINISH, LZMA_OK, LZMA_RUN, LZMA_STREAM_END, } from './types.js';
10
10
  // Default output buffer size for streaming operations (256KB)
@@ -92,9 +92,11 @@ export function encoderInit(stream, preset, check = LZMA_CHECK_CRC64) {
92
92
  *
93
93
  * @param stream - Allocated WasmLzmaStream
94
94
  * @param memlimit - Memory limit in bytes (default: 256MB)
95
+ * @throws LZMAOptionsError if memlimit is invalid
95
96
  * @throws LZMAError on initialization failure
96
97
  */
97
98
  export function decoderInit(stream, memlimit = DEFAULT_MEMLIMIT) {
99
+ validateMemlimit(memlimit);
98
100
  const module = getModule();
99
101
  const limit = typeof memlimit === 'number' ? BigInt(memlimit) : memlimit;
100
102
  const ret = module._lzma_stream_decoder(stream.ptr, limit, 0);
@@ -109,9 +111,11 @@ export function decoderInit(stream, memlimit = DEFAULT_MEMLIMIT) {
109
111
  *
110
112
  * @param stream - Allocated WasmLzmaStream
111
113
  * @param memlimit - Memory limit in bytes (default: 256MB)
114
+ * @throws LZMAOptionsError if memlimit is invalid
112
115
  * @throws LZMAError on initialization failure
113
116
  */
114
117
  export function autoDecoderInit(stream, memlimit = DEFAULT_MEMLIMIT) {
118
+ validateMemlimit(memlimit);
115
119
  const module = getModule();
116
120
  const limit = typeof memlimit === 'number' ? BigInt(memlimit) : memlimit;
117
121
  const ret = module._lzma_auto_decoder(stream.ptr, limit, 0);
@@ -191,6 +195,41 @@ export function easyBufferEncode(input, preset, check = LZMA_CHECK_CRC64) {
191
195
  * @returns Decompressed data
192
196
  * @throws LZMAError on decompression failure
193
197
  */
198
+ /**
199
+ * Validate a memlimit value before coercion to BigInt.
200
+ *
201
+ * BigInt() throws a native RangeError for NaN, Infinity, and non-integer
202
+ * numbers (e.g. 1.5). Negative integers produce a huge unsigned value when
203
+ * interpreted by the C ABI (uint64_t wrap-around). Numbers above
204
+ * Number.MAX_SAFE_INTEGER (2^53 - 1) lose precision on coercion to BigInt.
205
+ * All these cases are rejected here with LZMAOptionsError so callers always
206
+ * get an LZMAError subclass.
207
+ *
208
+ * @throws LZMAOptionsError if the value is invalid
209
+ */
210
+ export function validateMemlimit(memlimit) {
211
+ if (typeof memlimit === 'bigint') {
212
+ if (memlimit < 0n) {
213
+ throw new LZMAOptionsError(LZMA_OPTIONS_ERROR, 'memlimit must be a non-negative value');
214
+ }
215
+ if (memlimit > 18446744073709551615n) {
216
+ throw new LZMAOptionsError(LZMA_OPTIONS_ERROR, 'memlimit bigint exceeds UINT64_MAX (2^64 - 1); use a smaller value (UINT64_MAX = no limit on native; WASM buffer APIs default to 256 MiB when omitted)');
217
+ }
218
+ return;
219
+ }
220
+ if (!Number.isFinite(memlimit)) {
221
+ throw new LZMAOptionsError(LZMA_OPTIONS_ERROR, 'memlimit must be a finite number (NaN and Infinity are not allowed)');
222
+ }
223
+ if (!Number.isInteger(memlimit)) {
224
+ throw new LZMAOptionsError(LZMA_OPTIONS_ERROR, 'memlimit must be an integer (fractional values are not allowed)');
225
+ }
226
+ if (memlimit < 0) {
227
+ throw new LZMAOptionsError(LZMA_OPTIONS_ERROR, 'memlimit must be a non-negative value');
228
+ }
229
+ if (memlimit > Number.MAX_SAFE_INTEGER) {
230
+ throw new LZMAOptionsError(LZMA_OPTIONS_ERROR, 'memlimit number exceeds MAX_SAFE_INTEGER (use bigint for values >= 2^53)');
231
+ }
232
+ }
194
233
  export function streamBufferDecode(input, memlimit = DEFAULT_MEMLIMIT) {
195
234
  const module = getModule();
196
235
  const inPtr = copyToWasm(module, input);
@@ -203,6 +242,7 @@ export function streamBufferDecode(input, memlimit = DEFAULT_MEMLIMIT) {
203
242
  outSize = 4096;
204
243
  let outPtr = wasmAlloc(module, outSize);
205
244
  try {
245
+ validateMemlimit(memlimit);
206
246
  const limit = typeof memlimit === 'number' ? BigInt(memlimit) : memlimit;
207
247
  module.setValue(memlimitPtr, limit, 'i64');
208
248
  // Retry with larger buffer if BUF_ERROR
@@ -1 +1 @@
1
- {"version":3,"file":"bindings.js","sourceRoot":"","sources":["../../src/wasm/bindings.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bindings.js","sourceRoot":"","sources":["../../src/wasm/bindings.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChG,OAAO,EAAE,YAAY,EAAE,UAAU,EAAuB,SAAS,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACjG,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,WAAW,EACX,OAAO,EACP,QAAQ,EACR,eAAe,GAEhB,MAAM,YAAY,CAAC;AAEpB,8DAA8D;AAC9D,MAAM,oBAAoB,GAAG,GAAG,GAAG,IAAI,CAAC;AACxC,8DAA8D;AAC9D,MAAM,gBAAgB,GAAG,MAAM,CAAC,GAAG,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC;AAEnD,mDAAmD;AACnD,IAAI,cAAc,GAAsB,IAAI,CAAC;AAC7C,IAAI,aAAa,GAA+B,IAAI,CAAC;AAErD;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,MAAkC;IACjE,IAAI,cAAc,EAAE,CAAC;QACnB,OAAO,cAAc,CAAC;IACxB,CAAC;IACD,IAAI,aAAa,EAAE,CAAC;QAClB,OAAO,aAAa,CAAC;IACvB,CAAC;IAED,aAAa,GAAG,CAAC,KAAK,IAAI,EAAE;QAC1B,IAAI,MAAM,EAAE,CAAC;YACX,cAAc,GAAG,MAAM,MAAM,EAAE,CAAC;YAChC,6EAA6E;QAC/E,CAAC;aAAM,CAAC;YACN,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,CAAC;YAC7D,cAAc,GAAG,CAAC,MAAM,UAAU,EAAE,CAAe,CAAC;YACpD,oBAAoB;QACtB,CAAC;QACD,OAAO,cAAc,CAAC;IACxB,CAAC,CAAC,EAAE,CAAC;IAEL,IAAI,CAAC;QACH,OAAO,MAAM,aAAa,CAAC;QAC3B,qEAAqE;IACvE,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,aAAa,GAAG,IAAI,CAAC;QACrB,MAAM,IAAI,SAAS,CACjB,+BAA+B,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EACjF,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IACD,oBAAoB;AACtB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,SAAS;IACvB,IAAI,CAAC,cAAc,EAAE,CAAC;QACpB,MAAM,IAAI,SAAS,CAAC,uDAAuD,EAAE,CAAC,CAAC,CAAC,CAAC;IACnF,CAAC;IACD,OAAO,cAAc,CAAC;AACxB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW;IACzB,cAAc,GAAG,IAAI,CAAC;IACtB,aAAa,GAAG,IAAI,CAAC;AACvB,CAAC;AAED,mBAAmB;AAEnB;;;;;;;GAOG;AACH,MAAM,UAAU,WAAW,CACzB,MAAsB,EACtB,MAAc,EACd,KAAK,GAAG,gBAAgB;IAExB,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,MAAM,GAAG,GAAG,MAAM,CAAC,kBAAkB,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;IACjE,6DAA6D;IAC7D,IAAI,GAAG,KAAK,OAAO,EAAE,CAAC;QACpB,MAAM,eAAe,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;IACD,oBAAoB;AACtB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,WAAW,CACzB,MAAsB,EACtB,WAA4B,gBAAgB;IAE5C,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAC3B,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,MAAM,KAAK,GAAG,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;IACzE,MAAM,GAAG,GAAG,MAAM,CAAC,oBAAoB,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;IAC9D,6DAA6D;IAC7D,IAAI,GAAG,KAAK,OAAO,EAAE,CAAC;QACpB,MAAM,eAAe,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;IACD,oBAAoB;AACtB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,eAAe,CAC7B,MAAsB,EACtB,WAA4B,gBAAgB;IAE5C,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAC3B,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,MAAM,KAAK,GAAG,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;IACzE,MAAM,GAAG,GAAG,MAAM,CAAC,kBAAkB,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;IAC5D,kEAAkE;IAClE,IAAI,GAAG,KAAK,OAAO,EAAE,CAAC;QACpB,MAAM,eAAe,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;IACD,oBAAoB;AACtB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,IAAI,CAAC,MAAsB,EAAE,MAAc;IACzD,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,OAAO,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;AAC/C,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,GAAG,CAAC,MAAsB;IACxC,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AAC/B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,QAAQ,CAAC,MAAsB;IAC7C,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,OAAO,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;AACnD,CAAC;AAED,gCAAgC;AAEhC;;;;;;;;GAQG;AACH,MAAM,UAAU,gBAAgB,CAC9B,KAAiB,EACjB,MAAc,EACd,KAAK,GAAG,gBAAgB;IAExB,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAE3B,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACxC,oFAAoF;IACpF,oEAAoE;IACpE,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC;IACxC,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC1C,MAAM,SAAS,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAEvC,IAAI,CAAC;QACH,qBAAqB;QACrB,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;QAErC,MAAM,GAAG,GAAG,MAAM,CAAC,wBAAwB,CACzC,MAAM,EACN,KAAK,EACL,CAAC,EAAE,6BAA6B;QAChC,KAAK,EACL,KAAK,CAAC,UAAU,EAChB,MAAM,EACN,SAAS,EACT,OAAO,CACR,CAAC;QAEF,8DAA8D;QAC9D,IAAI,GAAG,KAAK,OAAO,EAAE,CAAC;YACpB,MAAM,eAAe,CAAC,GAAG,CAAC,CAAC;QAC7B,CAAC;QACD,oBAAoB;QAEpB,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QACjD,OAAO,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9C,CAAC;YAAS,CAAC;QACT,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACzB,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAC9B,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AAEH;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,gBAAgB,CAAC,QAAyB;IACxD,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;QACjC,IAAI,QAAQ,GAAG,EAAE,EAAE,CAAC;YAClB,MAAM,IAAI,gBAAgB,CAAC,kBAAkB,EAAE,uCAAuC,CAAC,CAAC;QAC1F,CAAC;QACD,IAAI,QAAQ,GAAG,qBAAqB,EAAE,CAAC;YACrC,MAAM,IAAI,gBAAgB,CACxB,kBAAkB,EAClB,wJAAwJ,CACzJ,CAAC;QACJ,CAAC;QACD,OAAO;IACT,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC/B,MAAM,IAAI,gBAAgB,CACxB,kBAAkB,EAClB,qEAAqE,CACtE,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC;QAChC,MAAM,IAAI,gBAAgB,CACxB,kBAAkB,EAClB,iEAAiE,CAClE,CAAC;IACJ,CAAC;IACD,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;QACjB,MAAM,IAAI,gBAAgB,CAAC,kBAAkB,EAAE,uCAAuC,CAAC,CAAC;IAC1F,CAAC;IACD,IAAI,QAAQ,GAAG,MAAM,CAAC,gBAAgB,EAAE,CAAC;QACvC,MAAM,IAAI,gBAAgB,CACxB,kBAAkB,EAClB,0EAA0E,CAC3E,CAAC;IACJ,CAAC;AACH,CAAC;AAED,MAAM,UAAU,kBAAkB,CAChC,KAAiB,EACjB,WAA4B,gBAAgB;IAE5C,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAE3B,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACxC,MAAM,QAAQ,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IACtC,MAAM,SAAS,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IACvC,MAAM,WAAW,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAEzC,4DAA4D;IAC5D,IAAI,OAAO,GAAG,KAAK,CAAC,UAAU,GAAG,CAAC,CAAC;IACnC,IAAI,OAAO,GAAG,IAAI;QAAE,OAAO,GAAG,IAAI,CAAC;IACnC,IAAI,MAAM,GAAG,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAExC,IAAI,CAAC;QACH,gBAAgB,CAAC,QAAQ,CAAC,CAAC;QAC3B,MAAM,KAAK,GAAG,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;QACzE,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QAE3C,wCAAwC;QACxC,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC;YAC7C,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;YACpC,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;YAErC,MAAM,GAAG,GAAG,MAAM,CAAC,0BAA0B,CAC3C,WAAW,EACX,CAAC,EAAE,QAAQ;YACX,CAAC,EAAE,mBAAmB;YACtB,KAAK,EACL,QAAQ,EACR,KAAK,CAAC,UAAU,EAChB,MAAM,EACN,SAAS,EACT,OAAO,CACR,CAAC;YAEF,IAAI,GAAG,KAAK,OAAO,EAAE,CAAC;gBACpB,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;gBACjD,OAAO,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;YAC9C,CAAC;YAED,mFAAmF;YACnF,oCAAoC;YACpC,IAAI,GAAG,KAAK,cAAc,EAAE,CAAC;gBAC3B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;gBACzB,OAAO,IAAI,CAAC,CAAC;gBACb,MAAM,GAAG,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;gBACpC,SAAS;YACX,CAAC;YAED,MAAM,eAAe,CAAC,GAAG,CAAC,CAAC;YAC3B,oBAAoB;QACtB,CAAC;QAED,qBAAqB;QACrB,MAAM,IAAI,SAAS,CAAC,+CAA+C,EAAE,EAAE,CAAC,CAAC;QACzE,oBAAoB;IACtB,CAAC;YAAS,CAAC;QACT,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACzB,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAC3B,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QAC5B,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAChC,CAAC;AACH,CAAC;AAED,4BAA4B;AAE5B;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,aAAa,CAAC,MAAsB,EAAE,KAAiB;IACrE,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAE3B,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACxC,MAAM,UAAU,GAAG,oBAAoB,CAAC;IACxC,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IAE7C,IAAI,CAAC;QACH,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;QAEzC,MAAM,MAAM,GAAiB,EAAE,CAAC;QAChC,IAAI,MAAM,GAAG,QAAQ,CAAC;QAEtB,OAAO,IAAI,EAAE,CAAC;YACZ,4CAA4C;YAC5C,IAAI,MAAM,CAAC,OAAO,KAAK,CAAC,EAAE,CAAC;gBACzB,MAAM,GAAG,WAAW,CAAC;YACvB,CAAC;YAED,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;YACrC,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YAEjC,0BAA0B;YAC1B,MAAM,QAAQ,GAAG,UAAU,GAAG,MAAM,CAAC,QAAQ,CAAC;YAC9C,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;gBACjB,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;YACtD,CAAC;YAED,IAAI,GAAG,KAAK,eAAe,EAAE,CAAC;gBAC5B,MAAM;YACR,CAAC;YAED,IAAI,GAAG,KAAK,OAAO,EAAE,CAAC;gBACpB,MAAM,eAAe,CAAC,GAAG,CAAC,CAAC;YAC7B,CAAC;QACH,CAAC;QAED,gCAAgC;QAChC,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;QACnE,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,SAAS,CAAC,CAAC;QACzC,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YAC1B,MAAM,IAAI,KAAK,CAAC,UAAU,CAAC;QAC7B,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;YAAS,CAAC;QACT,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACzB,GAAG,CAAC,MAAM,CAAC,CAAC;QACZ,MAAM,CAAC,IAAI,EAAE,CAAC;IAChB,CAAC;AACH,CAAC;AAED,2BAA2B;AAE3B;;GAEG;AACH,MAAM,UAAU,aAAa;IAC3B,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,MAAM,GAAG,GAAG,MAAM,CAAC,oBAAoB,EAAE,CAAC;IAC1C,iDAAiD;IACjD,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC;IAC5B,IAAI,GAAG,GAAG,GAAG,CAAC;IACd,OAAO,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC;QAAE,GAAG,EAAE,CAAC;IAC/B,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;IAClC,OAAO,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;AAClD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAa;IAC5C,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,OAAO,MAAM,CAAC,wBAAwB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;AACtD,CAAC"}
@@ -12,7 +12,7 @@ import type { CompressionCallback, LZMAOptions } from '../types.js';
12
12
  * @param opts - Decompression options (memlimit)
13
13
  * @returns Decompressed data
14
14
  */
15
- export declare function unxzAsync(buffer: Uint8Array | ArrayBuffer | string, _opts?: LZMAOptions): Promise<Uint8Array>;
15
+ export declare function unxzAsync(buffer: Uint8Array | ArrayBuffer | string, opts?: LZMAOptions): Promise<Uint8Array>;
16
16
  /**
17
17
  * Decompress XZ data (callback-based).
18
18
  *
@@ -1 +1 @@
1
- {"version":3,"file":"decompress.d.ts","sourceRoot":"","sources":["../../src/wasm/decompress.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAIpE;;;;;;GAMG;AACH,wBAAsB,SAAS,CAC7B,MAAM,EAAE,UAAU,GAAG,WAAW,GAAG,MAAM,EACzC,KAAK,CAAC,EAAE,WAAW,GAClB,OAAO,CAAC,UAAU,CAAC,CAKrB;AAED;;;;;;GAMG;AACH,wBAAgB,IAAI,CAClB,MAAM,EAAE,UAAU,GAAG,WAAW,GAAG,MAAM,EACzC,QAAQ,EAAE,mBAAmB,GAC5B,IAAI,CAAC;AACR,wBAAgB,IAAI,CAClB,MAAM,EAAE,UAAU,GAAG,WAAW,GAAG,MAAM,EACzC,IAAI,EAAE,WAAW,EACjB,QAAQ,EAAE,mBAAmB,GAC5B,IAAI,CAAC;AAwBR;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,OAAO,EAAE,UAAU,GAAG,WAAW,GAAG,MAAM,EAAE,KAAK,CAAC,EAAE,WAAW,GAAG,KAAK,CAE/F"}
1
+ {"version":3,"file":"decompress.d.ts","sourceRoot":"","sources":["../../src/wasm/decompress.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAIpE;;;;;;GAMG;AACH,wBAAsB,SAAS,CAC7B,MAAM,EAAE,UAAU,GAAG,WAAW,GAAG,MAAM,EACzC,IAAI,CAAC,EAAE,WAAW,GACjB,OAAO,CAAC,UAAU,CAAC,CAIrB;AAED;;;;;;GAMG;AACH,wBAAgB,IAAI,CAClB,MAAM,EAAE,UAAU,GAAG,WAAW,GAAG,MAAM,EACzC,QAAQ,EAAE,mBAAmB,GAC5B,IAAI,CAAC;AACR,wBAAgB,IAAI,CAClB,MAAM,EAAE,UAAU,GAAG,WAAW,GAAG,MAAM,EACzC,IAAI,EAAE,WAAW,EACjB,QAAQ,EAAE,mBAAmB,GAC5B,IAAI,CAAC;AAwBR;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,OAAO,EAAE,UAAU,GAAG,WAAW,GAAG,MAAM,EAAE,KAAK,CAAC,EAAE,WAAW,GAAG,KAAK,CAE/F"}
@@ -14,11 +14,10 @@ import { toUint8Array } from './utils.js';
14
14
  * @param opts - Decompression options (memlimit)
15
15
  * @returns Decompressed data
16
16
  */
17
- export async function unxzAsync(buffer, _opts) {
17
+ export async function unxzAsync(buffer, opts) {
18
18
  await initModule();
19
19
  const input = toUint8Array(buffer);
20
- // TODO: pass opts.memlimit when LZMAOptions supports it
21
- return streamBufferDecode(input);
20
+ return streamBufferDecode(input, opts?.memlimit);
22
21
  }
23
22
  export function unxz(buffer, optsOrCallback, callback) {
24
23
  let opts;
@@ -1 +1 @@
1
- {"version":3,"file":"decompress.js","sourceRoot":"","sources":["../../src/wasm/decompress.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1C;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,MAAyC,EACzC,KAAmB;IAEnB,MAAM,UAAU,EAAE,CAAC;IACnB,MAAM,KAAK,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IACnC,wDAAwD;IACxD,OAAO,kBAAkB,CAAC,KAAK,CAAC,CAAC;AACnC,CAAC;AAkBD,MAAM,UAAU,IAAI,CAClB,MAAyC,EACzC,cAAiD,EACjD,QAA8B;IAE9B,IAAI,IAAiB,CAAC;IACtB,IAAI,EAAuB,CAAC;IAC5B,IAAI,OAAO,cAAc,KAAK,UAAU,EAAE,CAAC;QACzC,EAAE,GAAG,cAAc,CAAC;QACpB,IAAI,GAAG,EAAE,CAAC;IACZ,CAAC;SAAM,CAAC;QACN,IAAI,GAAG,cAAc,CAAC;QACtB,EAAE,GAAG,QAA+B,CAAC;IACvC,CAAC;IAED,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,IAAI,CAC1B,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,MAA2B,CAAC;IACjD,2DAA2D;IAC3D,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IACxE,oBAAoB;KACrB,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,QAAQ,CAAC,OAA0C,EAAE,KAAmB;IACtF,MAAM,IAAI,SAAS,CAAC,oEAAoE,EAAE,CAAC,CAAC,CAAC,CAAC;AAChG,CAAC"}
1
+ {"version":3,"file":"decompress.js","sourceRoot":"","sources":["../../src/wasm/decompress.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1C;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,MAAyC,EACzC,IAAkB;IAElB,MAAM,UAAU,EAAE,CAAC;IACnB,MAAM,KAAK,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IACnC,OAAO,kBAAkB,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;AACnD,CAAC;AAkBD,MAAM,UAAU,IAAI,CAClB,MAAyC,EACzC,cAAiD,EACjD,QAA8B;IAE9B,IAAI,IAAiB,CAAC;IACtB,IAAI,EAAuB,CAAC;IAC5B,IAAI,OAAO,cAAc,KAAK,UAAU,EAAE,CAAC;QACzC,EAAE,GAAG,cAAc,CAAC;QACpB,IAAI,GAAG,EAAE,CAAC;IACZ,CAAC;SAAM,CAAC;QACN,IAAI,GAAG,cAAc,CAAC;QACtB,EAAE,GAAG,QAA+B,CAAC;IACvC,CAAC;IAED,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,IAAI,CAC1B,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,MAA2B,CAAC;IACjD,2DAA2D;IAC3D,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IACxE,oBAAoB;KACrB,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,QAAQ,CAAC,OAA0C,EAAE,KAAmB;IACtF,MAAM,IAAI,SAAS,CAAC,oEAAoE,EAAE,CAAC,CAAC,CAAC,CAAC;AAChG,CAAC"}
Binary file
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "node-liblzma",
3
- "version": "4.0.2",
4
- "description": "NodeJS wrapper for liblzma",
3
+ "version": "5.0.1",
4
+ "description": "Native Node.js bindings for liblzma (XZ/LZMA2). Streaming, buffer and async APIs with browser support via WebAssembly. zlib-like API, TypeScript-first, prebuilt binaries for Linux/macOS/Windows.",
5
5
  "type": "module",
6
6
  "main": "./lib/lzma.js",
7
7
  "exports": {
@@ -68,15 +68,15 @@
68
68
  },
69
69
  "devDependencies": {
70
70
  "@biomejs/biome": "catalog:",
71
- "@oorabona/release-it-preset": "^0.9.0",
71
+ "@oorabona/release-it-preset": "^1.0.0-rc.0",
72
72
  "@oorabona/vitest-monocart-coverage": "^2.0.1",
73
73
  "@types/node": "catalog:",
74
- "@vitest/coverage-istanbul": "^4.0.18",
74
+ "@vitest/coverage-istanbul": "^4.1.0",
75
75
  "@vitest/coverage-v8": "catalog:",
76
- "@vitest/ui": "4.0.18",
76
+ "@vitest/ui": "4.1.5",
77
77
  "nano-staged": "^0.9.0",
78
78
  "prebuildify": "^6.0.1",
79
- "release-it": "^19.2.4",
79
+ "release-it": "^20.0.0",
80
80
  "simple-git-hooks": "^2.13.1",
81
81
  "tsd": "^0.33.0",
82
82
  "typedoc": "^0.28.17",
@@ -99,7 +99,7 @@
99
99
  "xz-version.json"
100
100
  ],
101
101
  "engines": {
102
- "node": ">=20.0.0"
102
+ "node": ">=22.0.0"
103
103
  },
104
104
  "repository": {
105
105
  "type": "git",
@@ -107,6 +107,9 @@
107
107
  },
108
108
  "keywords": [
109
109
  "module",
110
+ "node",
111
+ "nodejs",
112
+ "typescript",
110
113
  "lzma",
111
114
  "lzma2",
112
115
  "xz",
@@ -114,6 +117,11 @@
114
117
  "compress",
115
118
  "uncompress",
116
119
  "decompress",
120
+ "streaming",
121
+ "wasm",
122
+ "webassembly",
123
+ "browser",
124
+ "zlib",
117
125
  "filters",
118
126
  "binding",
119
127
  "native"
@@ -16,6 +16,7 @@
16
16
  * along with this program. If not, see <https://www.gnu.org/licenses/>.
17
17
  **/
18
18
 
19
+ #include <cmath>
19
20
  #include <node_buffer.h>
20
21
  #include <vector>
21
22
  #include "node-liblzma.hpp"
@@ -109,7 +110,7 @@ LZMA::LZMA(const Napi::CallbackInfo &info) : Napi::ObjectWrap<LZMA>(info), _stre
109
110
  switch (mode)
110
111
  {
111
112
  case STREAM_DECODE:
112
- success = InitializeDecoder(env);
113
+ success = InitializeDecoder(env, opts);
113
114
  break;
114
115
  case STREAM_ENCODE:
115
116
  success = InitializeEncoder(opts, preset, check);
@@ -482,9 +483,66 @@ bool LZMA::InitializeEncoder(const Napi::Object &opts, uint32_t preset, lzma_che
482
483
  return true;
483
484
  }
484
485
 
485
- bool LZMA::InitializeDecoder(const Napi::Env &env)
486
+ bool LZMA::InitializeDecoder(const Napi::Env &env, const Napi::Object &opts)
486
487
  {
487
- lzma_ret ret = lzma_stream_decoder(&this->_stream, UINT64_MAX, LZMA_CONCATENATED);
488
+ // Read optional memlimit from JS options object.
489
+ // If absent or undefined, use UINT64_MAX (no limit — preserves pre-fix behaviour).
490
+ uint64_t memlimit = UINT64_MAX;
491
+ Napi::Value optsMemlimit = opts.Get("memlimit");
492
+ if (!optsMemlimit.IsUndefined() && !optsMemlimit.IsNull())
493
+ {
494
+ if (optsMemlimit.IsBigInt())
495
+ {
496
+ // node-addon-api Napi::BigInt::Uint64Value: lossless=true when value fits uint64_t.
497
+ // JS-side validateMemlimit() already rejects values > UINT64_MAX, so lossless
498
+ // should always be true here. Throw on precision loss (defense-in-depth: a future
499
+ // direct-N-API consumer bypassing the JS guard must not silently get 'no limit').
500
+ bool lossless = false;
501
+ uint64_t val = optsMemlimit.As<Napi::BigInt>().Uint64Value(&lossless);
502
+ if (!lossless)
503
+ {
504
+ Napi::TypeError::New(env, "memlimit out of range or precision lost").ThrowAsJavaScriptException();
505
+ return false;
506
+ }
507
+ memlimit = val;
508
+ }
509
+ else if (optsMemlimit.IsNumber())
510
+ {
511
+ // JS-side validateMemlimit() already rejects non-integer, negative, NaN, Infinity,
512
+ // and values above Number.MAX_SAFE_INTEGER (2^53-1). Throw on any out-of-range
513
+ // value (defense-in-depth: direct-N-API consumers bypassing the JS guard get an
514
+ // error, not a silent UINT64_MAX 'no limit' coercion that inverts caller intent).
515
+ double d = optsMemlimit.ToNumber().DoubleValue();
516
+ if (d < 0.0 || !std::isfinite(d) || d != std::floor(d) || d > static_cast<double>(UINT64_MAX))
517
+ {
518
+ Napi::TypeError::New(env, "memlimit out of range or precision lost").ThrowAsJavaScriptException();
519
+ return false;
520
+ }
521
+ // Defense-in-depth: validateMemlimit() in JS rejects this first; native enforces
522
+ // independently for direct-N-API consumers.
523
+ // Number.MAX_SAFE_INTEGER = 2^53 - 1 = 9007199254740991. Any double above this
524
+ // threshold no longer represents an exact integer — caller intent is silently
525
+ // corrupted. Reject to mirror the JS-side guard.
526
+ if (d > 9007199254740991.0)
527
+ {
528
+ Napi::TypeError::New(env, "memlimit number exceeds MAX_SAFE_INTEGER (use bigint for values >= 2^53)").ThrowAsJavaScriptException();
529
+ return false;
530
+ }
531
+ memlimit = static_cast<uint64_t>(d);
532
+ }
533
+ else
534
+ {
535
+ // memlimit is present but is neither BigInt nor Number (e.g. string, object, array).
536
+ // Silently falling through to UINT64_MAX would disable the limit and invert caller
537
+ // intent. Throw explicitly to match how sibling options (threads) handle wrong types.
538
+ // Note: TypeScript declaration (number | bigint) blocks this at compile-time for TS
539
+ // callers; this guard protects direct-N-API and plain-JS consumers.
540
+ Napi::TypeError::New(env, "memlimit must be a Number or BigInt").ThrowAsJavaScriptException();
541
+ return false;
542
+ }
543
+ }
544
+
545
+ lzma_ret ret = lzma_stream_decoder(&this->_stream, memlimit, LZMA_CONCATENATED);
488
546
 
489
547
  // F-005: Throw exception on decoder init failure (consistent with InitializeEncoder)
490
548
  if (ret != LZMA_OK)
@@ -81,7 +81,7 @@ private:
81
81
  bool ValidateConstructorArgs(const Napi::CallbackInfo &info, uint32_t &mode, Napi::Object &opts);
82
82
  bool InitializeFilters(const Napi::Object &opts, uint32_t preset);
83
83
  bool InitializeEncoder(const Napi::Object &opts, uint32_t preset, lzma_check check);
84
- bool InitializeDecoder(const Napi::Env &env);
84
+ bool InitializeDecoder(const Napi::Env &env, const Napi::Object &opts);
85
85
 
86
86
  // Common cleanup operations for both sync and async completion
87
87
  void AfterCommon(const Napi::Env &env);
package/xz-version.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
- "version": "v5.8.2",
2
+ "version": "v5.8.3",
3
3
  "comment": "Stable version tested and validated for production. Auto-updated by GitHub Actions.",
4
- "last_checked": "2026-01-25",
4
+ "last_checked": "2026-04-02",
5
5
  "allow_override": true,
6
6
  "repository": "tukaani-project/xz",
7
7
  "changelog": "https://github.com/tukaani-project/xz/releases/tag/v5.8.1"