@vizzly-testing/honeydiff 0.16.0 → 0.17.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -7,6 +7,20 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [0.17.0] - 2026-09-06
11
+
12
+ ### Added
13
+
14
+ - Added `HONEYDIFF_THREADS` and `configureThreads()` for one process-wide
15
+ Honeydiff compute budget.
16
+
17
+ ### Changed
18
+
19
+ - Reduced `analyze` CPU and temporary memory by sharing luminance and structural
20
+ metric work, with an exact-content fast path.
21
+
22
+ **Full Changelog**: https://github.com/vizzly-testing/honeydiff/compare/v0.16.0...v0.17.0
23
+
10
24
  ## [0.16.0] - 2026-08-03
11
25
 
12
26
  ### Added
package/README.md CHANGED
@@ -130,6 +130,26 @@ console.log(result.perception.msSsim);
130
130
  console.log(result.perception.gmsd);
131
131
  ```
132
132
 
133
+ ### Bound CPU Usage
134
+
135
+ Use one process-wide limit when Honeydiff runs inside a worker service:
136
+
137
+ ```bash
138
+ HONEYDIFF_THREADS=4 node visual-tests.js
139
+ ```
140
+
141
+ Applications that cannot set the environment before startup can configure the
142
+ same limit before their first operation:
143
+
144
+ ```js
145
+ import { configureThreads } from '@vizzly-testing/honeydiff';
146
+
147
+ configureThreads(4);
148
+ ```
149
+
150
+ Repeating the same value is safe. Changing it after Honeydiff work starts
151
+ throws instead of silently creating an oversubscribed pool.
152
+
133
153
  ### Align One Added Or Removed Block
134
154
 
135
155
  ```js
package/index.d.ts CHANGED
@@ -143,6 +143,11 @@ export interface ArtifactOutput {
143
143
  }
144
144
 
145
145
  export const version: string;
146
+ /**
147
+ * Set one process-wide HoneyDiff compute budget before the first operation.
148
+ * Repeating the same value is safe; changing it after work starts throws.
149
+ */
150
+ export function configureThreads(threads: number): void;
146
151
  export function compare(
147
152
  baseline: ImageInput,
148
153
  current: ImageInput,
package/index.js CHANGED
@@ -42,6 +42,7 @@ export const imagesDiffer = addon.imagesDiffer;
42
42
  export const imagesDifferSync = addon.imagesDifferSync;
43
43
  export const analyze = addon.analyze;
44
44
  export const analyzeSync = addon.analyzeSync;
45
+ export const configureThreads = addon.configureThreads;
45
46
  export const getDimensions = addon.getDimensions;
46
47
  export const getDimensionsSync = addon.getDimensionsSync;
47
48
  export const version = packageMetadata.version;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vizzly-testing/honeydiff",
3
- "version": "0.16.0",
3
+ "version": "0.17.0",
4
4
  "description": "High-performance image diffing for Node.js - Native bindings to Honeydiff Rust library",
5
5
  "type": "module",
6
6
  "main": "index.js",