Commit graph

67 commits

Author SHA1 Message Date
Boshen
b5ba0e94fa
ci: remove mention of sccache-action 2024-10-08 22:26:50 +08:00
Boshen
2386d7fca2
chore(dprint): format yaml files (#5598) 2024-09-08 14:05:46 +08:00
Boshen
7f7ed7b4dc
ci: add custom pnpm action (#5572) 2024-09-07 16:13:19 +08:00
Boshen
0a5780d328
ci: fix broken benchmark (#5424) 2024-09-03 18:21:39 +08:00
renovate[bot]
cada16c81b
chore(deps): update codspeedhq/action action to v3 (#4522)
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [CodSpeedHQ/action](https://togithub.com/CodSpeedHQ/action) | action |
major | `v2` -> `v3` |

---

### Release Notes

<details>
<summary>CodSpeedHQ/action (CodSpeedHQ/action)</summary>

### [`v3`](https://togithub.com/CodSpeedHQ/action/compare/v2...v3)

[Compare Source](https://togithub.com/CodSpeedHQ/action/compare/v2...v3)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "before 10am on monday" in timezone
Asia/Shanghai, Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View the
[repository job log](https://developer.mend.io/github/oxc-project/oxc).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy40NDAuNyIsInVwZGF0ZWRJblZlciI6IjM3LjQ0MC43IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-29 00:08:54 +00:00
overlookmotel
42a2519b40
ci: run benchmarks on rust-toolchain.toml changes (#4479)
Upgrading to Rust 1.80.0 (#4474) regressed some benchmarks (#4478). We
didn't notice because benchmarks didn't run on the PR. Make benchmarks
run on changes to `rust-toolchain.toml` so we'll be alerted if this
happens again on any future updates.
2024-07-26 11:33:41 +01:00
Boshen
4a50b88af4
ci: remove instructions for sccache
Performance improvement does not out weight cost yet.
2024-07-16 21:24:32 +08:00
Boshen
91dc0f7866
chore(benchmark): add codegen benchmark (#4207) 2024-07-11 23:58:37 +08:00
Dunqing
54b3b6c0da
chore(benchmark): add isolated declarations (#4078) 2024-07-07 17:14:48 +08:00
renovate[bot]
bef7f2b836
chore(deps): update github-actions (#3857)
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [crate-ci/typos](https://togithub.com/crate-ci/typos) | action | patch
| `v1.22.7` -> `v1.22.9` |
|
[mozilla-actions/sccache-action](https://togithub.com/mozilla-actions/sccache-action)
| action | patch | `v0.0.4` -> `v0.0.5` |

---

### Release Notes

<details>
<summary>crate-ci/typos (crate-ci/typos)</summary>

###
[`v1.22.9`](https://togithub.com/crate-ci/typos/releases/tag/v1.22.9)

[Compare
Source](https://togithub.com/crate-ci/typos/compare/v1.22.8...v1.22.9)

#### \[1.22.9] - 2024-06-22

##### Fixes

-   Stop correcting `reoccurrence`

###
[`v1.22.8`](https://togithub.com/crate-ci/typos/compare/v1.22.7...v1.22.8)

[Compare
Source](https://togithub.com/crate-ci/typos/compare/v1.22.7...v1.22.8)

</details>

<details>
<summary>mozilla-actions/sccache-action
(mozilla-actions/sccache-action)</summary>

###
[`v0.0.5`](https://togithub.com/Mozilla-Actions/sccache-action/releases/tag/v0.0.5)

[Compare
Source](https://togithub.com/mozilla-actions/sccache-action/compare/v0.0.4...v0.0.5)

##### What's Changed

- add missing quotes to `configure` example in readme by
[@&#8203;altendky](https://togithub.com/altendky) in
[https://github.com/Mozilla-Actions/sccache-action/pull/103](https://togithub.com/Mozilla-Actions/sccache-action/pull/103)
- chore: fix a typo in a comment by
[@&#8203;Alphare](https://togithub.com/Alphare) in
[https://github.com/Mozilla-Actions/sccache-action/pull/109](https://togithub.com/Mozilla-Actions/sccache-action/pull/109)
- Bump outdated CI workflows and packages by
[@&#8203;orf](https://togithub.com/orf) in
[https://github.com/Mozilla-Actions/sccache-action/pull/114](https://togithub.com/Mozilla-Actions/sccache-action/pull/114)
- Output sccache stats as a notice and a summary table by
[@&#8203;orf](https://togithub.com/orf) in
[https://github.com/Mozilla-Actions/sccache-action/pull/113](https://togithub.com/Mozilla-Actions/sccache-action/pull/113)

##### Dependencies

- Bump [@&#8203;types/node](https://togithub.com/types/node) from
20.12.11 to 20.13.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/Mozilla-Actions/sccache-action/pull/115](https://togithub.com/Mozilla-Actions/sccache-action/pull/115)
- Bump
[@&#8203;typescript-eslint/parser](https://togithub.com/typescript-eslint/parser)
from 7.8.0 to 7.11.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/Mozilla-Actions/sccache-action/pull/117](https://togithub.com/Mozilla-Actions/sccache-action/pull/117)
- Bump braces from 3.0.2 to 3.0.3 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/Mozilla-Actions/sccache-action/pull/120](https://togithub.com/Mozilla-Actions/sccache-action/pull/120)
- Bump ts-jest from 29.1.2 to 29.1.4 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/Mozilla-Actions/sccache-action/pull/118](https://togithub.com/Mozilla-Actions/sccache-action/pull/118)
- Bump prettier from 3.2.5 to 3.3.2 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/Mozilla-Actions/sccache-action/pull/121](https://togithub.com/Mozilla-Actions/sccache-action/pull/121)
- Bump [@&#8203;actions/core](https://togithub.com/actions/core) from
1.10.0 to 1.10.1 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/Mozilla-Actions/sccache-action/pull/95](https://togithub.com/Mozilla-Actions/sccache-action/pull/95)
- Bump eslint-config-prettier from 9.0.0 to 9.1.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/Mozilla-Actions/sccache-action/pull/96](https://togithub.com/Mozilla-Actions/sccache-action/pull/96)
- Bump [@&#8203;actions/github](https://togithub.com/actions/github)
from 5.1.1 to 6.0.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/Mozilla-Actions/sccache-action/pull/97](https://togithub.com/Mozilla-Actions/sccache-action/pull/97)
- Bump [@&#8203;types/node](https://togithub.com/types/node) from
20.10.6 to 20.11.24 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/Mozilla-Actions/sccache-action/pull/102](https://togithub.com/Mozilla-Actions/sccache-action/pull/102)
- Bump eslint-plugin-jest from 27.6.0 to 27.9.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/Mozilla-Actions/sccache-action/pull/101](https://togithub.com/Mozilla-Actions/sccache-action/pull/101)
- Bump undici from 5.28.2 to 5.28.3 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/Mozilla-Actions/sccache-action/pull/99](https://togithub.com/Mozilla-Actions/sccache-action/pull/99)

##### New Contributors

- [@&#8203;altendky](https://togithub.com/altendky) made their first
contribution in
[https://github.com/Mozilla-Actions/sccache-action/pull/103](https://togithub.com/Mozilla-Actions/sccache-action/pull/103)
- [@&#8203;Alphare](https://togithub.com/Alphare) made their first
contribution in
[https://github.com/Mozilla-Actions/sccache-action/pull/109](https://togithub.com/Mozilla-Actions/sccache-action/pull/109)
- [@&#8203;orf](https://togithub.com/orf) made their first contribution
in
[https://github.com/Mozilla-Actions/sccache-action/pull/114](https://togithub.com/Mozilla-Actions/sccache-action/pull/114)

**Full Changelog**:
https://github.com/Mozilla-Actions/sccache-action/compare/v0.0.4...v0.0.5

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "before 10am on monday" in timezone
Asia/Shanghai, Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config help](https://togithub.com/renovatebot/renovate/discussions) if
that's undesired.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/oxc-project/oxc).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy40MTMuMiIsInVwZGF0ZWRJblZlciI6IjM3LjQxMy4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-06-23 18:54:00 +00:00
overlookmotel
24df88099a
ci: enable semantic benchmarks (#3784)
#3776 does seem to have stabilized the benchmark results. Re-enable
semantic benchmarks which we disabled because they were showing wild
variance, and see if they still do.
2024-06-20 14:55:33 +08:00
Boshen
c95d691af6
ci: use node-version-file (#3607) 2024-06-10 22:06:09 +08:00
Boshen
0355c9d116
ci: remove actions/rustup in favor of Boshen/rustup (#3429) 2024-05-27 16:34:18 +08:00
Boshen
d80e9b4187
ci: add sccache to linter benchmark (#3418) 2024-05-26 20:27:24 +08:00
Boshen
3855579eb4 ci: apply default shell: bash to all CI jobs (#3416) 2024-05-26 08:05:11 +00:00
Boshen
68c1bf4018
ci: disable the flaky semantic benchmark 2024-05-24 15:01:11 +08:00
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
Boshen
5683aceae9
ci: improve benchmark build time by only building once (#3201)
relates #3200
2024-05-08 14:54:10 +08:00
Boshen
8fbba03afd
ci: reduce the total number of linter benchmarks (#3172)
closes #2981
2024-05-06 12:54:50 +08:00
Boshen
fe37da63ae
ci: remove some redundant lines that are showing warnings 2024-04-20 14:23:34 +08:00
Boshen
659e891615
ci: skip benchmark-napi because it is flaky (#2918)
The flakiness and all the noise produced by it is starting to hurt
maintenance because I can no longer tell if main or PR is failing
properly :-(

codspeed doesn't have the feature "let it run but don't report as error"
or "different thresholds on different benchmarks"
2024-04-08 19:21:57 +08:00
underfin
b199cb89a2
feat: add oxc sourcemap crate (#2825)
The sourcemap implement port from
[rust-sourcemap](https://github.com/getsentry/rust-sourcemap), but has
some different with it.

- Encode sourcemap at parallel, including quote `sourceContent` and
encode token to `vlq` mappings.
- Avoid `Sourcemap` some methods overhead, like `SourceMap::tokens()`
caused extra overhead at common cases. Here using `SourceViewToken` to
instead of it.
2024-03-28 19:36:38 +08:00
Boshen
06a81409f1
ci: actions/checkout@v4 -> taiki-e/checkout-action@v1 (#2811)
This does not depend on node.js, and sets persist-credentials to false
2024-03-26 01:24:51 +08:00
overlookmotel
29d8a64bc9
perf(tasks): speed up NAPI parser benchmark build (#2787)
The `parser_napi` pseudo-benchmark does not depend on any Oxc crates, so
remove all dependencies for this benchmark. This reduces build time of
this benchmark on CI by ~1 minute.

After #2780, NAPI parser benchmark sometimes took the longest of all the
benchmarks, so making it faster reduces time to complete the benchmarks
overall.
2024-03-22 12:09:32 +00:00
overlookmotel
2fe158d0d6
refactor(tasks): separate NAPI benchmark CI job (#2783)
Not a substantive change. This just prevents the other benchmark jobs
showing greyed-out "Build NAPI benchmark" steps, and makes the workflow
file easier to follow.

CI tasks were stuck at "Waiting for status to be reported", and unable
to merge until they passed. Problem was that CI task doesn't run if only
`.yml` files are altered. So have added a dummy comment to a random Rust
file just to get it to run. Will make another PR after to remove the
comment again!
2024-03-21 23:30:38 +00:00
overlookmotel
508091314f
feat(tasks): benchmark NodeJS parser (#2770)
Add NodeJS parser to benchmarks.

Previous attempt #2724 did not work due CodSpeed producing very
inaccurate results (https://github.com/CodSpeedHQ/action/issues/96).

This version runs the actual benchmarks without CodSpeed's
instrumentation. Then another faux-benchmark runs within Codspeed's
instrumented action and just performs meaningless calculations in a loop
for as long as is required to take same amount of time as the original
uninstrumented benchmarks took.

It's unfortunate that we therefore don't get flame graphs on CodSpeed,
but this seems to be the best we can do for now.
2024-03-20 05:06:09 +00:00
overlookmotel
5edd196836
fix(tasks): fix codspeed upload for PRs from forks (#2759)
#2751 contained a mistake, which was pointed out by Adrian @ CodSpeed on
Discord.

For PRs from forks, `CODSPEED_TOKEN` is not provided, and the submission
to CodSpeed is "tokenless". #2751 wrongly assumed all runs are submitted
with a token. This PR fixes that.
2024-03-18 20:29:16 +00:00
overlookmotel
68f304faa3
feat(tasks): shard linter benchmarks in CI (#2752)
Follow-on from #2751. Further shards linter benchmarks so each fixture runs in its own job.

This reduces total time to run benchmarks by another ~75 secs. So approx 2.5 mins shaved off in total.
2024-03-18 10:50:44 +08:00
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
overlookmotel
78f1adc043
chore(napi): remove oxc-parser from benchmarks (#2738)
#2724 added CodSpeed benchmarks for NodeJS `oxc-parser`.

Unfortunately it turns out CodSpeed's results are wildly inaccurate.
Unclear why, but have raised an issue with CodSpeed
(https://github.com/CodSpeedHQ/action/issues/96). In meantime it seems
best to remove the benchmarks as they're not useful at present.
2024-03-16 23:39:23 +08:00
overlookmotel
af47aebc7c
chore(napi): add oxc-parser to benchmarks (#2724)
Closes #2616.

Adds benchmarks for NodeJS NAPI build. Measurement includes `JSON.parse`
of the AST on JS side, since that's how it'll be used 99% of the time.

Benchmarks run against same files as Rust parser benchmarks, so we can
see the overhead of transferring AST to JS.
2024-03-15 19:45:02 +08:00
Boshen
8bb1084863
feat(codegen): add sourcemap (#2565)
Co-authored-by: underfin <2218301630@qq.com>
2024-03-03 14:44:49 +08:00
overlookmotel
1baf9c33d2
ci: run benchmarks on branches called bench-* (#2365)
I've recently switched over from hacking on a fork to working directly
on upstream, in order to be able to use Graphite.

One thing I miss now is ability to create branches and run CodSpeed on
them while developing. Compared to running benches locally, CodSpeed has
the advantage of giving you a visual history, showing how each commit
you push moves the dials.

This PR makes the benchmarks run for any branch named `bench-*`, in
order to enable this workflow on upstream, without having to open a
draft PR for every experiment.
2024-02-09 20:57:37 +08:00
Boshen
5d9b0f3312
ci: speed up benchmark build (#2343)
closes #2299

Managed to figure out what `cargo codspeed build` is doing :-)
2024-02-08 19:47:50 +08:00
Boshen
a928eeaff8
ci: skip benchmark for codegen 2024-02-06 22:55:52 +08:00
Boshen
601153fe8f
refactor(benchmark): use more complicated files (#1811)
closes #1806

---------

Co-authored-by: Dunqing <dengqing0821@gmail.com>
2023-12-25 17:27:02 +08:00
Boshen
161d206a81
ci: add debug symbols to benchmark (#1717) 2023-12-18 15:31:13 +08:00
dependabot[bot]
5e4bc65741
chore(deps): bump CodSpeedHQ/action from 1 to 2 (#1624)
Bumps [CodSpeedHQ/action](https://github.com/codspeedhq/action) from 1
to 2.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/codspeedhq/action/releases">CodSpeedHQ/action's
releases</a>.</em></p>
<blockquote>
<h2>v2.0.0</h2>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/CodSpeedHQ/action/compare/v1...v2.0.0">https://github.com/CodSpeedHQ/action/compare/v1...v2.0.0</a></p>
<p>This major update greatly simplifies the action and moves all the
core logic to the <a
href="https://github.com/CodSpeedHQ/runner">https://github.com/CodSpeedHQ/runner</a>
repo.</p>
<p>Updating is as easy as changing <code>CodSpeedHQ/action@v1</code> to
<code>CodSpeedHQ/action@v2</code>.</p>
<h2>What's changed</h2>
<ul>
<li>feat: integrate the native runner with a composite action by <a
href="https://github.com/art049"><code>@​art049</code></a> and <a
href="https://github.com/adriencaccia"><code>@​adriencaccia</code></a>
in <a
href="https://redirect.github.com/CodSpeedHQ/action/pull/86">CodSpeedHQ/action#86</a></li>
</ul>
<h3>Breaking changes</h3>
<ul>
<li><code>upload_url</code> input is now <code>upload-url</code></li>
<li><code>pytest-codspeed</code> is no longer installed automatically by
this action</li>
</ul>
<h2>v1.8.1</h2>
<h2>What's Changed</h2>
<ul>
<li>fix: update apt registry before installing valgrind by <a
href="https://github.com/adriencaccia"><code>@​adriencaccia</code></a>
in <a
href="https://redirect.github.com/CodSpeedHQ/action/pull/80">CodSpeedHQ/action#80</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/CodSpeedHQ/action/compare/v1.8.0...v1.8.1">https://github.com/CodSpeedHQ/action/compare/v1.8.0...v1.8.1</a></p>
<h2>v1.8.0</h2>
<h2>What's Changed</h2>
<h3>Added</h3>
<ul>
<li>Add the <code>working-directory</code> input parameter by <a
href="https://github.com/art049"><code>@​art049</code></a> in <a
href="https://redirect.github.com/CodSpeedHQ/action/pull/77">CodSpeedHQ/action#77</a></li>
</ul>
<h3>Internals</h3>
<ul>
<li>Update documentation examples by <a
href="https://github.com/adriencaccia"><code>@​adriencaccia</code></a>
in <a
href="https://redirect.github.com/CodSpeedHQ/action/pull/76">CodSpeedHQ/action#76</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/CodSpeedHQ/action/compare/v1.7.1...v1.8.0">https://github.com/CodSpeedHQ/action/compare/v1.7.1...v1.8.0</a></p>
<h2>v1.7.1</h2>
<h2>🎉 What's Changed</h2>
<ul>
<li>Prepare for release on GitHub Action Marketplace</li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/CodSpeedHQ/action/compare/v1.7.0...v1.7.1">https://github.com/CodSpeedHQ/action/compare/v1.7.0...v1.7.1</a></p>
<h2>v1.7.0</h2>
<h2>🎉 What's Changed</h2>
<ul>
<li>
<p>A <a href="https://github.com/CodSpeedHQ/valgrind-codspeed">fork of
valgrind</a> is now used, allowing us to <a
href="https://docs.codspeed.io/features/trace-generation/">generate
execution traces</a> with Node and Python.</p>
</li>
<li>
<p>V8 flags previously set as an environment variable
<code>CODSPEED_V8_FLAGS</code> are now handled directly by the
integration library and injected to Nodejs through our <a
href="https://github.com/CodSpeedHQ/action/blob/main/dist/bin/node">custom
node executable</a>.</p>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/CodSpeedHQ/action/blob/main/CHANGELOG.md">CodSpeedHQ/action's
changelog</a>.</em></p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="3cb272459e"><code>3cb2724</code></a>
Release v2.0.1 🚀</li>
<li><a
href="6790ba286f"><code>6790ba2</code></a>
feat: simplify action output</li>
<li><a
href="0c6eabe26d"><code>0c6eabe</code></a>
fix: quiet the codspeed-runner installation</li>
<li><a
href="4f1d7b4ec1"><code>4f1d7b4</code></a>
Release v2.0.0 🚀</li>
<li><a
href="de30d2b7e6"><code>de30d2b</code></a>
chore: use full version in script and stop relying on pnpm</li>
<li><a
href="5a53587953"><code>5a53587</code></a>
chore(ci): add multiline check</li>
<li><a
href="e2bcafd32c"><code>e2bcafd</code></a>
feat: integrate the native runner with a composite action</li>
<li><a
href="e8372ebb5f"><code>e8372eb</code></a>
chore: update readme with vitest</li>
<li>See full diff in <a
href="https://github.com/codspeedhq/action/compare/v1...v2">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=CodSpeedHQ/action&package-manager=github_actions&previous-version=1&new-version=2)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-12-04 15:26:27 +08:00
Boshen
3a00382d28
ci: add warmup strategy to benchmark ci cache 2023-11-29 15:45:09 +08:00
Boshen
ca87fcfff3
ci(benchmark): use moonrepo/setup-rust to speed up compilation by caching everything (#1568) 2023-11-28 16:03:18 +08:00
Boshen
a5734db437
ci: add timeout to benchmark 2023-11-16 10:54:38 +08:00
Boshen
540fa03ec0
feat(benchmark): add transformer benchmark (#919) 2023-09-16 17:09:27 +08:00
dependabot[bot]
5de4841a3e
chore(deps): bump actions/checkout from 3 to 4 (#894) 2023-09-11 18:52:08 +08:00
Boshen
1d03ec32ff
ci(benchmark): install toolchain first 2023-09-09 15:46:34 +08:00
Boshen
56aaf31fb1
refactor(benchmark): use codspeed for all benchmarks (#839) 2023-09-02 20:35:48 +08:00
dependabot[bot]
40d5f3b841
chore(deps): bump peter-evans/create-or-update-comment from 2 to 3 (#824)
Bumps
[peter-evans/create-or-update-comment](https://github.com/peter-evans/create-or-update-comment)
from 2 to 3.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/peter-evans/create-or-update-comment/releases">peter-evans/create-or-update-comment's
releases</a>.</em></p>
<blockquote>
<h2>Create or Update Comment v3.0.0</h2>
<h2>What's new</h2>
<ul>
<li>Now supports replacing reactions on a comment by setting input
<code>reactions-edit-mode</code> to <code>replace</code>. The default
behaviour has not changed and will <code>append</code> reactions.</li>
<li>Chose how the action should append the comment body with input
<code>append-separator</code>. The default behaviour is to add a
<code>newline</code>. Other options are <code>space</code> and
<code>none</code>.</li>
<li><code>body-file</code> is deprecated in favour of
<code>body-path</code>. The behaviour is unchanged.</li>
</ul>
<h2>What's Changed</h2>
<ul>
<li>v3 by <a
href="https://github.com/peter-evans"><code>@​peter-evans</code></a> in
<a
href="https://redirect.github.com/peter-evans/create-or-update-comment/pull/161">peter-evans/create-or-update-comment#161</a></li>
<li>Update some links in the README by <a
href="https://github.com/Kurt-von-Laven"><code>@​Kurt-von-Laven</code></a>
in <a
href="https://redirect.github.com/peter-evans/create-or-update-comment/pull/152">peter-evans/create-or-update-comment#152</a></li>
<li>9 dependency updates by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a
href="https://github.com/Kurt-von-Laven"><code>@​Kurt-von-Laven</code></a>
made their first contribution in <a
href="https://redirect.github.com/peter-evans/create-or-update-comment/pull/152">peter-evans/create-or-update-comment#152</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/peter-evans/create-or-update-comment/compare/v2.1.1...v3.0.0">https://github.com/peter-evans/create-or-update-comment/compare/v2.1.1...v3.0.0</a></p>
<h2>Create or Update Comment v2.1.1</h2>
<p>⚙️ Fixes the recent Json5 vulnerability.</p>
<h2>What's Changed</h2>
<ul>
<li>11 dependency updates by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/peter-evans/create-or-update-comment/compare/v2.1.0...v2.1.1">https://github.com/peter-evans/create-or-update-comment/compare/v2.1.0...v2.1.1</a></p>
<h2>Create or Update Comment v2.1.0</h2>
<p> Adds input <code>body-file</code>, the path to a file containing
the comment body.</p>
<h2>What's Changed</h2>
<ul>
<li>Replace set-output by <a
href="https://github.com/peter-evans"><code>@​peter-evans</code></a> in
<a
href="https://redirect.github.com/peter-evans/create-or-update-comment/pull/130">peter-evans/create-or-update-comment#130</a></li>
<li>Bump chuhlomin/render-template from 1.5 to 1.6 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/create-or-update-comment/pull/132">peter-evans/create-or-update-comment#132</a></li>
<li>Support reading body from a file by <a
href="https://github.com/umanghome"><code>@​umanghome</code></a> in <a
href="https://redirect.github.com/peter-evans/create-or-update-comment/pull/115">peter-evans/create-or-update-comment#115</a></li>
<li>Add input body-file by <a
href="https://github.com/peter-evans"><code>@​peter-evans</code></a> in
<a
href="https://redirect.github.com/peter-evans/create-or-update-comment/pull/133">peter-evans/create-or-update-comment#133</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a href="https://github.com/umanghome"><code>@​umanghome</code></a>
made their first contribution in <a
href="https://redirect.github.com/peter-evans/create-or-update-comment/pull/115">peter-evans/create-or-update-comment#115</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/peter-evans/create-or-update-comment/compare/v2.0.1...v2.1.0">https://github.com/peter-evans/create-or-update-comment/compare/v2.0.1...v2.1.0</a></p>
<h2>Create or Update Comment v2.0.1</h2>
<p>⚙️ Bumps <code>@actions/core</code> to transition away from <a
href="https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/">deprecated
runner commands</a>.</p>
<h2>What's Changed</h2>
<ul>
<li>Add workflow permissions by <a
href="https://github.com/peter-evans"><code>@​peter-evans</code></a> in
<a
href="https://redirect.github.com/peter-evans/create-or-update-comment/pull/120">peter-evans/create-or-update-comment#120</a></li>
<li>9 dependency updates by <a
href="https://github.com/github-actions"><code>@​github-actions</code></a>
and <a
href="https://github.com/dependabot">https://github.com/dependabot</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/peter-evans/create-or-update-comment/compare/v2.0.0...v2.0.1">https://github.com/peter-evans/create-or-update-comment/compare/v2.0.0...v2.0.1</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="c6c9a1a660"><code>c6c9a1a</code></a>
Update distribution (<a
href="https://redirect.github.com/peter-evans/create-or-update-comment/issues/210">#210</a>)</li>
<li><a
href="ce3fa353c4"><code>ce3fa35</code></a>
fix: truncate long comment bodies during comment update too (<a
href="https://redirect.github.com/peter-evans/create-or-update-comment/issues/205">#205</a>)</li>
<li><a
href="5825e577e3"><code>5825e57</code></a>
Bump eslint from 8.41.0 to 8.42.0 (<a
href="https://redirect.github.com/peter-evans/create-or-update-comment/issues/209">#209</a>)</li>
<li><a
href="507508615a"><code>5075086</code></a>
Bump <code>@​typescript-eslint/parser</code> from 5.59.8 to 5.59.9 (<a
href="https://redirect.github.com/peter-evans/create-or-update-comment/issues/208">#208</a>)</li>
<li><a
href="33041066d9"><code>3304106</code></a>
Bump <code>@​typescript-eslint/eslint-plugin</code> from 5.59.8 to
5.59.9 (<a
href="https://redirect.github.com/peter-evans/create-or-update-comment/issues/207">#207</a>)</li>
<li><a
href="84d3b35097"><code>84d3b35</code></a>
Bump eslint-plugin-github from 4.7.0 to 4.8.0 (<a
href="https://redirect.github.com/peter-evans/create-or-update-comment/issues/206">#206</a>)</li>
<li><a
href="542d5c2467"><code>542d5c2</code></a>
Bump <code>@​typescript-eslint/eslint-plugin</code> from 5.59.7 to
5.59.8 (<a
href="https://redirect.github.com/peter-evans/create-or-update-comment/issues/203">#203</a>)</li>
<li><a
href="580d37cf7c"><code>580d37c</code></a>
Bump <code>@​typescript-eslint/parser</code> from 5.59.7 to 5.59.8 (<a
href="https://redirect.github.com/peter-evans/create-or-update-comment/issues/204">#204</a>)</li>
<li><a
href="f8a0c20f69"><code>f8a0c20</code></a>
Bump <code>@​types/node</code> from 18.16.14 to 18.16.16 (<a
href="https://redirect.github.com/peter-evans/create-or-update-comment/issues/202">#202</a>)</li>
<li><a
href="6534843181"><code>6534843</code></a>
Bump <code>@​typescript-eslint/eslint-plugin</code> from 5.59.6 to
5.59.7 (<a
href="https://redirect.github.com/peter-evans/create-or-update-comment/issues/201">#201</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/peter-evans/create-or-update-comment/compare/v2...v3">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=peter-evans/create-or-update-comment&package-manager=github_actions&previous-version=2&new-version=3)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-01 11:39:16 +08:00
Boshen
1a591c7a2d
ci: build benchmark binary separately for reducing total execution time (#789)
benchmark execution time reduced from 15 mins to 12 mins. Time reduction
should be more noticeable for large code changes which require longer
compile time.
2023-08-25 14:40:08 +08:00
Boshen
5baa9b9d45
ci: filter out more files that trigger the CI jobs 2023-08-08 14:13:39 +08:00
Boshen
b338f5f53d
ci: ignore more crates from when running benchmark 2023-07-27 18:11:37 +08:00
Boshen
789626e01c
perf(resolver): add file system cache (#547) 2023-07-14 16:02:13 +08:00