[package]
name = "planar_geo"
version = "0.1.2"
edition = "2024"
description = "A Rust library for 2D geometry: geometric objects, algorithms and visualization"
readme = "README.md"
license  = "MIT OR Apache-2.0"
repository = "https://github.com/StefanMathis/planar_geo.git"

[dependencies]
cairo-rs = {version = "0.21", optional = true}
bounding_box = { version = "0.3", features = ["approx"]}
rayon = "1.5"
num = "0.4.0"
ordered-float = "3.6.0"
serde = { version = "1", features = ["derive"], optional = true }
deserialize_untagged_verbose_error = { version = "0.1.5", optional = true }
geometry-predicates = "0.3"
approx = { package = "approxim", version = "0.6", features = ["array_impl"] }
compare_variables = { version = "0.1.0" }

[features]
default = []
serde = ["dep:serde", "dep:deserialize_untagged_verbose_error"]
visualize = ["dep:cairo-rs"]

[dev-dependencies]
cairo_viewport = { version = "0.2.1", features = ["image-compare"] }
planar_geo = { path = ".", features = ["serde", "visualize"] }

[package.metadata.docs.rs]
features = ["serde", "visualize"]
rustdoc-args = ["--cfg", "docsrs"]