jacob-roth / OPF

opf models: based on https://github.com/StructJuMP/StructJuMP.jl/tree/master/examples/PowerGrid
1 stars 1 forks source link

JuMP v0.18 doesn't compile in Julia v1.6+ #18

Open albertkklam opened 2 years ago

albertkklam commented 2 years ago

Currently, we are limited to using Julia v1.5 because JuMP v0.18 does not compile in v1.6+. This has been raised previously in the JuMP repository (see https://github.com/jump-dev/JuMP.jl/issues/2438), and the conclusion from the developer team is that JuMP v0.18 is no longer supported and that all users should upgrade to the latest version of JuMP (see https://github.com/jump-dev/JuMP.jl/issues/2438#issuecomment-769371088).

However, JuMP v0.19 introduces a number of breaking changes (see https://discourse.julialang.org/t/mathoptinterface-and-upcoming-breaking-changes-in-jump-0-19/4874), which more than likely will entail a substantial rework of the JuMP portions of OPF. For consistency, upgrading OPF to use JuMP v0.19+ should also be done in parallel with upgrading KMC to use the same JuMP version, and that likely will also require substantial rework to the JuMP portions there. Additionally, JuMP v0.19+ may make parts, if not all, of JuMPUtils redundant, which should become apparent as the relevant portions are upgraded.

We will get a better understanding of the amount of work required to do this upgrade by first isolating the portions of OPF that use JuMP and comparing these to the breaking changes in JuMP v0.19.

albertkklam commented 2 years ago

Here is a list of some of the changes that need to be applied:

Breaking changes from v0.18 to v0.19 can be found in the Release Notes here: https://jump.dev/JuMP.jl/latest/release_notes/#Version-0.19.0-(February-15,-2019). A recommended workflow can be found here: https://jump.dev/JuMP.jl/stable/manual/solutions/#Recommended-workflow