I recently noticed that when calling the :Resize(…) function of a BasePart, the CFrame of any connected welds is not updated after the resize.
According to the description of “Resize”,
Changes the size of an object just like using the Studio resize tool.
But this is not the case. In Studio, with JoinSurfaces enabled, the welds are regenerated every time a resize handle is dragged. When using the Resize() function, the welds are not updated at all.
This causes problems with build tools relying on the Resize function:
Above, the weld is keeping the centers of the parts aligned, even though the top part should be offset after resizing the in the direction of the right handle.
In the image above, the part is left floating on top, even though the weld should be broken once the part has been resized and is no longer touching the bottom part.
This behavior has changed in the last year or so, and it causes problems with any building games that rely on the BasePart:Resize(…) function.