Just updated to 2017.3.0f3 And my moving platforms are locking my character's rotation

I’m making a 3D platformer. I’ve been using the standard setup for moving platforms. When the character lands on a platform, they become a child object to the platform, and follow it.

This was working perfectly through several Unity versions up until 2017.3.0f3. Now, when the character lands on the platform, their rotation is fixed to whatever it was when they landed. So if you land facing forward, relative to the camera, you’re stuck facing forward until you get off the platform.

Here is my code that finds the camera relative rotation for the player:

    private void ComputeRotation()
    {
        Quaternion inputDirection = Quaternion.Euler(0, (Mathf.Atan2(LSX, LSY) * Mathf.Rad2Deg) + CameraObject.transform.rotation.eulerAngles.y, 0);

        if (new Vector2(LSX, LSY).magnitude > 0f) //If the User pushes the joystick beyond a deadzone
        { //Rotate the character to face the direction the joystick is being held relative to the rotation of the camera

            Direction = (Quaternion.Slerp(Direction, (inputDirection), Time.deltaTime * TurnRate * turnSpeed));

            inputTransformDifference = Mathf.DeltaAngle(inputDirection.eulerAngles.y, transform.rotation.eulerAngles.y);

            inputTransformDifference = Mathf.Abs(inputTransformDifference);
        }

    }

This is where that rotation is applied:

public void Rotate(Quaternion rotation)
{
    rigidbody.rotation = rotation;
}

and to set the parent:

        groundable.SetParent(collision.transform);

(groundable is the name of an interface)

I haven’t the foggiest idea why this might have broken. I don’t think this is gimbal lock, because the platforms aren’t rotating, and when I did have rotating platforms cause gimbal lock, that could be temporarily remedied by re-instantiating the pre-fab, which hasn’t fixed this issue.

Thanks for any thoughts you have

UPDATE: I rolled back to 5.6.5f1, and it un-broke, so I know it’s the version that broke it.

Looks like Unity’s new version of PhysX disables local-space physics. I’m told it’s much more performant. I’m happy that physics is getting a little leaner though it will mean some work is necessary to re-implement moving platforms