Skip to content

Commit 692d15c

Browse files
authored
Add release post for 0.21.5 (#30)
* Add release post for 0.21.4 * Address comments * Update in anticipation of new releases * Update release * Fix me -> we * JuliaOpt -> jump-dev * Add links to new features
1 parent ec99068 commit 692d15c

File tree

1 file changed

+91
-0
lines changed

1 file changed

+91
-0
lines changed

_posts/2020-09-21-release-0-21-5.md

+91
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,91 @@
1+
---
2+
layout: post
3+
title: "JuMP 0.21.5 is released"
4+
date: 2020-09-21
5+
categories: [releases]
6+
permalink: /blog/0.21.5-release/
7+
---
8+
9+
We are happy to announce the joint release of JuMP 0.21.5 and MathOptInterface
10+
0.9.17! These releases are a mix of new features and some much needed
11+
performance optimizations. This should be a non-breaking release, please let us
12+
know if this isn't the case by [opening a Github issue](https://github.com/jump-dev/JuMP.jl/issues/new/choose)
13+
or joining the [Gitter chat](https://gitter.im/JuliaOpt/JuMP-dev). We did have
14+
a couple of bugs that slipped into a short-lived release, hence the jump (if you
15+
will excuse us) from 0.21.3 to 0.21.5.
16+
17+
On the JuMP side, new features of interest include
18+
* the [`relax_integrality`](https://jump.dev/JuMP.jl/v0.21.5/variables/#JuMP.relax_integrality)
19+
function, which relaxes all integrality constraints in the model. This restores
20+
the `solve(..., relaxation=true)` functionality from JuMP 0.18.
21+
* the [`compute_conflict!`](https://jump.dev/JuMP.jl/v0.21.5/solutions/#JuMP.compute_conflict!)
22+
function, which exposes the ability of some solvers to compute an irreducible
23+
infeasible subsystem of an infeasible model.
24+
25+
We also spent time improving the [time](https://github.com/jump-dev/JuMP.jl/pull/2279)
26+
[it](https://github.com/jump-dev/JuMP.jl/pull/2284)
27+
[takes](https://github.com/jump-dev/JuMP.jl/pull/2285)
28+
[to](https://github.com/jump-dev/JuMP.jl/pull/2286)
29+
[run](https://github.com/jump-dev/JuMP.jl/pull/2303)
30+
[the](https://github.com/jump-dev/JuMP.jl/pull/2306)
31+
[tests](https://github.com/jump-dev/JuMP.jl/pull/2307) and
32+
[fixing bugs](https://github.com/jump-dev/JuMP.jl/pull/2271). We also
33+
[resolved](https://github.com/jump-dev/JuMP.jl/pull/2276) a
34+
[long outstanding issue](https://github.com/jump-dev/JuMP.jl/issues/1174) with
35+
reporting correct line numbers in errors involving macros.
36+
37+
On the MathOptInterface side, we spent the majority of the last few months
38+
working on performance improvements. These changes include: [faster reading and
39+
writing of MathOptFormat files](https://github.com/jump-dev/MathOptInterface.jl/pull/1111);
40+
specialized `copy_to` methods for [Clp](https://github.com/jump-dev/Clp.jl/pull/94)
41+
and [GLPK](https://github.com/jump-dev/GLPK.jl/pull/143), which reduces the time
42+
taken to copy the problem from JuMP into the solver; and numerous minor changes
43+
to the backend of MathOptInterface, such as specialized dictionaries which act
44+
like arrays at first, [but switch to dictionaries when elements are deleted](https://github.com/jump-dev/MathOptInterface.jl/pull/1142).
45+
46+
[@blegat](https://github.com/blegat) also implemented an option that changes the
47+
way to compute which bridges to use in a transformation, opening the way for us
48+
to experiment with different bridging schemes in the future.
49+
50+
On the solver front, the conic solver SCS in particular received a
51+
[lot](https://github.com/jump-dev/SCS.jl/pull/182)
52+
[of](https://github.com/jump-dev/SCS.jl/pull/185)
53+
[attention](https://github.com/jump-dev/SCS.jl/pull/189)
54+
[on](https://github.com/jump-dev/SCS.jl/pull/191)
55+
[improving](https://github.com/jump-dev/SCS.jl/pull/192)
56+
[performance](https://github.com/jump-dev/SCS.jl/pull/196). This led to very
57+
large gains formulating large problems in our benchmarks. In the worst case, a
58+
problem that never finished loading into the solver [now takes 10 seconds](https://github.com/jump-dev/SCS.jl/issues/181).
59+
60+
We also have a number of contributors to thank.
61+
* [@ilancoulon](https://github.com/ilancoulon) took a [deep dive into the bridging system](https://github.com/jump-dev/MathOptInterface.jl/pull/1101)
62+
* [@rtwalker](https://github.com/rtwalker) implemented a new bridge to [convert
63+
between `ZeroOne` and `Integer` constraints](https://github.com/jump-dev/MathOptInterface.jl/pull/1099)
64+
* [@dourouc05](https://github.com/dourouc05) completed a multi-year odyssey
65+
to [expose irreducible infeasible subsystems (IIS)](https://github.com/jump-dev/JuMP.jl/pull/2300).
66+
He also made a number of [other](https://github.com/jump-dev/MathOptInterface.jl/pull/1149)
67+
[fixes](https://github.com/jump-dev/JuMP.jl/pull/2317)
68+
and [documentation](https://github.com/jump-dev/JuMP.jl/pull/2316)
69+
[improvements](https://github.com/jump-dev/JuMP.jl/pull/2264).
70+
* [@yashcodes](https://github.com/yashcodes) made some [helpful](https://github.com/jump-dev/JuMP.jl/pull/2222)
71+
[improvements](https://github.com/jump-dev/JuMP.jl/pull/2203) to JuMP's error
72+
messages and the [documentation in MathOptInterface](https://github.com/jump-dev/MathOptInterface.jl/pull/1050).
73+
* [@egbuck](https://github.com/egbuck) [fixed a bug](https://github.com/jump-dev/MathOptInterface.jl/pull/1124)
74+
in objective support for various file formats.
75+
* [@andrewrosemberg](https://github/com/andrewrosemberg) [fixed a bug](https://github.com/jump-dev/JuMP.jl/pull/2319)
76+
that affected heuristic callbacks.
77+
78+
We also thank testing improvments from [@iainnz](https://github/com/iainnz),
79+
documentation improvements from [@zlatanvasovic](https://github/com/zlatanvasovic),
80+
[@mtanneau](https://github/com/mtanneau) and [@aks1996](https://github/com/aks1996).
81+
82+
For a full list of the merged pull requests and closed issues that contributed
83+
to this release, see the tag notes for [JuMP v0.21.4](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.21.4)
84+
and [v0.21.5](https://github.com/jump-dev/JuMP.jl/releases/tag/v0.21.5),
85+
and [MathOptInterface v0.9.15](https://github.com/jump-dev/MathOptInterface.jl/releases/tag/v0.9.15),
86+
[v0.9.16](https://github.com/jump-dev/MathOptInterface.jl/releases/tag/v0.9.16),
87+
and [v0.9.17](https://github.com/jump-dev/MathOptInterface.jl/releases/tag/v0.9.17).
88+
89+
This release knocks out a number of major items on our
90+
[roadmap](https://jump.dev/JuMP.jl/v0.21.5/roadmap/) for JuMP 1.0. Stay
91+
tuned for more progress!

0 commit comments

Comments
 (0)