Manage application dependencies using box.json.
The wheels deps
command provides a streamlined interface for managing your Wheels application's dependencies through box.json. It integrates with CommandBox's package management system while providing Wheels-specific conveniences.
action
Required - Action to perform: list
, install
, update
, remove
, report
None
name
Package name (required for install/update/remove actions)
None
version
Specific version to install (optional, for install action only)
Latest version
--dev
Install as development dependency (install action only)
false
Display all dependencies from box.json with their installation status.
Output shows:
Package name
Version specification
Type (Production/Development)
Installation status
Example output:
Install a new dependency and add it to box.json.
Examples:
Update an existing dependency to the latest version allowed by its version specification.
Example:
The command will:
Check if the dependency exists in box.json
Determine if it's a production or dev dependency
Update to the latest compatible version
Show version change information
Remove a dependency from both box.json and the file system.
Example:
Note: Remove action will ask for confirmation before proceeding.
Generate a comprehensive dependency report with outdated package check.
The report includes:
Project information (name, version)
Wheels version
CFML engine details
All dependencies with installation status
Development dependencies
Installed modules information
Outdated package check
Export to JSON file
Example output:
The wheels deps
commands delegate to CommandBox's package management system:
install
uses box install
update
uses box update
remove
uses box uninstall
report
uses box outdated
This ensures compatibility with the broader CFML package ecosystem.
The command manages two dependency sections in box.json:
The command checks for installed packages in the /modules
directory. It handles various package naming conventions:
Simple names: wirebox
Namespaced: forgebox:wirebox
Versioned: wirebox@7.0.0
Common scenarios:
No box.json: Prompts to run box init
Package not found: Shows available dependencies
Update failures: Shows current and attempted versions
Network issues: Displays CommandBox error messages
Initialize First: Run box init
before managing dependencies
Use Version Constraints: Specify version ranges for stability
Separate Dev Dependencies: Use --dev
for test/build tools
Regular Updates: Run wheels deps report
to check for outdated packages
Commit box.json: Always version control your dependency specifications
Dependencies are installed to the /modules
directory
The command respects CommandBox's dependency resolution
Version specifications follow npm-style semver patterns
Dev dependencies are not installed in production environments
box install - CommandBox package installation
box.json - Package descriptor documentation
wheels init - Initialize a Wheels application
wheels plugins - Manage Wheels CLI plugins