oxc/.github/workflows
overlookmotel 93e1ea4419
feat(tasks): shard benchmarks in CI (#2751)
This PR shards benchmarks when running on CI. Each benchmark (parser, minifier etc) runs as a separate job, and then a final job combines the results and uploads to Codspeed.

A bit of a hacky implementation. Uses a small NodeJS HTTP server to intercept the results from `codspeed-runner`, and then another NodeJS script to combine them all together, and upload to CodSpeed.

I will submit PRs on Codspeed's runner + action to do it properly, but as I imagine it'll be a slow process getting that merged upstream, I wanted to see if it worked first. We can replace this once it's supported upstream.

Sharding only reduces total time to run the benchmarks by about 70 secs at present, because linter benchmark takes 6 mins alone and holds up the whole process (all the rest are done in ~2 mins). If we can split up the linter benchmark, we can likely get total run time down to around 3 mins. I'll try that in a follow-on PR.

I guess the other upside is we can now add as many benchmarks as we like with impunity - they'll run in parallel, and so won't slow things down overall.
2024-03-18 10:45:44 +08:00
..
auto-labeler.yml chore(deps): bump actions/labeler from 4 to 5 (#1652) 2023-12-11 14:33:48 +08:00
benchmark.yml feat(tasks): shard benchmarks in CI (#2751) 2024-03-18 10:45:44 +08:00
bloat.tmpl ci: update cargo bloat and add cargo-unused (#158) 2023-03-08 22:16:38 +08:00
bloat.yml ci: unify the usage of concurrency.group 2024-02-02 11:20:44 +08:00
cargo-llvm-lines.yml ci: unify the usage of concurrency.group 2024-02-02 11:20:44 +08:00
ci.yml ci: check cargo doc for all crates 2024-02-21 18:03:49 +08:00
codecov.yml chore(deps): update codecov/codecov-action action to v4 (#2305) 2024-02-05 13:08:56 +08:00
ecosystem.yml ci: improve ecosystem ci (#2099) 2024-01-22 17:05:25 +08:00
fuzz.yml ci: unify the usage of concurrency.group 2024-02-02 11:20:44 +08:00
link-check.yml chore(deps): bump actions/checkout from 3 to 4 (#894) 2023-09-11 18:52:08 +08:00
lint-rules.yml feat(tasks): Enable tasks/lint_rules(JS ver) (#2177) 2024-01-26 15:45:05 +08:00
miri.yml feat(span): fix memory leak by implementing inlineable string for oxc_allocator (#2294) 2024-02-04 19:28:23 +08:00
release_cli.yml chore(deps): update softprops/action-gh-release action to v2 (#2676) 2024-03-11 15:33:50 +08:00
release_napi_parser.yml Release napi oxc-parser@v0.4.0 2024-02-11 12:37:44 +08:00
release_oxlint.yml chore(deps): update softprops/action-gh-release action to v2 (#2676) 2024-03-11 15:33:50 +08:00
release_vscode.yml ci: add publish to open vsx registry 2024-02-18 16:55:22 +08:00
release_wasm.yml Release @oxc-parser/wasm v0.0.2 2024-01-30 21:43:41 +08:00
website.yml feat: setup wasm parser for npm (#2221) 2024-01-30 21:40:10 +08:00