[package]
edition = "2024"
name = "good_lp"
version = "1.15.3"
authors = ["Ophir LOJKINE <contact@ophir.dev>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = " Mixed Integer Linear Programming for Rust, with an user-friendly API. This crate allows modeling LP problems, and lets you solve them with various solvers."
documentation = "https://docs.rs/good_lp"
readme = "README.md"
keywords = [
"linear-programming",
"optimization",
"symbolic",
"math",
"solver",
]
categories = [
"mathematics",
"algorithms",
"science",
"api-bindings",
"data-structures",
]
license = "MIT"
repository = "https://github.com/rust-or/good_lp"
[package.metadata.docs.rs]
all-features = false
features = [
"coin_cbc",
"microlp",
"lpsolve",
"highs",
"lp-solvers",
"clarabel",
]
default-target = "x86_64-unknown-linux-gnu"
targets = ["x86_64-unknown-linux-gnu"]
rustdoc-args = [
"--cfg",
"docsrs",
]
[features]
all_default_solvers = [
"coin_cbc",
"microlp",
"lpsolve",
"highs",
"scip",
"scip_bundled",
"lp-solvers",
"clarabel",
]
default = [
"coin_cbc",
"singlethread-cbc",
]
minilp = ["microlp"]
scip = ["russcip"]
scip_bundled = ["russcip?/bundled"]
singlethread-cbc = ["coin_cbc?/singlethread-cbc"]
[lib]
name = "good_lp"
path = "src/lib.rs"
[[test]]
name = "mipgap_set"
path = "tests/mipgap_set.rs"
[[test]]
name = "no_macro_example"
path = "tests/no_macro_example.rs"
[[test]]
name = "readme_example"
path = "tests/readme_example.rs"
[[test]]
name = "resource_allocation_problem"
path = "tests/resource_allocation_problem.rs"
[[test]]
name = "shadow_price"
path = "tests/shadow_price.rs"
[[test]]
name = "solver_scaling"
path = "tests/solver_scaling.rs"
[[test]]
name = "static_solver"
path = "tests/static_solver.rs"
[[test]]
name = "variables"
path = "tests/variables.rs"
[[bench]]
name = "benchmark"
path = "benches/benchmark.rs"
harness = false
[dependencies.clarabel]
version = "0.11.0"
features = []
optional = true
[dependencies.coin_cbc]
version = "0.1.9"
optional = true
default-features = false
[dependencies.cplex-rs]
version = "0.1.9"
optional = true
[dependencies.fnv]
version = "1.0.5"
[dependencies.highs]
version = "2.2.0"
optional = true
[dependencies.lp-solvers]
version = "1.0.0"
features = ["cplex"]
optional = true
[dependencies.lpsolve]
version = "1.0.1"
optional = true
[dependencies.microlp]
version = "0.6.0"
optional = true
[dependencies.russcip]
version = "0.9.1"
optional = true
[dev-dependencies.float_eq]
version = "1.0"
[target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies.criterion]
version = "0.8"
[target.'cfg(target_arch = "wasm32")'.dev-dependencies.wasm-bindgen-test]
version = "0.3.0"