Karim Jerbi
d0d946a568
feat(xref): detach, unload, reload, bind, overlay, and path operations
...
Detach, unload, reload preserving host layer overrides, bind, overlay, and saved-path editing, with per-tab session state and a read-only web list.
2026-09-15 23:56:31 +01:00
Karim Jerbi
42219a4b8c
feat(xref): reference list with stale and orphaned status detection
...
Reference list rows showing stale and orphaned states with handle-based identity.
2026-09-15 23:56:31 +01:00
Karim Jerbi
37e2b50e1c
feat(xref): XREF command options and guided XATTACH
...
XREF command with status, reload, unload, detach, path, pathtype, bind, overlay, and attach options, plus guided XATTACH with unique naming and placement prompts.
2026-09-15 23:56:31 +01:00
Hakan Seven
acde01cfc3
Merge pull request #1289 from ramox81/fix/coincident-standard-command
...
# Conflicts:
# src/command.rs
# src/scene/mod.rs
# src/scene/parametric_solve.rs
2026-09-15 15:08:35 +03:00
ramox81
ba2b371269
Complete Coincident command behavior
2026-09-15 14:00:26 +03:00
Hakan Seven
c9eeb6f66e
Merge pull request #1284 from ramox81/codex/autoconstrain-parity
...
# Conflicts:
# Cargo.lock
# Cargo.toml
# src/app/view/mod.rs
# src/ui/overlay.rs
2026-09-15 12:38:41 +03:00
Hakan Seven
dfe8b77cca
Merge PR #1280 and expose constraint value visibility
2026-09-15 11:55:05 +03:00
Hakan Seven
adc8555394
Merge PR #1279 and complete parametric UI actions
2026-09-15 11:48:35 +03:00
ramox81
66be530655
Complete automatic constraint behavior
2026-09-15 11:47:28 +03:00
Hakan Seven
d738ebfcc6
Standardize parametric constraints and interoperability
2026-09-15 03:19:52 +03:00
Felix Riestra and Claude Sonnet 5
0f739b459d
Add bounding-box object alignment (ALIGNLEFT/TOP/etc.), ported from Mac2CAM
...
Six one-shot alignment commands for the current selection —
ALIGNLEFT/ALIGNHCENTER/ALIGNRIGHT/ALIGNTOP/ALIGNVCENTER/ALIGNBOTTOM —
distinct from the existing point-picking ALIGN/ALIGN3D command: each
nudges every selected object (or complete group, via new
Scene::selected_object_units) so its bounding-box edge/center lines up
with the extreme edge/center already present in the selection, closer
to a word processor's "align objects" than AutoCAD's 3-point ALIGN.
Wired as plain one-click Tool entries in the Modify extension panel,
next to the existing ALIGN entry, matching that panel's flat-list
convention (no point prompts, so no dropdown submenu needed).
Co-Authored-By: Claude Sonnet 5 <[email protected] >
2026-09-15 01:08:41 +02:00
ramox81
a35c996f9f
fix(annotate): complete table and data workflows
2026-09-14 14:54:55 +03:00
ramox81
6505b27818
fix(annotate): align annotation ribbon workflows
2026-09-14 11:55:08 +03:00
Hakan Seven
7b4cef41f7
Complete parametric ribbon and constraint tools
2026-09-14 01:05:39 +03:00
Panos and Claude Opus 5
5f161bb037
Show the exact build in About, Copy Info, REPORT and --version
...
Builds from main reported only the release version (2026.36) even when
HEAD was hundreds of commits past the tag. build.rs now also emits
OCS_TAG_DISTANCE, OCS_COMMIT_DATE, OCS_BUILD_METADATA and
OCS_FULL_VERSION: a clean checkout of the release tag stays "2026.36",
anything else becomes "2026.36+194.gef189d77", with ".dirty" appended
for uncommitted changes and only the hash when no tag can be counted
from (shallow clone, tarball). OCS_APP_VERSION is unchanged so the
update check, donation gate, User-Agents and window title keep working.
The About dialog gains Build / Commit date / Profile cards, Copy Info,
the REPORT issue template and recovery reports carry the full version,
and `-V`/`--version` print it instead of Cargo's 2026.36.0. Release
workflows check out full history so release binaries see the tag.
Also fixes the build being marked dirty when there is no repository:
diff-index exits 128 there, not 1.
Co-Authored-By: Claude Opus 5 <[email protected] >
2026-09-12 16:19:40 +03:00
Karim Jerbi
58c9fcb748
perf(bench): introduce standardized 25-metric CAD and UI benchmark suite
...
- Add comprehensive performance benchmark harness in benches/performance_benchmarks.rs
configured with harness = false in Cargo.toml (runs via cargo bench in --release,
isolated from cargo test).
- Benchmark coverage across 25 distinct CAD & UI operations:
* Entity Ingestion, GPU Wire Partitioning, Analytical & Wide/Tapered Arc Tessellation
* 100x Zoom Navigation, Spatial InteractionIndex, Multi-mode Hit-Testing, OSnap Tracking
* 2D Parametric Dogleg Constraint Solving, DXF Import/Export Throughput
* UI Ribbon View Construction, Viewport Grid Projection, Grid Cache Evaluation
* Themed SVG Icon Lookup Caching, Cold Extents AABB Calculation
* Batch Entity Transformation, Draworder Depth Map Full/Patch, Delta-Undo Recording
- Expose internal calculation hooks with #[doc(hidden)] pub to prevent API leakage.
- Remove 644 lines of legacy, scattered ad-hoc #[test] #[ignore] benchmarks across src/.
- Add developer and regression documentation in benches/README.md.
2026-09-12 13:46:01 +01:00
Hakan Seven
cf33455e93
Move parametric tools to their own ribbon tab
2026-09-11 20:58:37 +03:00
Hakan Seven
db684019d9
Merge pull request #1207 from Ramox81/codex/parity-setbylayer-settings-20260911
2026-09-11 16:09:55 +03:00
Hakan Seven
f0676d35dc
Merge pull request #1197 from Ramox81/codex/parity-measure-20260911
2026-09-11 15:44:27 +03:00
ramox81
33429ffa4c
Merge current main with measured curve markers
2026-09-11 15:23:10 +03:00
ramox81
f076db6d53
Merge current main with division marker support
2026-09-11 15:23:05 +03:00
Hakan Seven
753fa17b68
Merge pull request #1184 from Ramox81/codex/hatchedit-command-parity
2026-09-11 15:14:43 +03:00
ramox81
65161e82db
Add independent layer property settings during selection
2026-09-11 15:10:51 +03:00
Hakan Seven
7d28cc5256
Merge pull request #1188 from Ramox81/pedit-enhancements
2026-09-11 14:32:32 +03:00
Hakan Seven
e39906b8b7
Merge latest pull request #1187 from ramox81/codex/complete-splinedit-options
...
# Conflicts:
# src/modules/draw/modify/splinedit.rs
2026-09-11 13:23:27 +03:00
Hakan Seven
da34032ffc
Harden spline editing and source joins
2026-09-11 13:23:00 +03:00
Hakan Seven
e11796af29
Merge pull request #1199 from ramox81/codex/join-source-workflow
2026-09-11 13:02:17 +03:00
Hakan Seven
67768a3eca
Merge pull request #1187 from ramox81/codex/complete-splinedit-options
2026-09-11 12:52:49 +03:00
ramox81
67f374c853
Apply and persist hatch origin command choices
2026-09-11 12:52:30 +03:00
ramox81
deb9129e91
Convert splines to bounded straight-segment polylines
2026-09-11 12:52:07 +03:00
Hakan Seven
08b184e314
Merge pull request #1186 from ramox81/codex/complete-reverse-command
...
# Conflicts:
# src/entities/helix.rs
2026-09-11 12:51:29 +03:00
Hakan Seven
0d45d2f04c
Merge pull request #1194 from ramox81/codex/complete-spline-fit-options
2026-09-11 12:42:56 +03:00
Hakan Seven
a473d9c291
Merge pull request #1189 from ramox81/codex/complete-draworder-relative
2026-09-11 12:31:18 +03:00
Hakan Seven
50c5e18c75
Merge pull request #1181 from ramox81/codex/complete-region-support
...
# Conflicts:
# src/app/commands/draw.rs
2026-09-11 12:26:53 +03:00
ramox81
e84d491f6a
Preserve region coplanarity rejection diagnostics
2026-09-11 12:18:50 +03:00
Hakan Seven
d99a6d5bdd
Merge PR #1181 : Create regions from closed profiles and connected edges
2026-09-11 12:18:43 +03:00
Hakan Seven
32952e3eda
Merge PR #1179 : Add tolerant OVERKILL cleanup options
...
# Conflicts:
# src/app/commands/styleprops.rs
2026-09-11 12:16:24 +03:00
Hakan Seven
bea874c97f
Merge PR #1178 : Apply SETBYLAYER choices and property masks
...
# Conflicts:
# src/app/commands/styleprops.rs
2026-09-11 12:09:29 +03:00
Hakan Seven
bfadf1c04e
Merge PR #1177 : Copy picked nested objects with placement and array options
2026-09-11 11:55:43 +03:00
ramox81
2486adbb67
Create regions on the shared plane of selected open curves
2026-09-11 11:47:41 +03:00
Hakan Seven
7886ffb973
Merge pull request #1177 from ramox81/codex/ncopy-command-parity
...
Copy picked nested objects with placement and array options
# Conflicts:
# src/app/commands/blocks.rs
2026-09-11 11:41:52 +03:00
ramox81
5d0ba9cef2
Add persistent nested-copy symbol settings and transactional imports
2026-09-11 11:39:21 +03:00
ramox81
be3a2e0d69
Resolve block extension dictionaries through ownership
2026-09-11 11:32:38 +03:00
ramox81
189424e3d4
Remove arcs covered by selected circles when overlap cleanup is enabled
2026-09-11 11:27:59 +03:00
ramox81
3ab2dcf36c
Persist draw-order table ownership and reserved handles
2026-09-11 11:21:59 +03:00
ramox81
8f00e00c5a
Clean up duplicate and overlapping circular arcs
2026-09-11 11:10:56 +03:00
ramox81
49d1125530
Adopt and restore template transparency for new matching objects
2026-09-11 11:10:29 +03:00
ramox81
b24feab498
Apply and edit drawing current transparency
2026-09-11 11:06:52 +03:00
ramox81
a04f13f84a
Initialize spline editing from a single unlocked preselected spline
2026-09-11 10:55:23 +03:00
ramox81
8e5f0955d2
Convert fitted polylines through the spline Object option
2026-09-11 10:43:42 +03:00