# Change Log - **Last updated**: 2026-07-02T14:22:52Z - **Generator**: [thi.ng/monopub](https://thi.ng/monopub) All notable changes to this project will be documented in this file. Only versions published since **2023-01-01** are listed here. Please consult the Git history for older version information. See [Conventional Commits](https://conventionalcommits.org/) for commit guidelines. **Note:** Unlisted _patch_ versions only involve non-code or otherwise excluded changes and/or version bumps of transitive dependencies. ### [7.5.6](https://codeberg.org/thi.ng/umbrella/src/tag/@thi.ng/pixel@7.5.6/packages/pixel) (2025-08-04) #### โ™ป๏ธ Refactoring - add required typedarray generics (TS5.9) ([1229bbb](https://codeberg.org/thi.ng/umbrella/commit/1229bbb)) ## [7.5.0](https://codeberg.org/thi.ng/umbrella/src/tag/@thi.ng/pixel@7.5.0/packages/pixel) (2025-05-28) #### ๐Ÿš€ Features - update `FloatFormat` ([5e28d2f](https://codeberg.org/thi.ng/umbrella/commit/5e28d2f)) - add `.fromNormalized()` - rename `.getNormalized()` => `.normalized()` - update `.as()` impls to support float formats ([2cf71f6](https://codeberg.org/thi.ng/umbrella/commit/2cf71f6)) - update `FloatBuffer.as()`, `IntBuffer.as()` to support both int & float formats - deprecate `floatBufferFromInt()` #### โ™ป๏ธ Refactoring - allow `.format` overrides in float/int buffers ([d5ad199](https://codeberg.org/thi.ng/umbrella/commit/d5ad199)) ## [7.4.0](https://codeberg.org/thi.ng/umbrella/src/tag/@thi.ng/pixel@7.4.0/packages/pixel) (2025-03-16) #### ๐Ÿš€ Features - add `.setImageData()` ([91c17df](https://codeberg.org/thi.ng/umbrella/commit/91c17df)) - add `ISetImageData` and impls for int & float buffers ### [7.3.6](https://codeberg.org/thi.ng/umbrella/src/tag/@thi.ng/pixel@7.3.6/packages/pixel) (2024-10-05) #### โ™ป๏ธ Refactoring - add explicit type casts (TS5.6.2) ([dcbdd60](https://codeberg.org/thi.ng/umbrella/commit/dcbdd60)) ## [7.3.0](https://codeberg.org/thi.ng/umbrella/src/tag/@thi.ng/pixel@7.3.0/packages/pixel) (2024-08-10) #### ๐Ÿš€ Features - add poisson-image example ([87ec9e7](https://codeberg.org/thi.ng/umbrella/commit/87ec9e7)) - update readmes - cc @nkint :) ### [7.2.1](https://codeberg.org/thi.ng/umbrella/src/tag/@thi.ng/pixel@7.2.1/packages/pixel) (2024-08-01) #### โ™ป๏ธ Refactoring - add OffscreenRawPixelBuffer, fix canvasPixels() ([06c6397](https://codeberg.org/thi.ng/umbrella/commit/06c6397)) - update canvasPixels() return type if given offscreen canvas as arg ## [7.2.0](https://codeberg.org/thi.ng/umbrella/src/tag/@thi.ng/pixel@7.2.0/packages/pixel) (2024-08-01) #### ๐Ÿš€ Features - extend CanvasContext and related functions to support OffscreenCanvas for better performance in web workers ([56d0985](https://codeberg.org/thi.ng/umbrella/commit/56d0985)) refactor(pixel): update canvas handling in pixel module to accommodate OffscreenCanvas for improved rendering capabilities - add OffscreenCanvas support ([1617255](https://codeberg.org/thi.ng/umbrella/commit/1617255)) - update IBlit.blitCanvas() signature to accept `OffscreenCanvas` & `OffscreenCanvasRenderingContext2D` - update blitCanvas() impls for Float/IntBuffer (extract shared internals) - update canvasPixels() - minor cleanup after [#488](https://codeberg.org/thi.ng/umbrella/issues/488) ## [7.1.0](https://codeberg.org/thi.ng/umbrella/src/tag/@thi.ng/pixel@7.1.0/packages/pixel) (2024-07-25) #### ๐Ÿš€ Features - add Iterable support for Int/FloatBuffer ([b459dfa](https://codeberg.org/thi.ng/umbrella/commit/b459dfa)) # [7.0.0](https://codeberg.org/thi.ng/umbrella/src/tag/@thi.ng/pixel@7.0.0/packages/pixel) (2024-07-22) #### ๐Ÿ›‘ Breaking changes - migrate/remove dominantColors() ([#486](https://codeberg.org/thi.ng/umbrella/issues/486)) ([8851726](https://codeberg.org/thi.ng/umbrella/commit/8851726)) - BREAKING CHANGE: migrate dominantColors() to [@thi.ng/pixel-dominant-colors](https://codeberg.org/thi.ng/umbrella/src/branch/main/packages/pixel-dominant-colors) pkg - remove obsolete files - update pkg - migrate/remove convolve functions ([#486](https://codeberg.org/thi.ng/umbrella/issues/486)) ([bf61076](https://codeberg.org/thi.ng/umbrella/commit/bf61076)) - BREAKING CHANGE: migrate convolve, normalMap & imagePyramid functionality to [@thi.ng/pixel-convolve](https://codeberg.org/thi.ng/umbrella/src/branch/main/packages/pixel-convolve) pkg - remove obsolete files - update deps/pkg - update readme #### โ™ป๏ธ Refactoring - internal re-org ([522db36](https://codeberg.org/thi.ng/umbrella/commit/522db36)) - internal update defIndexed(), remove obsolete deps ([76e5638](https://codeberg.org/thi.ng/umbrella/commit/76e5638)) - intern swapLane13 helper, remove dependency ([ee202f8](https://codeberg.org/thi.ng/umbrella/commit/ee202f8)) ### [6.1.33](https://codeberg.org/thi.ng/umbrella/src/tag/@thi.ng/pixel@6.1.33/packages/pixel) (2024-06-21) #### โ™ป๏ธ Refactoring - minor, dedupe kernel normalization ([4fec4e6](https://codeberg.org/thi.ng/umbrella/commit/4fec4e6)) - enforce uniform naming convention of internal functions ([56992b2](https://codeberg.org/thi.ng/umbrella/commit/56992b2)) ### [6.1.29](https://codeberg.org/thi.ng/umbrella/src/tag/@thi.ng/pixel@6.1.29/packages/pixel) (2024-04-20) #### โ™ป๏ธ Refactoring - update type usage ([8ccc518](https://codeberg.org/thi.ng/umbrella/commit/8ccc518)) ### [6.1.21](https://codeberg.org/thi.ng/umbrella/src/tag/@thi.ng/pixel@6.1.21/packages/pixel) (2024-03-18) #### โ™ป๏ธ Refactoring - update .rotateByID() impls ([de6bd05](https://codeberg.org/thi.ng/umbrella/commit/de6bd05)) ### [6.1.11](https://codeberg.org/thi.ng/umbrella/src/tag/@thi.ng/pixel@6.1.11/packages/pixel) (2024-02-22) #### โ™ป๏ธ Refactoring - update object destructuring in all pkgs & examples ([f36aeb0](https://codeberg.org/thi.ng/umbrella/commit/f36aeb0)) ## [6.1.0](https://codeberg.org/thi.ng/umbrella/src/tag/@thi.ng/pixel@6.1.0/packages/pixel) (2024-01-26) #### ๐Ÿš€ Features - add canvasFromPixelBuffer(), update canvasPixels() ([7f8583b](https://codeberg.org/thi.ng/umbrella/commit/7f8583b)) # [6.0.0](https://codeberg.org/thi.ng/umbrella/src/tag/@thi.ng/pixel@6.0.0/packages/pixel) (2023-12-19) #### ๐Ÿ›‘ Breaking changes - remove canvas2d() & related types ([20d1879](https://codeberg.org/thi.ng/umbrella/commit/20d1879)) - BREAKING CHANGE: migrate canvas2d() & related types to new pkg [@thi.ng/canvas](https://codeberg.org/thi.ng/umbrella/src/branch/main/packages/canvas) - add canvas opts arg for imageCanvas() # [5.0.0](https://codeberg.org/thi.ng/umbrella/src/tag/@thi.ng/pixel@5.0.0/packages/pixel) (2023-11-12) #### ๐Ÿ›‘ Breaking changes - update getRegion() return type ([6c22953](https://codeberg.org/thi.ng/umbrella/commit/6c22953)) - BREAKING CHANGE: update getRegion() to return undefined if result region < 1 pixel - add size checks to impls in IntBuffer/FloatBuffer ### [4.3.3](https://codeberg.org/thi.ng/umbrella/src/tag/@thi.ng/pixel@4.3.3/packages/pixel) (2023-11-09) #### โ™ป๏ธ Refactoring - update all tests (packages A-S) ([e3085e4](https://codeberg.org/thi.ng/umbrella/commit/e3085e4)) #### ๐Ÿงช Tests - update/refactor tests to use bun test runner ([8f6edb1](https://codeberg.org/thi.ng/umbrella/commit/8f6edb1)) - update/rename test files/imports (still many broken) ([1cb3c49](https://codeberg.org/thi.ng/umbrella/commit/1cb3c49)) ## [4.3.0](https://codeberg.org/thi.ng/umbrella/src/tag/@thi.ng/pixel@4.3.0/packages/pixel) (2023-10-27) #### ๐Ÿš€ Features - add imageFromFile(), deprecate imagePromise() ([cac6468](https://codeberg.org/thi.ng/umbrella/commit/cac6468)) - internal restructure, move all imageXXX() fns to /src/image.ts - add imageFromFile() - deprecate imagePromise(), add as imageFromURL() ### [4.2.9](https://codeberg.org/thi.ng/umbrella/src/tag/@thi.ng/pixel@4.2.9/packages/pixel) (2023-08-04) #### โ™ป๏ธ Refactoring - update `identity` usage in various pkgs ([b6db053](https://codeberg.org/thi.ng/umbrella/commit/b6db053)) ## [4.2.0](https://codeberg.org/thi.ng/umbrella/src/tag/@thi.ng/pixel@4.2.0/packages/pixel) (2023-04-08) #### ๐Ÿš€ Features - add IRotate and impls for int/float buffers ([a25b52a](https://codeberg.org/thi.ng/umbrella/commit/a25b52a)) - add rotateCW/CCW/180 methods - add rotateByID() ### [4.1.11](https://codeberg.org/thi.ng/umbrella/src/tag/@thi.ng/pixel@4.1.11/packages/pixel) (2023-03-27) #### ๐Ÿงช Tests - update all tests (mainly imports) ([63a85f9](https://codeberg.org/thi.ng/umbrella/commit/63a85f9)) ## [4.1.0](https://codeberg.org/thi.ng/umbrella/src/tag/@thi.ng/pixel@4.1.0/packages/pixel) (2023-01-10) #### ๐Ÿš€ Features - add normalize opt for defKernel()/defLargeKernel() ([9286590](https://codeberg.org/thi.ng/umbrella/commit/9286590)) - add FloatFormat.getNormalized() ([ddf0980](https://codeberg.org/thi.ng/umbrella/commit/ddf0980)) - add FLOAT_GRAY_RANGE format ([eedb24f](https://codeberg.org/thi.ng/umbrella/commit/eedb24f)) - update/improve FloatBuffer.as() single channel conversions ([0146075](https://codeberg.org/thi.ng/umbrella/commit/0146075)) - check if both source & dest formats are single channel - if so, convert directly via getNormalized() and avoid intermediate (lossy) conversion via ABGR - using only scalar access also faster than per-pixel subarrays - add FloatFormat.range ([0dbac7d](https://codeberg.org/thi.ng/umbrella/commit/0dbac7d)) - update all float formats - update FloatBuffer.clamp/clampChannel/getChannel() - add IntBuffer/FloatBuffer.flipX() ([daa7c32](https://codeberg.org/thi.ng/umbrella/commit/daa7c32)) #### โ™ป๏ธ Refactoring - update IBlend ([1d3f358](https://codeberg.org/thi.ng/umbrella/commit/1d3f358)) - include pre/postmultiply() fns - add docs - add FloatBuffer.isPremultiplied()