Semver is great, Julia is great, but it very mildly bothers me that any code which does using can’t strictly adhere to semver.
For example:
using A, B
f(x)
Initially A exports f and B doesn’t. A later version of B does export (a different) f. The ambiguity now makes the above code fail. Hence adding a new exported variable should be a major version change.
Of course nobody does this. What’s the official line? Are packages supposed to explicitly import everything they use?