I know I already made a comment advocating not breaking semver, but I wanted to directly address this point and way of framing things. The “cost” talked about here exists whether we call the new version of Julia “1.3” or “2.0”. Either way, both “hard-scope” Julia and “global-scope” Julia exist in the wild, and users and developers have to reckon with that–whether they’re aware of the difference or not. The only difference is that calling it “2.0” is explicit in communicating that a difference exists while calling it “1.3” hides that cost.
I think that the argument is that this change is so unlikely to affect existing code that hiding the “cost” is the course with the highest overall utility. I disagree and think that any positive marginal utility from not forcing users to reckon with that cost is more than offset by the cost/confusion/dishonesty (imo) of having intentional breaking changes within a major release number.