OxRDF: Fixes Term::from_str() with a blank node in object position of a quoted triple

pull/409/head
Tpt 2 years ago committed by Thomas Tanon
parent 42cd6b0094
commit 7e7489499d
  1. 6
      Cargo.lock
  2. 6
      lib/Cargo.toml
  3. 2
      lib/oxrdf/Cargo.toml
  4. 5
      lib/oxrdf/src/parser.rs
  5. 4
      lib/sparesults/Cargo.toml
  6. 4
      lib/spargebra/Cargo.toml
  7. 2
      server/Cargo.toml

6
Cargo.lock generated

@ -1060,7 +1060,7 @@ checksum = "bb175ec8981211357b7b379869c2f8d555881c55ea62311428ec0de46d89bd5c"
[[package]]
name = "oxrdf"
version = "0.1.4"
version = "0.1.5-dev"
dependencies = [
"lasso",
"oxilangtag",
@ -1663,7 +1663,7 @@ checksum = "a507befe795404456341dfab10cef66ead4c041f62b8b11bbb92bffe5d0953e0"
[[package]]
name = "sparesults"
version = "0.1.6"
version = "0.1.7-dev"
dependencies = [
"json-event-parser",
"oxrdf",
@ -1672,7 +1672,7 @@ dependencies = [
[[package]]
name = "spargebra"
version = "0.2.6"
version = "0.2.7-dev"
dependencies = [
"oxilangtag",
"oxiri",

@ -37,10 +37,10 @@ hex = "0.4"
siphasher = "0.3"
lazy_static = "1"
sysinfo = "0.28"
oxrdf = { version = "0.1.4", path="oxrdf", features = ["rdf-star", "oxsdatatypes"] }
oxrdf = { version = "0.1.5-dev", path="oxrdf", features = ["rdf-star", "oxsdatatypes"] }
oxsdatatypes = { version = "0.1.1", path="oxsdatatypes" }
spargebra = { version = "0.2.6", path="spargebra", features = ["rdf-star", "sep-0002", "sep-0006"] }
sparesults = { version = "0.1.6", path="sparesults", features = ["rdf-star"] }
spargebra = { version = "0.2.7-dev", path="spargebra", features = ["rdf-star", "sep-0002", "sep-0006"] }
sparesults = { version = "0.1.7-dev", path="sparesults", features = ["rdf-star"] }
[target.'cfg(not(target_family = "wasm"))'.dependencies]
libc = "0.2"

@ -1,6 +1,6 @@
[package]
name = "oxrdf"
version = "0.1.4"
version = "0.1.5-dev"
authors = ["Tpt <thomas@pellissier-tanon.fr>"]
license = "MIT OR Apache-2.0"
readme = "README.md"

@ -161,7 +161,10 @@ fn read_blank_node(s: &str) -> Result<(BlankNode, &str), TermParseError> {
let s = s.trim();
if let Some(remain) = s.strip_prefix("_:") {
let end = remain
.find(|v: char| v.is_whitespace() || matches!(v, '<' | '_' | '?' | '$' | '"' | '\''))
.find(|v: char| {
v.is_whitespace()
|| matches!(v, '<' | '_' | '?' | '$' | '"' | '\'' | '>' | '@' | '^')
})
.unwrap_or(remain.len());
let (value, remain) = remain.split_at(end);
let term = BlankNode::new(value).map_err(|error| TermParseError {

@ -1,6 +1,6 @@
[package]
name = "sparesults"
version = "0.1.6"
version = "0.1.7-dev"
authors = ["Tpt <thomas@pellissier-tanon.fr>"]
license = "MIT OR Apache-2.0"
readme = "README.md"
@ -19,7 +19,7 @@ rdf-star = ["oxrdf/rdf-star"]
[dependencies]
json-event-parser = "0.1"
oxrdf = { version = "0.1.4", path="../oxrdf" }
oxrdf = { version = "0.1.5-dev", path="../oxrdf" }
quick-xml = "0.27"
[package.metadata.docs.rs]

@ -1,6 +1,6 @@
[package]
name = "spargebra"
version = "0.2.6"
version = "0.2.7-dev"
authors = ["Tpt <thomas@pellissier-tanon.fr>"]
license = "MIT OR Apache-2.0"
readme = "README.md"
@ -24,7 +24,7 @@ peg = "0.8"
rand = "0.8"
oxiri = "0.2"
oxilangtag = "0.1"
oxrdf = { version = "0.1.4", path="../oxrdf" }
oxrdf = { version = "0.1.5-dev", path="../oxrdf" }
[package.metadata.docs.rs]
all-features = true

@ -18,7 +18,7 @@ oxhttp = { version = "0.1", features = ["rayon"] }
clap = { version = "=4.0", features = ["derive"] }
clap_lex = "=0.3.0"
oxigraph = { version = "0.3.14-dev", path = "../lib", features = ["http_client"] }
sparesults = { version = "0.1.6", path = "../lib/sparesults", features = ["rdf-star"] }
sparesults = { version = "0.1.7-dev", path = "../lib/sparesults", features = ["rdf-star"] }
rand = "0.8"
url = "2"
oxiri = "0.2"

Loading…
Cancel
Save