Skip to content

bench: perl_bench and ruby_bench (part of #9587) - #9705

Merged
TrapsterDK merged 4 commits into
mainfrom
bench-fuzz-scripting-9587
Nov 9, 2026
Merged

TrapsterDK merged 4 commits into
mainfrom
bench-fuzz-scripting-9587

Conversation

@TrapsterDK

@TrapsterDK TrapsterDK commented Nov 9, 2026 •

Copy link
Copy Markdown
Collaborator

Part of #9587.

Added: perl_bench (core Benchmark via DxBench::run_benchmarks) and ruby_bench (benchmark-ips 2.14.0, pinned sha256 in ruby/coverage/pins.bzl, fetched by the existing ruby_coverage extension as @dx_ruby_bench_gems). Both are <lang>_test targets tagged dx-bench and manual, writing dx-bench.json in seconds. Named *_bench to match the merged macros (#9632).

Tested locally on Linux: dx bench //perl/tests/bench:sum_bench and //ruby/tests/fixtures/bench:sum_bench (families workspaces) print results; //ruby/rules:all //perl/rules:all //ruby/coverage:all pass. Local bench needed -- --zip_undeclared_test_outputs on this host, otherwise dx reports no dx-bench.json (separate problem, not touched). Consumer and nested-Bazel tests were not run.

Also added: dart_bench (package:dx_bench runBenchmarks over benchmark_harness 2.4.0, hub @dx_dart_bench_deps from the pinned dart/rules/bench/pubspec.lock). //dart/tests/bench:sum_bench passes locally (dx-bench.json written). //dart/rules:wrapper_contract_tests could not be built locally (remote cache error on libz-sys even without cache). Consumer and nested-Bazel tests were not run.

Also added: php_bench (phpbench 1.7.0 phar, sha256 pinned in php/toolchain/pins.bzl, repo @dx_phpbench). benches lists phpbench files; a PHPUnit runner executes the phar and writes dx-bench.json in seconds per revolution. @rules_dx_php//php/tests/bench:sum_bench, //php/toolchain:metadata and //php/rules:wrapper_contract_tests pass locally.

Remaining for #9587:

  • ruby_fuzz_test (ruzzy needs a native extension built against libFuzzer) and php_fuzz_test (no pinned php-fuzzer phar)
  • julia_bench: BenchmarkTools depends on Statistics, an upgradable stdlib in Julia 1.12; rules_julia precompiles with @stdlib first on the load path, so the registry copy yields no cache and the build fails. Skipped; needs a rules_julia change
  • lua_bench: no maintained Lua harness found
  • docs/support-matrix.md has no bench or fuzz content; generation could not build locally (remote cache error), not regenerated

🤖 Generated with Claude Code

https://claude.ai/code/session_01Xut2hwESun1HL2eSVd1d5B

TrapsterDK and others added 4 commits November 9, 2026 11:54
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Xut2hwESun1HL2eSVd1d5B
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Xut2hwESun1HL2eSVd1d5B
@TrapsterDK
TrapsterDK force-pushed the bench-fuzz-scripting-9587 branch from 19bcc18 to 22897c7 Compare November 9, 2026 10:57
@TrapsterDK
TrapsterDK merged commit 6473742 into main Nov 9, 2026
1 check failed
@TrapsterDK
TrapsterDK deleted the bench-fuzz-scripting-9587 branch November 9, 2026 10:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant