Skip to content

[command] Show installed DevTools version in list output #339

@coisa

Description

@coisa

Problem

dev-tools list currently displays only the application name in the title line and not the installed DevTools version. This makes it harder to verify which release is actually executing when users run global/local binaries.

Proposal

Wire the Symfony console application version metadata in the bootstrap layer so list output includes the current DevTools version next to the application name.

Current Behavior

Running dev-tools list shows a title line like:

  • Fast Forward Dev Tools

without the installed version.

Expected Behavior

Running dev-tools list should show the current DevTools version in the header via the application version metadata, so users can confirm they are running the intended release.

Failure Surface

  • Global and local dev-tools command execution
  • CLI list/help/help-like output surface
  • Release and troubleshooting traces that depend on version visibility

Proposed Work

  • Add the version argument to the Symfony Application constructor call in src/Console/DevTools.php.
  • Use metadata already exposed via Composer-installed version resolution for the package fast-forward/dev-tools.
  • Keep behavior safe when version metadata is unavailable by defaulting to a non-empty fallback.

Scope

  • src/Console/DevTools.php

Non-goals

  • Do not change command routing, command discovery, or non-CLI runtime behavior.
  • Do not change binary packaging or installation mechanisms.

Acceptance Criteria

Functional Criteria

  • dev-tools list shows DevTools version metadata from application-level version.
  • dev-tools --version remains functional and reflects the same metadata source.

Regression Criteria

  • Existing list/help output still renders correctly for standard invocations.
  • Unit or integration coverage exists or is updated for the version-display behavior where practical.

Architectural / Isolation Criteria

  • Scope is limited to CLI bootstrap metadata wiring.
  • Uses existing package metadata sources and avoids additional runtime process calls.
  • No unrelated command paths are modified.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    Status

    Merged

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions