Boshen
763ade0fb0
ci: fix release napi
2025-03-07 16:21:45 +08:00
Boshen
80820085bb
ci: remove --dry-run from pnpm napi pre-publish
2025-03-07 15:04:59 +08:00
Boshen
0bbb197c87
ci(npm): rework release pipeline ( #9581 )
2025-03-07 11:49:50 +08:00
overlookmotel
2985bf3d37
ci(wasm): check wasm32-wasip1-threads build ( #9569 )
...
Duplicate of #9555 , but just stacked on top of #9566 .
`napi-rs` for some reason omits the `export * from '@oxc-project/types';` line from `index.d.ts` when building for WASM.
I don't know how to fix that, so added a hacky script to fix up `index.d.ts` manually. This is not at all ideal, but at least it now compiles and CI passes.
2025-03-06 01:34:21 +00:00
overlookmotel
a59b9fe4cb
ci(ast_tools): move AST changes watch list file ( #9564 )
...
Pure refactor. Move the YAML file for AST changes watch list to a `generated` sub-directory. This follows our convention that all generated files go in a `generated` directory.
2025-03-05 13:22:59 +00:00
Boshen
679681c18d
ci: remove running tests in reusable_release_napi.yml
...
It's already run in previous steps.
2025-03-05 14:41:08 +08:00
overlookmotel
a9889f5c9a
ci(benchmarks): benchmark NAPI parser ( #9519 )
...
Add benchmarks for NAPI parser. Benchmarks cover both "standard" mode and "raw transfer" mode.
Codspeed say they've sorted out the problems with wide variance in NodeJS benchmarks, so hopefully they won't wave all over the place, the way they did last year when we first tried to add these benchmarks.
What we also found last year is that Codspeed's measures didn't reflect real-world wallclock measurements at all when comparing code running on Rust side vs JS side. Raw transfer moves a lot of work from Rust side to JS side, and so likely the bench results will be misleading if comparing "standard" vs "raw".
I've added benchmarks for both, not to compare the 2, but because I think there's room to improve the performance of both "standard" and "raw" independently.
2025-03-05 02:21:01 +00:00
overlookmotel
d55dbe2d78
feat(ast/estree): raw transfer (experimental) ( #9516 )
...
First version of raw transfer (#2409 ).
Provides a solid speed-up transferring data from Rust to JS. Further iterations will speed it up further.
Tests check that output via raw transfer matches output via JSON transfer exactly for all of Test262 which Acorn is able to parse. It should also match for TypeScript and JSX, but that's not covered by tests as yet.
However, I think we should consider this experimental for now because there are a few rough edges (discussed below).
Therefore I've put it behind an "experimental" flag:
```js
const ret = parseSync(filename, code, { experimentalRawTransfer: true });
console.log(ret.program);
```
### How it works
* JS creates an `ArrayBuffer` and passes it to Rust.
* Rust creates an `Allocator` using that buffer as its backing memory.
* Rust parses the AST into that allocator (including comments).
* Rust also converts module record and errors into arena types, and writes them into the allocator.
* Rust writes into the end of the buffer the offset at which data begins in the buffer.
* Control passes back to JS.
* JS code decodes data in the buffer, and creates JS objects fitting the ESTree shape.
There is *no* serialization step on Rust side. There is no JSON encoding or decoding involved. These are the main sources of the speed gain.
### Preconditions
The reason all this works is that all AST types (and other transferred types) are `#[repr(C)]`. So the memory layouts of those types are specified, and can be statically calculated.
`oxc_ast_tools` does those layout calculations, and generates the JS-side deserializer code based on its knowledge of what offsets struct fields are at, what the discriminants of enums are etc.
### Rough edges
There are a few rough edges.
#### `Allocator::from_raw_parts`
This PR adds a method `Allocator::from_raw_parts`. It creates a `bumpalo::Bump` that uses an existing block of memory as the allocator's backing memory. This ability is required, but it's not an API that `bumpalo` offers (and the maintainer was not willing to add it).
The implementation of `Allocator::from_raw_parts` is extremely hacky. It depends on internal implementation details of `bumpalo` which are not specified. And the method used to determine the memory layout of `Bump` depends on unspecified details of Rust's memory model. So, while it does seem to work in practice, it is, strictly speaking, UB.
It could break in a future Rust version, or with esoteric compiler flags e.g. [`-Zrandomize-layout`](https://doc.rust-lang.org/nightly/unstable-book/compiler-flags/randomize-layout.html ). And it could break if we update `bumpalo` from the version we're currently using. For this reason, this PR pins the version of `bumpalo` in `Cargo.toml`.
I think this OK for now, but it's unpleasantly fragile.
We can resolve all these problems by replacing `bumpalo` with our own arena allocator (which I think we should do anyway, for other reasons).
In the meantime, `Allocator::from_raw_parts` is behind a cargo feature `from_raw_parts`, to avoid it being used anywhere else in our codebase.
#### Unspecified type layouts
As noted above, all AST types are `#[repr(C)]`, so their layout is specified and stable. There are a few types which are outside of our control, though:
1. `Vec<T>`. We use `allocator_api2::vec::Vec`, which is not `#[repr(C)]`.
2. `&str`. I don't believe the layout of this type is specified.
3. `Option<T>`.
For production-grade stability, we need to try to work around these.
`Vec` - we should replace `allocator_api2::vec::Vec` with our own `Vec` type. This will also allow us to reduce its size (https://github.com/oxc-project/backlog/issues/18 ).
`&str` - again, we need our own string slice type, to work around the problem of lone surrogates (#3526 ) and to make it more efficient (https://github.com/oxc-project/backlog/issues/46 ). We can make its memory layout stable at the same time.
`Option<T>` is tricky. We don't want to replace Rust's `Option` because of the niche optimization benefits it gives. I'm not sure this one is 100% soluable, but Rust gives at least *some* guarantees about the layout of `Option`. Maybe we can avoid using `Option` in the AST in ways which go outside that specification.
#### Large buffers
For speed, raw transfer requires the entire AST to be in a single contiguous memory region, and for the start of that region to be aligned on 4 GiB.
JS does not support 64-bit integers, so offset calculations are much cheaper when the buffer is aligned on 4 GiB and no larger than 4 GiB - because then all pointers have the same value in their top 32 bits. So the pointer can be treated as a 32-bit value (bottom 32 bits only). JS can handle 32 bit integers no problem.
When creating a large buffer on JS side, it *mostly* ends up aligned on a 4 GiB boundary anyway, but occasionally it doesn't. So in order to ensure the buffer has at least 1 region within it which is aligned on 4 GiB, and 2 GiB in size, we have to create a 6 GiB buffer.
I *think* this is OK. On systems with virtual memory, allocating 6 GiB only reserves 6 GiB of *virtual* memory. Physical memory is only consumed when the pages of that allocation are actually written to.
But I may be missing something here, and memory exhaustion might be a danger. I think we need some real-world usage to find out.
*Possibly* we could reduce the need for so much memory if JS deserializer called into a small WASM module to do offset calculations. WASM can work with `i64` values. Or there may be other solutions.
#### Endianness
Currently only little-endian systems are supported. Probably in practice this doesn't matter much, but it'd be ideal to cover big-endian too.
2025-03-04 14:40:35 +00:00
renovate[bot]
3ded4a6780
chore(deps): update crate-ci/typos action to v1.30.1 ( #9528 )
2025-03-04 10:55:14 +08:00
renovate
1ed18bdafa
chore(deps): update github-actions ( #9485 )
...
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [actions/cache](https://redirect.github.com/actions/cache ) | action | patch | `v4.2.1` -> `v4.2.2` |
| [actions/download-artifact](https://redirect.github.com/actions/download-artifact ) | action | patch | `v4.1.8` -> `v4.1.9` |
| [codecov/codecov-action](https://redirect.github.com/codecov/codecov-action ) | action | minor | `v5.3.1` -> `v5.4.0` |
| [peter-evans/create-pull-request](https://redirect.github.com/peter-evans/create-pull-request ) | action | patch | `v7.0.6` -> `v7.0.7` |
| [taiki-e/install-action](https://redirect.github.com/taiki-e/install-action ) | action | patch | `v2.49.1` -> `v2.49.10` |
---
### Release Notes
<details>
<summary>actions/cache (actions/cache)</summary>
### [`v4.2.2`](https://redirect.github.com/actions/cache/releases/tag/v4.2.2 )
[Compare Source](https://redirect.github.com/actions/cache/compare/v4.2.1...v4.2.2 )
##### What's Changed
> \[!IMPORTANT]
> As a reminder, there were important backend changes to release v4.2.0, see [those release notes](https://redirect.github.com/actions/cache/releases/tag/v4.2.0 ) and [the announcement](https://redirect.github.com/actions/cache/discussions/1510 ) for more details.
- Bump [@​actions/cache](https://redirect.github.com/actions/cache ) to v4.0.2 by [@​robherley](https://redirect.github.com/robherley ) in [https://github.com/actions/cache/pull/1560 ](https://redirect.github.com/actions/cache/pull/1560 )
**Full Changelog**: https://github.com/actions/cache/compare/v4.2.1...v4.2.2
</details>
<details>
<summary>actions/download-artifact (actions/download-artifact)</summary>
### [`v4.1.9`](https://redirect.github.com/actions/download-artifact/releases/tag/v4.1.9 )
[Compare Source](https://redirect.github.com/actions/download-artifact/compare/v4.1.8...v4.1.9 )
##### What's Changed
- Add workflow file for publishing releases to immutable action package by [@​Jcambass](https://redirect.github.com/Jcambass ) in [https://github.com/actions/download-artifact/pull/354 ](https://redirect.github.com/actions/download-artifact/pull/354 )
- docs: small migration fix by [@​froblesmartin](https://redirect.github.com/froblesmartin ) in [https://github.com/actions/download-artifact/pull/370 ](https://redirect.github.com/actions/download-artifact/pull/370 )
- Update MIGRATION.md by [@​andyfeller](https://redirect.github.com/andyfeller ) in [https://github.com/actions/download-artifact/pull/372 ](https://redirect.github.com/actions/download-artifact/pull/372 )
- Update artifact package to 2.2.2 by [@​yacaovsnc](https://redirect.github.com/yacaovsnc ) in [https://github.com/actions/download-artifact/pull/380 ](https://redirect.github.com/actions/download-artifact/pull/380 )
##### New Contributors
- [@​Jcambass](https://redirect.github.com/Jcambass ) made their first contribution in [https://github.com/actions/download-artifact/pull/354 ](https://redirect.github.com/actions/download-artifact/pull/354 )
- [@​froblesmartin](https://redirect.github.com/froblesmartin ) made their first contribution in [https://github.com/actions/download-artifact/pull/370 ](https://redirect.github.com/actions/download-artifact/pull/370 )
- [@​andyfeller](https://redirect.github.com/andyfeller ) made their first contribution in [https://github.com/actions/download-artifact/pull/372 ](https://redirect.github.com/actions/download-artifact/pull/372 )
- [@​yacaovsnc](https://redirect.github.com/yacaovsnc ) made their first contribution in [https://github.com/actions/download-artifact/pull/380 ](https://redirect.github.com/actions/download-artifact/pull/380 )
**Full Changelog**: https://github.com/actions/download-artifact/compare/v4...v4.1.9
</details>
<details>
<summary>codecov/codecov-action (codecov/codecov-action)</summary>
### [`v5.4.0`](https://redirect.github.com/codecov/codecov-action/blob/HEAD/CHANGELOG.md#v540 )
[Compare Source](https://redirect.github.com/codecov/codecov-action/compare/v5.3.1...v5.4.0 )
##### What's Changed
- update wrapper submodule to 0.2.0, add recurse_submodules arg by [@​matt-codecov](https://redirect.github.com/matt-codecov ) in [https://github.com/codecov/codecov-action/pull/1780 ](https://redirect.github.com/codecov/codecov-action/pull/1780 )
- build(deps): bump actions/upload-artifact from 4.6.0 to 4.6.1 by [@​app/dependabot](https://redirect.github.com/app/dependabot ) in [https://github.com/codecov/codecov-action/pull/1775 ](https://redirect.github.com/codecov/codecov-action/pull/1775 )
- build(deps): bump ossf/scorecard-action from 2.4.0 to 2.4.1 by [@​app/dependabot](https://redirect.github.com/app/dependabot ) in [https://github.com/codecov/codecov-action/pull/1776 ](https://redirect.github.com/codecov/codecov-action/pull/1776 )
- build(deps): bump github/codeql-action from 3.28.9 to 3.28.10 by [@​app/dependabot](https://redirect.github.com/app/dependabot ) in [https://github.com/codecov/codecov-action/pull/1777 ](https://redirect.github.com/codecov/codecov-action/pull/1777 )
- Clarify in README that `use_pypi` bypasses integrity checks too by [@​webknjaz](https://redirect.github.com/webknjaz ) in [https://github.com/codecov/codecov-action/pull/1773 ](https://redirect.github.com/codecov/codecov-action/pull/1773 )
- Fix use of safe.directory inside containers by [@​Flamefire](https://redirect.github.com/Flamefire ) in [https://github.com/codecov/codecov-action/pull/1768 ](https://redirect.github.com/codecov/codecov-action/pull/1768 )
- Fix description for report_type input by [@​craigscott-crascit](https://redirect.github.com/craigscott-crascit ) in [https://github.com/codecov/codecov-action/pull/1770 ](https://redirect.github.com/codecov/codecov-action/pull/1770 )
- build(deps): bump github/codeql-action from 3.28.8 to 3.28.9 by [@​app/dependabot](https://redirect.github.com/app/dependabot ) in [https://github.com/codecov/codecov-action/pull/1765 ](https://redirect.github.com/codecov/codecov-action/pull/1765 )
- Fix a typo in the example by [@​miranska](https://redirect.github.com/miranska ) in [https://github.com/codecov/codecov-action/pull/1758 ](https://redirect.github.com/codecov/codecov-action/pull/1758 )
- build(deps): bump github/codeql-action from 3.28.5 to 3.28.8 by [@​app/dependabot](https://redirect.github.com/app/dependabot ) in [https://github.com/codecov/codecov-action/pull/1757 ](https://redirect.github.com/codecov/codecov-action/pull/1757 )
- build(deps): bump github/codeql-action from 3.28.1 to 3.28.5 by [@​app/dependabot](https://redirect.github.com/app/dependabot ) in [https://github.com/codecov/codecov-action/pull/1753 ](https://redirect.github.com/codecov/codecov-action/pull/1753 )
**Full Changelog**: https://github.com/codecov/codecov-action/compare/v5.3.1..v5.4.0
</details>
<details>
<summary>peter-evans/create-pull-request (peter-evans/create-pull-request)</summary>
### [`v7.0.7`](https://redirect.github.com/peter-evans/create-pull-request/releases/tag/v7.0.7 ): Create Pull Request v7.0.7
[Compare Source](https://redirect.github.com/peter-evans/create-pull-request/compare/v7.0.6...v7.0.7 )
⚙️ Fixes an issue with commit signing where modifications to the same file in multiple commits squash into the first commit.
#### What's Changed
- build(deps): bump [@​octokit/core](https://redirect.github.com/octokit/core ) from 6.1.2 to 6.1.3 by [@​dependabot](https://redirect.github.com/dependabot ) in [https://github.com/peter-evans/create-pull-request/pull/3593 ](https://redirect.github.com/peter-evans/create-pull-request/pull/3593 )
- build(deps-dev): bump [@​types/node](https://redirect.github.com/types/node ) from 18.19.68 to 18.19.70 by [@​dependabot](https://redirect.github.com/dependabot ) in [https://github.com/peter-evans/create-pull-request/pull/3594 ](https://redirect.github.com/peter-evans/create-pull-request/pull/3594 )
- Update distribution by [@​actions-bot](https://redirect.github.com/actions-bot ) in [https://github.com/peter-evans/create-pull-request/pull/3603 ](https://redirect.github.com/peter-evans/create-pull-request/pull/3603 )
- build(deps-dev): bump typescript from 5.7.2 to 5.7.3 by [@​dependabot](https://redirect.github.com/dependabot ) in [https://github.com/peter-evans/create-pull-request/pull/3610 ](https://redirect.github.com/peter-evans/create-pull-request/pull/3610 )
- build(deps): bump octokit dependencies by [@​peter-evans](https://redirect.github.com/peter-evans ) in [https://github.com/peter-evans/create-pull-request/pull/3618 ](https://redirect.github.com/peter-evans/create-pull-request/pull/3618 )
- docs: add workflow tip for showing message via workflow command by [@​ybiquitous](https://redirect.github.com/ybiquitous ) in [https://github.com/peter-evans/create-pull-request/pull/3626 ](https://redirect.github.com/peter-evans/create-pull-request/pull/3626 )
- build(deps-dev): bump eslint-plugin-prettier from 5.2.1 to 5.2.3 by [@​dependabot](https://redirect.github.com/dependabot ) in [https://github.com/peter-evans/create-pull-request/pull/3628 ](https://redirect.github.com/peter-evans/create-pull-request/pull/3628 )
- build(deps): bump node-fetch-native from 1.6.4 to 1.6.6 by [@​dependabot](https://redirect.github.com/dependabot ) in [https://github.com/peter-evans/create-pull-request/pull/3627 ](https://redirect.github.com/peter-evans/create-pull-request/pull/3627 )
- build(deps-dev): bump undici from 6.21.0 to 6.21.1 by [@​dependabot](https://redirect.github.com/dependabot ) in [https://github.com/peter-evans/create-pull-request/pull/3630 ](https://redirect.github.com/peter-evans/create-pull-request/pull/3630 )
- build(deps-dev): bump [@​types/node](https://redirect.github.com/types/node ) from 18.19.70 to 18.19.71 by [@​dependabot](https://redirect.github.com/dependabot ) in [https://github.com/peter-evans/create-pull-request/pull/3629 ](https://redirect.github.com/peter-evans/create-pull-request/pull/3629 )
- Update distribution by [@​actions-bot](https://redirect.github.com/actions-bot ) in [https://github.com/peter-evans/create-pull-request/pull/3647 ](https://redirect.github.com/peter-evans/create-pull-request/pull/3647 )
- build(deps-dev): bump [@​types/node](https://redirect.github.com/types/node ) from 18.19.71 to 18.19.74 by [@​dependabot](https://redirect.github.com/dependabot ) in [https://github.com/peter-evans/create-pull-request/pull/3657 ](https://redirect.github.com/peter-evans/create-pull-request/pull/3657 )
- build(deps-dev): bump [@​types/node](https://redirect.github.com/types/node ) from 18.19.74 to 18.19.75 by [@​dependabot](https://redirect.github.com/dependabot ) in [https://github.com/peter-evans/create-pull-request/pull/3663 ](https://redirect.github.com/peter-evans/create-pull-request/pull/3663 )
- build(deps): bump [@​octokit/plugin-rest-endpoint-methods](https://redirect.github.com/octokit/plugin-rest-endpoint-methods ) from 13.3.0 to 13.3.1 by [@​dependabot](https://redirect.github.com/dependabot ) in [https://github.com/peter-evans/create-pull-request/pull/3670 ](https://redirect.github.com/peter-evans/create-pull-request/pull/3670 )
- build(deps-dev): bump prettier from 3.4.2 to 3.5.0 by [@​dependabot](https://redirect.github.com/dependabot ) in [https://github.com/peter-evans/create-pull-request/pull/3671 ](https://redirect.github.com/peter-evans/create-pull-request/pull/3671 )
- Update distribution by [@​actions-bot](https://redirect.github.com/actions-bot ) in [https://github.com/peter-evans/create-pull-request/pull/3680 ](https://redirect.github.com/peter-evans/create-pull-request/pull/3680 )
- build(deps): bump [@​octokit/request-error](https://redirect.github.com/octokit/request-error ) from 6.1.6 to 6.1.7 by [@​dependabot](https://redirect.github.com/dependabot ) in [https://github.com/peter-evans/create-pull-request/pull/3685 ](https://redirect.github.com/peter-evans/create-pull-request/pull/3685 )
- build(deps): bump [@​octokit/plugin-paginate-rest](https://redirect.github.com/octokit/plugin-paginate-rest ) from 11.4.0 to 11.4.1 by [@​dependabot](https://redirect.github.com/dependabot ) in [https://github.com/peter-evans/create-pull-request/pull/3688 ](https://redirect.github.com/peter-evans/create-pull-request/pull/3688 )
- build(deps): bump [@​octokit/endpoint](https://redirect.github.com/octokit/endpoint ) from 10.1.2 to 10.1.3 by [@​dependabot](https://redirect.github.com/dependabot ) in [https://github.com/peter-evans/create-pull-request/pull/3700 ](https://redirect.github.com/peter-evans/create-pull-request/pull/3700 )
- Update distribution by [@​actions-bot](https://redirect.github.com/actions-bot ) in [https://github.com/peter-evans/create-pull-request/pull/3691 ](https://redirect.github.com/peter-evans/create-pull-request/pull/3691 )
- build(deps-dev): bump prettier from 3.5.0 to 3.5.1 by [@​dependabot](https://redirect.github.com/dependabot ) in [https://github.com/peter-evans/create-pull-request/pull/3709 ](https://redirect.github.com/peter-evans/create-pull-request/pull/3709 )
- build(deps-dev): bump eslint-import-resolver-typescript from 3.7.0 to 3.8.1 by [@​dependabot](https://redirect.github.com/dependabot ) in [https://github.com/peter-evans/create-pull-request/pull/3710 ](https://redirect.github.com/peter-evans/create-pull-request/pull/3710 )
- build(deps): bump [@​octokit/plugin-paginate-rest](https://redirect.github.com/octokit/plugin-paginate-rest ) from 11.4.1 to 11.4.2 by [@​dependabot](https://redirect.github.com/dependabot ) in [https://github.com/peter-evans/create-pull-request/pull/3713 ](https://redirect.github.com/peter-evans/create-pull-request/pull/3713 )
- build(deps-dev): bump [@​types/node](https://redirect.github.com/types/node ) from 18.19.75 to 18.19.76 by [@​dependabot](https://redirect.github.com/dependabot ) in [https://github.com/peter-evans/create-pull-request/pull/3712 ](https://redirect.github.com/peter-evans/create-pull-request/pull/3712 )
- build(deps): bump [@​octokit/core](https://redirect.github.com/octokit/core ) from 6.1.3 to 6.1.4 by [@​dependabot](https://redirect.github.com/dependabot ) in [https://github.com/peter-evans/create-pull-request/pull/3711 ](https://redirect.github.com/peter-evans/create-pull-request/pull/3711 )
- Update distribution by [@​actions-bot](https://redirect.github.com/actions-bot ) in [https://github.com/peter-evans/create-pull-request/pull/3736 ](https://redirect.github.com/peter-evans/create-pull-request/pull/3736 )
- Use showFileAtRefBase64 to read per-commit file contents by [@​grahamc](https://redirect.github.com/grahamc ) in [https://github.com/peter-evans/create-pull-request/pull/3744 ](https://redirect.github.com/peter-evans/create-pull-request/pull/3744 )
#### New Contributors
- [@​ybiquitous](https://redirect.github.com/ybiquitous ) made their first contribution in [https://github.com/peter-evans/create-pull-request/pull/3626 ](https://redirect.github.com/peter-evans/create-pull-request/pull/3626 )
- [@​grahamc](https://redirect.github.com/grahamc ) made their first contribution in [https://github.com/peter-evans/create-pull-request/pull/3744 ](https://redirect.github.com/peter-evans/create-pull-request/pull/3744 )
**Full Changelog**: https://github.com/peter-evans/create-pull-request/compare/v7.0.6...v7.0.7
</details>
<details>
<summary>taiki-e/install-action (taiki-e/install-action)</summary>
### [`v2.49.10`](https://redirect.github.com/taiki-e/install-action/releases/tag/v2.49.10 ): 2.49.10
[Compare Source](https://redirect.github.com/taiki-e/install-action/compare/v2.49.9...v2.49.10 )
- Update `release-plz@latest` to 0.3.124.
### [`v2.49.9`](https://redirect.github.com/taiki-e/install-action/releases/tag/v2.49.9 ): 2.49.9
[Compare Source](https://redirect.github.com/taiki-e/install-action/compare/v2.49.8...v2.49.9 )
- Update `typos@latest` to 1.30.0.
### [`v2.49.8`](https://redirect.github.com/taiki-e/install-action/releases/tag/v2.49.8 ): 2.49.8
[Compare Source](https://redirect.github.com/taiki-e/install-action/compare/v2.49.7...v2.49.8 )
- Update `cargo-binstall@latest` to 1.11.2.
- Update `cargo-audit@latest` to 0.21.2.
### [`v2.49.7`](https://redirect.github.com/taiki-e/install-action/releases/tag/v2.49.7 ): 2.49.7
[Compare Source](https://redirect.github.com/taiki-e/install-action/compare/v2.49.6...v2.49.7 )
- Update `cargo-deny@latest` to 0.18.1.
### [`v2.49.6`](https://redirect.github.com/taiki-e/install-action/releases/tag/v2.49.6 ): 2.49.6
[Compare Source](https://redirect.github.com/taiki-e/install-action/compare/v2.49.5...v2.49.6 )
- Update `cargo-lambda@latest` to 1.7.0.
### [`v2.49.5`](https://redirect.github.com/taiki-e/install-action/releases/tag/v2.49.5 ): 2.49.5
[Compare Source](https://redirect.github.com/taiki-e/install-action/compare/v2.49.4...v2.49.5 )
- Update `wasmtime@latest` to 30.0.2.
- Update `release-plz@latest` to 0.3.123.
### [`v2.49.4`](https://redirect.github.com/taiki-e/install-action/releases/tag/v2.49.4 ): 2.49.4
[Compare Source](https://redirect.github.com/taiki-e/install-action/compare/v2.49.3...v2.49.4 )
- Update `typos@latest` to 1.29.10.
### [`v2.49.3`](https://redirect.github.com/taiki-e/install-action/releases/tag/v2.49.3 ): 2.49.3
[Compare Source](https://redirect.github.com/taiki-e/install-action/compare/v2.49.2...v2.49.3 )
- Update `wash@latest` to 0.39.0.
- Update `cargo-nextest@latest` to 0.9.92.
### [`v2.49.2`](https://redirect.github.com/taiki-e/install-action/releases/tag/v2.49.2 ): 2.49.2
[Compare Source](https://redirect.github.com/taiki-e/install-action/compare/v2.49.1...v2.49.2 )
- Update `sccache@latest` to 0.10.0.
- Update `cargo-machete@latest` to 0.8.0.
</details>
---
### Configuration
📅 **Schedule**: Branch creation - "before 10pm on monday" in timezone Asia/Shanghai, Automerge - "before 10pm on monday" in timezone Asia/Shanghai.
🚦 **Automerge**: Enabled.
♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions ) if that's undesired.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR was generated by [Mend Renovate](https://mend.io/renovate/ ). View the [repository job log](https://developer.mend.io/github/oxc-project/oxc ).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4xNzYuMiIsInVwZGF0ZWRJblZlciI6IjM5LjE3Ni4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
2025-03-02 21:36:37 +00:00
Boshen
e6dbf797b7
ci(benchmark): shard codspeed ( #9461 )
...
closes #9452
2025-03-01 18:19:16 +08:00
renovate
f074815298
chore(deps): update crate-ci/typos action to v1.30.0 ( #9453 )
...
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [crate-ci/typos](https://redirect.github.com/crate-ci/typos ) | action | minor | `v1.29.10` -> `v1.30.0` |
---
### Release Notes
<details>
<summary>crate-ci/typos (crate-ci/typos)</summary>
### [`v1.30.0`](https://redirect.github.com/crate-ci/typos/compare/v1.29.10...v1.30.0 )
[Compare Source](https://redirect.github.com/crate-ci/typos/compare/v1.29.10...v1.30.0 )
</details>
---
### Configuration
📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - "before 10pm on monday" in timezone Asia/Shanghai.
🚦 **Automerge**: Enabled.
♻ **Rebasing**: Whenever PR is behind base branch, 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://mend.io/renovate/ ). View the [repository job log](https://developer.mend.io/github/oxc-project/oxc ).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4xNzYuMiIsInVwZGF0ZWRJblZlciI6IjM5LjE3Ni4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
2025-03-01 08:07:24 +00:00
overlookmotel
e2423e113a
ci(miri): run oxc_data_structures tests under Miri on CI ( #9380 )
...
`oxc_data_structures` crate is stuffed full of unsafe code. Run its
tests under Miri on CI.
We already had `crates/oxc_data_structures/**` included in the filter
for Miri CI task, but it wasn't actually running the tests for the
crate. This appears to have been an oversight.
2025-02-26 12:20:01 +00:00
overlookmotel
28eb816b05
ci(miri): run Miri on oxc_ast crate ( #9370 )
...
#9359 introduced unsafe code to `oxc_ast` crate. Run Miri on `oxc_ast`
crate, but only when the files containing that unsafe code are altered.
2025-02-26 10:31:12 +00:00
renovate[bot]
3c35485f53
chore(deps): update crate-ci/typos action to v1.29.10 ( #9358 )
2025-02-26 10:04:04 +08:00
renovate[bot]
669b94526c
chore(deps): update taiki-e/install-action action to v2.49.1 ( #9328 )
2025-02-24 19:26:15 +08:00
renovate[bot]
98d537e1f4
chore(deps): update github-actions ( #9305 )
...
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [CodSpeedHQ/action](https://redirect.github.com/CodSpeedHQ/action ) |
action | minor | `v3.3.1` -> `v3.4.0` |
|
[actions/upload-artifact](https://redirect.github.com/actions/upload-artifact )
| action | patch | `v4.6.0` -> `v4.6.1` |
|
[github/codeql-action](https://redirect.github.com/github/codeql-action )
| action | patch | `v3.28.9` -> `v3.28.10` |
|
[taiki-e/install-action](https://redirect.github.com/taiki-e/install-action )
| action | minor | `v2.48.15` -> `v2.49.0` |
---
### Release Notes
<details>
<summary>CodSpeedHQ/action (CodSpeedHQ/action)</summary>
###
[`v3.4.0`](https://redirect.github.com/CodSpeedHQ/action/releases/tag/v3.4.0 )
[Compare
Source](https://redirect.github.com/CodSpeedHQ/action/compare/v3.3.1...v3.4.0 )
##### What's Changed
##### <!-- 0 -->🚀 Features
- feat: add `GH_MATRIX` and `GH_STRATEGY` env variables by
[@​fargito](https://redirect.github.com/fargito ) in
[https://github.com/CodSpeedHQ/action/pull/123 ](https://redirect.github.com/CodSpeedHQ/action/pull/123 )
- Add run_part to upload metadata by
[@​fargito](https://redirect.github.com/fargito ) in
[#​57](https://redirect.github.com/CodSpeedHQ/runner/pull/57 )
##### <!-- 1 -->🐛 Bug Fixes
- Fix stderr error display by
[@​art049](https://redirect.github.com/art049 ) in
[#​63](https://redirect.github.com/CodSpeedHQ/runner/pull/63 )
**Full Changelog**:
https://github.com/CodSpeedHQ/action/compare/v3.3.1...v3.4.0
**Full Runner Changelog**:
https://github.com/CodSpeedHQ/runner/blob/main/CHANGELOG.md
</details>
<details>
<summary>actions/upload-artifact (actions/upload-artifact)</summary>
###
[`v4.6.1`](https://redirect.github.com/actions/upload-artifact/releases/tag/v4.6.1 )
[Compare
Source](https://redirect.github.com/actions/upload-artifact/compare/v4.6.0...v4.6.1 )
#### What's Changed
- Update to use artifact 2.2.2 package by
[@​yacaovsnc](https://redirect.github.com/yacaovsnc ) in
[https://github.com/actions/upload-artifact/pull/673 ](https://redirect.github.com/actions/upload-artifact/pull/673 )
**Full Changelog**:
https://github.com/actions/upload-artifact/compare/v4...v4.6.1
</details>
<details>
<summary>github/codeql-action (github/codeql-action)</summary>
###
[`v3.28.10`](https://redirect.github.com/github/codeql-action/releases/tag/v3.28.10 )
[Compare
Source](https://redirect.github.com/github/codeql-action/compare/v3.28.9...v3.28.10 )
### CodeQL Action Changelog
See the [releases
page](https://redirect.github.com/github/codeql-action/releases ) for the
relevant changes to the CodeQL CLI and language packs.
#### 3.28.10 - 21 Feb 2025
- Update default CodeQL bundle version to 2.20.5.
[#​2772](https://redirect.github.com/github/codeql-action/pull/2772 )
- Address an issue where the CodeQL Bundle would occasionally fail to
decompress on macOS.
[#​2768](https://redirect.github.com/github/codeql-action/pull/2768 )
See the full
[CHANGELOG.md](https://redirect.github.com/github/codeql-action/blob/v3.28.10/CHANGELOG.md )
for more information.
</details>
<details>
<summary>taiki-e/install-action (taiki-e/install-action)</summary>
###
[`v2.49.0`](https://redirect.github.com/taiki-e/install-action/releases/tag/v2.49.0 ):
2.49.0
[Compare
Source](https://redirect.github.com/taiki-e/install-action/compare/v2.48.22...v2.49.0 )
- Allow installing pre-release versions using binstall.
([#​868](https://redirect.github.com/taiki-e/install-action/pull/868 ))
###
[`v2.48.22`](https://redirect.github.com/taiki-e/install-action/releases/tag/v2.48.22 ):
2.48.22
[Compare
Source](https://redirect.github.com/taiki-e/install-action/compare/v2.48.21...v2.48.22 )
- Update `cargo-binstall@latest` to 1.11.1.
- Update `release-plz@latest` to 0.3.122.
###
[`v2.48.21`](https://redirect.github.com/taiki-e/install-action/releases/tag/v2.48.21 ):
2.48.21
[Compare
Source](https://redirect.github.com/taiki-e/install-action/compare/v2.48.20...v2.48.21 )
- Update `wasmtime@latest` to 30.0.1.
- Update `syft@latest` to 1.20.0.
###
[`v2.48.20`](https://redirect.github.com/taiki-e/install-action/releases/tag/v2.48.20 ):
2.48.20
[Compare
Source](https://redirect.github.com/taiki-e/install-action/compare/v2.48.19...v2.48.20 )
- Update `cargo-udeps@latest` to 0.1.55.
###
[`v2.48.19`](https://redirect.github.com/taiki-e/install-action/releases/tag/v2.48.19 ):
2.48.19
[Compare
Source](https://redirect.github.com/taiki-e/install-action/compare/v2.48.18...v2.48.19 )
- Update `typos@latest` to 1.29.9.
###
[`v2.48.18`](https://redirect.github.com/taiki-e/install-action/releases/tag/v2.48.18 ):
2.48.18
[Compare
Source](https://redirect.github.com/taiki-e/install-action/compare/v2.48.17...v2.48.18 )
- Update `cargo-deny@latest` to 0.17.0.
###
[`v2.48.17`](https://redirect.github.com/taiki-e/install-action/releases/tag/v2.48.17 ):
2.48.17
[Compare
Source](https://redirect.github.com/taiki-e/install-action/compare/v2.48.16...v2.48.17 )
- Update `wasmtime@latest` to 30.0.0.
###
[`v2.48.16`](https://redirect.github.com/taiki-e/install-action/releases/tag/v2.48.16 ):
2.48.16
[Compare
Source](https://redirect.github.com/taiki-e/install-action/compare/v2.48.15...v2.48.16 )
- Update `typos@latest` to 1.29.8.
</details>
---
### Configuration
📅 **Schedule**: Branch creation - "before 10pm on monday" in timezone
Asia/Shanghai, Automerge - "before 10pm on monday" in timezone
Asia/Shanghai.
🚦 **Automerge**: Enabled.
♻ **Rebasing**: Whenever PR is behind base branch, or you tick the
rebase/retry checkbox.
👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config
help](https://redirect.github.com/renovatebot/renovate/discussions ) if
that's undesired.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box
---
This PR was generated by [Mend Renovate](https://mend.io/renovate/ ).
View the [repository job
log](https://developer.mend.io/github/oxc-project/oxc ).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4xNzYuMiIsInVwZGF0ZWRJblZlciI6IjM5LjE3Ni4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-02-23 21:55:16 +00:00
Boshen
55dfb48af8
Revert "ci: reset broken .d.ts files (again)" ( #9290 )
...
This reverts commit 414ce78a80 .
2025-02-22 13:42:13 +08:00
Boshen
414ce78a80
ci: reset broken .d.ts files (again)
2025-02-22 11:55:56 +08:00
Boshen
c933c6d67a
chore(deps): bump napi ( #9274 )
2025-02-21 23:33:21 +08:00
Boshen
c8147329c0
ci: fix windows ( #9268 )
2025-02-21 21:23:18 +08:00
renovate[bot]
ed6bd5dc8b
chore(deps): update crate-ci/typos action to v1.29.9 ( #9261 )
2025-02-21 11:25:09 +08:00
renovate[bot]
0fa92cfadb
chore(deps): update crate-ci/typos action to v1.29.8 ( #9241 )
2025-02-20 09:04:00 +08:00
renovate[bot]
fd6f1355d9
chore(deps): update github-actions ( #9213 )
2025-02-19 09:32:18 +08:00
Boshen
5d2028d2c1
ci: temporarily reset the broken napi .d.ts files ( #9197 )
2025-02-18 18:48:35 +08:00
Boshen
b20fd6c4b0
ci: change the cache-key for napi
2025-02-18 17:05:26 +08:00
Alexander S.
34747e2bbe
ci(linter): bumpoxlint-migrate when releasing oxlint ( #9178 )
...
---------
Co-authored-by: Boshen <boshenc@gmail.com >
2025-02-18 17:01:23 +08:00
renovate[bot]
e8fa09174f
chore(deps): update taiki-e/install-action action to v2.48.14 ( #9184 )
2025-02-18 09:02:47 +08:00
renovate[bot]
dd4c9d7089
chore(deps): update taiki-e/install-action action to v2.48.13 ( #9166 )
2025-02-17 11:54:57 +08:00
Boshen
0715e34efb
chore(deps): update crate-ci/typos action to v1.29.7 ( #9131 )
2025-02-15 02:24:51 +00:00
Boshen
de57b0fb90
ci: fix linter benchmark dir
2025-02-14 16:20:19 +08:00
Boshen
a8b83de740
ci: fix codspeed upload dir
2025-02-14 15:52:17 +08:00
Boshen
60e0498a60
ci: fix linter benchmark
2025-02-14 15:34:44 +08:00
Boshen
79fa8e7410
ci: fix codspeed dir ( #9099 )
...
Latest version changed target dir
https://github.com/CodSpeedHQ/codspeed-rust/releases
2025-02-14 14:09:10 +08:00
Boshen
ff4ab88ed9
chore(deps): update github-actions ( #9097 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-02-14 13:37:06 +08:00
Boshen
88af8761c8
ci: fix release_runtime runtime working-directory
2025-02-12 11:41:00 +08:00
Boshen
d7512a2684
chore(deps): update github-actions ( #9000 )
2025-02-10 07:06:07 +00:00
Boshen
64562f4b29
chore(deps): update crate-ci/typos action to v1.29.5 ( #8999 )
2025-02-10 06:58:06 +00:00
Boshen
951b2d53d3
feat(npm/runtime): add @oxc-project/runtime package ( #8595 )
...
closes #7422
2025-02-06 23:06:56 +08:00
Boshen
e453be4bf2
ci: wait 3 minutes for oxlint sub-packages to sync on npm
2025-02-06 14:29:29 +08:00
Boshen
0afbc7b2bd
ci: download ast-grep from npm
2025-02-02 17:18:37 +08:00
Boshen
003c190d93
chore(deps): update github-actions ( #8760 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-28 13:30:28 +08:00
Boshen
ad87fc7a53
ci: download ast-grep from github ( #8728 )
2025-01-26 18:19:00 +08:00
Boshen
b7f13e636e
feat(ast): implement utf8 to utf16 span converter ( #8687 )
...
closes #8629
2025-01-24 16:57:44 +00:00
Boshen
4f6d164f52
ci: fix release napi scripts
2025-01-24 13:37:01 +08:00
Boshen
a78a72fb16
ci: fix overly broad permissions reported by zizmor ( #8611 )
...
https://woodruffw.github.io/zizmor/audits/#excessive-permissions
2025-01-20 13:19:50 +08:00
renovate[bot]
7923971783
chore(deps): update github-actions
2025-01-20 01:06:44 +00:00
Alexander S.
1a99d3539e
ci(lint_rules): trigger on utils/mod.rs and on its workflow file ( #8601 )
...
The vitest rules documentation did not get updated after
https://github.com/oxc-project/oxc/pull/8445
2025-01-19 22:38:39 +08:00
Boshen
9dc65cfa6a
ci: fix release napi script
2025-01-19 10:35:51 +08:00
Boshen
4a59d29c30
refactor(workflows): add reusable_release_napi.yml ( #8581 )
2025-01-18 15:27:22 +08:00