[package]
edition = "2024"
rust-version = "1.96.0"
name = "jsonld"
version = "0.24.0"
authors = [
"Timothée Haudebourg <author@haudebourg.net>",
"Matej Škvarč <matej.skvarc@senlab.io>",
]
build = false
exclude = [
"tests/json-ld-api",
"tests/compact.rs",
"tests/expand.rs",
"tests/flatten.rs",
"tests/to_rdf.rs",
"benches/shared_context.rs",
"benches/ngsi-ld-core-context-v1.9.jsonld",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "JSON-LD implementation"
documentation = "https://docs.rs/jsonld"
readme = "README.md"
keywords = [
"json-ld",
"json",
"semantic-web",
"linked-data",
"rdf",
]
categories = [
"web-programming",
"database",
"data-structures",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/mskvarc/jsonld/"
[package.metadata.docs.rs]
all-features = true
rustc-args = [
"-C",
"target-cpu=native",
]
rustdoc-args = [
"--cfg",
"docsrs",
]
[package.metadata.cargo-machete]
ignored = ["criterion"]
[features]
ahash = ["jsonld-core/ahash"]
bytewise-iri = [
"iri-rs/bytewise",
"jsonld-core/bytewise-iri",
"jsonld-syntax/bytewise-iri",
"jsonld-context-processing/bytewise-iri",
"jsonld-expansion/bytewise-iri",
"jsonld-compaction/bytewise-iri",
"jsonld-serialization/bytewise-iri",
]
default = ["bytewise-iri"]
expandable = [
"dep:jsonld-expandable",
"dep:jsonld-expandable-core",
]
expandable-chrono = [
"expandable",
"jsonld-expandable-core/chrono",
]
expandable-jstrict = [
"expandable",
"jsonld-expandable-core/jstrict",
]
expandable-serde-json = [
"expandable",
"jsonld-expandable-core/serde-json",
]
expandable-sonic-rs = [
"expandable",
"sonic-rs",
"jsonld-expandable-core/sonic-rs",
]
gxhash = ["jsonld-core/gxhash"]
reqwest = ["jsonld-core/reqwest"]
serde = [
"jsonld-syntax/serde",
"jsonld-core/serde",
]
serde-json = [
"jsonld-syntax/serde-json",
"jsonld-core/serde-json",
]
sonic-rs = [
"jsonld-syntax/sonic-rs",
"jsonld-core/sonic-rs",
]
vocab = [
"dep:jsonld-vocab",
"iri-rs/static",
]
[lib]
name = "jsonld"
path = "src/lib.rs"
bench = false
[[example]]
name = "profile"
path = "examples/profile.rs"
[[test]]
name = "context_memo"
path = "tests/context_memo.rs"
[[test]]
name = "context_overflow_stack"
path = "tests/context_overflow_stack.rs"
[[test]]
name = "custom"
path = "tests/custom.rs"
[[test]]
name = "document_nesting_stack"
path = "tests/document_nesting_stack.rs"
[[test]]
name = "expand_slice"
path = "tests/expand_slice.rs"
[[test]]
name = "loader_stack"
path = "tests/loader_stack.rs"
[[test]]
name = "repeated_context"
path = "tests/repeated_context.rs"
[[test]]
name = "serde_json"
path = "tests/serde_json.rs"
[[test]]
name = "vocabulary_agreement"
path = "tests/vocabulary_agreement.rs"
[[bench]]
name = "compaction"
path = "benches/compaction.rs"
harness = false
[[bench]]
name = "expansion"
path = "benches/expansion.rs"
harness = false
[dependencies.contextual]
version = "0.1.6"
[dependencies.iri-rs]
version = "3.4.1"
[dependencies.jsonld-compaction]
version = "0.24.0"
[dependencies.jsonld-context-processing]
version = "0.24.0"
[dependencies.jsonld-core]
version = "0.24.0"
[dependencies.jsonld-expandable]
version = "0.24.0"
optional = true
[dependencies.jsonld-expandable-core]
version = "0.24.0"
optional = true
[dependencies.jsonld-expansion]
version = "0.24.0"
[dependencies.jsonld-serialization]
version = "0.24.0"
[dependencies.jsonld-syntax]
version = "0.24.0"
[dependencies.jsonld-vocab]
version = "0.24.0"
optional = true
[dependencies.jstrict]
version = "0.16.0"
[dependencies.rdfx]
version = "0.24.0"
[dependencies.thiserror]
version = "2.0.21"
[dev-dependencies.criterion]
version = "0.8.2"
[dev-dependencies.iri-rs]
version = "3.4.1"
features = ["static"]
[dev-dependencies.log]
version = "0.4.34"
[dev-dependencies.mimalloc]
version = "0.1.52"
default-features = false
[dev-dependencies.n-quads]
version = "0.21.0"
[dev-dependencies.serde_json]
version = "1.0.151"
[dev-dependencies.stacker]
version = "0.1.25"
[dev-dependencies.tokio]
version = "1.53.1"
features = [
"macros",
"rt-multi-thread",
]
[lints.clippy]
expect_used = "deny"
format_push_string = "allow"
inline_always = "allow"
iter_without_into_iter = "allow"
match_same_arms = "allow"
panic = "deny"
struct_excessive_bools = "allow"
struct_field_names = "allow"
todo = "deny"
too_many_arguments = "allow"
too_many_lines = "allow"
unimplemented = "deny"
unreachable = "deny"
unused_async_trait_impl = "allow"
unwrap_used = "deny"
wildcard_enum_match_arm = "allow"
[lints.clippy.pedantic]
level = "warn"
priority = -1
[lints.rust]
async_fn_in_trait = "allow"