[package]
edition = "2024"
name = "oxgraph-algo"
version = "0.3.2"
authors = ["oxgraph contributors"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Substrate-agnostic graph algorithms over oxgraph-topology traits."
readme = "README.md"
keywords = [
"graph",
"topology",
"zero-copy",
]
categories = ["data-structures"]
license = "MIT"
repository = "https://github.com/oxgraph/oxgraph"
[features]
alloc = []
default = []
std = ["alloc"]
[lib]
name = "oxgraph_algo"
path = "src/lib.rs"
[[example]]
name = "bfs"
path = "examples/bfs.rs"
[[test]]
name = "bfs"
path = "tests/bfs.rs"
[[test]]
name = "graph_algorithms"
path = "tests/graph_algorithms.rs"
[[test]]
name = "pagerank"
path = "tests/pagerank.rs"
[[test]]
name = "transition_fixture"
path = "tests/transition_fixture.rs"
[[bench]]
name = "bfs"
path = "benches/bfs.rs"
harness = false
required-features = ["std"]
[[bench]]
name = "graph_algorithms"
path = "benches/graph_algorithms.rs"
harness = false
required-features = ["std"]
[[bench]]
name = "pagerank"
path = "benches/pagerank.rs"
harness = false
required-features = ["std"]
[dependencies.oxgraph-graph]
version = "0.3.2"
[dependencies.oxgraph-hyper]
version = "0.3.2"
[dependencies.oxgraph-topology]
version = "0.3.2"
[dev-dependencies.arrow-array]
version = "58.3.0"
[dev-dependencies.arrow-schema]
version = "58.2.0"
[dev-dependencies.criterion]
version = "0.8.2"
features = [
"cargo_bench_support",
"html_reports",
"plotters",
]
default-features = false
[dev-dependencies.oxgraph-hyper]
version = "0.3.2"
[dev-dependencies.oxgraph-property]
version = "0.3.2"
[dev-dependencies.oxgraph-snapshot]
version = "0.3.2"
features = ["alloc"]
[dev-dependencies.proptest]
version = "1.11.0"
[dev-dependencies.zerocopy]
version = "0.8.48"
features = ["derive"]
default-features = false
[lints.clippy]
allow_attributes = "deny"
allow_attributes_without_reason = "deny"
cognitive_complexity = "deny"
excessive_nesting = "deny"
expect_used = "deny"
missing_docs_in_private_items = "deny"
too_many_arguments = "deny"
too_many_lines = "deny"
type_complexity = "deny"
unwrap_used = "deny"
[lints.clippy.all]
level = "deny"
priority = -1
[lints.clippy.cargo]
level = "deny"
priority = -1
[lints.clippy.module_name_repetitions]
level = "allow"
priority = 1
[lints.clippy.multiple_crate_versions]
level = "allow"
priority = 1
[lints.clippy.nursery]
level = "deny"
priority = -1
[lints.clippy.pedantic]
level = "deny"
priority = -1
[lints.rust]
missing_docs = "deny"
unreachable_pub = "deny"
unsafe_code = "forbid"
[lints.rust.rust_2024_compatibility]
level = "deny"
priority = -1
[lints.rust.unexpected_cfgs]
level = "deny"
priority = 0
check-cfg = ["cfg(kani)"]