-
Notifications
You must be signed in to change notification settings - Fork 12.8k
Support single-module transpilation mode #2499
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Comments
👍 though we need a good name for the flag :) |
Proposed implementation #2550.
|
Visual Studio Code does not transpile on save. And I suppose it's because TSC does not implement this. It's major pain to transpile and compile all files each time, it causes a lot of file changes and triggers many webpack/browserify processes, time from edit to F5 is really big. Only tool doing single file transpiling at the moment is atom-typescript, but it's not using TSC for that. Btw, it probably should be called "--singleModuleTranspile" because single file transpile is not same thing, if I understod this right. |
@vladima we will need another check for reexporting type-only names in ES6 and in singleFile mode. we also need to update the name of the flag after the next desing meeting discussion. |
PR #3208 renames the flag to |
The flag has been renamed to |
The compiler does not do emit based on semantic information in most cases. this allows us to provide an api for transpiling a module that does not require typecheck or full program information. just single file syntactic transformation.
This can be helpful in multiple scenarios, including: typescript-simple (https://github.com/teppeis/typescript-simple), JSPM (#2233), es6-module-loader and as atom extensions.
A new compiler flag (--singeFileTranspilation or --disableFullProgramOptimizations for instance) that will make cases that break single file-transpilation an error namely: 1.Const enums defined in ambient modules and 2.Re-exporting types-only constructs when targeting ES6
The text was updated successfully, but these errors were encountered: