Skip to content

Comments

Implement inline requires in native packager#1042

Draft
marcins wants to merge 6 commits intomainfrom
mszczepanski/native-pkg-inline-requires
Draft

Implement inline requires in native packager#1042
marcins wants to merge 6 commits intomainfrom
mszczepanski/native-pkg-inline-requires

Conversation

@marcins
Copy link
Contributor

@marcins marcins commented Feb 24, 2026

Motivation

Provide relevant context and motivation behind the change, if any

Changes

Describe the solution and changes you have made

Checklist

  • Existing or new tests cover this change
  • There is a changeset for this change, or one is not required
  • Added documentation for any new features to the docs/ folder

@changeset-bot
Copy link

changeset-bot bot commented Feb 24, 2026

🦋 Changeset detected

Latest commit: 5dfbc8d

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 112 packages
Name Type
@atlaspack/types-internal Minor
@atlaspack/core Minor
@atlaspack/rust Minor
@atlaspack/bundler-default Patch
atlaspack Patch
@atlaspack/codeframe Patch
@atlaspack/fs Patch
@atlaspack/graph Patch
@atlaspack/logger Patch
@atlaspack/plugin Patch
@atlaspack/profiler Patch
@atlaspack/types Patch
@atlaspack/utils Patch
@atlaspack/workers Patch
@atlaspack/packager-css Patch
@atlaspack/reporter-bundle-buddy Patch
@atlaspack/runtime-js Patch
@atlaspack/transformer-less Patch
@atlaspack/transformer-postcss Patch
@atlaspack/transformer-tokens Patch
@atlaspack/transformer-xml Patch
@atlaspack/ts-utils Patch
@atlaspack/config-default Major
@atlaspack/config-webextension Major
@atlaspack/cli Patch
@atlaspack/e2e-tests Patch
@atlaspack/register Patch
@atlaspack/test-utils Patch
@atlaspack/inspector Patch
@atlaspack/bundle-stats Patch
@atlaspack/packaging-test-harness Patch
@atlaspack/query Patch
@atlaspack/optimizer-image Major
@atlaspack/reporter-bundle-stats Patch
@atlaspack/transformer-html Patch
@atlaspack/transformer-image Major
@atlaspack/transformer-js Major
@atlaspack/inspector-frontend Patch
@atlaspack/cache Patch
@atlaspack/source-map Patch
@atlaspack/link Patch
@atlaspack/optimizer-inline-requires Patch
@atlaspack/packager-js Patch
@atlaspack/transformer-compiled-css-in-js Patch
@atlaspack/transformer-svg Patch
@atlaspack/node-resolver-core Patch
@atlaspack/package-manager Patch
@atlaspack/watcher-watchman-js Patch
@atlaspack/bundler-library Patch
@atlaspack/compressor-brotli Patch
@atlaspack/compressor-gzip Patch
@atlaspack/compressor-raw Patch
@atlaspack/namer-default Patch
@atlaspack/optimizer-blob-url Patch
@atlaspack/optimizer-css Patch
@atlaspack/optimizer-cssnano Patch
@atlaspack/optimizer-data-url Patch
@atlaspack/optimizer-htmlnano Patch
@atlaspack/optimizer-svgo Patch
@atlaspack/optimizer-swc Patch
@atlaspack/optimizer-terser Patch
@atlaspack/packager-html Patch
@atlaspack/packager-raw-url Patch
@atlaspack/packager-raw Patch
@atlaspack/packager-svg Patch
@atlaspack/packager-ts Patch
@atlaspack/packager-wasm Patch
@atlaspack/packager-webextension Patch
@atlaspack/packager-xml Patch
@atlaspack/reporter-build-metrics Patch
@atlaspack/reporter-bundle-analyzer Patch
@atlaspack/reporter-cli Patch
@atlaspack/reporter-compiled-css-in-js-migration-map Patch
@atlaspack/reporter-conditional-manifest Patch
@atlaspack/reporter-dev-server Patch
@atlaspack/reporter-json Patch
@atlaspack/reporter-lsp Patch
@atlaspack/reporter-sourcemap-visualiser Patch
@atlaspack/reporter-tracer Patch
@atlaspack/resolver-default Patch
@atlaspack/resolver-glob Patch
@atlaspack/resolver-tesseract Patch
@atlaspack/runtime-browser-hmr Patch
@atlaspack/runtime-react-refresh Patch
@atlaspack/runtime-service-worker Patch
@atlaspack/runtime-webextension Patch
@atlaspack/transformer-babel Patch
@atlaspack/transformer-compiled-external Patch
@atlaspack/transformer-compiled Patch
@atlaspack/transformer-css Patch
@atlaspack/transformer-glsl Patch
@atlaspack/transformer-graphql Patch
@atlaspack/transformer-inline-string Patch
@atlaspack/transformer-inline Patch
@atlaspack/transformer-json Patch
@atlaspack/transformer-jsonld Patch
@atlaspack/transformer-mdx Patch
@atlaspack/transformer-posthtml Patch
@atlaspack/transformer-pug Patch
@atlaspack/transformer-raw Patch
@atlaspack/transformer-react-refresh-wrap Patch
@atlaspack/transformer-sass Patch
@atlaspack/transformer-svg-react Patch
@atlaspack/transformer-toml Patch
@atlaspack/transformer-typescript-tsc Patch
@atlaspack/transformer-typescript-types Patch
@atlaspack/transformer-webextension Patch
@atlaspack/transformer-webmanifest Patch
@atlaspack/transformer-worklet Patch
@atlaspack/transformer-yaml Patch
@atlaspack/validator-eslint Patch
@atlaspack/validator-typescript Patch

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@github-actions
Copy link
Contributor

github-actions bot commented Feb 24, 2026

Rust Package Changeset Check

✅ The @atlaspack/rust package has been included in your changeset. Your Rust changes will be published.

@github-actions
Copy link
Contributor

github-actions bot commented Feb 24, 2026

📊 Type Coverage Report

Coverage Comparison

Metric Baseline Current Change
Coverage Percentage 92.22% 92.22% ➡️ 0.00%
Correctly Typed 220,222 220,278 +56
Total Expressions 238,788 238,844 +56
Untyped Expressions 18,566 18,566 +0

Files with Most Type Issues (Top 15)

File Issues Affected Lines
packages/core/integration-tests/test/javascript.ts 1152 745
packages/core/integration-tests/test/cache.ts 884 625
packages/core/integration-tests/test/scope-hoisting.ts 622 489
packages/utils/node-resolver-core/test/resolver.ts 476 177
packages/core/integration-tests/test/html.ts 468 294
packages/core/integration-tests/test/sourcemaps.ts 364 182
packages/core/test-utils/src/utils.ts 330 205
packages/core/integration-tests/test/incremental-bundling.ts 298 206
packages/core/core/src/dumpGraphToGraphViz.ts 251 108
packages/core/integration-tests/test/transpilation.ts 230 139
packages/core/integration-tests/test/output-formats.ts 227 161
packages/transformers/webextension/src/WebExtensionTransformer.ts 210 80
packages/core/core/src/requests/BundleGraphRequestRust.ts 194 67
packages/core/integration-tests/test/css-modules.ts 191 107
packages/core/core/src/requests/TargetRequest.ts 190 133

This report was generated by the Type Coverage GitHub Action

@marcins marcins force-pushed the mszczepanski/native-pkg-inline-requires branch from ef70a35 to a190908 Compare February 24, 2026 03:04
@github-actions
Copy link
Contributor

📊 Benchmark Results

⚠️ Performance regressions detected!

📊 Benchmark Results

Overall Performance

Test Duration JS Memory Peak Native Memory Peak vs Baseline Status
Three.js Real Repository (JS) 16.31s 1.77GB 1.97GB +5.92% duration, -6.03% JS memory 🔴 Regression
Three.js Real Repository (V3) 23.32s 3.16GB 3.35GB +11.97% duration, +5.94% JS memory 🔴 Regression

🔍 Detailed Phase Analysis

Three.js Real Repository (JS)

Phase Duration (avg) Duration (p95) Memory Peak (avg) Memory Peak (p95)
resolving 7.78s 8.34s 1.25GB 1.49GB
transforming 7.76s 8.33s 1.25GB 1.49GB
bundling 7.57s 8.15s 1.25GB 1.49GB
bundled 7.19s 7.78s 1.34GB 1.57GB
packaging 4.93s 5.34s 1.44GB 1.67GB
optimizing 4.78s 5.16s 1.77GB 1.97GB

Three.js Real Repository (V3)

Phase Duration (avg) Duration (p95) Memory Peak (avg) Memory Peak (p95)
bundling 14.09s 20.26s 2.45GB 2.81GB
bundled 13.72s 19.94s 2.62GB 2.95GB
packaging 6.31s 6.75s 2.76GB 3.04GB
optimizing 6.18s 6.62s 3.16GB 3.36GB

💾 Unified Memory Analysis

Three.js Real Repository (JS) Memory Statistics

Memory Type Metric Min Mean Median P95 P99 Max Std Dev
JavaScript RSS 1.09GB 1.60GB 1.65GB 1.97GB 1.97GB 1.97GB 248.34MB
Heap Used 79.78MB 87.82MB 91.58MB 102.64MB 102.64MB 102.64MB 7.48MB
Heap Total 94.35MB 112.38MB 126.10MB 131.64MB 131.64MB 131.64MB 15.83MB
External 38.88MB 115.54MB 173.02MB 173.02MB 173.02MB 173.02MB 66.37MB
Native (Rust) Physical Memory 1.42GB 1.60GB 1.59GB 1.83GB 1.91GB 1.97GB 133.49MB
Virtual Memory 29.90GB 30.55GB 30.57GB 30.76GB 30.89GB 30.93GB 179.98MB

Sample Counts: JS: 14, Native: 260

Three.js Real Repository (V3) Memory Statistics

Memory Type Metric Min Mean Median P95 P99 Max Std Dev
JavaScript RSS 2.31GB 2.91GB 2.90GB 3.36GB 3.36GB 3.36GB 342.31MB
Heap Used 77.58MB 78.68MB 78.01MB 87.58MB 87.58MB 87.58MB 2.49MB
Heap Total 85.20MB 89.64MB 88.95MB 100.20MB 100.20MB 100.20MB 3.82MB
External 46.07MB 172.64MB 179.70MB 185.49MB 185.49MB 185.49MB 35.21MB
Native (Rust) Physical Memory 2.73GB 2.98GB 3.01GB 3.23GB 3.35GB 3.35GB 155.32MB
Virtual Memory 30.83GB 33.28GB 33.60GB 33.83GB 33.96GB 33.96GB 827.14MB

Sample Counts: JS: 14, Native: 284

🖥️ Environment

  • Node.js: v22.17.0
  • Platform: linux (x64)
  • CPU: AMD EPYC 7763 64-Core Processor
  • Total Memory: 15.62GB
  • Git SHA: a190908
  • Branch: mszczepanski/native-pkg-inline-requires
  • Timestamp: 2026-02-24T03:31:18.676Z

@marcins marcins force-pushed the mszczepanski/native-pkg-inline-requires branch from a190908 to 661656a Compare February 24, 2026 04:26
@marcins marcins force-pushed the mszczepanski/native-pkg-inline-requires branch from 676cdf0 to 5dfbc8d Compare February 24, 2026 05:18
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