Cargo Features
[dependencies]
cuenv-workspaces = { version = "0.26.2", default-features = false, features = ["detection", "discovery-package-json", "discovery-pnpm", "discovery-cargo", "discovery-javascript", "discovery-rust", "parser-npm", "parser-bun", "parser-pnpm", "parser-yarn-classic", "parser-yarn-modern", "parser-cargo", "parsers-javascript", "parsers-rust"] }
- default = detection, discovery-javascript, parsers-javascript
-
Default features: package manager detection, JavaScript parsers, and JavaScript discovery
These defaults are chosen to provide a complete experience for JavaScript/TypeScript projects (the most common use case for workspace tooling) out of the box. Users can disable default features with
default-features = falseto minimize dependencies for Rust-only or specialized use cases. - detection default = serde_yaml, toml
-
Enable package manager detection from lockfiles and commands
Affects
cuenv-workspaces::detection… - discovery-package-json discovery-javascript
-
Fine-grained discovery features
Affects
discovery::package_json,cuenv-workspaces::discovery… - discovery-pnpm discovery-javascript = serde_yaml
-
Affects
discovery::pnpm_workspace,cuenv-workspaces::discovery… - discovery-cargo discovery-rust? = toml
-
Affects
discovery::cargo_toml,cuenv-workspaces::discovery… - discovery-javascript default = discovery-package-json, discovery-pnpm
-
Aggregate discovery features (recommended)
Enable all JavaScript ecosystem discoveries (npm/Bun/Yarn via package.json, pnpm) - discovery-rust = discovery-cargo
-
Enable all Rust ecosystem discoveries (currently only Cargo)
- parser-npm parsers-javascript
-
Fine-grained parser features (prefer using aggregate features below)
Affects
javascript::npm… - parser-bun parsers-javascript = jsonc-parser
-
Affects
javascript::bun… - parser-pnpm parsers-javascript = serde_yaml
-
Affects
javascript::pnpm… - parser-yarn-classic parsers-javascript
-
Enables yarn-lock-parser ^0.12.0
Affects
javascript::yarn_classic… - parser-yarn-modern parsers-javascript = serde_yaml
-
Affects
javascript::yarn_modern… - parser-cargo parsers-rust? = toml
-
Enable only the Cargo parser without the broader
parsers-rustbundleEnables cargo-lock, cargo_toml, and glob
Affects
rust::cargo,parsers::rust,cuenv-workspaces::parsers… - parsers-javascript default = parser-bun, parser-npm, parser-pnpm, parser-yarn-classic, parser-yarn-modern
-
Aggregate parser features (recommended)
Enable all JavaScript ecosystem parsers (npm, bun, pnpm, yarn classic, yarn modern)Affects
parsers::javascript,cuenv-workspaces::parsers… - parsers-rust = parser-cargo
-
Enable all Rust ecosystem parsers (currently only Cargo)
Note: This implies parser-cargo but is intended to encompass additional Rust parsers in the futureAffects
parsers::rust,cuenv-workspaces::parsers…
Features from optional dependencies
In crates that don't use the dep: syntax, optional dependencies automatically become Cargo features. These features may have been created by mistake, and this functionality may be removed in the future.
- toml detection discovery-cargo? parser-cargo?
-
Affects
discovery::read_toml_file… - serde_yaml detection discovery-pnpm? parser-pnpm? parser-yarn-modern?
-
Affects
discovery::read_yaml_file… - jsonc-parser parser-bun?
-
Enables jsonc-parser ^0.28