From 3663ffd388b37c2849f7677c321de37279b2f910 Mon Sep 17 00:00:00 2001 From: Andrey Kolkov Date: Mon, 3 Aug 2026 13:07:19 +0300 Subject: [PATCH] chore: prepare release v0.1.50 --- CHANGELOG.md | 14 ++++++++++++++ ROADMAP.md | 2 +- go.mod | 4 ++-- go.sum | 8 ++++---- 4 files changed, 21 insertions(+), 7 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 80c3c4b..fb2cf6f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,20 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [0.1.50] — 2026-08-03 + +### Fixed + +- **Concurrent dirty-boundary crash** ([#203](https://github.com/gogpu/ui/pull/203), @samyfodil) — `dirty-boundary` map guarded with `sync.Mutex` to prevent concurrent map read/write when `SetNeedsRedraw` races with `PaintBoundaryLayers`. Matches Flutter `_nodesNeedingPaint` concurrency pattern. +- **SVG viewport clipping** ([#204](https://github.com/gogpu/ui/pull/204), @samyfodil) — `RenderSVG` now clips drawing to the icon bounds via `PushClip`/`PopClip`, preventing SVG content from overflowing its allocated rectangle (W3C `overflow:hidden` default). +- **Keyboard modifiers on mouse/wheel events** ([#205](https://github.com/gogpu/ui/pull/205), @samyfodil) — `EventBridge` tracks modifier state from key events and stamps it onto subsequent mouse and wheel events. Enables Ctrl+Click, Shift+Scroll, and other modifier-dependent interactions. Matches winit/SDL3 Model B pattern. + +### Changed + +- **deps:** gogpu v0.48.4 → v0.48.5, wgpu v0.30.34 → v0.30.35 + - **gogpu v0.48.5:** DX12 DirectComposition for per-pixel alpha. + - **wgpu v0.30.35:** DX12 DirectComposition path for per-pixel alpha. + ## [0.1.49] — 2026-08-02 ### Added diff --git a/ROADMAP.md b/ROADMAP.md index 933d563..95d4bde 100644 --- a/ROADMAP.md +++ b/ROADMAP.md @@ -1,6 +1,6 @@ # gogpu/ui Roadmap -> **Version:** 0.1.49 +> **Version:** 0.1.50 > **Updated:** August 2026 > **Go Version:** 1.25+ diff --git a/go.mod b/go.mod index df7c54b..57bd669 100644 --- a/go.mod +++ b/go.mod @@ -5,10 +5,10 @@ go 1.25.0 require ( github.com/coregx/signals v0.1.1 github.com/gogpu/gg v0.50.11 - github.com/gogpu/gogpu v0.48.4 + github.com/gogpu/gogpu v0.48.5 github.com/gogpu/gpucontext v0.24.0 github.com/gogpu/gputypes v0.5.1 - github.com/gogpu/wgpu v0.30.34 + github.com/gogpu/wgpu v0.30.35 golang.org/x/image v0.44.0 ) diff --git a/go.sum b/go.sum index 8ba4527..abe2c25 100644 --- a/go.sum +++ b/go.sum @@ -6,16 +6,16 @@ github.com/go-webgpu/webgpu v0.5.5 h1:pIrXzRg0LRlNjNmR+ZNo/ERN88YaObzbCY5oYhir5S github.com/go-webgpu/webgpu v0.5.5/go.mod h1:vgIuNTa1UlZ4njCGY6Pmp/0c5T5o2Ml2fQ0znLc7B98= github.com/gogpu/gg v0.50.11 h1:kw1Lh0QIso0HCpvI2j0A/FBT2P/y0PwGF0nhVxdUlgg= github.com/gogpu/gg v0.50.11/go.mod h1:4kNutSanGhCNSKxbUp9izb0BkMCpROdSz0C+5N7oTp0= -github.com/gogpu/gogpu v0.48.4 h1:r023JuRSsNrclQCP7LdBPQD6Ie+basLe+luSOCcgXRo= -github.com/gogpu/gogpu v0.48.4/go.mod h1:UzplGfNBii4OH5NmaRm60BT6p9Vjo6zM+Rdc8cjD8OI= +github.com/gogpu/gogpu v0.48.5 h1:ZcCGHzH5rWj1XTmGrqFqqbmLA0C7sbnY0wYaXU5O6mA= +github.com/gogpu/gogpu v0.48.5/go.mod h1:Vt8YmokZ/j0nK7DOoWEiQk1ksZMVRvNIcw3LMlHXYpY= github.com/gogpu/gpucontext v0.24.0 h1:YQ0FxGqXEO8LQB+6/TOqZOV1fn0mO9UDYR0obSU3R6o= github.com/gogpu/gpucontext v0.24.0/go.mod h1:OrT137boh5yPhqBEhF4UQKIOu1Jq74SLQzYa/m6JbNo= github.com/gogpu/gputypes v0.5.1 h1:X38OPcP6umQqqubzzJYL6Nm1tXHSNQj6TRSAoxdAJmg= github.com/gogpu/gputypes v0.5.1/go.mod h1:cnXrDMwTpWTvJLW1Vreop3PcT6a2YP/i3s91rPaOavw= github.com/gogpu/naga v0.18.0 h1:2y83HUcAnlwEZMuHOiYTMdNYM9J8rev40gkI4zJ96Uk= github.com/gogpu/naga v0.18.0/go.mod h1:15sQaHKkbqXcwTN+hHYGLsA0WBBnkmYzne/eF5p5WEg= -github.com/gogpu/wgpu v0.30.34 h1:BoHpg+onQ1h8Ujnb+nrj8XCmxVSrKzJdhTxxgf2M56Q= -github.com/gogpu/wgpu v0.30.34/go.mod h1:fi3zxQmJnjPRMqqA5wl2kta2Z6kxdf8HQxEORNT1Lt4= +github.com/gogpu/wgpu v0.30.35 h1:qUARm/jiRDYlxyd+UVLBt1JHXdt4936p8VrOOZacMy0= +github.com/gogpu/wgpu v0.30.35/go.mod h1:fi3zxQmJnjPRMqqA5wl2kta2Z6kxdf8HQxEORNT1Lt4= golang.org/x/image v0.44.0 h1:+tDekMZED9+LrtB3G5xzRggpVh9CARjZqROla3R3R+I= golang.org/x/image v0.44.0/go.mod h1:V8K3KE9KKKE+pLpQDOeN18w9oacNSvy1tDOirTu4xtY= golang.org/x/sys v0.47.0 h1:o7XGOvZQCADBQQ4Y7VNq2dRWQR7JmOUW8Kxx4ZsNgWs=