Skip to main content

extract_package_manifest

Function extract_package_manifest 

Source
pub fn extract_package_manifest(
    relative_path: &str,
    content: &str,
) -> Result<PackageManifest, PackageManifestError>
Expand description

Extracts static package facts by dispatching on a repository-relative file name.

Supported inputs are package.json, npm/pnpm/Yarn lockfiles, pyproject.toml, requirements*.txt, Cargo.toml, Cargo.lock, go.mod, go.work, pom.xml, Gradle build files, packages.config, and SDK-style .csproj files.

Results are sorted independently of declaration order. Dynamic Gradle expressions, unresolved Maven properties, VCS requirements, and other declarations requiring evaluation are skipped.

ยงErrors

Returns PackageManifestError::UnsupportedPath for absolute, parent-traversing, or unsupported paths. Returns PackageManifestError::Malformed when a recognized structured input cannot be parsed without guessing.