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

Commit

Permalink
fix: don't remove legal comments by default
Browse files Browse the repository at this point in the history
  • Loading branch information
evilebottnawi committed Mar 13, 2018
1 parent 14d2c4c commit 4b5d66d
Show file tree
Hide file tree
Showing 3 changed files with 209 additions and 102 deletions.
2 changes: 1 addition & 1 deletion src/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ class UglifyJsPlugin {
exclude,
uglifyOptions: {
output: {
comments: false,
comments: extractComments ? false : /^\**!|@preserve|@license|@cc_on/,
},
...uglifyOptions,
},
Expand Down
93 changes: 58 additions & 35 deletions test/__snapshots__/extract-comments-options.test.js.snap
Original file line number Diff line number Diff line change
@@ -1,83 +1,106 @@
// 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[`"options.extractComments" is "boolean" - "true": test1.js 1`] = `
"/*! For license information please see test1.js.LICENSE */
var foo=1;"
`;

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

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

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

exports[`test.js 3`] = `
exports[`"options.extractComments" is "function": test.js 1`] = `
"/*! For license information please see test.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": test.js.LICENSE 1`] = `
"// Comment
"
`;

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

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

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

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

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[`test.license.js 1`] = `
"// Comment
"
`;
exports[`"options.extractComments" is "regex": errors 1`] = `Array []`;

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

exports[`test1.js 2`] = `
exports[`"options.extractComments" is "regex": 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 "regex": test1.js.LICENSE 1`] = `
"// foo
"
`;

exports[`"options.extractComments" is "regex": 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[`test1.js.LICENSE 1`] = `
"// foo
exports[`"options.extractComments" is "string": test.js.LICENSE 1`] = `
"// Comment
"
`;

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

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

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

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

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

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

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

0 comments on commit 4b5d66d

Please sign in to comment.