Skip to content

[path] Add runtime-aware tooling binary fallback#293

Merged
coisa merged 3 commits into
mainfrom
bugfix/292-runtime-tool-binaries
Apr 30, 2026
Merged

[path] Add runtime-aware tooling binary fallback#293
coisa merged 3 commits into
mainfrom
bugfix/292-runtime-tool-binaries

Conversation

@coisa
Copy link
Copy Markdown
Contributor

@coisa coisa commented Apr 30, 2026

Related Issue

Closes #292

Motivation / Context

  • global dev-tools runs still assumed the consumer repository provided every tooling binary under vendor/bin
  • repositories such as changelog do not install php-cs-fixer, rector, ecs, jack, or composer-dependency-analyser locally, so global runs could not start those processes

Changes

  • added runtime-aware tooling binary resolution to DevToolsPathResolver, preferring the working project's vendor/bin/<tool> when present and falling back to the active DevTools runtime binary path otherwise
  • updated code-style, phpdoc, refactor, and dependencies to use the shared resolver instead of hardcoded vendor/bin/... strings
  • expanded resolver and command tests to cover repository-checkout and installed/dependency resolution scenarios, including Jack subcommands

Verification

  • composer dev-tools
  • Focused command(s): composer dev-tools tests -- --filter='(DevToolsPathResolverTest|CodeStyleCommandTest|RefactorCommandTest|PhpDocCommandTest|DependenciesCommandTest)', composer dev-tools phpdoc, composer dev-tools code-style
  • Manual verification: not run against a separately updated global install in this workspace; covered via resolver tests for dependency installs

Documentation / Generated Output

  • README updated
  • docs/ updated
  • Generated or synchronized output reviewed

Changelog

  • Added a notable CHANGELOG.md entry

Reviewer Notes

  • the new resolver keeps command behavior unchanged for repositories that already provide local tooling binaries while adding a global-install fallback path for the packaged tools

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Apr 30, 2026

Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: bce7685277

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread src/Console/Command/CodeStyleCommand.php Outdated
@coisa
Copy link
Copy Markdown
Contributor Author

coisa commented Apr 30, 2026

@codex review

@chatgpt-codex-connector
Copy link
Copy Markdown

Codex Review: Didn't find any major issues. Can't wait for the next one!

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@coisa coisa merged commit d3d937b into main Apr 30, 2026
33 checks passed
@coisa coisa deleted the bugfix/292-runtime-tool-binaries branch April 30, 2026 02:08
@github-project-automation github-project-automation Bot moved this from Backlog to Released in PHP Fast Forward Project Apr 30, 2026
github-actions Bot added a commit that referenced this pull request Apr 30, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working

Projects

Status: Released

Development

Successfully merging this pull request may close these issues.

Support runtime-aware tooling binary fallbacks for global dev-tools installs

1 participant