Skip to content

Comments

Implement source maps during native packaging#1033

Draft
marcins wants to merge 8 commits intomainfrom
mszczepanski/native-pkg-source-maps
Draft

Implement source maps during native packaging#1033
marcins wants to merge 8 commits intomainfrom
mszczepanski/native-pkg-source-maps

Conversation

@marcins
Copy link
Contributor

@marcins marcins commented Feb 18, 2026

Motivation

Implement source map support when packaging the dev bundle.

Changes

  • produce source maps during asset manipulation
  • assemble and write a final source map when packaging the bundle

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 18, 2026

🦋 Changeset detected

Latest commit: 0751673

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

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

Rust Package Changeset Check

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

@marcins marcins force-pushed the mszczepanski/native-pkg-source-maps branch from f4850ff to 01d5d8b Compare February 18, 2026 06:02
@github-actions
Copy link
Contributor

github-actions bot commented Feb 18, 2026

📊 Type Coverage Report

Coverage Comparison

Metric Baseline Current Change
Coverage Percentage 92.24% 92.24% ➡️ 0.00%
Correctly Typed 219,987 219,988 +1
Total Expressions 238,483 238,484 +1
Untyped Expressions 18,496 18,496 +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 885 626
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

@github-actions
Copy link
Contributor

github-actions bot commented Feb 18, 2026

📊 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) 15.06s 1.92GB 2.17GB -1.86% duration, -6.42% JS memory 🟡 Neutral
Three.js Real Repository (V3) 19.01s 3.23GB 3.74GB +5.57% duration, +0.34% JS memory 🔴 Regression

🔍 Detailed Phase Analysis

Three.js Real Repository (JS)

Phase Duration (avg) Duration (p95) Memory Peak (avg) Memory Peak (p95)
resolving 7.02s 7.39s 1.36GB 1.73GB
transforming 7.01s 7.38s 1.37GB 1.73GB
bundling 6.82s 7.21s 1.37GB 1.73GB
bundled 6.47s 6.87s 1.46GB 1.82GB
packaging 4.40s 4.61s 1.56GB 1.91GB
optimizing 4.25s 4.47s 1.92GB 2.16GB

Three.js Real Repository (V3)

Phase Duration (avg) Duration (p95) Memory Peak (avg) Memory Peak (p95)
bundling 11.74s 17.28s 2.56GB 2.99GB
bundled 11.42s 16.96s 2.71GB 3.16GB
packaging 5.69s 6.49s 2.88GB 3.35GB
optimizing 5.50s 6.32s 3.23GB 3.74GB

💾 Unified Memory Analysis

Three.js Real Repository (JS) Memory Statistics

Memory Type Metric Min Mean Median P95 P99 Max Std Dev
JavaScript RSS 1.27GB 1.75GB 1.76GB 2.16GB 2.16GB 2.16GB 274.43MB
Heap Used 80.23MB 87.83MB 87.17MB 98.56MB 98.56MB 98.56MB 6.43MB
Heap Total 96.60MB 130.98MB 129.52MB 177.89MB 177.89MB 177.89MB 22.36MB
External 38.88MB 105.96MB 173.02MB 173.02MB 173.02MB 173.02MB 67.06MB
Native (Rust) Physical Memory 1.66GB 1.83GB 1.83GB 2.01GB 2.10GB 2.17GB 118.01MB
Virtual Memory 29.91GB 30.56GB 30.57GB 30.77GB 30.88GB 30.95GB 164.76MB

Sample Counts: JS: 14, Native: 240

Three.js Real Repository (V3) Memory Statistics

Memory Type Metric Min Mean Median P95 P99 Max Std Dev
JavaScript RSS 2.37GB 2.99GB 3.06GB 3.74GB 3.74GB 3.74GB 408.89MB
Heap Used 77.42MB 78.66MB 77.86MB 88.27MB 88.27MB 88.27MB 2.71MB
Heap Total 86.45MB 95.42MB 89.20MB 130.70MB 130.70MB 130.70MB 13.49MB
External 46.07MB 172.64MB 179.70MB 185.49MB 185.49MB 185.49MB 35.21MB
Native (Rust) Physical Memory 2.92GB 3.27GB 3.27GB 3.61GB 3.74GB 3.74GB 185.42MB
Virtual Memory 30.85GB 33.54GB 33.69GB 34.02GB 34.16GB 34.16GB 678.10MB

Sample Counts: JS: 14, Native: 366

🖥️ Environment

  • Node.js: v22.17.0
  • Platform: linux (x64)
  • CPU: AMD EPYC 7763 64-Core Processor
  • Total Memory: 15.62GB
  • Git SHA: b71e096
  • Branch: mszczepanski/native-pkg-source-maps
  • Timestamp: 2026-02-18T22:30:41.495Z

@marcins marcins force-pushed the mszczepanski/native-pkg-source-maps branch from 01d5d8b to b71e096 Compare February 18, 2026 22:04
@marcins marcins force-pushed the mszczepanski/native-pkg-source-maps branch from b71e096 to 0751673 Compare February 19, 2026 06:12
@marcins marcins force-pushed the mszczepanski/native-pkg-filesystem-bundle-storage branch 2 times, most recently from d265923 to 6bed815 Compare February 19, 2026 06:20
Base automatically changed from mszczepanski/native-pkg-filesystem-bundle-storage to main February 19, 2026 22:05
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.

1 participant