Bring 5.2.4.0 up to date with main #7

Merged
Yusarina merged 16 commits from main into 5.2.4.0 2026-08-06 15:53:34 +00:00
Owner
No description provided.
Restore armature pose_position in SavedData regardless of mode change
All checks were successful
Blender Tests / blender (https://download.blender.org/release/Blender5.1/, 5.1) (push) Successful in 1m35s
Blender Tests / blender (https://download.blender.org/release/Blender5.2/, 5.2) (push) Successful in 1m41s
Static Tests / static (push) Successful in 19s
Blender Tests / blender (true, alpha, 5.3) (push) Successful in 1m31s
edac15caf0
Removing every key left shape_keys None, so the key_blocks check crashed.
Both morph paths indexed get_meshes_objects()[0], so body/face/hair-split
models lost every morph outside mesh 0 the extra meshes came out with no
shape key datablock at all. The native path now sets up each mesh via
_begin_morph_bake/_end_morph_bake and inverts the loop nesting so one pose
and one depsgraph evaluation feed all meshes per morph.
The loop just above it removes every collection, so if bone_collections:
was always false and the Bones collection was never created. Redundant
as well as dead with no collections nothing gates bone visibility and
Fix Model already force-unhides every pose and edit bone.
bone_collections_backup was populated and never read, and the EDIT-mode
round trip existed only to fill it. The collections.remove() loop it wrapped
is kept, along with the OBJECT-mode switch the removal needs.
Scale Fix Model progress bar total by the number of meshes
All checks were successful
Blender Tests / blender (https://download.blender.org/release/Blender5.1/, 5.1) (push) Successful in 1m39s
Blender Tests / blender (https://download.blender.org/release/Blender5.2/, 5.2) (push) Successful in 1m45s
Static Tests / static (push) Successful in 20s
Blender Tests / blender (true, alpha, 5.3) (push) Successful in 1m34s
56c1da6e9b
The reweight loops run once per mesh but were counted once, so the bar
overran on any model not joined into a single mesh.
The left_* alias lists carried the right-side short forms (rshoulder, rarm,
relbow, rwrist, rleg, rknee, rankle), overwriting the right_* reverse lookup.
It set use_connect on every parented bone, which snaps each head to the parent's
tail and dragged shoulders, legs and fingers inward. Now defers to
fix_bone_orientations, matching Fix Model's Connect Bones option.
Name test was casesensitive and misparenthesised, so 'Rigidbodies' survived.
Queuing a match and its matching children double deleted the subtree and raised
ReferenceError children are now only scanned when the parent isn't a match.
Also moves the idname from my_plugin.* to cats_manual.*.
The tally was keyed on the ShapeKeyPoint struct, giving every key its own bucket,
so the majority vote always returned the first non-basis key. Now keyed on the
coordinate. Drops a per-vertex debug print and guards basis-only meshes.
Fix Merge Armatures crashing on nested rigidbodies
All checks were successful
Blender Tests / blender (https://download.blender.org/release/Blender5.2/, 5.2) (push) Successful in 1m42s
Blender Tests / blender (https://download.blender.org/release/Blender5.1/, 5.1) (push) Successful in 1m53s
Static Tests / static (push) Successful in 21s
Blender Tests / blender (true, alpha, 5.3) (push) Successful in 1m38s
d293a40659
Queuing a matching child and its matching children double deleted the subtree and
raised ReferenceError children are now only scanned when the parent isn't a match.
Static guards on the bone_names alias table (collisions, duplicates, side
markers, left/right mirroring) and Blender tests for Convert Bones To Valve,
Connect Bones, Remove Rigidbodies and Joints, and Repair Broken Shapekeys.
Verified against the pre-fix tree 17 static and 11 of 16 Blender tests fail.
It signed off with t('RemoveConstraints.success'), so a successful run said
Removed all bone constraints. Now reports its own count, matching the plain
English the rest of this operator already uses. Adds regression tests and a
report_lines() helper that reads reports back via redirect_stdout.
It was the only raw read left; a dynamic enum can return an integer index, which
would be stored as a parent name no bone can match, leaving the merge rig's roots
unattached. Also skips the empty-enum placeholder, which is truthy and so passed
the old bare check. Adds regression tests for both.
Delete dead code and stale scaffolding from the armature tools
Some checks failed
Blender Tests / blender (true, alpha, 5.3) (push) Has been cancelled
Static Tests / static (push) Has been cancelled
Blender Tests / blender (https://download.blender.org/release/Blender5.1/, 5.1) (push) Has been cancelled
Blender Tests / blender (https://download.blender.org/release/Blender5.2/, 5.2) (push) Has been cancelled
f936b7e482
TransformValidator's unified-validation refactor was never wired up, leaving
duplicates of is_transform_clean and validate_merge_armature_transforms
attach_mesh_to_armature was a second copy of AttachMesh.execute. Also drops
detect_bones_to_merge, mix_vertex_groups, the always-False mesh_only and unread
mesh_name params, a POSITION_TOLERANCE literal, a per-mesh loop around a
scene-global call, the 2.8-era Object.layers checks, and three doubled EDIT
switches. Moves Scene.pose_to_shapekey_name from a class body into register().
Version Bump
All checks were successful
Blender Tests / blender (https://download.blender.org/release/Blender5.1/, 5.1) (push) Successful in 2m9s
Blender Tests / blender (https://download.blender.org/release/Blender5.2/, 5.2) (push) Successful in 2m12s
Package Add-on / package (push) Successful in 16s
Static Tests / static (push) Successful in 22s
Blender Tests / blender (true, alpha, 5.3) (push) Successful in 2m5s
Blender Tests / blender (https://download.blender.org/release/Blender5.2/, 5.2) (pull_request) Successful in 1m58s
Blender Tests / blender (https://download.blender.org/release/Blender5.1/, 5.1) (pull_request) Successful in 2m15s
Static Tests / static (pull_request) Successful in 23s
Blender Tests / blender (true, alpha, 5.3) (pull_request) Successful in 2m1s
0129c11bf6
Yusarina merged commit 5e54bb568d into 5.2.4.0 2026-08-06 15:53:34 +00:00
Sign in to join this conversation.
No description provided.