ripopt 0.6.0

A memory-safe interior point optimizer in Rust
Documentation
[workspace]
members = [".", "rmumps"]

[package]
name = "ripopt"
version = "0.6.0"
edition = "2021"
license = "EPL-2.0"
description = "A memory-safe interior point optimizer in Rust"
repository = "https://github.com/jkitchin/ripopt"
exclude = [
    "cho/",
    "cutest_suite/",
    "docs/",
    "hs_suite/",
    "manuscript/",
    "tutorials/",
    "Ripopt.jl/",
    "ipopt-rust.png",
    "*.pdf",
    "*.ipynb",
    "BENCHMARK_REPORT.*",
    "RIPOPT_VS_IPOPT.md",
    "benchmark_report.py",
    ".github/",
]

[lib]
crate-type = ["cdylib", "rlib"]

[dependencies]
log = "0.4"
env_logger = "0.11"
serde = { version = "1", features = ["derive"] }
serde_json = "1"
faer = { version = "0.20", optional = true }
rmumps = { version = "0.1.0", path = "rmumps", optional = true }

[features]
default = ["rmumps", "faer"]
ipopt-native = []
cutest = []
hs = []
rmumps = ["dep:rmumps"]
faer = ["dep:faer"]

[[bin]]
name = "hs_suite"
path = "hs_suite/run_ripopt.rs"
required-features = ["hs"]

[[bin]]
name = "ipopt_native"
path = "hs_suite/run_ipopt_native.rs"
required-features = ["ipopt-native"]

[[bin]]
name = "ripopt"
path = "src/bin/ripopt_ampl.rs"

[[bin]]
name = "cutest_suite"
path = "cutest_suite/run_cutest.rs"
required-features = ["cutest", "ipopt-native"]

[[bin]]
name = "collect_kkt"
path = "cutest_suite/collect_kkt.rs"
required-features = ["cutest"]

[[example]]
name = "compare_large_scale"
required-features = ["ipopt-native"]

[[example]]
name = "benchmark_solvers"

[profile.release]
debug = true

[dev-dependencies]
approx = "0.5"
serde = { version = "1", features = ["derive"] }
serde_json = "1"