Skip to content

feat: expose tsconfig paths resolve method without file existence check#1282

Merged
Boshen merged 1 commit into
mainfrom
feat/expose-tsconfig-paths-resolve-method-without-file-existence-check
Jul 12, 2026
Merged

feat: expose tsconfig paths resolve method without file existence check#1282
Boshen merged 1 commit into
mainfrom
feat/expose-tsconfig-paths-resolve-method-without-file-existence-check

Conversation

@sapphi-red

@sapphi-red sapphi-red commented Jul 7, 2026

Copy link
Copy Markdown
Member

Adds resolve_path_alias_or_base_url method to TsConfig struct. This method resolves a specifier with tsconfig paths / baseUrl without checking the file existence. This is needed for rolldown/rolldown#10167.

@sapphi-red
sapphi-red force-pushed the feat/expose-tsconfig-paths-resolve-method-without-file-existence-check branch from 1ea7c95 to 0ba308b Compare July 7, 2026 07:41
@codecov

codecov Bot commented Jul 7, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 94.05%. Comparing base (f7a16c3) to head (d8a5b77).
⚠️ Report is 1 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1282      +/-   ##
==========================================
+ Coverage   94.04%   94.05%   +0.01%     
==========================================
  Files          21       21              
  Lines        4267     4276       +9     
==========================================
+ Hits         4013     4022       +9     
  Misses        254      254              

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@sapphi-red
sapphi-red force-pushed the feat/expose-tsconfig-paths-resolve-method-without-file-existence-check branch from 0ba308b to bc04e34 Compare July 7, 2026 07:44
@codspeed-hq

codspeed-hq Bot commented Jul 7, 2026

Copy link
Copy Markdown

Merging this PR will degrade performance by 4.98%

❌ 2 regressed benchmarks
✅ 19 untouched benchmarks
⏩ 5 skipped benchmarks1

Warning

Please fix the performance issues or acknowledge them on CodSpeed.

Performance Changes

Benchmark BASE HEAD Efficiency
pm/bun-isolated 1 ms 1.1 ms -5.18%
pm/bun-flat 890.1 µs 934.7 µs -4.78%

Tip

Investigate this regression by commenting @codspeedbot fix this regression on this PR, or directly use the CodSpeed MCP with your agent.


Comparing feat/expose-tsconfig-paths-resolve-method-without-file-existence-check (d8a5b77) with main (b72ef3b)

Open in CodSpeed

Footnotes

  1. 5 benchmarks were skipped, so the baseline results were used instead. If they were deleted from the codebase, click here and archive them to remove them from the performance reports.

@sapphi-red
sapphi-red force-pushed the feat/expose-tsconfig-paths-resolve-method-without-file-existence-check branch from bc04e34 to d8a5b77 Compare July 7, 2026 07:51
@sapphi-red
sapphi-red marked this pull request as ready for review July 7, 2026 08:21
@Boshen
Boshen merged commit f7cd525 into main Jul 12, 2026
18 checks passed
@Boshen
Boshen deleted the feat/expose-tsconfig-paths-resolve-method-without-file-existence-check branch July 12, 2026 10:51
@oxc-guard oxc-guard Bot mentioned this pull request Jul 12, 2026
Boshen pushed a commit that referenced this pull request Jul 12, 2026
## 🤖 New release

* `oxc_resolver`: 11.23.0 -> 11.24.0
* `oxc_resolver_napi`: 11.23.0 -> 11.24.0

<details><summary><i><b>Changelog</b></i></summary><p>

## `oxc_resolver`

<blockquote>

##
[11.24.0](v11.23.0...v11.24.0)
- 2026-07-12

### <!-- 0 -->🚀 Features

- expose tsconfig paths resolve method without file existence check
([#1282](#1282)) (by
@sapphi-red)
- add `ResolveError::TsconfigLoadFailed` for tsconfig read and parse
failures
([#1287](#1287)) (by
@shulaoda)

### <!-- 2 -->🚜 Refactor

- replace cfg-if dependency with std cfg_select! macro
([#1290](#1290)) (by
@Boshen)

### <!-- 3 -->📚 Documentation

- normalize README sponsor section
([#1273](#1273)) (by
@Boshen)

### <!-- 4 -->⚡ Performance

- *(cache)* reuse the child path when its parent canonicalizes to itself
([#1288](#1288)) (by
@Boshen)
- *(napi)* shrink release binaries (path remap + build-std without
backtrace)
([#1283](#1283)) (by
@Boshen)

### Contributors

* @sapphi-red
* @Boshen
* @renovate[bot]
* @shulaoda
</blockquote>



</p></details>

---
This PR was generated with
[release-plz](https://github.com/release-plz/release-plz/).

Co-authored-by: oxc-guard[bot] <276638029+oxc-guard[bot]@users.noreply.github.com>
@oxc-guard oxc-guard Bot mentioned this pull request Jul 12, 2026
Boshen pushed a commit that referenced this pull request Jul 12, 2026
## 🤖 New release

* `oxc_resolver`: 11.24.0 -> 11.24.1
* `oxc_resolver_napi`: 11.24.0 -> 11.24.1

<details><summary><i><b>Changelog</b></i></summary><p>

## `oxc_resolver`

<blockquote>

##
[11.24.0](v11.23.0...v11.24.0)
- 2026-07-12

### <!-- 0 -->🚀 Features

- expose tsconfig paths resolve method without file existence check
([#1282](#1282)) (by
@sapphi-red)
- add `ResolveError::TsconfigLoadFailed` for tsconfig read and parse
failures
([#1287](#1287)) (by
@shulaoda)

### <!-- 2 -->🚜 Refactor

- replace cfg-if dependency with std cfg_select! macro
([#1290](#1290)) (by
@Boshen)

### <!-- 3 -->📚 Documentation

- normalize README sponsor section
([#1273](#1273)) (by
@Boshen)

### <!-- 4 -->⚡ Performance

- *(cache)* reuse the child path when its parent canonicalizes to itself
([#1288](#1288)) (by
@Boshen)
- *(napi)* shrink release binaries (path remap + build-std without
backtrace)
([#1283](#1283)) (by
@Boshen)

### Contributors

* @sapphi-red
* @Boshen
* @renovate[bot]
* @shulaoda
</blockquote>



</p></details>

---
This PR was generated with
[release-plz](https://github.com/release-plz/release-plz/).

Co-authored-by: oxc-guard[bot] <276638029+oxc-guard[bot]@users.noreply.github.com>
graphite-app Bot pushed a commit to rolldown/rolldown that referenced this pull request Jul 15, 2026
…mport.meta.glob` (#10167)

Implements tsconfig paths support for `import.meta.glob` in a similar way to how subpath imports support is implemented.

This PR does not support the case when the `paths` has multiple items in the array. Doing so requires the resolution to happen in the `rolldown_plugin_vite_import_glob` plugin because the candidates cannot be returned from `this.resolve`. But that could break plugins that resolves in between these plugins.

An alternative approach is to make oxc-resolver possible to resolve globs. But this requires a huge change and I think it's not worth at this point.

implements vitejs/vite#22881
requires oxc-project/oxc-resolver#1282
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.

2 participants