pub struct PnpmWorkspace {Show 130 fields
pub packages: BTreeSet<String>,
pub cleanup_unused_catalogs: Option<bool>,
pub catalog: BTreeMap<String, String>,
pub catalogs: BTreeMap<String, BTreeMap<String, String>>,
pub only_built_dependencies: BTreeSet<String>,
pub only_built_dependencies_file: Option<PathBuf>,
pub never_built_dependencies: BTreeSet<String>,
pub ignored_built_dependencies: BTreeSet<String>,
pub dangerously_allow_all_builds: Option<bool>,
pub overrides: BTreeMap<String, String>,
pub update_config: Option<UpdateConfig>,
pub minimum_release_age: Option<usize>,
pub minimum_release_age_exclude: BTreeSet<String>,
pub package_extensions: BTreeMap<String, PackageExtension>,
pub peer_dependency_rules: Option<PeerDependencyRules>,
pub allowed_deprecated_versions: BTreeMap<String, String>,
pub patched_dependencies: BTreeMap<String, String>,
pub allow_unused_patches: Option<bool>,
pub ignore_patch_failures: Option<bool>,
pub config_dependencies: BTreeMap<String, String>,
pub audit_config: Option<AuditConfig>,
pub required_scripts: BTreeSet<String>,
pub supported_architectures: Option<SupportedArchitectures>,
pub ignored_optional_dependencies: BTreeSet<String>,
pub execution_env: Option<ExecutionEnv>,
pub hoist: Option<bool>,
pub hoist_workspace_packages: Option<bool>,
pub hoist_pattern: BTreeSet<String>,
pub public_hoist_pattern: BTreeSet<String>,
pub shamefully_hoist: Option<bool>,
pub modules_dir: Option<PathBuf>,
pub node_linker: Option<NodeLinker>,
pub symlink: Option<bool>,
pub enable_modules_dir: Option<bool>,
pub virtual_store_dir: Option<PathBuf>,
pub virtual_store_dir_max_length: Option<usize>,
pub package_import_method: Option<PackageImportMethod>,
pub modules_cache_max_age: Option<usize>,
pub dlx_cache_max_age: Option<usize>,
pub store_dir: Option<PathBuf>,
pub verify_store_integrity: Option<bool>,
pub strict_store_pkg_content_check: Option<bool>,
pub enable_global_virtual_store: Option<bool>,
pub lockfile: Option<bool>,
pub prefer_frozen_lockfile: Option<bool>,
pub lockfile_include_tarball_url: Option<bool>,
pub git_branch_lockfile: Option<bool>,
pub merge_git_branch_lockfiles_branch_pattern: BTreeSet<String>,
pub peers_suffix_max_length: Option<usize>,
pub registry: Option<String>,
pub ca: Option<String>,
pub ca_file: Option<PathBuf>,
pub cert: Option<String>,
pub key: Option<String>,
pub git_shallow_hosts: BTreeSet<String>,
pub https_proxy: Option<String>,
pub proxy: Option<String>,
pub local_address: Option<String>,
pub max_sockets: Option<usize>,
pub no_proxy: Option<String>,
pub strict_ssl: Option<bool>,
pub network_concurrency: Option<usize>,
pub fetch_retries: Option<usize>,
pub fetch_retry_factor: Option<usize>,
pub fetch_retry_min_timeout: Option<usize>,
pub fetch_retry_max_timeout: Option<usize>,
pub fetch_timeout: Option<usize>,
pub auto_install_peers: Option<bool>,
pub dedupe_peer_dependents: Option<bool>,
pub strict_peer_dependencies: Option<bool>,
pub resolve_peers_from_workspace_root: Option<bool>,
pub color: Option<Color>,
pub log_level: Option<LogLevel>,
pub use_beta_cli: Option<bool>,
pub recursive_install: Option<bool>,
pub engine_strict: Option<bool>,
pub npm_path: Option<PathBuf>,
pub package_manager_strict: Option<bool>,
pub package_manager_strict_version: Option<bool>,
pub manage_package_manager_versions: Option<bool>,
pub ignore_scripts: Option<bool>,
pub ignore_dep_scripts: Option<bool>,
pub child_concurrency: Option<usize>,
pub size_effects_cache: Option<bool>,
pub size_effects_cache_read_only: Option<bool>,
pub unsafe_perm: Option<bool>,
pub node_options: Option<String>,
pub verify_deps_before_run: Option<VerifyDepsBeforeRun>,
pub strict_dep_builds: Option<bool>,
pub use_node_version: Option<String>,
pub node_version: Option<String>,
pub link_workspace_packages: Option<LinkWorkspacePackages>,
pub inject_workspace_packages: Option<bool>,
pub sync_injected_deps_after_scripts: BTreeSet<String>,
pub prefer_workspace_packages: Option<bool>,
pub shared_workspace_lockfile: Option<bool>,
pub save_workspace_protocol: Option<SaveWorkspaceProtocol>,
pub include_workspace_root: Option<bool>,
pub ignore_workspace_cycles: Option<bool>,
pub ignore_workspace_root_check: Option<bool>,
pub disallow_workspace_cycles: Option<bool>,
pub force_legacy_deploy: Option<bool>,
pub save_prefix: Option<SavePrefix>,
pub tag: Option<String>,
pub global_dir: Option<PathBuf>,
pub global_bin_dir: Option<PathBuf>,
pub state_dir: Option<PathBuf>,
pub cache_dir: Option<PathBuf>,
pub use_stderr: Option<bool>,
pub update_notifier: Option<bool>,
pub prefer_symlinked_executabled: Option<bool>,
pub ignore_compatibility_db: Option<bool>,
pub resolution_mode: Option<ResolutionMode>,
pub registry_supports_time_field: Option<bool>,
pub extend_node_path: Option<bool>,
pub deploy_all_files: Option<bool>,
pub dedupe_direct_deps: Option<bool>,
pub dedupe_injected_deps: Option<bool>,
pub optimistic_repeat_install: Option<bool>,
pub git_checks: Option<bool>,
pub publish_branch: Option<String>,
pub pnpm_file: Option<PathBuf>,
pub global_pnpm_file: Option<PathBuf>,
pub ignore_pnpm_file: Option<bool>,
pub patches_dir: Option<PathBuf>,
pub enable_pre_post_scripts: Option<bool>,
pub script_shell: Option<String>,
pub shell_emulator: Option<bool>,
pub save_exact: Option<bool>,
pub extra: BTreeMap<String, Value>,
}Expand description
A struct representing a pnpm-workspace.yaml config.
See more: https://pnpm.io/settings
Fields§
§packages: BTreeSet<String>Glob patterns for the directories containing the packages for this workspace.
cleanup_unused_catalogs: Option<bool>When set to true, pnpm will remove unused catalog entries during installation.
See more: https://pnpm.io/settings#cleanupunusedcatalogs
catalog: BTreeMap<String, String>The dependencies to store in the unnamed (default) catalog.
catalogs: BTreeMap<String, BTreeMap<String, String>>A map of named catalogs and the dependencies listed in them.
only_built_dependencies: BTreeSet<String>A list of package names that are allowed to be executed during installation. Only packages listed in this array will be able to run install scripts. If onlyBuiltDependenciesFile and neverBuiltDependencies are not set, this configuration option will default to blocking all install scripts.
See more: https://pnpm.io/settings#onlybuiltdependencies
only_built_dependencies_file: Option<PathBuf>Specifies a JSON file that lists the only packages permitted to run installation scripts during the pnpm install process.
See more: https://pnpm.io/settings#onlybuiltdependenciesfile
never_built_dependencies: BTreeSet<String>A list of dependencies to run builds for. See more: https://pnpm.io/settings#neverbuiltdependencies
ignored_built_dependencies: BTreeSet<String>A list of package names that should not be built during installation.
See more: https://pnpm.io/settings#ignoredbuiltdependencies
dangerously_allow_all_builds: Option<bool>If set to true, all build scripts (e.g. preinstall, install, postinstall) from dependencies will run automatically, without requiring approval.
See more: https://pnpm.io/settings#dangerouslyallowallbuilds
overrides: BTreeMap<String, String>This field allows you to instruct pnpm to override any dependency in the dependency graph. This is useful for enforcing all your packages to use a single version of a dependency, backporting a fix, replacing a dependency with a fork, or removing an unused dependency.
See more: https://pnpm.io/settings#overrides
update_config: Option<UpdateConfig>Configuration for package updates.
See more: https://pnpm.io/settings#updateconfig
minimum_release_age: Option<usize>It specifies the number of minutes that must pass after a version is published before pnpm will install it. For example, setting minimumReleaseAge: 1440 ensures that only packages released at least one day ago can be installed.
See more: https://pnpm.io/settings#minimumreleaseage
minimum_release_age_exclude: BTreeSet<String>If you set minimumReleaseAge but need to disable this restriction for certain dependencies, you can list them under the minimumReleaseAgeExclude setting.
See more: https://pnpm.io/settings#minimumreleaseageexclude
package_extensions: BTreeMap<String, PackageExtension>The packageExtensions fields offer a way to extend the existing package definitions with additional information. For example, if react-redux should have react-dom in its peerDependencies but it has not, it is possible to patch react-redux using packageExtensions.
See more: https://pnpm.io/settings#packageextensions
peer_dependency_rules: Option<PeerDependencyRules>Rules for peer dependencies.
See more: https://pnpm.io/settings#peerdependencyrules
allowed_deprecated_versions: BTreeMap<String, String>A list of deprecated versions that the warnings are suppressed.
See more: https://pnpm.io/settings#alloweddeprecatedversions
patched_dependencies: BTreeMap<String, String>A list of dependencies that are patched.
See more: https://pnpm.io/settings#patcheddependencies
allow_unused_patches: Option<bool>When true, installation won’t fail if some of the patches from the patchedDependencies field were not applied. Previously named allowNonAppliedPatches.
See more: https://pnpm.io/settings#allowunusedpatches
ignore_patch_failures: Option<bool>Default is undefined. Errors out when a patch with an exact version or version range fails. Ignores failures from name-only patches. When true, prints a warning instead of failing when any patch cannot be applied. When false, errors out for any patch failure.
See more: https://pnpm.io/settings#ignorepatchfailures
config_dependencies: BTreeMap<String, String>Config dependencies allow you to share and centralize configuration files, settings, and hooks across multiple projects. They are installed before all regular dependencies (‘dependencies’, ‘devDependencies’, ‘optionalDependencies’), making them ideal for setting up custom hooks, patches, and catalog entries.
See more: https://pnpm.io/config-dependencies
audit_config: Option<AuditConfig>Settings for the pnpm audit command.
See more: https://pnpm.io/settings#auditconfig
required_scripts: BTreeSet<String>Scripts listed in this array will be required in each project of the workspace. Otherwise, pnpm -r run