pub fn parse_dep_spec(spec: &str) -> DependencySpecExpand description
What: Split a dependency specification into name and version requirement.
Inputs:
spec: Dependency string from pacman (e.g., “python>=3.12”, “glibc”).
Output:
- Returns
DependencySpecwith name andversion_reqfields.
Details:
- Searches for version operators in precedence order: <=, >=, =, <, >
- Returns empty
version_reqwhen no operator is present. - Trims whitespace from both name and version.
§Examples
use arch_toolkit::deps::parse_dep_spec;
let spec = parse_dep_spec("python>=3.12");
assert_eq!(spec.name, "python");
assert_eq!(spec.version_req, ">=3.12");
let spec = parse_dep_spec("glibc");
assert_eq!(spec.name, "glibc");
assert!(spec.version_req.is_empty());