Skip to content

deps

Description

Commands for managing dependencies.

Available Commands: update: Update packages.json from parent repo and packages in child repo. generate_gitignore: Generate .gitignore entries from packages.json. verify: Verify dependencies against version set and update if needed.

Usage

adev deps [OPTIONS] [ARGS]

Additionally, you can view the parameters for the command using:

adev deps --help

Generate Gitignore

Generate .gitignore entries from packages.json.

Reads the packages.json file and adds any third-party package paths to the .gitignore file if they're not already present.

Usage: adev deps generate-gitignore

Notes

- Only adds new entries, doesn't remove existing ones
- Focuses on third-party packages from packages.json
- Appends entries to existing .gitignore file

Update

Update dependencies from parent repo to child repo.

Required Parameters: parent_repo: Path to the parent repository containing source packages.json. child_repo: Path to the child repository to update.

Optional Parameters: location: Location of dependencies (local or remote). Default: local auto_confirm: Skip confirmation prompts. Default: False manual: Enable manual mode for updates. Default: False

Usage: Update with defaults: adev deps update -p /path/to/parent -c /path/to/child

Auto-confirm updates:
    adev deps update -p /path/to/parent -c /path/to/child --auto-confirm

Manual mode:
    adev deps update -p /path/to/parent -c /path/to/child --manual

Verify

Verify and optionally update package dependencies.

Optional Parameters: auto_approve: Skip confirmation prompts for updates. Default: False - Automatically applies all updates - No interactive prompts - Use with caution in production

Usage: Verify with prompts: adev deps verify

Auto-approve updates:
    adev deps verify --auto-approve

Notes

- Authentication:
    - Requires GITHUB_TOKEN environment variable
    - Token needs repo and packages read access
    - Can be generated at github.com/settings/tokens

- Verification Process:
    - Checks both autonomy and poetry dependencies
    - Verifies against specified version sets
    - Compares local vs remote package hashes
    - Validates dependency compatibility

- Update Process:
    - Updates packages.json for autonomy packages
    - Updates pyproject.toml for poetry dependencies
    - Handles dependency resolution
    - Maintains version consistency

- Features:
    - Parallel version checking
    - Detailed diff viewing
    - Selective update approval
    - Dependency tree analysis
    - Version conflict detection

- Best Practices:
    - Run before deployments
    - Include in CI/CD pipelines
    - Regular scheduled verification
    - Version pinning enforcement