microsoft / microsoft/TypeScript
Provide option to not include `sourceMappingURL` in the generated `.js` file when `sourceMap` is `true`
Nobody has claimed this yet.
- Dominant language
- Go
- Stars
- 111k
- Forks
- 14.4k
- Avg merge
- 1d 19h
- Merged PRs (30d)
- 117
Description
🔍 Search Terms
- sourceMappingURL
- sourceMap
✅ Viability Checklist
- This wouldn't be a breaking change in existing TypeScript/JavaScript code
- This wouldn't change the runtime behavior of existing JavaScript code
- This could be implemented without emitting different JS based on the types of the expressions
- This isn't a runtime feature (e.g. library functionality, non-ECMAScript syntax with JavaScript output, new syntax sugar for JS, etc.)
- This isn't a request to add a new utility type: https://github.com/microsoft/TypeScript/wiki/No-New-Utility-Types
- This feature would agree with the rest of our Design Goals: https://github.com/Microsoft/TypeScript/wiki/TypeScript-Design-Goals
⭐ Suggestion
There should be a compilerOption to disable inclusion of sourceMappingURL in the generated .js file when sourceMap is true.
📃 Motivating Example
When sourceMap is true in tsconfig.json, TypeScript compiler generates .map file together with .js file and also include sourceMappingURL in .js file.
The inclusion of sourceMappingURL in .js file is one way of linking generated code with sourcemap.
Another way is to use SourceMap header.
Right now, to make use of SourceMap header without including sourceMappingURL in .js file, I have to:
- set
sourceMaptotrue - run
npx tsc - set
sourceMaptofalse - run
npx tsconce again.
There should provide a compilerOption to disable inclusion of sourceMappingURL in the generated .js file.
💻 Use Cases
-
What do you want to use this for?
I want to use this to use SourceMap header without getting warning in browser. The benefit of using SourceMap header is that the linking of generated file to map file can be controlled by the server without regenerating.jsfile. -
What shortcomings exist with current approaches?
sourceMappingURLis included in.jsfile. -
What workarounds are you using in the meantime?
- set
sourceMaptotrue - run
npx tsc - set
sourceMaptofalse - run
npx tsconce again.
- set
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
No files, tests, or compiler entry points are named in the issue. Start by tracing how the sourceMap compiler option controls .map emission and the sourceMappingURL comment. Done means a documented compiler option can suppress that comment while still emitting source maps, with coverage for both enabled and disabled behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript, typescript
- Domain
- compilers
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 30/100