Skip to content

Latest commit

 

History

History
146 lines (72 loc) · 8.71 KB

CHANGELOG.md

File metadata and controls

146 lines (72 loc) · 8.71 KB

Change Log

All notable changes will be documented in this file. Simplifyify adheres to Semantic Versioning.

v8.0.0 (2020-02-18)

  • Moved Simplifyify to the @JSDevTools scope on NPM

  • The "simplifyify" NPM package is now just a wrapper around the scoped "@jsdevtools/simplifyify" package

Full Changelog

v7.0.0 (2018-10-18)

Breaking Change

  • Simplifyify is no longer tested on Node 6 and Node 8. It's now only tested on the latest LTS version of Node (which is currently Node 10). It currently still works fine in older versions, but they are no longer officially supported.

Other Changes

  • Improved performance by making many operations async and parallelizing them

  • Fixed a bug that caused Simplifyify to crash in watch mode when files contained syntax errors

Full Changelog

v6.0.0 (2018-09-29)

Breaking Changes

  • The shorthand argument for the --exclude option is now -x instead of -u

  • The --test argument has been replaced with --coverage for clarity. The corresponding shorthand argument is -c.

  • The --coverage argument produces a .coverage.js file instead of a .test.js file

Full Changelog

v5.0.0 (2018-09-17)

TypeScript Support

  • Simplifyify now has built-in support for TypeScript! If your entry file has a .ts or .tsx extension, then Simplifyify will automatically use TSify to transpile your code. You can configure TSify via the browserify.plugins field in your package.json, or via a tsconfig.json file. If both exist, then the browserify.plugins field overrides any values in tsconfig.json.

Breaking Changes

  • Dropped support for Node v4.0 and older (see https://github.com/nodejs/Release)

  • Previously, browserify-banner could be configured using the browserify.transform field in package.json. But browserify-banner is a Browserify plugin, not a transform. This caused it to be loaded twice - once as a plugin and once as a transform. You should now use the browserify.plugins field instead.

  • The browserify.transform field in package.json can be used to configure Browserify transforms. Previously, Simplifyify allowed you to also use it to configure Browserify plugins, but that caused plugins to be loaded twice - once as a plugin and once as a transform. This can cause undefined behavior with some plugins. To fix that, Simplifyify now expects you to to configure Browserify plugins using the browserify.plugins field instead.

Full Changelog

v4.0.0 (2018-01-17)

  • Updated all dependencies, including major version updates of browserify, babelify, browserify-istanbul, and exorcist

  • Switched from UglifyJS to Uglify-ES, which supports ES2015+ syntax. This shouldn't break anything, but I'm bumping the major version number just to be safe

Full Changelog

v3.3.0 (2018-01-10)

  • Refactored to use ES6 syntax (Node 4.x compatible)

  • The --standalone option now supports a wildcard (e.g. "MyLib.*"). Thanks to @taye for the PR

Full Changelog

v3.2.0 (2016-11-11)

  • Fixed several subtle bugs that were introduced in 3.1.0

Full Changelog

v3.1.0 (2016-11-06)

New Feature: bannerify support

Just add a banner.txt file to your project, and it'll automatically be added to your output bundle(s). The banner.txt file can contain Lodash templates, which have access to the full lodash library as well as moment-js for date/time formatting. See this example.

Better performance

File i/o operations have been optimized in this release. Files that are likely to be needed by multiple entry files are cached so they only need to be read once. Other file i/o operations that were previously synchronous are now asynchronous.

Full Changelog

v3.0.0 (2016-11-02)

Major changes in this release:

1) Dropped support for Node 0.x

Simplifyify now requires Node 4.0 or greater, which is in-line with the Node.js LTS schedule. Many other dev tools, including some that simplifyify depends on, have also started dropping support for Node 0.x. Time to upgrade, folks.

2) Better minification

Simplifyify has always used uglifyify under the hood to minify each module individually, but now it also uses UglifyJS to minify the entire bundle file. This 2-phase process produces the smallest output possible.

3) Configure Uglifyify and Istanbul options

You can now specify custom options for the built-in Uglifyify and Istanbul transforms via the browserify.transform in your package.json. See this example in the ReadMe.

Full Changelog

v2.0.0 (2015-12-28)

Major changes in this release:

1) Support for Browserify transforms

Simplifyify will now check your package.json file to see if you have a browserify.transform field. If so, then it will automatically add those transforms. No need to specify them on the command line. See the readme for more details.

2) You choose whether the "default" bundle gets created

In previous versions, Simplifyify always created an unminified bundle. This makes sense if you don't specify any output options. But if you do specify output options (such as --coverage or --minify), then you may not have expected it to also create an unminified bundle. So, in this version, there is now a --bundle option that you must use to explicitly specify that you want an unminified bundle. Otherwise, only the bundle(s) that you explicitly specify will be created.

Full Changelog