oxc/tasks
overlookmotel f0cbbbe28c
ci: build each benchmark only with deps it needs (#3221)
This PR builds on #3201 to further speed up the benchmarks and reduce CI
time.

* Build and run each benchmark as separate job (like before).
* But now each bench is only built with the dependencies it needs.
* For linter benchmarks, build benchmark in 1 job (like #3201 does).
* Run each linter fixture in a separate job as they're slow.

This reduces total time to complete benchmarks from between 6m-7m to
~4m40s.

All the individual jobs complete in under 1m30s, except for building
linter benchmark which takes 2m30s. So there won't be the problem of
blocking the CI queue that there was before.

NB: I did try this before, and didn't see a benefit. But I realized
today what I was doing wrong - it only works once the caches are
populated by a previous run on main branch.

So the CI times in this PR won't look good, but once it's merged to
main, it will take effect. Here it is running on main branch of my fork:

https://github.com/overlookmotel/oxc/actions/runs/9030511348

I also added a step to delete the temp artefacts which aren't needed
once the run has completed.
2024-05-10 22:01:24 +08:00
..
benchmark ci: build each benchmark only with deps it needs (#3221) 2024-05-10 22:01:24 +08:00
common ci: build each benchmark only with deps it needs (#3221) 2024-05-10 22:01:24 +08:00
coverage fix(parser): correctly parse cls.fn<C> = x (#3208) 2024-05-09 10:23:45 +08:00
javascript_globals chore: update Cargo.toml and deny.yaml 2024-03-05 16:31:05 +08:00
lint_rules chore(tasks/lint_rules): remove the now fixed @ts-expect-error 2024-05-07 23:21:12 +08:00
minsize chore(minsize): remove brotlic because it takes too long to compile (#2954) 2024-04-13 13:24:25 +08:00
prettier_conformance chore(deps): update dependency rust to v1.78.0 (#3151) 2024-05-03 00:01:42 +08:00
rulegen chore(rulegen): default rule to nursery 2024-05-06 17:17:36 +08:00
transform_conformance fix(parser): correctly parse cls.fn<C> = x (#3208) 2024-05-09 10:23:45 +08:00
libs.txt refactor(benchmark): use more complicated files (#1811) 2023-12-25 17:27:02 +08:00