Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Missing Sources in Source Map Since v0.24.1 #4104

Closed
alan-agius4 opened this issue Mar 3, 2025 · 1 comment
Closed

Missing Sources in Source Map Since v0.24.1 #4104

alan-agius4 opened this issue Mar 3, 2025 · 1 comment

Comments

@alan-agius4
Copy link

alan-agius4 commented Mar 3, 2025

Issue: Missing Sources in Source Map Since v0.24.1

Expected Source Map Output

{
  "version": 3,
  "sources": ["entry.js", "app.component.html", "app.component.ts"],
  "sourcesContent": [
    "import { bootstrapApplication } from '@angular/platform-browser';\nimport { AppComponent } from './app.js';\n\nbootstrapApplication(AppComponent)\n  .catch((err) => console.error(err));",
    "<div>",
    "import { Component } from '@angular/core';\nimport { RouterOutlet } from '@angular/router';\n\n@Component({\n  selector: 'app-root',\n  imports: [RouterOutlet],\n  templateUrl: './app.component.html',\n})\nexport class AppComponent {\n  title = 'ng19-sourcemap-repro';\n\n  onClick() {\n    debugger;\n  }\n}\n"
  ],
  "mappings": ";AAAA,SAAS,4BAA4B;;;;;;ACArC;;;ACAA,SAAS,iBAAiB;AAC1B,SAAS,oBAAoB;AAOtB,IAAM,eAAN,MAAMA,cAAY;EACvB,QAAQ;EAER,UAAO;AACL;EACF;;AALW,eAAY,WAAA;EALxB,UAAU;IACT,UAAU;IACV,SAAS,CAAC,YAAY;IACtB,UAAA;GACD;GACY,YAAY;;;AFLzB,qBAAqB,YAAY,EAC9B,MAAM,CAAC,QAAQ,QAAQ,MAAM,GAAG,CAAC;",
  "names": ["AppComponent"]
}

Actual Source Map Output

{
  "version": 3,
  "sources": ["entry.js", "app.component.html"],
  "sourcesContent": [
    "import { bootstrapApplication } from '@angular/platform-browser';\nimport { AppComponent } from './app.js';\n\nbootstrapApplication(AppComponent)\n  .catch((err) => console.error(err));",
    "<div>"
  ],
  "mappings": ";AAAA,SAAS,4BAA4B;A;;;;;ACArC;;;AAAA,SAAS,iBAAiB;AAC1B,SAAS,oBAAoB;AAOtB,IAAM,eAAN,MAAMA,cAAY;EACvB,QAAQ;EAER,UAAO;AACL;EACF;;AALW,eAAY,WAAA;EALxB,UAAU;IACT,UAAU;IACV,SAAS,CAAC,YAAY;IACtB,UAAA;GACD;GACY,YAAY;;;ADLzB,qBAAqB,YAAY,EAC9B,MAAM,CAAC,QAAQ,QAAQ,MAAM,GAAG,CAAC;",
  "names": ["AppComponent"]
}

Summary of Issue

  • Since version 0.24.1, the source map is missing app.component.ts.
  • This results in incomplete sources and sourcesContent, which impacts debugging.
  • The expected output includes app.component.ts, but the actual output omits it.
  • Strangely, if the first import in entry.js import { bootstrapApplication } from '@angular/platform-browser'; is omitted, the sources are generated as expected.

Reproduction

https://esbuild.github.io/try/#YgAwLjI0LjIAewogIGZvcm1hdDogJ2VzbScsCiAgYWJzV29ya2luZ0RpcjogJy8nLAogIHNvdXJjZW1hcDogJ2V4dGVybmFsJywKICBvdXRkaXI6ICcvJywKICBidW5kbGU6IHRydWUsCiAgbG9hZGVyOiB7CiAgICAnLmh0bWwnOiAndGV4dCcsCiAgfSwKICBwYWNrYWdlczogJ2V4dGVybmFsJywKfQBlAGVudHJ5LmpzAGltcG9ydCB7IGJvb3RzdHJhcEFwcGxpY2F0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7CmltcG9ydCB7IEFwcENvbXBvbmVudCB9IGZyb20gJy4vYXBwLmpzJzsKCmJvb3RzdHJhcEFwcGxpY2F0aW9uKEFwcENvbXBvbmVudCkKICAuY2F0Y2goKGVycikgPT4gY29uc29sZS5lcnJvcihlcnIpKTsAAGFwcC5jb21wb25lbnQuaHRtbAA8ZGl2PgAAYXBwLmpzAGltcG9ydCB7IF9fZGVjb3JhdGUgfSBmcm9tICJ0c2xpYiI7CmltcG9ydCBfX05HX0NMSV9SRVNPVVJDRV9fMCBmcm9tICIuL2FwcC5jb21wb25lbnQuaHRtbCI7CmltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnOwppbXBvcnQgeyBSb3V0ZXJPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInOwpsZXQgQXBwQ29tcG9uZW50ID0gY2xhc3MgQXBwQ29tcG9uZW50IHsKICAgIHRpdGxlID0gJ25nMTktc291cmNlbWFwLXJlcHJvJzsKICAgIG9uQ2xpY2soKSB7CiAgICAgICAgZGVidWdnZXI7CiAgICB9Cn07CkFwcENvbXBvbmVudCA9IF9fZGVjb3JhdGUoWwogICAgQ29tcG9uZW50KHsKICAgICAgICBzZWxlY3RvcjogJ2FwcC1yb290JywKICAgICAgICBpbXBvcnRzOiBbUm91dGVyT3V0bGV0XSwKICAgICAgICB0ZW1wbGF0ZTogX19OR19DTElfUkVTT1VSQ0VfXzAsCiAgICB9KQpdLCBBcHBDb21wb25lbnQpOwpleHBvcnQgeyBBcHBDb21wb25lbnQgfTsKLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZGF0YTphcHBsaWNhdGlvbi9qc29uO2Jhc2U2NCxleUoyWlhKemFXOXVJam96TENKbWFXeGxJam9pWVhCd0xtTnZiWEJ2Ym1WdWRDNXFjeUlzSW5OdmRYSmpaVkp2YjNRaU9pSWlMQ0p6YjNWeVkyVnpJanBiSW1Gd2NDNWpiMjF3YjI1bGJuUXVkSE1pWFN3aWJtRnRaWE1pT2x0ZExDSnRZWEJ3YVc1bmN5STZJanM3UVVGQlFTeFBRVUZQTEVWQlFVVXNVMEZCVXl4RlFVRkZMRTFCUVUwc1pVRkJaU3hEUVVGRE8wRkJRekZETEU5QlFVOHNSVUZCUlN4WlFVRlpMRVZCUVVVc1RVRkJUU3hwUWtGQmFVSXNRMEZCUXp0QlFVOTRReXhKUVVGTkxGbEJRVmtzUjBGQmJFSXNUVUZCVFN4WlFVRlpPMGxCUTNaQ0xFdEJRVXNzUjBGQlJ5eHpRa0ZCYzBJc1EwRkJRenRKUVVVdlFpeFBRVUZQTzFGQlEwd3NVVUZCVVN4RFFVRkRPMGxCUTFnc1EwRkJRenREUVVOR0xFTkJRVUU3UVVGT1dTeFpRVUZaTzBsQlRIaENMRk5CUVZNc1EwRkJRenRSUVVOVUxGRkJRVkVzUlVGQlJTeFZRVUZWTzFGQlEzQkNMRTlCUVU4c1JVRkJSU3hEUVVGRExGbEJRVmtzUTBGQlF6dFJRVU4yUWl3NFFrRkJiVU03UzBGRGNFTXNRMEZCUXp0SFFVTlhMRmxCUVZrc1EwRk5lRUlpTENKemIzVnlZMlZ6UTI5dWRHVnVkQ0k2V3lKcGJYQnZjblFnZXlCRGIyMXdiMjVsYm5RZ2ZTQm1jbTl0SUNkQVlXNW5kV3hoY2k5amIzSmxKenRjYm1sdGNHOXlkQ0I3SUZKdmRYUmxjazkxZEd4bGRDQjlJR1p5YjIwZ0owQmhibWQxYkdGeUwzSnZkWFJsY2ljN1hHNWNia0JEYjIxd2IyNWxiblFvZTF4dUlDQnpaV3hsWTNSdmNqb2dKMkZ3Y0MxeWIyOTBKeXhjYmlBZ2FXMXdiM0owY3pvZ1cxSnZkWFJsY2s5MWRHeGxkRjBzWEc0Z0lIUmxiWEJzWVhSbFZYSnNPaUFuTGk5aGNIQXVZMjl0Y0c5dVpXNTBMbWgwYld3bkxGeHVmU2xjYm1WNGNHOXlkQ0JqYkdGemN5QkJjSEJEYjIxd2IyNWxiblFnZTF4dUlDQjBhWFJzWlNBOUlDZHVaekU1TFhOdmRYSmpaVzFoY0MxeVpYQnlieWM3WEc1Y2JpQWdiMjVEYkdsamF5Z3BJSHRjYmlBZ0lDQmtaV0oxWjJkbGNqdGNiaUFnZlZ4dWZWeHVJbDE5

@evanw
Copy link
Owner

evanw commented Mar 9, 2025

Looks like this is the same underlying issue as #4080, which has already been fixed. I'll add this as an additional test case though, as it's a nice variation (a valid but incorrect source map, instead of an invalid source map).

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

No branches or pull requests

2 participants