Skip to content
This repository has been archived by the owner on Dec 5, 2019. It is now read-only.

Commit

Permalink
fix(index): don't remove legal comments by default (`options.extractC…
Browse files Browse the repository at this point in the history
…omments`) (#250)
  • Loading branch information
evilebottnawi authored and michael-ciniawsky committed Mar 16, 2018
1 parent f9e55fe commit b31b574
Show file tree
Hide file tree
Showing 3 changed files with 235 additions and 127 deletions.
2 changes: 1 addition & 1 deletion src/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ class UglifyJsPlugin {
exclude,
uglifyOptions: {
output: {
comments: false,
comments: extractComments ? false : /^\**!|@preserve|@license|@cc_on/,
},
...uglifyOptions,
},
Expand Down
117 changes: 70 additions & 47 deletions test/__snapshots__/extract-comments-options.test.js.snap
Original file line number Diff line number Diff line change
@@ -1,107 +1,130 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP

exports[`errors 1`] = `Array []`;
exports[`"options.extractComments" is "boolean" - "true": errors 1`] = `Array []`;

exports[`errors 2`] = `Array []`;
exports[`"options.extractComments" is "boolean" - "true": test.js 1`] = `"var foo=1;"`;

exports[`errors 3`] = `Array []`;

exports[`errors 4`] = `Array []`;

exports[`errors 5`] = `Array []`;

exports[`nested/nested/test1.js 1`] = `
exports[`"options.extractComments" is "boolean" - "true": test1.js 1`] = `
"/*! For license information please see test1.js.LICENSE */
var foo=1;"
`;

exports[`nested/nested/test1.js.LICENSE 1`] = `
"/* Comment */
exports[`"options.extractComments" is "boolean" - "true": test1.js.LICENSE 1`] = `
"/*! Legal Comment */
"
`;

exports[`nested/test.js 1`] = `
exports[`"options.extractComments" is "boolean" - "true": warnings 1`] = `Array []`;

exports[`"options.extractComments" is "function": errors 1`] = `Array []`;

exports[`"options.extractComments" is "function": test.js 1`] = `
"/*! For license information please see test.js.LICENSE */
var foo=1;"
`;

exports[`nested/test1.js.LICENSE 1`] = `
exports[`"options.extractComments" is "function": test.js.LICENSE 1`] = `
"// Comment
"
`;

exports[`test.js 1`] = `"var foo=1;"`;

exports[`test.js 2`] = `"var foo=1;"`;

exports[`test.js 3`] = `
"/*! For license information please see test.js.LICENSE */
exports[`"options.extractComments" is "function": test1.js 1`] = `
"/*! For license information please see test1.js.LICENSE */
var foo=1;"
`;

exports[`test.js 4`] = `
"/*! For license information please see test.js.LICENSE */
var foo=1;"
exports[`"options.extractComments" is "function": test1.js.LICENSE 1`] = `
"/* Comment */
"
`;

exports[`test.js 5`] = `
"/*! For license information please see test1.js.LICENSE */
var foo=1;"
`;
exports[`"options.extractComments" is "function": warnings 1`] = `Array []`;

exports[`"options.extractComments" is "object": errors 1`] = `Array []`;

exports[`test.js 6`] = `
exports[`"options.extractComments" is "object": test.js 1`] = `
"/*! License information can be found in test.license.js */
var foo=1;"
`;

exports[`test.js.LICENSE 1`] = `
exports[`"options.extractComments" is "object": test.license.js 1`] = `
"// Comment
"
`;

exports[`test.js.LICENSE 2`] = `
"// Comment
"
exports[`"options.extractComments" is "object": warnings 1`] = `Array []`;

exports[`"options.extractComments" is "regex": errors 1`] = `Array []`;

exports[`"options.extractComments" is "regex": test.js 1`] = `"var foo=1;"`;

exports[`"options.extractComments" is "regex": test1.js 1`] = `
"/*! For license information please see test1.js.LICENSE */
var foo=1;"
`;

exports[`test.license.js 1`] = `
"// Comment
exports[`"options.extractComments" is "regex": test1.js.LICENSE 1`] = `
"// foo
"
`;

exports[`test1.js 1`] = `"var foo=1;"`;
exports[`"options.extractComments" is "regex": warnings 1`] = `Array []`;

exports[`test1.js 2`] = `
exports[`"options.extractComments" is "string" - "all" and license file should be relative source file: errors 1`] = `Array []`;

exports[`"options.extractComments" is "string" - "all" and license file should be relative source file: nested/nested/test1.js 1`] = `
"/*! For license information please see test1.js.LICENSE */
var foo=1;"
`;

exports[`test1.js 3`] = `
"/*! For license information please see test1.js.LICENSE */
exports[`"options.extractComments" is "string" - "all" and license file should be relative source file: nested/nested/test1.js.LICENSE 1`] = `
"/* Comment */
"
`;

exports[`"options.extractComments" is "string" - "all" and license file should be relative source file: nested/test.js 1`] = `
"/*! For license information please see test.js.LICENSE */
var foo=1;"
`;

exports[`test1.js.LICENSE 1`] = `
"// foo
exports[`"options.extractComments" is "string" - "all" and license file should be relative source file: nested/test.js.LICENSE 1`] = `
"// Comment
"
`;

exports[`test1.js.LICENSE 2`] = `
"/* Comment */
exports[`"options.extractComments" is "string" - "all" and license file should be relative source file: warnings 1`] = `Array []`;

exports[`"options.extractComments" is "string": errors 1`] = `Array []`;

exports[`"options.extractComments" is "string": test.js 1`] = `
"/*! For license information please see test.js.LICENSE */
var foo=1;"
`;

exports[`"options.extractComments" is "string": test.js.LICENSE 1`] = `
"// Comment
"
`;

exports[`test1.js.LICENSE 3`] = `
exports[`"options.extractComments" is "string": test1.js 1`] = `
"/*! For license information please see test1.js.LICENSE */
var foo=1;"
`;

exports[`"options.extractComments" is "string": test1.js.LICENSE 1`] = `
"/* Comment */
"
`;

exports[`warnings 1`] = `Array []`;
exports[`"options.extractComments" is "string": warnings 1`] = `Array []`;

exports[`warnings 2`] = `Array []`;
exports[`"options.extractComments" is not specify: errors 1`] = `Array []`;

exports[`warnings 3`] = `Array []`;
exports[`"options.extractComments" is not specify: test.js 1`] = `"var foo=1;"`;

exports[`warnings 4`] = `Array []`;
exports[`"options.extractComments" is not specify: test1.js 1`] = `
"/*! Legal Comment */
var foo=1;"
`;

exports[`warnings 5`] = `Array []`;
exports[`"options.extractComments" is not specify: warnings 1`] = `Array []`;
Loading

0 comments on commit b31b574

Please sign in to comment.