# ANN: JuMP v1.15 is released

**URL:** https://discourse.julialang.org/t/ann-jump-v1-15-is-released/103875
**Category:** Optimization (Mathematical)
**Tags:** jump
**Created:** [September 15, 2023, 3:10am UTC](https://discourse.julialang.org/t/ann-jump-v1-15-is-released/103875 "2023-09-15T03:10:53Z")
**Posts on this page:** 2
**Page:** 1

<div class="post-metadata">

### Author: ![odow](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/odow/32/28685_2.png) [@odow](https://discourse.julialang.org/u/odow)
#### Post date: [September 15, 2023, 3:10am UTC](https://discourse.julialang.org/t/ann-jump-v1-15-is-released/103875/1 "2023-09-15T03:10:53Z")

</div>

Dear all,

I am very pleased to [announce the release of JuMP v1.15](https://jump.dev/blog/1.15.0-release/).

This is a very large minor release because it introduces an entirely new API for nonlinear programs.

To summarize, there is now a first-class nonlinear expression type, `NonlinearExpr`, and you can create nonlinear expressions directly in the REPL, or in JuMP macros:

```julia
julia> using JuMP

julia> model = Model();

julia> @variable(model, x);

julia> expr = x^2.3 + sin(x)
(x ^ 2.3) + sin(x)

julia> typeof(expr)
NonlinearExpr (alias for GenericNonlinearExpr{GenericVariableRef{Float64}})

julia> expr.head
:+

julia> expr.args
2-element Vector{Any}:
 x ^ 2.3
 sin(x)

julia> @objective(model, Min, x^2.3 + sin(x))
(x ^ 2.3) + sin(x)

```

For next steps, you may want to:

- Read (and share) our blog post announcing the release: [JuMP 1.15.0 is released | JuMP](https://jump.dev/blog/1.15.0-release/)
- Check out the documentation for the new features: [Nonlinear Modeling · JuMP](https://jump.dev/JuMP.jl/stable/manual/nonlinear/)
- View the release notes to see what went into this release: [Release notes · JuMP](https://jump.dev/JuMP.jl/stable/release_notes)

If you have any questions or feedback on the new design, please let me know, either by reply to this thread, or by opening a GitHub issue.

Happy JuMPing,

Oscar

p.s., It is my hope that this release finally brings an end to the number of questions I’ve answered with “yes, this doesn’t work in JuMP right now, but we’re working on fixing it.” [[1](https://discourse.julialang.org/t/nonlinear-expressions-may-contain-only-scalar/80721/2)] [[2](https://discourse.julialang.org/t/jump-hessian-sparcity-issues-registered-functions-hessians-atan2-issue/76342/5)] [[3](https://discourse.julialang.org/t/how-to-get-the-value-of-an-nlconstraint-in-jump/84248)] [[4](https://discourse.julialang.org/t/error-handling-in-quote-block-using-jump/79362/6)] [[5](https://discourse.julialang.org/t/is-there-a-symbolics-jl-interface-to-ipopt-or-similar/100149/18)] [[6](https://discourse.julialang.org/t/complementarity-jl-whit-path/103081/5)] [[7](https://discourse.julialang.org/t/cannot-multiply-a-quadratic-expression-by-an-affine-expression/101240/4)] [[8](https://discourse.julialang.org/t/modelling-arbitrary-non-linear-expression-returned-by-a-function-in-jump/99419/2)] [[9](https://discourse.julialang.org/t/adding-nl-expressions-to-an-affexpr-type-vector/99279/5)]

---

<div class="post-metadata">

### Author: ![odow](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/odow/32/28685_2.png) [@odow](https://discourse.julialang.org/u/odow)
#### Post date: [September 15, 2023, 3:11am UTC](https://discourse.julialang.org/t/ann-jump-v1-15-is-released/103875/2 "2023-09-15T03:11:10Z")

</div>


