Expand description
§use-composer-json
Composer JSON metadata primitives for RustUse.
§Experimental
use-composer-json is experimental while use-php remains below 0.3.0.
§Example
use use_composer_json::{ComposerJson, ComposerPackageName, ComposerRequirement};
let package = ComposerJson::new()
.with_name(ComposerPackageName::new("acme/demo")?)
.with_requirement("php", ComposerRequirement::new("^8.2")?);
assert_eq!(package.name().unwrap().vendor(), "acme");
assert!(package.requirements().contains_key("php"));§Scope
- Composer package names, requirements, scripts, repositories, autoload config metadata, stability labels, and package types.
§Non-goals
- Dependency resolution, lockfile parsing, plugin execution, repository fetching, or package installation.
§License
Licensed under either Apache-2.0 or MIT.
Structs§
- Composer
Autoload Config - Composer autoload metadata without resolving paths.
- Composer
Json - Partial practical Composer JSON metadata.
- Composer
Package Name - Composer package name metadata in
vendor/packageform. - Composer
Package Short Name - Composer
Repository - Composer repository metadata.
- Composer
Repository Url - Composer
Requirement - Composer
Script - Composer
Script Name - Composer
Vendor Name
Enums§
- Composer
Json Error - Error returned when Composer metadata is invalid.
- Composer
Package Type - Composer package type metadata.
- Composer
Repository Kind - Composer repository kind metadata.
- Composer
Stability - Composer stability label metadata.