[package] name = "walky" version = "1.1.0" edition = "2021" description = "A TSP solver written in Rust" homepage = "https://github.com/lquenti/walky" repository = "https://github.com/lquenti/walky" license = "MIT" authors = ["Lars Quentin ", "Johann Carl Meyer "] readme = "./README.md" exclude = [ "benchmarks/*", "utils/*", ] [dependencies] clap = {version = "4.2.5", features = ["derive"]} # for cli arg parsing quick-xml = {version = "0.28.2", features = ["serialize"]} # for xml-parsing serde = {version = "1.0.160", features = ["derive"]} # for xml-parsing delegate = "0.9.0" # for easy wrapper implementations rayon = "1.7.0" # for parallel iterators + scoped threads ordered-float = {version = "3.7.0", features = ["serde"]} # for Total Ordering on floats priority-queue = "1.3.1" # for prims algorithm nalgebra = {version = "0.32", features = ["rayon"]} # for fast matrices lazy_static = "1.4.0" # for non-compile time global variables rustc-hash = "1.1.0" # for cryptographically insecure, FAST hashing mpi = {version = "0.6", optional = true, features = ["user-operations", "derive"]} # for MPI crate feature rand = "0.8" # You wouldn't guess it # Explaination for scoped threads: # in our case, it reduces the need to copy everything in order to provide a sufficient lifetime [dev-dependencies] approx = "0.5.1" # for assertions with float values quickcheck = "1.0.3" # for property based testing quickcheck_macros = "1.0.0" # for property based testing [profile.release] debug = true # enable profiling in release builds opt-level = 3 # -O3 lto = true # LLVM Link Time Optimization codegen-units = 1 # Slower compile time, better performance [features] benchmarking = []