10.3.1
thesysdev/openui10.3.1Aug 15, 2026by github-actions[bot]
Upgrading?
AI Summary
Addresses geometry calculations for Paths and Lines, and improves color parsing robustness to handle edge cases like full circles and bezier curves.
Key Highlights
- Path.getPointAtLength now returns the last point for closed paths
- Arc.getSelfRect correctly reports a full circle for zero-degree arcs
- Line bounding boxes fixed for multi-segment bezier and tensioned lines
- Color parsing improved for HSL hue and RGB percentages
Full Release Notes
## Bug Fixes - **Path**: return last point for getPointAtLength past a closed path [#2053](https://github.com/konvajs/konva/pull/2053) ([Yarchik](https://github.com/konvajs/konva/commit/6a7b658fb094dc352145747affc517a40f37ebaf)) - Arc.getSelfRect() reports a full circle for a zero-degree clockwise arc [#2054](https://github.com/konvajs/konva/pull/2054) ([Alexander Kireev](https://github.com/konvajs/konva/commit/9fcb5da475131fea15fbace26222ee9f6f34cff9)) - **Shape**: respect imageSmoothingEnabled for fillPatternImage [#2055](https://github.com/konvajs/konva/pull/2055) ([MarkXian](https://github.com/konvajs/konva/commit/cc7cd937bde21ce63281a0172e3be5b5041caa18)) - **Util**: preserve alpha of the named color "transparent" [#2056](https://github.com/konvajs/konva/pull/2056) ([Yarchik](https://github.com/konvajs/konva/commit/7d438bebbb4ce62203923e750320491653111b99)) - **Util**: parse rgb() components written as percentages [#2057](https://github.com/konvajs/konva/pull/2057) ([jaybhade](https://github.com/konvajs/konva/commit/4c509601c07ff2d7244ce4ffeb22af94f590b233)) - **Util**: colorToRGBA() fails to parse non-integer HSL hue [#2059](https://github.com/konvajs/konva/pull/2059) ([Xuepoo](https://github.com/konvajs/konva/commit/02a9061bce20ab0c47f4857f7deaacfaddacd610)) - **Line**: getSelfRect wrong for multi-segment bezier and degenerate-derivative segments [#2061](https://github.com/konvajs/konva/pull/2061) ([Xuepoo](https://github.com/konvajs/konva/commit/cca6b4b10fd3bd2535caf5946b595f022d114652)) - **Line**: avoid NaN control points on closed tensioned lines with coincident points [#2062](https://github.com/konvajs/konva/pull/2062) ([rajanpanth](https://github.com/konvajs/konva/commit/8ce66dc1eff95c69c9276f4b2572c48a5adafb62)) - **Line**: guard the zero-distance case inside getControlPoints ([Anton Lavrevov](https://github.com/konvajs/konva/commit/e1d22459e0089b65351b61adbb2356f59d71f6ea)) - **Line**: cover joints and near-degenerate derivatives in bezier bounds ([Anton Lavrevov](https://github.com/konvajs/konva/commit/8282116de603f958b09c0b0bd461af423ecde6c0)) - **Path**: exact getSelfRect bounds for quadratic segments ([Anton Lavrevov](https://github.com/konvajs/konva/commit/5a23ece22b3745efa0b371ae7c8768d4fe4b5d16)) - **Line**: exact getSelfRect bounds for lines with a tension ([Anton Lavrevov](https://github.com/konvajs/konva/commit/4d01846bd083fddc917577a8dcd15bc1719018d5)) ## Code Refactoring - **Line**: write the control point distance sum once ([Anton Lavrevov](https://github.com/konvajs/konva/commit/c521cd1939ef0198bfa5b0401e095dba5904b093)) ## Performance Improvements - **Text**: hoist stringToArray(line) out of _setTextData binary search [#2044](https://github.com/konvajs/konva/pull/2044) ([Damian Frizzi](https://github.com/konvajs/konva/commit/6bd0d57bea0623ee97ff193637cb8a0b19a25380)) ## Continuous Integration - remove the formatting check ([Anton Lavrevov](https://github.com/konvajs/konva/commit/74af42d6b355300dc44d567d98f4c6ed6435cdcf)) ## Commits - b5c7a83: Fix ValidatorFunc Type Mistake (foolishflyfox) [#1998](https://github.com/konvajs/konva/pull/1998) - ecdf162: Improve Transformer performance with many attached nodes (Anton Lavrevov) - 976a63a: Add Transformer perf invariant tests; widen autoDraw suspension (Anton Lavrevov) - 7b3cf3b: Simplify a bit (Anton Lavrevov) - a203de9: sandbox (Anton Lavrevov) - 6e4025c: clear (Anton Lavrevov) - b92018b: Merge branch 'master' of github.com:konvajs/konva (Anton Lavrevov) - bc123b3: Declare canvas and skia-canvas as optional peer dependencies (Anton Lavrevov) - ed1e0cc: Skip pattern smoothing sanity check on skia-canvas (Anton Lavrevov) - f9bd818: Report full circle for any full-turn angle in Arc.getSelfRect (Anton Lavrevov) - dd90ff4: Merge pull request #2054: fix Arc.getSelfRect for full-turn angles (Anton Lavrevov) - 4f8e1a8: color parsing fixes, fix some color values. close #2063, close #2064 (Anton Lavrevov) - 4ebadaf: Merge branch 'master' into fix/line-tension-nan (Anton Lavrevov) [#2062](https://github.com/konvajs/konva/pull/2062) - Line NaN bounding rect fix ([Anton Lavrevov](https://github.com/konvajs/konva/commit/b4b914a19c376053a74ab1b6964b6d0ed8ac2984)) - cover all unreleased changes since 10.3.0 ([Anton Lavrevov](https://github.com/konvajs/konva/commit/62e2a2de1f4dc04a6d63deb48a97368fa1dd5e5d)) - c7145cc: Merge branch 'master' into fix/line-bezier-selfrect (Anton Lavrevov) [#2061](https://github.com/konvajs/konva/pull/2061) - d2b96f5: fix(Line,Path): share one exact solver for cubic bezier bounds (Anton Lavrevov) - 9e8a106: update CHANGELOG with new version (Anton Lavrevov) - fb706a2: build for 10.3.1 (Anton Lavrevov) - fad321d: update cdn link (Anton Lavrevov)
Related Repositories
openclaw/openclaw★ 392,689
The AI that really does things. Any OS. Any Platform. The lobster way. 🦞
nilbuild/developer-roadmap★ 370,064
Interactive roadmaps, guides and other educational content to help developers grow in their careers.
morluto/rea★ 357,472
Reverse engineer anything with agents, from app behavior down to native binaries.
anomalyco/opencode★ 219,654
The open source coding agent.
n8n-io/n8n★ 208,248
Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.