Don't force module output when targeting ES6 #140
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR cleans up module defaults and target handling and fixes #111 and #132
Previously the module output was defaulted to CommonJS except in the case where the target was set to ES6, in which case the module output was forced to "None". This worked well in TS 1.6 but causes problems in TS 1.7+ because it's impossible to configure ts-loader to
target: es6
andmodule: commonjs
.The new behavior is as follows:
target
is NOTes6
. This is a breaking change, but causes ts-loader to behave a little more liketsc
(in that if you specify atarget: es6
but not module the output is es6 modules) and also will eventually provide a better default experience when webpack2 hits.module: none
iftarget: es6
Additionally this PR cleans up default lib handling (#67) and fixes a test based on a change in the nightly.