Any breaking changes in NLopt v1.0.0?

NLopt v1.0.0 just got tagged (:tada:). See Release v1.0.0 · JuliaOpt/NLopt.jl · GitHub.

Were there any breaking changes compared to the previous stable version, v0.6.5? This is not transparent from looking at the commit diff. Thanks!

Nothing that will affect most users. The main change is that (1) the MathOptInterface support is now a package extension, so that interface (used e.g. for JuMP) only gets loaded if MathOptInterface is loaded (either directly or by another package). Also (2) the obsolete MathProgBase interface was dropped.

(Realize that even going from 0.6.5 to 0.7.0 would be considered breaking in semver. See also the discussion in Encouraging 1.x versions for registered packages? - #56 by Eben60 — going to 1.x.x makes sense because the main NLopt interface has been stable for a while, and major versions ≥ 1 give strictly more information in semver.)

3 Likes

Ok, thanks for your answer!

I would suggest this to be mentioned in the README (or somewhere like a changeling or news file). If it is already written somewhere apologies I could not find it. (It’s probably inferable from the commit diff, but I think it should be stated in a more easy to parse and summarized manner).