Skip to content

Simplify executor implementations#4891

Merged
nekevss merged 4 commits intoboa-dev:mainfrom
jedel1043:make-executors-loop
Mar 6, 2026
Merged

Simplify executor implementations#4891
nekevss merged 4 commits intoboa-dev:mainfrom
jedel1043:make-executors-loop

Conversation

@jedel1043
Copy link
Copy Markdown
Member

After seeing the avalanche of issues that our executors have, I don't think it's worth being too smart about when to exit the loop. Folks who wanna have that behaviour can just implement their own JobExecutor.

Thus, this reverts the implementation to the old behaviour of blocking when having pending timeout and interval jobs. Fortunately, run_jobs_async exists, so we can use it in our CLI to intersperse executing jobs with executing parsing and execution.

And just for good measure, it also adds a stop cancellation token to SimpleJobExecutor, in case folks still want to use it but that also want to remotely stop the event loop's execution from another thread.

@jedel1043 jedel1043 added this to the v1.0.0 milestone Mar 6, 2026
@jedel1043 jedel1043 requested a review from a team as a code owner March 6, 2026 00:28
@jedel1043 jedel1043 added A-Enhancement New feature or request rust labels Mar 6, 2026
@jedel1043 jedel1043 force-pushed the make-executors-loop branch from dce10ee to 3627df9 Compare March 6, 2026 00:30
@github-actions
Copy link
Copy Markdown

github-actions bot commented Mar 6, 2026

Test262 conformance changes

Test result main count PR count difference
Total 52,963 52,963 0
Passed 49,666 49,666 0
Ignored 2,284 2,284 0
Failed 1,013 1,013 0
Panics 0 0 0
Conformance 93.77% 93.77% 0.00%

Tested main commit: 6e80e70f5f79e545d7b69d09dbb7e9263843faac
Tested PR commit: 76b32810f99dfad80545e5a783ec76fb20df968f
Compare commits: 6e80e70...76b3281

@codecov
Copy link
Copy Markdown

codecov bot commented Mar 6, 2026

Codecov Report

❌ Patch coverage is 14.04959% with 104 lines in your changes missing coverage. Please review.
✅ Project coverage is 57.29%. Comparing base (6ddc2b4) to head (76b3281).
⚠️ Report is 757 commits behind head on main.

Files with missing lines Patch % Lines
cli/src/executor.rs 0.00% 64 Missing ⚠️
cli/src/main.rs 0.00% 35 Missing ⚠️
core/engine/src/job.rs 76.19% 5 Missing ⚠️
Additional details and impacted files
@@             Coverage Diff             @@
##             main    #4891       +/-   ##
===========================================
+ Coverage   47.24%   57.29%   +10.05%     
===========================================
  Files         476      556       +80     
  Lines       46892    60623    +13731     
===========================================
+ Hits        22154    34734    +12580     
- Misses      24738    25889     +1151     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Copy link
Copy Markdown
Member

@nekevss nekevss left a comment

Choose a reason for hiding this comment

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

LGTM

@nekevss nekevss added this pull request to the merge queue Mar 6, 2026
Merged via the queue into boa-dev:main with commit 51e910f Mar 6, 2026
19 checks passed
@jedel1043 jedel1043 deleted the make-executors-loop branch March 6, 2026 06:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-Enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants