Skip to content

Trim fixed per-scenario overhead - #403

Merged
schlessera merged 1 commit into
mainfrom
perf/per-scenario-overhead
Nov 2, 2026
Merged

schlessera merged 1 commit into
mainfrom
perf/per-scenario-overhead

Conversation

@schlessera

Copy link
Copy Markdown
Member

Addresses #388.

After each scenario, the next one waited for its run directory to be deleted, about 3,800 files for a WordPress installation, or roughly 50 ms. Run directories and suite cache directories have unique names that no later scenario uses, so they are now removed in the background. Windows keeps removing them right away.

Starting a background process always waited a full second. When the command shows which local port the process listens on, as for the PHP built-in web server or wp server, the scenario now continues as soon as the port accepts connections. A process that exits early is still reported as before. If the port was already taken before the process started, the full second is still waited, so a process failing to bind to it does not go unnoticed.

Measurements are recorded on #388.

Remove the run directory and the suite cache directory of a scenario in the
background, as no later scenario uses their unique paths. The next scenario
no longer waits for thousands of files to be deleted.

A background process that is expected to listen on a port no longer waits
a full second before the scenario continues, but only until it accepts
connections. If the port is already taken before the process starts, the
full second is still waited, so that a process failing to bind to it is
noticed.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Oct 30, 2026 •

Copy link
Copy Markdown

Warning

Review limit reached

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

Next included review available in 59 minutes.

Check out review usage here.

View limit details

Limit details: You’ve used the included review currently available.

Learn how review limits work.

Review configuration:

Run configuration
  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: defaults
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 72c433a3-65f6-45a9-980d-01de6d9f2064
Commits

Reviewing files that changed from the base of the PR and between d2c7f06 and 15d04da.

Files selected for processing: 1
  • src/Context/FeatureContext.php
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

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.

Share

@github-actions github-actions Bot added bug Something isn't working scope:testing Related to testing labels Oct 30, 2026
@codecov

codecov Bot commented Oct 30, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 0% with 28 lines in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
src/Context/FeatureContext.php 0.00% 28 Missing ⚠️

📢 Thoughts on this report? Let us know!

@schlessera schlessera closed this Oct 31, 2026
@schlessera
schlessera deleted the perf/per-scenario-overhead branch October 31, 2026 23:47
@schlessera
schlessera restored the perf/per-scenario-overhead branch October 31, 2026 23:48
@schlessera schlessera reopened this Oct 31, 2026
@schlessera
schlessera marked this pull request as ready for review November 2, 2026 02:22
@schlessera
schlessera requested a review from a team as a code owner November 2, 2026 02:22
@schlessera
schlessera merged commit bd002b1 into main Nov 2, 2026
135 of 136 checks passed
@schlessera
schlessera deleted the perf/per-scenario-overhead branch November 2, 2026 02:22
@schlessera schlessera added this to the 5.4.0 milestone Nov 2, 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 scope:testing Related to testing

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant