Armature is distorted in 2.80 but not 2.79

I found this page https://blender.stackexchange.com/questions/65849/shoulder-movement-following-the-arm which has an animation showing how the shoulder should lift has the arm lifts over the head. This is the purpose of the drivers on the shoulder. Somone has a suggestion of how to solve it, but other commenters say it creates a dependency cycle. Another commenter says there is no clean way to automate shoulder rotation in Blender.

How do people animate the shoulder? Do they manually lift the shoulder any time the upper arm rotates above the head? Do people simply leave the shoulder as it is?

On a past thread I talked about the conflicts between drivers and IK What algorithm will solve IK? . Someone said that a driver does not introduce a dependency per say, even when a child object property is used as a variable for a parent. In my rig, the upper arm inherits location and scale from the shoulder, and the shoulder depends on the upper arm’s local rotation. I’d expect this to mean the upper arm’s rotation will affect the shoulder’s rotation which will affect the upper arm’s location and scale, so the upper arm’s inherited location and scale depend on its own local rotation. I wouldn’t expect that to be a dependency cycle since no individual property of the bone depends on itself (even though some properties of the upper arm bone depend on other properties of itself). Maybe my expectations would only apply if it were only a FK system.

In any case, could anyone tell me how they handle the shoulder rotation while the arm lifts over the head, or does anyone have an suggestions as to how I could handle it?