Skip to content

port to oxc#331

Open
nathanwhit wants to merge 17 commits into
denoland:mainfrom
nathanwhit:oxc-port
Open

port to oxc#331
nathanwhit wants to merge 17 commits into
denoland:mainfrom
nathanwhit:oxc-port

Conversation

@nathanwhit

@nathanwhit nathanwhit commented Mar 17, 2026

Copy link
Copy Markdown
Member

done by claude, needs closer review

@CLAassistant

CLAassistant commented Mar 17, 2026

Copy link
Copy Markdown

CLA assistant check
All committers have signed the CLA.

Bumps the oxc dependency to 0.134. Notable changes handled:
- `DecoratorOptions` gained a `strict_null_checks` field.
- The string types (`Atom`/`Ident`/`CompactStr`) moved from `oxc_span` to
  the new `oxc_str` crate, and the AST's string-literal value type changed
  from `Atom` to `Str`. Add an `oxc_str` dependency and re-export the string
  types through `deno_ast::oxc::span` so downstream imports keep working.

Requires Rust 1.96 (oxc_transformer uses stabilized `if let` guards).
When parsing with `scope_analysis: true`, run `SemanticBuilder` and store the
resulting `Scoping` on `ParsedSource` (exposed via `scoping()` /
`take_scoping()`). Semantic analysis also populates the symbol/reference ids
on the AST nodes. This is the oxc equivalent of swc's resolver pass and lets
consumers (e.g. deno_graph's symbol analyzer) distinguish same-named
identifiers across scopes.
@affanali2k3

Copy link
Copy Markdown

Can I help on this? Seems interesting

@iuioiua

iuioiua commented Jun 5, 2026

Copy link
Copy Markdown

What's the benefit of doing this? Genuine question.

@lamrouahmed

Copy link
Copy Markdown

What's the benefit of doing this? Genuine question.

@iuioiua
https://x.com/rough__sea/status/2062745217850302715

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants