renovate[bot]
76cd2ecdc8
chore(deps): update npm packages ( #3593 )
...
[](https://renovatebot.com )
This PR contains the following updates:
| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [axios](https://axios-http.com )
([source](https://togithub.com/axios/axios )) | [`^1.6.8` ->
`^1.7.2`](https://renovatebot.com/diffs/npm/axios/1.7.2/1.7.2 ) |
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
| [pnpm](https://pnpm.io ) ([source](https://togithub.com/pnpm/pnpm )) |
[`9.1.4` -> `9.2.0`](https://renovatebot.com/diffs/npm/pnpm/9.1.4/9.2.0 )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
| [tar](https://togithub.com/isaacs/node-tar ) | [`^7.0.1` ->
`^7.2.0`](https://renovatebot.com/diffs/npm/tar/7.2.0/7.2.0 ) |
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
[](https://docs.renovatebot.com/merge-confidence/ )
|
---
### Release Notes
<details>
<summary>pnpm/pnpm (pnpm)</summary>
### [`v9.2.0`](https://togithub.com/pnpm/pnpm/releases/tag/v9.2.0 )
[Compare Source](https://togithub.com/pnpm/pnpm/compare/v9.1.4...v9.2.0 )
#### Minor Changes
- If `package-manager-strict-version` is set to `true`, pnpm will fail
if its version doesn't exactly match the version in the "packageManager"
field of `package.json`.
#### Patch Changes
- Update `@yarnpkg/pnp` to the latest version, fixing issue with `node:`
imports [#​8161](https://togithub.com/pnpm/pnpm/issues/8161 ).
- Deduplicate bin names to prevent race condition and corrupted bin
scripts [#​7833](https://togithub.com/pnpm/pnpm/issues/7833 ).
- pnpm doesn't fail if its version doesn't match the one specified in
the "packageManager" field of `package.json`
[#​8087](https://togithub.com/pnpm/pnpm/issues/8087 ).
- `exec` now also streams prefixed output when `--recursive` or
`--parallel` is specified just as `run` does
[#​8065](https://togithub.com/pnpm/pnpm/issues/8065 ).
#### Platinum Sponsors
<table>
<tbody>
<tr>
<td align="center" valign="middle">
<a href="https://bit.dev/?utm_source=pnpm&utm_medium=release_notes "
target="_blank"><img src="https://pnpm.io/img/users/bit.svg "
width="80"></a>
</td>
<td align="center" valign="middle">
<a href="https://figma.com/?utm_source=pnpm&utm_medium=release_notes "
target="_blank"><img src="https://pnpm.io/img/users/figma.svg "
width="80"></a>
</td>
</tr>
</tbody>
</table>
#### Gold Sponsors
<table>
<tbody>
<tr>
<td align="center" valign="middle">
<a href="https://discord.com/?utm_source=pnpm&utm_medium=release_notes "
target="_blank">
<picture>
<source media="(prefers-color-scheme: light)"
srcset="https://pnpm.io/img/users/discord.svg " />
<source media="(prefers-color-scheme: dark)"
srcset="https://pnpm.io/img/users/discord_light.svg " />
<img src="https://pnpm.io/img/users/discord.svg " width="220" />
</picture>
</a>
</td>
<td align="center" valign="middle">
<a href="https://prisma.io/?utm_source=pnpm&utm_medium=release_notes "
target="_blank">
<picture>
<source media="(prefers-color-scheme: light)"
srcset="https://pnpm.io/img/users/prisma.svg " />
<source media="(prefers-color-scheme: dark)"
srcset="https://pnpm.io/img/users/prisma_light.svg " />
<img src="https://pnpm.io/img/users/prisma.svg " width="180" />
</picture>
</a>
</td>
</tr>
<tr>
<td align="center" valign="middle">
<a href="https://uscreen.de/?utm_source=pnpm&utm_medium=release_notes "
target="_blank">
<picture>
<source media="(prefers-color-scheme: light)"
srcset="https://pnpm.io/img/users/uscreen.svg " />
<source media="(prefers-color-scheme: dark)"
srcset="https://pnpm.io/img/users/uscreen_light.svg " />
<img src="https://pnpm.io/img/users/uscreen.svg " width="180" />
</picture>
</a>
</td>
<td align="center" valign="middle">
<a
href="https://www.jetbrains.com/?utm_source=pnpm&utm_medium=release_notes "
target="_blank">
<picture>
<source media="(prefers-color-scheme: light)"
srcset="https://pnpm.io/img/users/jetbrains.svg " />
<source media="(prefers-color-scheme: dark)"
srcset="https://pnpm.io/img/users/jetbrains.svg " />
<img src="https://pnpm.io/img/users/jetbrains.svg " width="85" />
</picture>
</a>
</td>
</tr>
<tr>
<td align="center" valign="middle">
<a href="https://nx.dev/?utm_source=pnpm&utm_medium=release_notes "
target="_blank">
<picture>
<source media="(prefers-color-scheme: light)"
srcset="https://pnpm.io/img/users/nx.svg " />
<source media="(prefers-color-scheme: dark)"
srcset="https://pnpm.io/img/users/nx_light.svg " />
<img src="https://pnpm.io/img/users/nx.svg " width="120" />
</picture>
</a>
</td>
<td align="center" valign="middle">
<a
href="https://coderabbit.ai/?utm_source=pnpm&utm_medium=release_notes "
target="_blank">
<picture>
<source media="(prefers-color-scheme: light)"
srcset="https://pnpm.io/img/users/coderabbit.svg " />
<source media="(prefers-color-scheme: dark)"
srcset="https://pnpm.io/img/users/coderabbit_light.svg " />
<img src="https://pnpm.io/img/users/coderabbit.svg " width="220" />
</picture>
</a>
</td>
</tr>
</tbody>
</table>
#### Our Silver Sponsors
<table>
<tbody>
<tr>
<td align="center" valign="middle">
<a
href="https://leniolabs.com/?utm_source=pnpm&utm_medium=release_notes "
target="_blank">
<img src="https://pnpm.io/img/users/leniolabs.jpg " width="80">
</a>
</td>
<td align="center" valign="middle">
<a href="https://vercel.com/?utm_source=pnpm&utm_medium=release_notes "
target="_blank">
<picture>
<source media="(prefers-color-scheme: light)"
srcset="https://pnpm.io/img/users/vercel.svg " />
<source media="(prefers-color-scheme: dark)"
srcset="https://pnpm.io/img/users/vercel_light.svg " />
<img src="https://pnpm.io/img/users/vercel.svg " width="180" />
</picture>
</a>
</td>
</tr>
<tr>
<td align="center" valign="middle">
<a href="https://depot.dev/?utm_source=pnpm&utm_medium=release_notes "
target="_blank">
<picture>
<source media="(prefers-color-scheme: light)"
srcset="https://pnpm.io/img/users/depot.svg " />
<source media="(prefers-color-scheme: dark)"
srcset="https://pnpm.io/img/users/depot_light.svg " />
<img src="https://pnpm.io/img/users/depot.svg " width="200" />
</picture>
</a>
</td>
<td align="center" valign="middle">
<a href="https://moonrepo.dev/?utm_source=pnpm&utm_medium=release_notes "
target="_blank">
<picture>
<source media="(prefers-color-scheme: light)"
srcset="https://pnpm.io/img/users/moonrepo.svg " />
<source media="(prefers-color-scheme: dark)"
srcset="https://pnpm.io/img/users/moonrepo_light.svg " />
<img src="https://pnpm.io/img/users/moonrepo.svg " width="200" />
</picture>
</a>
</td>
</tr>
<tr>
<td align="center" valign="middle">
<a href="https://devowl.io/?utm_source=pnpm&utm_medium=release_notes "
target="_blank">
<picture>
<source media="(prefers-color-scheme: light)"
srcset="https://pnpm.io/img/users/devowlio.svg " />
<source media="(prefers-color-scheme: dark)"
srcset="https://pnpm.io/img/users/devowlio.svg " />
<img src="https://pnpm.io/img/users/devowlio.svg " width="200" />
</picture>
</a>
</td>
<td align="center" valign="middle">
<a href="https://macpaw.com/?utm_source=pnpm&utm_medium=release_notes "
target="_blank">
<picture>
<source media="(prefers-color-scheme: light)"
srcset="https://pnpm.io/img/users/macpaw.svg " />
<source media="(prefers-color-scheme: dark)"
srcset="https://pnpm.io/img/users/macpaw_light.svg " />
<img src="https://pnpm.io/img/users/macpaw.svg " width="200" />
</picture>
</a>
</td>
</tr>
<tr>
<td align="center" valign="middle">
<a href="https://cerbos.dev/?utm_source=pnpm&utm_medium=release_notes "
target="_blank">
<picture>
<source media="(prefers-color-scheme: light)"
srcset="https://pnpm.io/img/users/cerbos.svg " />
<source media="(prefers-color-scheme: dark)"
srcset="https://pnpm.io/img/users/cerbos_light.svg " />
<img src="https://pnpm.io/img/users/cerbos.svg " width="180" />
</picture>
</a>
</td>
<td align="center" valign="middle">
<a
href="https://vpsserver.com/en-us/?utm_source=pnpm&utm_medium=release_notes "
target="_blank">
<img src="https://pnpm.io/img/users/vpsserver.svg " width="180" />
</a>
</td>
</tr>
</tbody>
</table>
</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:eyJjcmVhdGVkSW5WZXIiOiIzNy4zOTMuMCIsInVwZGF0ZWRJblZlciI6IjM3LjM5My4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-06-09 17:50:05 +00:00
Don Isaac
129f91e444
feat(span): port over more methods from TextRange ( #3592 )
...
Ports over more utility methods from `TextRange`, as per feedback in
[this
comment](https://github.com/oxc-project/oxc/pull/3589#discussion_r1632169132 )
from #3589
2024-06-10 00:59:00 +08:00
Don Isaac
f0b689d115
fix(linter): panic in jsdoc/require-param ( #3590 )
2024-06-08 18:44:22 -04:00
overlookmotel
3ae567de9d
refactor(transformer): remove dead code ( #3588 )
...
Remove a commented-out line of dead code.
2024-06-08 12:54:58 +00:00
overlookmotel
fa116448c9
refactor(linter): pass Rc by value ( #3587 )
...
Same as #3586 .
2024-06-08 11:19:02 +00:00
overlookmotel
7d61832284
refactor(semantic): pass Rc by value ( #3586 )
...
Same as #3550 .
`Rc<T>` is already a reference, so instead of passing an `&Rc<T>` to a function and then `Rc::clone()` it in the function, it's better to clone it first and pass `Rc<T>` to the function.
`Rc<T>` and `&Rc<T>` are both 8 bytes, so it introduces no additional overhead to the function call, and reduces indirection.
This is a very small optimization. Am only submitting these changes for purpose of code tidying - making the patterns around `Rc` consistent and optimal throughout the codebase.
We should probably look if we can remove some of these `Rc`s entirely and replace them with plain `&` refs. I suspect `Rc` is not actually required in most places and we're only using it to avoid dealing with lifetimes, but it's sub-optimal as `Rc::clone` has a cost, whereas copying a `&` ref has none.
2024-06-08 11:18:58 +00:00
Boshen
b09092c9ec
ci: use personal access token to push tag
2024-06-08 17:05:14 +08:00
github-actions[bot]
6bdd74c476
Release crates v0.13.5 ( #3584 )
...
## [0.13.5] - 2024-06-08
### Bug Fixes
- 48bb97e traverse: Do not publish the build script (Boshen)
Co-authored-by: Boshen <Boshen@users.noreply.github.com>
2024-06-08 16:44:50 +08:00
Boshen
060819894d
chore: crates should only publish src and examples directory
2024-06-08 16:35:16 +08:00
Boshen
4b67f8e45b
chore: only publish src
2024-06-08 16:31:47 +08:00
Boshen
48bb97e53a
fix(traverse): do not publish the build script
2024-06-08 16:31:21 +08:00
Boshen
053f19dd19
chore: format toml files
2024-06-08 11:48:14 +08:00
Boshen
5339883ada
fix: relax unicode-id-start version so user can decide which unicode version to use
2024-06-08 11:48:13 +08:00
Don Isaac
3e694573df
up(linter): add fixer for no-useless-spread ( #3583 )
...
Only fixes array spreads for now.
---------
Co-authored-by: Boshen <boshenc@gmail.com>
2024-06-08 11:38:38 +08:00
Boshen
532510d714
ci: fix tag push for release_crates
2024-06-07 17:52:19 +08:00
github-actions[bot]
d215e3d906
Release crates v0.13.4 ( #3582 )
...
## [0.13.4] - 2024-06-07
### Features
- 5c8e16c coverage: Second transformer build does not print typescript
(#3561 ) (Dunqing)
- 646b993 coverage/transformer: Handle @jsx option (#3553 ) (Dunqing)
- a939ddd transformer/typescript: Remove more typescript ast nodes
(#3563 ) (Dunqing)
- e8a20f8 transformer/typescript: Remove typescript ast nodes (#3559 )
(Dunqing)
- ee9a215 transformer/typescript: Handle namespace directive correctly
(#3532 ) (Dunqing)
### Bug Fixes
- affb2c8 codegen: Print indentation before directive (#3512 ) (Dunqing)
- f6939cb transformer: Store `react_importer` in `Bindings` in JSX
transform (#3551 ) (overlookmotel)
- 7982b93 transformer: Correct spans for JSX transform (#3549 )
(overlookmotel)
- c00598b transformer: JSX set `reference_id` on refs to imports (#3524 )
(overlookmotel)
### Performance
- 37cdc13 transformer: Faster checks if JSX plugin enabled (#3577 )
(overlookmotel)
- 9f467b8 transformer: Avoid fragment update where possible (#3535 )
(overlookmotel)
- ac394f0 transformer: JSX parse pragma only once (#3534 )
(overlookmotel)
### Documentation
- 1d3c0d7 span: Add doc comments to `oxc_span::Span` (#3543 ) (Don Isaac)
### Refactor
- f2113ae transformer: Reduce cloning and referencing `Rc`s (#3576 )
(overlookmotel)
- 0948124 transformer: Pass `Rc`s by value (#3550 ) (overlookmotel)
- e4d74ac transformer: Remove `update_fragment` from JSX transform
(#3541 ) (overlookmotel)
- 73b7864 transformer: Combine import and usage in JSX transform (#3540 )
(overlookmotel)
- 6978269 transformer/typescript: Replace reference collector with
symbols references (#3533 ) (Dunqing)
Co-authored-by: Boshen <Boshen@users.noreply.github.com>
2024-06-07 17:41:11 +08:00
Boshen
05342c6080
ci: fix release oxlint
2024-06-07 17:33:37 +08:00
Boshen
f849efa550
chore: fix build-wasm command
2024-06-07 17:05:46 +08:00
github-actions[bot]
8cbf937e84
Release oxlint v0.4.3 ( #3581 )
...
## [0.4.3] - 2024-06-07
### Features
- 1fb9d23 linter: Add fixer for no-useless-fallback-in-spread rule
(#3544 ) (Don Isaac)
- 6506d08 linter: Add fixer for no-single-promise-in-promise-methods
(#3531 ) (Don Isaac)
- daf559f linter: Eslint-plugin-jest/no-large-snapshot (#3436 ) (cinchen)
- 4c17bc6 linter: Eslint/no-constructor-return (#3321 ) (谭光志)
- 4a075cc linter/jsdoc: Implement require-param rule (#3554 ) (Yuji
Sugiura)
- 747500a linter/jsdoc: Implement require-returns-type rule (#3458 )
(Yuji Sugiura)
- 6b39654 linter/tree-shaking: Support options (#3504 ) (Wang Wenzhe)
- 0cdb45a oxc_codegen: Preserve annotate comment (#3465 )
(IWANABETHATGUY)
### Bug Fixes
- b188778 linter/eslint: Fix `require-await` false positives in
`ForOfStatement`. (#3457 ) (rzvxa)
- 350cd91 parser: Should parser error when function declaration has no
name (#3461 ) (Dunqing)
Co-authored-by: Boshen <Boshen@users.noreply.github.com>
2024-06-07 16:39:51 +08:00
Boshen
e0bfd85254
ci: pass changelog to action-gh-release
2024-06-07 16:30:41 +08:00
overlookmotel
3d0e790401
improve(transformer): create Atom for react import source lazily ( #3578 )
...
In JSX transform:
* Don't generate an `Atom` for react importer unless it's needed.
* Re-use the same string slice as `jsx_runtime_importer`.
* Reduce size of `Bindings`.
2024-06-07 16:18:46 +08:00
Yuji Sugiura
4a075cccd6
feat(linter/jsdoc): Implement require-param rule ( #3554 )
...
Part of #1170
>
https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-param.md
NOTE: `config.useDefaultObjectProperties` is not implemented for now.
2024-06-07 15:58:16 +08:00
Dunqing
a939ddd096
feat(transformer/typescript): remove more typescript ast nodes ( #3563 )
...
Remove more TypeScript related AST
2024-06-07 05:04:28 +00:00
Dunqing
5c8e16c976
feat(coverage): second transformer build does not print typescript ( #3561 )
...
Currently, we lack a test to check if the TS AST has been completely deleted. I have thought of a way to test it. Let's have our idempotency test print the TypeScript code the first time and the second time print the JavaScript code only. If the two results do not match, it means that there are still undeleted TS ASTs or other bugs. Since ideally the TS ASTs are completely deleted, the two results should be the same.
2024-06-07 05:04:25 +00:00
Dunqing
e8a20f8d50
feat(transformer/typescript): remove typescript ast nodes ( #3559 )
...
According to Babel tests feedback, remove some known ts AST nodes.
There are still many TS AST nodes that need to be deleted
2024-06-07 05:04:22 +00:00
overlookmotel
37cdc13030
perf(transformer): faster checks if JSX plugin enabled ( #3577 )
...
Checks for whether JSX transforms are enabled are on a hot path. Make them as fast as possible:
1. Only check a single bool.
2. Store flags directly in `self` rather than behind a reference.
2024-06-07 03:16:41 +00:00
overlookmotel
f2113aea27
refactor(transformer): reduce cloning and referencing Rcs ( #3576 )
...
Similar to #3550 . Avoid cloning an `Rc` in one place and pass `Rc`s as
values not references in others.
2024-06-07 01:24:01 +08:00
Boshen
1dbc23417d
chore: regenerate changelogs with commit id and author
2024-06-07 01:22:28 +08:00
Boshen
7ddd3a6d11
chore: change no-constructor-return to pedantic
2024-06-07 00:13:47 +08:00
Boshen
101d0ccefa
ci: trigger ecosystem ci and website task from prepare_release_oxlint
2024-06-07 00:09:42 +08:00
Boshen
08fdb267b4
chore: update CHANGELOG.md
2024-06-06 20:24:19 +08:00
Boshen
2cdc4085f7
ci: only run "update rules" when rules.rs changes
2024-06-06 16:04:41 +08:00
Boshen
604b7cf92b
ci: prepare release oxlint
2024-06-06 16:04:41 +08:00
rzvxa
60f89d1fcf
improvement(semantic/cfg): better throw control flow. ( #3473 )
...
https://github.com/rzvxa/oxlint-ecosystem-ci/actions/runs/9306698136
2024-06-06 07:55:50 +00:00
rzvxa
987a3f36a8
improvement(linter/react): use CFG for detecting cyclic subgraphs in rules-of-hooks. ( #3454 )
2024-06-06 07:55:44 +00:00
rzvxa
61bae74f76
improvement(semantic/cfg): better CFG API ( #3472 )
2024-06-06 07:55:37 +00:00
rzvxa
3c7ee85ce4
improvement(semantic/cfg): better break and continue flow. ( #3462 )
...
This PR adds a new edge type called `Jump` to distinguish between normal edges and jumps.
There is also a control flow context which is used to keep track of cfg scopes and labels. It replaces the old `preserve_state` and `restore_state`.
It corrects some mistakes - such as labeled blocks especially labeled continue which wasn't easy to implement with the old approach - in the old control flow but other than that it is mostly refactored to have a more declarative API instead of a procedural approach.
2024-06-06 07:55:31 +00:00
Boshen
769227b7b4
chore: regenerate changelogs
2024-06-06 15:51:53 +08:00
Dunqing
0007ee47be
chore(coverage, transformer_conformance): print all AST whether or not they are Typecript AST ( #3556 )
...
We have a conclusion that codegen will print whatever is in the AST,
instead of having an option to enable printing TypeScript syntax. I plan
to remove codegen's `enable_typescript` option after we strip out all
typescript AST in the transformer typescript plugin.
---------
Co-authored-by: Boshen <boshenc@gmail.com>
2024-06-06 15:45:20 +08:00
Boshen
6db4d7dc09
chore: update cliff.toml
2024-06-06 15:09:07 +08:00
Boshen
509ed2bcf3
ci: update prepare release crates; regenerate the changelogs
2024-06-06 14:28:51 +08:00
Yuji Sugiura
747500ac5a
feat(linter/jsdoc): Implement require-returns-type rule ( #3458 )
...
Part of #1170
>
https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-returns-type.md
2024-06-06 14:11:39 +08:00
Don Isaac
1fb9d234a6
feat(linter): add fixer for no-useless-fallback-in-spread rule ( #3544 )
2024-06-06 13:59:42 +08:00
rzvxa
ff3f37dbbd
improvement(semantic/cfg): better control flow for ForStatements. ( #3453 )
...
similar to #3451 and #3452
2024-06-06 05:41:08 +00:00
rzvxa
91c999546c
improvement(semantic/cfg): better control flow for DoWhileStatements. ( #3452 )
...
similar to #3451
2024-06-06 05:41:06 +00:00
rzvxa
0012094188
improvement(semantic/cfg): better control flow for WhileStatements. ( #3451 )
...
Fixes a simple cfg issue, previously it wouldn't follow the body subgraph correctly.
2024-06-06 05:41:04 +00:00
rzvxa
209a99d49f
improvement(semantic/cfg): rework basic blocks. ( #3381 )
...
I've replaced the `BasicBlockElement` with an `Instruction` type which would keep both the instruction kind and its associated AstNodeId.
I also removed the register scheme in the control flow in favor of a simpler approach using explicit enums.
https://github.com/oxc-project/oxc/pull/3381#issuecomment-2126622774
2024-06-06 05:41:01 +00:00
Dunqing
646b9937ee
feat(coverage/transformer): handle @jsx option ( #3553 )
...
if has`@jsx: react`, configure transformer options to match `@jsx: react` behavior
2024-06-06 05:34:22 +00:00
Dunqing
3ba2a932d6
refactor(coverage): use code without meta options in TypeScriptSuite ( #3552 )
...
The `@jsx: react` is a typescript option. The `Babel` typescript plugin handles @jsx as well, but this is different. `@jsx` in babel is a [pragma](https://babeljs.io/docs/babel-plugin-transform-react-jsx#pragma ) option. So we should use code without these meta options to avoid Babel parsing `@jsx` incorrectly
2024-06-06 05:34:18 +00:00
overlookmotel
f6939cbd92
fix(transformer): store react_importer in Bindings in JSX transform ( #3551 )
...
Fix a small bug in React JSX transform. If `import_source` is invalid, the default value `"react"` is used for JSX runtime imports. But for importing React alone, it was still using the old invalid value.
This also allowed removing `ReactOptions` from `Bindings` and just storing `is_development` instead.
2024-06-06 03:19:53 +00:00