compress-utils 0.11.2 → 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/README.md +43 -113
- package/THIRD_PARTY_NOTICES.md +41 -7
- package/dist/algorithms/brotli/brotli.wasm +0 -0
- package/dist/algorithms/brotli/compress/brotli.wasm +0 -0
- package/dist/algorithms/brotli/decompress/brotli.wasm +0 -0
- package/dist/algorithms/bz2/bz2.wasm +0 -0
- package/dist/algorithms/bz2/compress/bz2.wasm +0 -0
- package/dist/algorithms/bz2/decompress/bz2.wasm +0 -0
- package/dist/algorithms/gzip/compress/gzip.wasm +0 -0
- package/dist/algorithms/gzip/decompress/gzip.wasm +0 -0
- package/dist/algorithms/gzip/gzip.wasm +0 -0
- package/dist/algorithms/lz4/compress/lz4.wasm +0 -0
- package/dist/algorithms/lz4/decompress/lz4.wasm +0 -0
- package/dist/algorithms/lz4/lz4.wasm +0 -0
- package/dist/algorithms/lzo/decompress/lzo.wasm +0 -0
- package/dist/algorithms/snappy/compress/snappy.wasm +0 -0
- package/dist/algorithms/snappy/decompress/snappy.wasm +0 -0
- package/dist/algorithms/snappy/snappy.wasm +0 -0
- package/dist/algorithms/xz/compress/xz.wasm +0 -0
- package/dist/algorithms/xz/decompress/xz.wasm +0 -0
- package/dist/algorithms/xz/xz.wasm +0 -0
- package/dist/algorithms/zlib/compress/zlib.wasm +0 -0
- package/dist/algorithms/zlib/decompress/zlib.wasm +0 -0
- package/dist/algorithms/zlib/zlib.wasm +0 -0
- package/dist/algorithms/zstd/compress/zstd.wasm +0 -0
- package/dist/algorithms/zstd/decompress/zstd.wasm +0 -0
- package/dist/algorithms/zstd/zstd.wasm +0 -0
- package/dist/core/dispatch.d.ts +2 -2
- package/dist/core/dispatch.d.ts.map +1 -1
- package/dist/core/dispatch.js +12 -17
- package/dist/core/dispatch.js.map +1 -1
- package/dist/core/loader.d.ts +3 -1
- package/dist/core/loader.d.ts.map +1 -1
- package/dist/core/loader.js +4 -1
- package/dist/core/loader.js.map +1 -1
- package/dist/wasm-source/resolve-node-source.mjs +2 -0
- package/package.json +6 -3
package/README.md
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
[](https://github.com/dupontcyborg/compress-utils/actions/workflows/build_and_test_wasm.yml)
|
|
6
6
|
[](https://opensource.org/licenses/MIT)
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
One portable API for Zstandard, Brotli, zlib, gzip, bzip2, LZ4, XZ/LZMA and Snappy, plus raw DEFLATE, LZ4 blocks and LZO decoding, in every JavaScript runtime, with decompression ahead of or on par with every other JavaScript and WASM library we tested. Tree-shakeable per-algorithm imports with TypeScript types included, all backed by one C core compiled to WebAssembly.
|
|
9
9
|
|
|
10
10
|
## Installation
|
|
11
11
|
|
|
@@ -14,23 +14,7 @@ npm install compress-utils
|
|
|
14
14
|
# or: pnpm add / yarn add / bun add / deno add npm:compress-utils
|
|
15
15
|
```
|
|
16
16
|
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
The package is published as ESM. You can pull it straight from a CDN, with no install step and no build step.
|
|
20
|
-
|
|
21
|
-
```html
|
|
22
|
-
<script type="module">
|
|
23
|
-
import { compress, decompress } from "https://esm.sh/compress-utils/zstd";
|
|
24
|
-
|
|
25
|
-
const out = await compress(new TextEncoder().encode("hello"));
|
|
26
|
-
</script>
|
|
27
|
-
```
|
|
28
|
-
|
|
29
|
-
| CDN | Per-algo URL |
|
|
30
|
-
|----------|-------------------------------------------------------------------------------|
|
|
31
|
-
| esm.sh | `https://esm.sh/compress-utils/<algo>` |
|
|
32
|
-
| jsDelivr | `https://cdn.jsdelivr.net/npm/compress-utils/dist/algorithms/<algo>/index.js` |
|
|
33
|
-
| unpkg | `https://unpkg.com/compress-utils/dist/algorithms/<algo>/index.js` |
|
|
17
|
+
ESM only, with TypeScript types for every subpath and no system dependencies. Tested in CI on Node 20, 22 and 24, Bun, Deno 2.x and Chromium, Firefox and WebKit; it also loads from a CDN such as esm.sh ([CDN usage](https://github.com/dupontcyborg/compress-utils/blob/main/docs/bindings/wasm-advanced.md#cdn-no-bundler)).
|
|
34
18
|
|
|
35
19
|
## Quick start
|
|
36
20
|
|
|
@@ -45,7 +29,41 @@ const compressed = await compress(input, { level: 9 });
|
|
|
45
29
|
const restored = await decompress(compressed);
|
|
46
30
|
```
|
|
47
31
|
|
|
48
|
-
Available subpaths: `compress-utils/zstd`, `/brotli`, `/zlib`, `/bz2`, `/lz4`, `/xz`, `/snappy`, `/gzip`, plus the raw block formats `/deflate`, `/lz4_raw` and `/lzo/decompress`. The surface is identical across all of them. Each also has `/<algo>/decompress` and `/<algo>/compress` variants that ship only one direction for a much smaller `.wasm`; see [
|
|
32
|
+
Available subpaths: `compress-utils/zstd`, `/brotli`, `/zlib`, `/bz2`, `/lz4`, `/xz`, `/snappy`, `/gzip`, plus the raw block formats `/deflate`, `/lz4_raw` and `/lzo/decompress`. The surface is identical across all of them. Each also has `/<algo>/decompress` and `/<algo>/compress` variants that ship only one direction for a much smaller `.wasm`; see [bundle size](https://github.com/dupontcyborg/compress-utils/blob/main/docs/bindings/wasm-advanced.md#bundle-size).
|
|
33
|
+
|
|
34
|
+
## Performance
|
|
35
|
+
|
|
36
|
+
<!-- bench:start -->
|
|
37
|
+
<picture>
|
|
38
|
+
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/dupontcyborg/compress-utils/main/docs/benchmarks/img/readme-wasm-dark.png">
|
|
39
|
+
<img src="https://raw.githubusercontent.com/dupontcyborg/compress-utils/main/docs/benchmarks/img/readme-wasm-light.png" alt="Compression ratio against throughput in MB/s on a log axis for compress-utils for JavaScript and brotli-wasm, fflate, fzstd, lz4js, pako, snappyjs and zstd-wasm, one row per algorithm (zstd, brotli, zlib, xz, lz4, snappy, bz2) with compress on the left and decompress on the right, dickens one-shot on AWS c8g.xlarge (Graviton4, arm64), 2026-10-29" width="830">
|
|
40
|
+
</picture>
|
|
41
|
+
|
|
42
|
+
compress-utils for JavaScript against other JavaScript compression libraries: speed against compression ratio.
|
|
43
|
+
|
|
44
|
+
Measured on AWS c8g.xlarge (Graviton4), dickens (10.2 MB of text), one-shot, 2026-10-29.
|
|
45
|
+
|
|
46
|
+
Full results [here](https://github.com/dupontcyborg/compress-utils/blob/main/docs/benchmarks/wasm.md).
|
|
47
|
+
<!-- bench:end -->
|
|
48
|
+
|
|
49
|
+
<!-- size:start -->
|
|
50
|
+
### Bundle size
|
|
51
|
+
|
|
52
|
+
Gzipped size in KiB of each algorithm's `.wasm` module (`gzip -9`, measured on the build of 2026-10-29): the default import ships both directions, while the `/compress` and `/decompress` subpaths ship only one.
|
|
53
|
+
|
|
54
|
+
| Algorithm | Compress only | Decompress only | Both |
|
|
55
|
+
| :--- | ---: | ---: | ---: |
|
|
56
|
+
| zstd | 100.2 | 38.3 | 124.3 |
|
|
57
|
+
| brotli | 152.1 | 85.0 | 168.8 |
|
|
58
|
+
| zlib | 35.5 | 31.5 | 45.1 |
|
|
59
|
+
| gzip | 35.2 | 31.4 | 44.9 |
|
|
60
|
+
| xz | 52.2 | 47.0 | 64.8 |
|
|
61
|
+
| lz4 | 34.2 | 20.3 | 43.4 |
|
|
62
|
+
| bz2 | 25.5 | 23.1 | 35.7 |
|
|
63
|
+
| snappy | 12.2 | 15.1 | 17.2 |
|
|
64
|
+
|
|
65
|
+
Each algorithm is a separate module and unused code is tree-shaken, so a page pays only for the algorithms and directions it imports. How the modules were made smaller: [wasm-size.md](https://github.com/dupontcyborg/compress-utils/blob/main/docs/wasm-size.md).
|
|
66
|
+
<!-- size:end -->
|
|
49
67
|
|
|
50
68
|
## Supported algorithms
|
|
51
69
|
|
|
@@ -67,11 +85,11 @@ Available subpaths: `compress-utils/zstd`, `/brotli`, `/zlib`, `/bz2`, `/lz4`, `
|
|
|
67
85
|
| LZO1X | `compress-utils/lzo/decompress` | Raw LZO1X block (decompression only) |
|
|
68
86
|
<!-- END:algorithms -->
|
|
69
87
|
|
|
70
|
-
Imports are independent: `import "compress-utils/zstd"` and `import "compress-utils/brotli"` pull in two separate `.wasm` modules, not a combined bundle. Files are marked `"sideEffects": false` so unused exports are tree-shaken aggressively. For per-module `.wasm` sizes, and the smaller decode-only and encode-only builds, see [
|
|
88
|
+
Imports are independent: `import "compress-utils/zstd"` and `import "compress-utils/brotli"` pull in two separate `.wasm` modules, not a combined bundle. Files are marked `"sideEffects": false` so unused exports are tree-shaken aggressively. For per-module `.wasm` sizes, and the smaller decode-only and encode-only builds, see [bundle size](https://github.com/dupontcyborg/compress-utils/blob/main/docs/bindings/wasm-advanced.md#bundle-size).
|
|
71
89
|
|
|
72
90
|
### Raw blocks and output capacity
|
|
73
91
|
|
|
74
|
-
Raw block formats such as those inside Parquet and ORC pages don't record their decompressed size
|
|
92
|
+
Raw block formats such as those inside Parquet and ORC pages don't record their decompressed size, so pass `expectedSize`, an upper bound on the output; the result holds only the bytes actually decoded. More in the [advanced guide](https://github.com/dupontcyborg/compress-utils/blob/main/docs/bindings/wasm-advanced.md#raw-blocks-and-output-capacity).
|
|
75
93
|
|
|
76
94
|
```ts
|
|
77
95
|
import { decompress } from "compress-utils/lz4_raw";
|
|
@@ -79,8 +97,6 @@ import { decompress } from "compress-utils/lz4_raw";
|
|
|
79
97
|
const page = await decompress(block, { expectedSize: uncompressedPageSize });
|
|
80
98
|
```
|
|
81
99
|
|
|
82
|
-
Without `expectedSize`, `lz4_raw` blocks are decoded with the incremental stream decoder, which is much slower, so pass it when you know the size. Every other algorithm accepts it too, which skips a sizing pass and decodes straight into a buffer of that size.
|
|
83
|
-
|
|
84
100
|
## Streaming
|
|
85
101
|
|
|
86
102
|
### Web Streams
|
|
@@ -105,23 +121,7 @@ chunks.push(cs.finish());
|
|
|
105
121
|
// cs is destroyed automatically on scope exit (TS 5.2+ / Node 22+).
|
|
106
122
|
```
|
|
107
123
|
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
### Stopping at the end of a stream
|
|
111
|
-
|
|
112
|
-
By default a decoder decodes concatenated frames (zstd, LZ4, gzip, xz) as one stream. To read one compressed stream followed by other data, such as the next message on a socket or a container's own bytes, create the decoder with `{ singleStream: true }`. It stops at the end of the first frame, sets `eof`, and returns the input bytes written after the end in `unusedData`:
|
|
113
|
-
|
|
114
|
-
```ts
|
|
115
|
-
import { createDecompressStream } from "compress-utils/zstd";
|
|
116
|
-
|
|
117
|
-
using ds = await createDecompressStream({ singleStream: true });
|
|
118
|
-
const message = ds.write(received); // decodes up to the end of the frame
|
|
119
|
-
if (ds.eof) {
|
|
120
|
-
const rest = ds.unusedData; // bytes after the frame, e.g. the next message
|
|
121
|
-
}
|
|
122
|
-
```
|
|
123
|
-
|
|
124
|
-
Once `eof` is true, writing more data throws `CompressError` with code `10` (stream finished) and leaves `unusedData` unchanged; empty writes and `finish()` return empty output. Leading zstd/LZ4 skippable frames are skipped. Snappy emits nothing until its block is complete. Raw LZ4 (which has no end marker) and LZO don't support it and throw `CompressError` with code `5`. `decompressionStream()` doesn't take the option: a `TransformStream` has no way to hand back the bytes after the end, so use `createDecompressStream` for this.
|
|
124
|
+
Without `using`, call `cs.destroy()` explicitly. To stop at the end of one frame and get the bytes after it, create the decoder with `{ singleStream: true }`; see [stopping at the end of a stream](https://github.com/dupontcyborg/compress-utils/blob/main/docs/bindings/wasm-advanced.md#stopping-at-the-end-of-a-stream).
|
|
125
125
|
|
|
126
126
|
## Compression levels
|
|
127
127
|
|
|
@@ -134,7 +134,7 @@ await compress(input, { level: 10 }); // smallest
|
|
|
134
134
|
|
|
135
135
|
## Errors and limits
|
|
136
136
|
|
|
137
|
-
|
|
137
|
+
Decompression is bounded by default: output is capped at 1 GiB, so a hostile or corrupt input cannot exhaust memory. Change the cap with `setMaxDecompressedSize`, and see the [untrusted input guidance](https://github.com/dupontcyborg/compress-utils#untrusted-input) in the project README for what else to set when you decompress data you don't control.
|
|
138
138
|
|
|
139
139
|
Every failure throws a `CompressError`, which carries the underlying C status code and the algorithm name:
|
|
140
140
|
|
|
@@ -148,81 +148,11 @@ try {
|
|
|
148
148
|
}
|
|
149
149
|
```
|
|
150
150
|
|
|
151
|
-
`await version()` returns the library version (for example `"0.
|
|
152
|
-
|
|
153
|
-
## Preloading and synchronous calls
|
|
154
|
-
|
|
155
|
-
Each algorithm and direction-specific subpath exports `preload()`. It loads and initializes that subpath's WASM module once, and concurrent calls share initialization. A failed initialization can be retried. No codec work is performed by preload.
|
|
156
|
-
|
|
157
|
-
```ts
|
|
158
|
-
import { preload, compressSync, decompressSync } from "compress-utils/zlib";
|
|
159
|
-
await preload();
|
|
160
|
-
const compressed = compressSync(new TextEncoder().encode("hello"));
|
|
161
|
-
const restored = decompressSync(compressed);
|
|
162
|
-
```
|
|
163
|
-
|
|
164
|
-
`compressSync`, `decompressSync`, `createCompressStreamSync`, and `createDecompressStreamSync` are available for the directions exposed by the subpath. They throw with a `preload()` instruction before initialization completes. Existing asynchronous APIs initialize automatically and also enable subsequent synchronous calls. Initializing one subpath does not initialize another, because encoder and decoder subpaths use different WASM modules.
|
|
151
|
+
`await version()` returns the library version (for example `"0.12.0"`), and `await setMaxDecompressedSize(bytes)` caps `decompress` for every algorithm (default 1 GiB; `0` = unbounded). Streams have no limit unless you pass one: `createDecompressStream({ maxOutput })` and `decompressionStream({ maxOutput })` throw a `CompressError` once the output passes it.
|
|
165
152
|
|
|
166
153
|
## Concurrency
|
|
167
154
|
|
|
168
|
-
Each WASM module instance runs on the thread that loaded it, so nothing is shared between workers: every Worker initializes its own instance and keeps its own streams. Synchronous calls block the calling thread, so run expensive ones in a Worker
|
|
169
|
-
|
|
170
|
-
## Bundle size
|
|
171
|
-
|
|
172
|
-
Importing `compress-utils/<algo>` gives you the **full** codec, compress *and* decompress. If you only need one direction (a browser that just *decompresses* fetched assets is the common case), import a directional subpath and the other half is dead-stripped from the `.wasm` entirely:
|
|
173
|
-
|
|
174
|
-
```ts
|
|
175
|
-
// decoder only, 36 KB gzipped for zstd
|
|
176
|
-
import { decompress } from "compress-utils/zstd/decompress";
|
|
177
|
-
|
|
178
|
-
// or, encoder only:
|
|
179
|
-
import { compress } from "compress-utils/zstd/compress";
|
|
180
|
-
```
|
|
181
|
-
|
|
182
|
-
- **`/decompress`** exposes `decompress`, `createDecompressStream`, `decompressionStream`, `setMaxDecompressedSize` and `version`.
|
|
183
|
-
- **`/compress`** exposes `compress`, `createCompressStream`, `compressionStream` and `version`.
|
|
184
|
-
- The default subpath keeps **both**.
|
|
185
|
-
|
|
186
|
-
Gzipped `.wasm` sizes:
|
|
187
|
-
|
|
188
|
-
| algo | full | decompress-only | compress-only |
|
|
189
|
-
|--------|-----:|----------------:|--------------:|
|
|
190
|
-
| zstd | 128K | 36K | 106K |
|
|
191
|
-
| brotli | 169K | 84K | 154K |
|
|
192
|
-
| lz4 | 39K | 15K | 35K |
|
|
193
|
-
| bz2 | 33K | 22K | 25K |
|
|
194
|
-
| xz | 62K | 43K | 51K |
|
|
195
|
-
| zlib | 33K | 25K | 26K |
|
|
196
|
-
| snappy | 36K | 32K | 28K |
|
|
197
|
-
| gzip | 80K | 52K | 60K |
|
|
198
|
-
|
|
199
|
-
The `.wasm` is the bulk of what ships. The JS glue is a few KB, shared, and tree-shaken to the methods you import.
|
|
200
|
-
|
|
201
|
-
## Runtime support
|
|
202
|
-
|
|
203
|
-
Tested in CI on every release:
|
|
204
|
-
|
|
205
|
-
| Runtime | Status |
|
|
206
|
-
|------------------------------------------|--------|
|
|
207
|
-
| Node 20, 22, 24 | ✅ |
|
|
208
|
-
| Bun | ✅ |
|
|
209
|
-
| Deno 2.x | ✅ |
|
|
210
|
-
| Chromium / Firefox / WebKit (Playwright) | ✅ |
|
|
211
|
-
|
|
212
|
-
## TypeScript
|
|
213
|
-
|
|
214
|
-
The package is TypeScript-first. `.d.ts` files ship alongside the JS for every subpath, so no `@types/` package is needed.
|
|
215
|
-
|
|
216
|
-
```ts
|
|
217
|
-
import { compress, type CompressOptions, type CompressError } from "compress-utils/zstd";
|
|
218
|
-
|
|
219
|
-
const opts: CompressOptions = { level: 7 };
|
|
220
|
-
const compressed: Uint8Array = await compress(input, opts);
|
|
221
|
-
```
|
|
222
|
-
|
|
223
|
-
## Performance
|
|
224
|
-
|
|
225
|
-
Overhead versus native C is **0.60–0.84× on compress and 0.50–1.00× on decompress**. WASM is the slowest binding across the board: zstd and brotli decode are the worst cases because they lean on native SIMD, while lz4 decode is memory-bound and costs nothing extra in the sandbox. The reasons to choose this binding are portability, one API in every runtime, and the small per-codec bundles above, rather than beating native `node:zlib`. Compression ratio is byte-identical to every other binding. See the [language comparison](https://github.com/dupontcyborg/compress-utils/blob/main/benchmarks/README.md#language-comparison) for methodology and the full chart.
|
|
155
|
+
Each WASM module instance runs on the thread that loaded it, so nothing is shared between workers: every Worker initializes its own instance and keeps its own streams. Synchronous calls block the calling thread, so run expensive ones in a Worker; see [preloading and synchronous calls](https://github.com/dupontcyborg/compress-utils/blob/main/docs/bindings/wasm-advanced.md#preloading-and-synchronous-calls).
|
|
226
156
|
|
|
227
157
|
## License
|
|
228
158
|
|
package/THIRD_PARTY_NOTICES.md
CHANGED
|
@@ -70,15 +70,15 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
|
70
70
|
THE SOFTWARE.
|
|
71
71
|
```
|
|
72
72
|
|
|
73
|
-
## zlib
|
|
73
|
+
## zlib-ng
|
|
74
74
|
|
|
75
|
-
- **Source**: https://github.com/
|
|
76
|
-
- **License**: Zlib
|
|
75
|
+
- **Source**: https://github.com/zlib-ng/zlib-ng at `2.3.3` (`third_party/zlib/`), built in zlib-compatible mode. Provides zlib, gzip and raw DEFLATE.
|
|
76
|
+
- **License**: Zlib. Contributors named in individual file headers (Intel, Cloudflare and others) license their changes under the same terms.
|
|
77
77
|
|
|
78
78
|
```text
|
|
79
79
|
Copyright notice:
|
|
80
80
|
|
|
81
|
-
(C) 1995-
|
|
81
|
+
(C) 1995-2024 Jean-loup Gailly and Mark Adler
|
|
82
82
|
|
|
83
83
|
This software is provided 'as-is', without any express or implied
|
|
84
84
|
warranty. In no event will the authors be held liable for any damages
|
|
@@ -202,10 +202,44 @@ NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
|
|
|
202
202
|
CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
|
203
203
|
```
|
|
204
204
|
|
|
205
|
-
## snappy-
|
|
205
|
+
## snappy (first-party core)
|
|
206
206
|
|
|
207
|
-
- **Source**: https://github.com/andikleen/snappy-c at `fef67ac6effb40c83fb5e37eaf243381fa056f9b
|
|
208
|
-
- **License**: BSD-3-Clause
|
|
207
|
+
- **Source**: `src/algorithms/snappy/core/` — original code that implements the Snappy raw block format; its design follows Google's snappy (https://github.com/google/snappy) and Andi Kleen's C port of it (https://github.com/andikleen/snappy-c at `fef67ac6effb40c83fb5e37eaf243381fa056f9b`, the codec it replaced). See `src/algorithms/snappy/core/PROVENANCE.md`.
|
|
208
|
+
- **License**: BSD-3-Clause (Google, Intel); the original parts are under this project's MIT license
|
|
209
|
+
|
|
210
|
+
Google snappy:
|
|
211
|
+
|
|
212
|
+
```text
|
|
213
|
+
Copyright 2005 Google Inc. All Rights Reserved.
|
|
214
|
+
|
|
215
|
+
Redistribution and use in source and binary forms, with or without
|
|
216
|
+
modification, are permitted provided that the following conditions are
|
|
217
|
+
met:
|
|
218
|
+
|
|
219
|
+
* Redistributions of source code must retain the above copyright
|
|
220
|
+
notice, this list of conditions and the following disclaimer.
|
|
221
|
+
* Redistributions in binary form must reproduce the above
|
|
222
|
+
copyright notice, this list of conditions and the following disclaimer
|
|
223
|
+
in the documentation and/or other materials provided with the
|
|
224
|
+
distribution.
|
|
225
|
+
* Neither the name of Google Inc. nor the names of its
|
|
226
|
+
contributors may be used to endorse or promote products derived from
|
|
227
|
+
this software without specific prior written permission.
|
|
228
|
+
|
|
229
|
+
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
230
|
+
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
231
|
+
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
|
232
|
+
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
|
233
|
+
OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
|
234
|
+
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
|
235
|
+
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
|
236
|
+
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
|
237
|
+
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
238
|
+
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
|
239
|
+
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
240
|
+
```
|
|
241
|
+
|
|
242
|
+
snappy-c:
|
|
209
243
|
|
|
210
244
|
```text
|
|
211
245
|
The snappy-c code is under the same license as the original snappy source
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
package/dist/core/dispatch.d.ts
CHANGED
|
@@ -27,7 +27,7 @@ export declare class Dispatcher {
|
|
|
27
27
|
setMaxDecompressedSize(bytes: number): void;
|
|
28
28
|
compress(input: Uint8Array, opts?: CompressOptions): Uint8Array;
|
|
29
29
|
decompress(input: Uint8Array, opts?: DecompressOptions): Uint8Array;
|
|
30
|
-
private
|
|
30
|
+
private decompressAlloc;
|
|
31
31
|
private tryProbeSize;
|
|
32
32
|
createCompressStream(opts?: CompressOptions): CompressStream;
|
|
33
33
|
createDecompressStream(opts?: DecompressStreamOptions): DecompressStream;
|
|
@@ -126,7 +126,7 @@ export interface AlgorithmBindings {
|
|
|
126
126
|
*/
|
|
127
127
|
setMaxDecompressedSize(bytes: number): Promise<void>;
|
|
128
128
|
}
|
|
129
|
-
export type WasmResolver = (url: URL) => Promise<BufferSource | Response | PromiseLike<Response
|
|
129
|
+
export type WasmResolver = (url: URL) => Promise<BufferSource | Response | PromiseLike<Response> | WebAssembly.Module>;
|
|
130
130
|
export declare function createBindings(algorithm: Algorithm, name: AlgorithmName, wasmUrl: URL, resolveWasm: WasmResolver): AlgorithmBindings;
|
|
131
131
|
export {};
|
|
132
132
|
//# sourceMappingURL=dispatch.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dispatch.d.ts","sourceRoot":"","sources":["../../src/core/dispatch.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAA0C,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AACvF,OAAO,EACH,KAAK,SAAS,EAGd,KAAK,aAAa,EAClB,KAAK,eAAe,EACpB,KAAK,wBAAwB,EAC7B,KAAK,iBAAiB,EACtB,KAAK,uBAAuB,EAC/B,MAAM,YAAY,CAAC;AAYpB,oEAAoE;AACpE,cAAM,KAAK;IACP,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAc;IACtC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAgB;IAErC,YAAY,OAAO,EAAE,WAAW,EAE/B;IAED,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,aAAa,GAAG,MAAM,CAapD;IAED,OAAO,IAAI,IAAI,CAGd;CACJ;AAED,qBAAa,UAAU;IACnB,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;IAC9B,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IACtC,gBAAgB,CAAC,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC;IAE/C,YAAY,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS,EAAE,aAAa,EAAE,aAAa,EAWnF;IAED,OAAO,IAAI,MAAM,CAEhB;IAED,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAE1C;IAID,QAAQ,CAAC,KAAK,EAAE,UAAU,EAAE,IAAI,GAAE,eAAoB,GAAG,UAAU,CA0BlE;IAED,UAAU,CAAC,KAAK,EAAE,UAAU,EAAE,IAAI,GAAE,iBAAsB,GAAG,UAAU,
|
|
1
|
+
{"version":3,"file":"dispatch.d.ts","sourceRoot":"","sources":["../../src/core/dispatch.ts"],"names":[],"mappings":"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"}
|
package/dist/core/dispatch.js
CHANGED
|
@@ -94,9 +94,8 @@ export class Dispatcher {
|
|
|
94
94
|
const outSize = opts.expectedSize ?? this.tryProbeSize(arena, inPtr, inLen);
|
|
95
95
|
if (outSize === undefined) {
|
|
96
96
|
// Wire format doesn't carry size (bz2, brotli, raw deflate,
|
|
97
|
-
//
|
|
98
|
-
|
|
99
|
-
return this.decompressStreaming(input);
|
|
97
|
+
// an xz input that isn't exactly one Stream). The core grows its own buffer, so the one-shot API still works.
|
|
98
|
+
return this.decompressAlloc(arena, inPtr, inLen);
|
|
100
99
|
}
|
|
101
100
|
const outPtr = arena.alloc(outSize, this.algorithmName);
|
|
102
101
|
const outLenPtr = arena.alloc(4, this.algorithmName);
|
|
@@ -109,23 +108,19 @@ export class Dispatcher {
|
|
|
109
108
|
arena.freeAll();
|
|
110
109
|
}
|
|
111
110
|
}
|
|
112
|
-
/*
|
|
113
|
-
|
|
114
|
-
const
|
|
115
|
-
|
|
116
|
-
|
|
111
|
+
/* Decodes the input already staged at `inPtr` into a buffer the core grows (bounded by the same cap as the one-shot path), then copies the result out of the heap once. */
|
|
112
|
+
decompressAlloc(arena, inPtr, inLen) {
|
|
113
|
+
const outPP = arena.alloc(8, this.algorithmName);
|
|
114
|
+
this.writeU32(outPP, 0);
|
|
115
|
+
this.writeU32(outPP + 4, 0);
|
|
116
|
+
const status = this.exports.cu_decompress_alloc(this.algorithm, inPtr, inLen, outPP, outPP + 4);
|
|
117
|
+
checkStatus(this.exports, status, this.algorithmName);
|
|
118
|
+
const outPtr = this.readU32(outPP);
|
|
117
119
|
try {
|
|
118
|
-
|
|
119
|
-
const tail = stream.finish();
|
|
120
|
-
if (tail.byteLength === 0)
|
|
121
|
-
return body;
|
|
122
|
-
const out = new Uint8Array(body.byteLength + tail.byteLength);
|
|
123
|
-
out.set(body, 0);
|
|
124
|
-
out.set(tail, body.byteLength);
|
|
125
|
-
return out;
|
|
120
|
+
return this.readBytes(outPtr, this.readU32(outPP + 4));
|
|
126
121
|
}
|
|
127
122
|
finally {
|
|
128
|
-
|
|
123
|
+
this.exports.cu_buffer_free(outPtr);
|
|
129
124
|
}
|
|
130
125
|
}
|
|
131
126
|
tryProbeSize(arena, inPtr, inLen) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dispatch.js","sourceRoot":"","sources":["../../src/core/dispatch.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dispatch.js","sourceRoot":"","sources":["../../src/core/dispatch.ts"],"names":[],"mappings":"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"}
|
package/dist/core/loader.d.ts
CHANGED
|
@@ -30,6 +30,8 @@ export interface WasmExports {
|
|
|
30
30
|
readonly cu_compress: (algo: number, in_ptr: number, in_len: number, out_ptr: number, out_len_ptr: number, level: number) => number;
|
|
31
31
|
readonly cu_decompress: (algo: number, in_ptr: number, in_len: number, out_ptr: number, out_len_ptr: number) => number;
|
|
32
32
|
readonly cu_decompress_size_hint: (algo: number, in_ptr: number, in_len: number, out_size_ptr: number) => number;
|
|
33
|
+
readonly cu_decompress_alloc: (algo: number, in_ptr: number, in_len: number, out_pp: number, out_len_ptr: number) => number;
|
|
34
|
+
readonly cu_buffer_free: (ptr: number) => void;
|
|
33
35
|
readonly cu_compress_stream_create: (algo: number, level: number, out_stream_pp: number) => number;
|
|
34
36
|
readonly cu_compress_stream_write: (stream: number, in_ptr: number, in_len: number, out_ptr: number, out_len_ptr: number) => number;
|
|
35
37
|
readonly cu_compress_stream_flush: (stream: number, out_ptr: number, out_len_ptr: number) => number;
|
|
@@ -46,7 +48,7 @@ export interface WasmExports {
|
|
|
46
48
|
readonly cu_decompress_stream_unused: (stream: number, data_pp: number, len_ptr: number) => number;
|
|
47
49
|
readonly cu_set_max_decompressed_size?: (bytes: number) => void;
|
|
48
50
|
}
|
|
49
|
-
export declare function loadModule(source: BufferSource | Response | PromiseLike<Response>): Promise<WasmExports>;
|
|
51
|
+
export declare function loadModule(source: BufferSource | Response | PromiseLike<Response> | WebAssembly.Module): Promise<WasmExports>;
|
|
50
52
|
export declare function decodeCString(memory: WebAssembly.Memory, ptr: number, maxLen?: number): string;
|
|
51
53
|
/** Convert a non-Ok status into a thrown CompressError using the C side's message. */
|
|
52
54
|
export declare function checkStatus(exports: WasmExports, status: number, algorithm: AlgorithmName): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../src/core/loader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAyB,KAAK,aAAa,EAAE,MAAM,YAAY,CAAC;AAEvE,MAAM,WAAW,WAAW;IACxB,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC;IACpC,QAAQ,CAAC,WAAW,EAAE,MAAM,IAAI,CAAC;IAGjC,QAAQ,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;IAC7C,QAAQ,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAGxC,QAAQ,CAAC,UAAU,EAAE,MAAM,MAAM,CAAC;IAClC,QAAQ,CAAC,sBAAsB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;IAC1D,QAAQ,CAAC,aAAa,EAAE,MAAM,MAAM,CAAC;IACrC,QAAQ,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;IAE/C,QAAQ,CAAC,iBAAiB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;IACrE,QAAQ,CAAC,WAAW,EAAE,CAClB,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,MAAM,KACZ,MAAM,CAAC;IACZ,QAAQ,CAAC,aAAa,EAAE,CACpB,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,MAAM,KAClB,MAAM,CAAC;IACZ,QAAQ,CAAC,uBAAuB,EAAE,CAC9B,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,MAAM,KACnB,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../src/core/loader.ts"],"names":[],"mappings":"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"}
|
package/dist/core/loader.js
CHANGED
|
@@ -117,7 +117,10 @@ export async function loadModule(source) {
|
|
|
117
117
|
const imports = {
|
|
118
118
|
wasi_snapshot_preview1: wasiImports(() => instance.exports.memory),
|
|
119
119
|
};
|
|
120
|
-
if (source instanceof
|
|
120
|
+
if (source instanceof WebAssembly.Module) {
|
|
121
|
+
instance = await WebAssembly.instantiate(source, imports);
|
|
122
|
+
}
|
|
123
|
+
else if (source instanceof ArrayBuffer || ArrayBuffer.isView(source)) {
|
|
121
124
|
const { instance: inst } = await WebAssembly.instantiate(source, imports);
|
|
122
125
|
instance = inst;
|
|
123
126
|
}
|
package/dist/core/loader.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/core/loader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,EAAsB,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/core/loader.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "compress-utils",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.12.0",
|
|
4
4
|
"description": "WASM compression bindings for zstd, brotli, zlib, bz2, lz4, xz, snappy, gzip - all tree-shakeable.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"sideEffects": false,
|
|
@@ -73,7 +73,10 @@
|
|
|
73
73
|
"browser": "./dist/core/resolve-browser.js",
|
|
74
74
|
"deno": "./dist/core/resolve-browser.js",
|
|
75
75
|
"bun": "./dist/core/resolve-browser.js",
|
|
76
|
-
"node":
|
|
76
|
+
"node": {
|
|
77
|
+
"compress-utils-wasm-source": "./dist/wasm-source/resolve-node-source.mjs",
|
|
78
|
+
"default": "./dist/core/resolve-node.js"
|
|
79
|
+
},
|
|
77
80
|
"default": "./dist/core/resolve-default.js"
|
|
78
81
|
}
|
|
79
82
|
},
|
|
@@ -85,7 +88,7 @@
|
|
|
85
88
|
],
|
|
86
89
|
"scripts": {
|
|
87
90
|
"build:wasm": "cmake -S ../.. -B ../../build-wasm -DBUILD_WASM_BINDINGS=ON -DBUILD_PYTHON_BINDINGS=OFF -DBUILD_CPP_BINDINGS=OFF -DENABLE_TESTS=OFF -DCMAKE_BUILD_TYPE=Release && cmake --build ../../build-wasm --target compress_utils_wasm -j",
|
|
88
|
-
"build:ts": "tsc -p tsconfig.json",
|
|
91
|
+
"build:ts": "tsc -p tsconfig.json && node scripts/copy-wasm-source.mjs",
|
|
89
92
|
"prepack": "node -e \"require('node:fs').copyFileSync('../../THIRD_PARTY_NOTICES.md', 'THIRD_PARTY_NOTICES.md')\"",
|
|
90
93
|
"build": "npm run build:wasm && npm run build:ts",
|
|
91
94
|
"test": "vitest run",
|