Skip to content

2026.41

Latest

Choose a tag to compare

@github-actions github-actions released this 11 Oct 17:33
· 295 commits to main since this release

OpenCADStudio - Release v2026.41 (2026-10-11)

Summary: Major feature milestone introducing the Sheet Set Manager (SHEETSET) with .dst project support; the automated entity COUNT command and palette with dynamic table generation; network-integrated associative swept surfaces (SWEEP); complete right-to-left (RTL) text layout in MTEXT; independent dimension style per-end arrowheads (DIMBLK1/DIMBLK2); table cell style overrides; GPU hardware selection options (Metal/OpenGL); MCP differential capture payload optimizations; and extensive drafting, plotting, spatial indexing, and memory fixes.


🌟 Notable Release Notes

  • Sheet Set Manager (SHEETSET): Introduced a complete Sheet Set Manager palette, .dst project creation wizard, cross-drawing sheet fields, drawing lock-file coordination, and background sheet opening. (Contributed by @ramox81 and @HakanSeven12)
  • Automated Entity Counting (COUNT): Added the COUNT feature and palette, providing visual block counting across model space or designated polygon boundaries, collision/overlap diagnostics, and live evaluated count table insertion. (Contributed by @ramox81 and @HakanSeven12)
  • Associative Swept Surfaces & 3D Modeling: Added network-tracked associative swept surfaces (SWEEP) with path-relative base points, miter corner history, B-rep MASSPROP, and curved offset/fillets in the geometry kernel. (Contributed by @ramox81 and @HakanSeven12)
  • Advanced Typography & Table Overrides: Fully compliant right-to-left (RTL) text rendering in MTEXT, exact evaluation bounding boxes for shaped/rotated text fields, and in-place cell style overrides with automated formula recomputation. (Contributed by @ramox81)
  • Dimension Style Independent Arrowheads (DIMBLK1/DIMBLK2): Supported independent arrowhead styles for start and end leaders with real-time preview rendering and style synchronization. (Contributed by @KarimJerbi)
  • GPU Platform Routing & Hardware Info: Added hardware-aware GPU backend routing (Metal on macOS, automated OpenGL fallback for legacy hardware), hardware information in About dialog, and dedicated Graphics options tab. (Contributed by @KarimJerbi)

🚀 New Features

Management & Palettes

  • Sheet Set Manager Palette & Wizard: Added Sheet Set Manager palette, .dst file reload, import sheet statuses, view categories, and Place-on-Sheet actions. (Contributed by @ramox81)
  • Count Palette & Table Generator: Added interactive block counting, invalid area inspection dialog, and live count table generation with field references. (Contributed by @ramox81)
  • Quick Searchable Layer Palette: Added fast search and filter command for drawing layers. (Contributed by @gianlucafiore)

3D Modeling & Surfaces

  • Associative Sweep: Supported surface sweep associativity within the drawing dependency network, honoring custom path alignment and miter corners. (Contributed by @ramox81)
  • B-rep Mass Properties & Kernel Operations: Added MASSPROP mass evaluation from solid B-rep, curved OFFSET/FILLET, and sphere-cylinder boolean operations. (Contributed by @HakanSeven12)
  • UCS Face Alignment: Aligned UCS Face origin and axes to the nearest vertex and edge with solid face raycasting. (Contributed by @yztink)

Text, Fields & Tables

  • RTL Text Layout: Added right-to-left word layout, leading space preservation, and mixed-font character advances. (Contributed by @ramox81)
  • Table Cell Overrides & Formulas: Supported per-cell style overrides from either layout and automatic formula recomputation after editing. (Contributed by @ramox81)
  • Rotated & Shaped Text Field Boxes: Accurate evaluation boxes, per-field shading backgrounds, and UPDATEFIELD traversal reaching nested blocks. (Contributed by @ramox81)

UI & Graphics

  • GPU Platform Backends & Hardware Info: Refined GPU platform selection (Metal on macOS, OpenGL fallback for legacy hardware), hardware info in About dialog, and dedicated Graphics options tab. (Contributed by @KarimJerbi)
  • ViewCube UCS Cache: Cached UCS picker names behind an epoch to accelerate ViewCube orientation refreshes. (Contributed by @KarimJerbi)
  • Global Interface Scaling: Added window-wide interface scale setting in Options. (Contributed by @HakanSeven12)
  • Pickbox-Only Cursor: Cursor displays pickbox alone when drafting commands prompt for object selection. (Contributed by @HakanSeven12)
  • Commandline History Retention: Set fade time = 0 to keep command-line history permanently visible without fading. (Contributed by @yztink)
  • Touchpad Pan: Optional touchpad panning for wheel-scrolling touchpads. (Contributed by @HakanSeven12)
  • Expanded Ribbon Layer Display: Ribbon layer dropdown displays full-length layer names. (Contributed by @HakanSeven12)

Automation, MCP & Architecture

  • MCP Unchanged Diff Capture Payloads: Omitted image base64 payloads on visual diff captures when the canvas has no dirty visual changes. (Contributed by @KarimJerbi)
  • Spatial Index & Navigation Benchmarks: Added formal QuadTree spatial index construction and viewport navigation benchmarks. (Contributed by @KarimJerbi)
  • Selection State Refactor: Decomposed monolithic 31-field SelectionState into five modular sub-structs. (Contributed by @KarimJerbi)
  • MCP Window & Crossing Selection: Added window and crossing box selection tools in MCP server. (Contributed by @HakanSeven12)
  • Lao Localization: Added full Lao (lo-LA) language translation and web font rendering. (Contributed by @bounkirdni-2025)

🐛 Bug Fixes

Dimensions & Annotations

  • Dimension Style Per-End Arrowheads: Stopped dimblk1 pick from clobbering dimblk2 and ensured preview dialog respects independent per-end arrowheads (50e20a91, 29392de2). (Contributed by @KarimJerbi)
  • DimStyle Text Style Sync: Propagated text style renames automatically into DimStyle DIMTXSTY. (Contributed by @KarimJerbi)
  • MLeader Attachment: Fixed text left of multileader landing to correctly attach via its right edge. (Contributed by @HakanSeven12)

Layers, Tables & XREFs

  • Layer Message & State Integrity: Keyed layer messages, renames, and picker states by immutable layer names instead of row indices. (Contributed by @KarimJerbi)
  • Layer Transparency Undo: Added missing undo steps for layer transparency changes. (Contributed by @KarimJerbi)
  • Shared Linetypes Memory Optimization: Shared linetype table rows via Arc instead of per-row cloning. (Contributed by @KarimJerbi)
  • Table and Multiline Buffer Reload: Reloaded Table and MLine rendering buffers upon structural changes and validated cell text styles. (Contributed by @KarimJerbi)
  • Ribbon TableStyle Pick: Ensured picking table styles in the ribbon writes headers so subsequent inserts inherit the style. (Contributed by @KarimJerbi)
  • XREF Row Identity & Empty State: Carried stable row identity in XREF messages, themed empty states, and clarified silent annotative scale toggles. (Contributed by @KarimJerbi)
  • Hidden Layer Interaction: Prevented accidental cursor selection and interaction on hidden layers. (Contributed by @gianlucafiore)

Rendering, Snapping & Drafting

  • Behind-Eye Axis Guard: Protected draw_axes against divide-by-zero behind-the-eye camera projection crashes. (Contributed by @KarimJerbi)
  • Spatial Index Normalization: Normalized inverted axis-aligned bounding boxes (AABB) in the QuadTree spatial index. (Contributed by @KarimJerbi)
  • Idle Redraw Suppression: Eliminated unnecessary redraw loops when drawing documents lack underlay geometry. (Contributed by @KarimJerbi)
  • Viewport Statusbar Synchronization: Synchronized scale pill number, label, and badge strictly to the active viewport. (Contributed by @KarimJerbi)
  • Properties Palette Asymmetric Scale: Scoped asymmetric scale opt-outs per document tab. (Contributed by @KarimJerbi)
  • Circle & Arc Patterned Linetypes: Correctly preserved patterned linetypes on circles and arc segments. (Contributed by @gianlucafiore)
  • CTB Layout Block Colors: Preserved CTB block ACI colors and layout plot settings during plotting. (Contributed by @gianlucafiore)
  • Command Previews Over Wipeouts: Ensured active command previews draw above background wipeout masks. (Contributed by @gianlucafiore)
  • Perpendicular Tracking Distance: Preserved perpendicular polar tracking after entering typed direct distance values. (Contributed by @gianlucafiore)
  • Paste into Block Editor: Fixed pasted entities to land directly inside the active Block Editor context. (Contributed by @gianlucafiore)
  • Feet-Inch Dynamic Input & Stretch: Fixed feet/inch notation parsing in dynamic input and preserved preselected entities in STRETCH. (Contributed by @HakanSeven12)
  • Script Blank Line Repeat: Blank lines in script files now repeat the last command when outside an active command prompt. (Contributed by @yztink)
  • ZOOMFACTOR Maximum: Allowed SETVAR ZOOMFACTOR to accept values up to 500. (Contributed by @F4brizi)
  • Purge Hang on Unnamed Styles: Fixed PURGE ALL hanging on unnamed shape styles. (Contributed by @HakanSeven12)

Platform & Packaging

  • macOS Signed Build Entitlements: Fixed XML entitlement verification in build_macos_signed.sh. (Contributed by @AJ-Gonzalez)
  • macOS CLI Arguments & MCP stdio: Forwarded launcher CLI arguments and preserved MCP stdio streams on macOS. (Contributed by @KarimJerbi)
  • Cross-Platform CI: Added multi-platform testing on Linux, Windows, and macOS with non-blocking lint checks. (Contributed by @KarimJerbi)

👥 Contributors

Huge thanks to all contributors to v2026.41:

  • Hakan Seven (@HakanSeven12) — Upstream kernel/codec syncs, B-rep mass properties, interface scaling, cursor & drawing fixes.
  • ramox81 (@ramox81) — Sheet Set Manager, Count feature & tables, associative sweep, RTL text layout.
  • Karim Jerbi (@KarimJerbi) — DimStyle per-end arrowheads (dimblk1/dimblk2), GPU backends & options, ViewCube UCS cache, MCP diff captures, layer state integrity & memory sharing, spatial index normalization, SelectionState modularization, cross-platform CI.
  • gianlucafiore (@gianlucafiore) — Searchable layers, patterned linetypes, CTB plot colors, hidden layer interaction, command previews over wipeouts.
  • yztink (@yztink) — UCS Face alignment, persistent commandline history, script repetition on blank lines.
  • F4brizi (@F4brizi) — ZOOMFACTOR limit extension to 500.
  • AJ-Gonzalez (@AJ-Gonzalez) — macOS packaging & signed build entitlement checks.
  • Bone NI (@bounkirdni-2025) — Lao (lo-LA) translations and localization.