Skip to content

Commit 33aa087

Browse files
committed
feat: add shared DB utilities for URL params, schema detection, and path expansion
Adds to loader::db: parse_identifier_params, strip_prefer_params, validate_identifier_name, detect_strategy, expand_dotted_paths, set_nested_value, and expand_columnar trait method on ConfigLoader. Supports three auto-detected strategies (kv, raw, wide) with configurable table/column names, path separator, and row filtering via URL query parameters.
1 parent 159f24a commit 33aa087

2 files changed

Lines changed: 688 additions & 32 deletions

File tree

prefer/Cargo.toml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,9 @@ dirs = { version = "5.0", optional = true }
3232
# Plugin registration (std only)
3333
inventory = { version = "0.3", optional = true }
3434

35+
# URL parsing for database identifiers (std only)
36+
url = { version = "2", optional = true }
37+
3538
# Optional format support (std only, no serde)
3639
roxmltree = { version = "0.20", optional = true }
3740
rust-ini = { version = "0.20", optional = true }
@@ -52,6 +55,7 @@ std = [
5255
"dep:notify",
5356
"dep:dirs",
5457
"dep:inventory",
58+
"dep:url",
5559
]
5660
json5 = ["std"] # JSON5 features handled by jzon fallback
5761
xml = ["std", "dep:roxmltree"]

0 commit comments

Comments
 (0)