Repository navigation
Declare and check the commands that scenarios need - #410
Draft
schlessera wants to merge 1 commit into
Draft
schlessera wants to merge 1 commit into
schlessera wants to merge 1 commit into
Conversation
Scenarios can declare commands they run that are not always installed with @require-bin-<name> tags. Where a command is not available, its scenarios are left out and reported like other unmet requirements, instead of failing halfway through. The existing @require-composer, @require-download and @require-opcache-save-comments tags never filtered anything and are checked now. Unknown requirement tags are reported, as they would not filter anything either. When a command fails because a command it runs does not exist, the failure names the tag to add, and the Gherkin linting lists scenarios that run commands which are not always installed without declaring them. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Important Draft PR not reviewedDraft PRs are not automatically reviewed by default.
To automatically review draft PRs, update your CodeRabbit configuration: reviews:
auto_review:
drafts: true
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
This was referenced Oct 30, 2026
Codecov Report❌ Patch coverage is
📢 Thoughts on this report? Let us know! |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Addresses #393. Builds on #409.
Some scenarios run commands that are not always installed without declaring it, and fail halfway through where the command is missing. In
entity-command, a single scenario usingexas its editor fails at its 17th step, after installing WordPress and running sixwpcommands.Scenarios can declare such commands with
@require-bin-<name>tags. Where a command is not available, the scenarios are left out and reported like other unmet requirements (see Report the scenarios that are left out, and why #409), or stop the run in strict mode.@require-composer,@require-downloadand@require-opcache-save-commentsappear in feature files but never filtered anything. They are checked now.Requirement tags the framework does not know are reported with a warning, as they would not filter anything either.
When a command fails because a command it runs does not exist, the failure now names the tag to add:
composer lint-gherkinlists scenarios that run commands which are not always installed without the matching tag. It only reports, so that the existing feature files can be tagged over time. Among the bundled commands, it currently flagsexinconfig-commandandentity-command,tar,unzipandzipinfoindist-archive-command,phpunitinscaffold-commandandjqindoctor-command.