Change Log
All notable changes to this project will be documented in this file. See standard-version for commit guidelines.
4.0.4 (2020-04-01)
Bug Fixes
4.0.3 (2020-03-28)
Bug Fixes
- add webpack, tapable and html-minifier-terser as dependencies because of types.d.ts (238da81)
4.0.2 (2020-03-26)
Bug Fixes
- don't remove trailing slashes from self closing tags by default (2281e4b)
4.0.1 (2020-03-23)
Bug Fixes
- update typedefs to match with html-minifier-terser (2698c7e)
4.0.0 (2020-03-23)
The summary can be found in the release blog post.
Bug Fixes
- Add dependencies from the child compilation to the main compilation (27c3e72)
- Add typing for assets(Close jantimon#1243) (9fef060)
- allow contenthashalong withtemplatehash(049d4d3), closes #1033
- Catch and ignore pretty-error errors (2056139), closes #921
- Drop @types/webpack dependency (d4eb1c7)
- Ignore foreign child compilers (1422664)
- Improve perfomance for appcache files (b94e043)
- load script files before style files files in defer script loading mode (97f9fb9)
- Prevent chunks from beeing added multiple times (d65b37d)
- Prevent lodash from being inlined to work around a babel-loader incompatibility (7f21910), closes #1223
- Remove compilation.getStats() call for performance reasons (7005a55)
- remove useless links for options (#1153) (267e0e0)
- Update references to html-minifier (24bf1b5), closes #1311
- typings.d.ts: added apply method type to HtmlWwbpackPlugin class definitoin (8b7255f), closes jantimon#1244
- rename contenthashtotemplatehash(4c11c5d)
- Repair typings (#1166) (f4cb241)
- small type. minifcation instead of minification (#1154) (56037a6)
- Use src/index.ejs by default if present (#1167) (c27e5e4)
- chunksorter: Don't sort chunks by default (22fb03f)
- loader: switch to loaderUtils.getOptions (a0a0f0d)
- README: adds a link to template option documentation (f40aeae)
- tests: Upgrade webpack-recompilation-simulator (dfe1d10)
- Update lodash to 4.17.10 (cc3bf49)
Code Refactoring
- Change the structure of the internal assets object (37db086)
- Changed hook names and arguments - the hook order is 'beforeAssetTagGeneration', 'alterAssetTags', 'alterAssetTagGroups', 'afterTemplateExecution', 'beforeEmit', 'afterEmit' (14b4456)
- Use Webpack 4 APIs (47efdea)
Features
- add .toStringimplementation to htmlTags to allow easier rendering (34d8aa5)
- Add default viewport meta tag for default template (302e39e), closes #897 #978
- Add defer script loading (de315eb)
- Add support for relative publicPath   (dbbdd81)
- Add support for  tag (#1160) (c5d4b86)
- Add support for minifying inline ES6 inside html templates (c66766c), closes #1262
- Add support for the [contenthash] placeholder inside htm file names (ae8233a)
- Add typings to package.json (a524e8f), closes #1132
- Allow to return async template parameters (99f9362)
- drop workaround for "Uncaught TypeError: webpack_require(...) is not a function" to be compatible with webpack 5 (15ad0d2)
- Export major version of this plugin (6ae6f48)
- merge templateParameters with default template parameters (1d66e53)
- Provide a verbose error message if html minification failed (7df269f)
- compiler: Add file dependencies (bbc07a3)
- compiler: Use a single compiler for multiple plugin instances (f29ae88)
- compiler: Use timestamps to verify cache validity (0ebcd17)
- Remove selfClosingTag (5d3d8e4)
- Remove type="text/javascript" from injected script tags (b46bf67)
- Replace jade with pug in examples (d7ec407)
- Switch from jasmine to jest (ae1f435)
- hooks: Add a helper for easier hook access (b6dec4b)
- hooks: Provide static getHook method for access to all html-webpack-plugin hooks (#995) (82b34a1)
- Simplify  element and charset attribute (55313be)
- support ES6 template string in default loader (d6b65dd), closes #950
- Use jsdoc for static typing (a6b8d2d)
- Use webpack 4 entries api to extract asset information (342867e)
- html-tags: Add a helper to create html-tags (ee6a165)
BREAKING CHANGES
- defaults: Use src/index.ejs if no template option is set.
- defaults: The default template has now a predefined viewport meta tag
- defaults: The default meta utf-8 declaration was changed to 
- hooks: Renamed beforeHtmlGeneration hook to beforeAssetTagGeneration
- hooks: Renamed beforeHtmlProcessing hook to alterAssetTags
- hooks: Renamed afterHtmlProcessing hook to beforeEmit
- hooks: The html-webpack-plugin doesn't add its hooks to the compilation object anymore
- The assets object which is used for the template parameters and inside hooks was changed. The chunks property was removed and the js and css property was converted from a string into an object { entryName: string, path: string}
- The mimetype information "text/javascript" is removed from all generated script
tags
- Remove selfClosingTag attribute
- Template strings inside templates are now disabled by default
- Dropped support for Webpack 1 - 3
- Template variable webpack was removed
- chunksorter: Chunks aren't sorted anymore by default
3.2.0 (2018-04-03)
Bug Fixes
- loader: Allow to add new template parameters (f7eac19), closes #915
- loader: Use lodash inside the loader directly (7b4eb7f), closes #786
Features
3.1.0 (2018-03-22)
Features
- Allow to overwrite the templateParameter #830 (c5e32d3)
3.0.8 (2018-03-22)
Bug Fixes
3.0.7 (2018-03-19)
Bug Fixes
3.0.6 (2018-03-06)
Bug Fixes
3.0.5 (2018-03-06)
Bug Fixes
- entries: do not ignore JS if there is also CSS (020b714)
- entries: Don't add css entries twice (0348d6b)
- hooks: Remove deprecated tapable calls #879 (2288f20)
3.0.4 (2018-03-01)
Bug Fixes
- entries: Don't add css entries twice (e890f23)
3.0.3 (2018-03-01)
Refactor
- performance: Reduce the amount of chunk information gathered based on #825 (06c59a7)
3.0.2 (2018-03-01)
Bug Fixes
- query-loader: In case no query is provided, return an empty object. This fixes #727 (7587754)
3.0.1 (2018-03-01)
Bug Fixes
- package: Remove the extract-text-webpack-plugin peer dependency (57411a9)
3.0.0 (2018-28-02)
Features
- Add support for the new webpack tapable to be compatible with webpack 4.x
- Remove bluebird dependency
BREAKING CHANGES
- Similar to webpack 4.x the support for node versions older than 6 are no longer supported
2.30.1
- Revert part the performance optimization (#723) because of #753.
2.30.0
- Add manual sort
- Performance improvements (#723)
2.29.0
- Add support for Webpack 3
2.28.0
- Backport 3.x void tag for plugin authors
2.27.1
- Revert 2.25.0 loader resolving
2.27.0
- Fix a chunksorter webpack 2 issue (#569)
- Fix template path resolving (#542)
2.26.0
- Allow plugins to add attributes without values to the <script>and<link>tags
2.25.0
- Clearer loader output
- Add basic support for webpack 2
2.24.1
- Hide event deprecated warning of 'applyPluginsAsyncWaterfall' for html-webpack-plugin-after-emit and improve the warning message.
2.24.0
- Update dependencies
- Add deprecate warning for plugins not returning a result
- Add [path] for favicons
2.23.0
- Update dependencies
- Stop automated tests for webpack 2 beta because of #401
2.22.0
2.21.1
- Better error handling (#354)
2.21.0
- Add html-webpack-plugin-alter-asset-tagsevent to allow plugins to adjust the script/link tags
2.20.0
- Exclude chunks works now even if combined with dependency sort
2.19.0
- Add html-webpack-plugin-alter-chunksevent for custom chunk sorting and interpolation
2.18.0
2.17.0
- Add typeattribute toscriptelement to prevent issues in Safari 9.1.1
2.16.2
- Fix bug introduced by 2.16.2. Fixes  #315
2.16.1
- Fix hot module replacement for webpack 2.x
2.16.0
- Add support for dynamic filenames like index[hash].html
2.15.0
- Add full unit test coverage for the webpack 2 beta version
- For webpack 2 the default sort will be 'dependency' instead of 'id'
- Upgrade dependencies
2.14.0
- Export publicPath to the template
- Add example for inlining css and js
2.13.0
- Add support for absolute output file names
- Add support for relative file names outside the output path
2.12.0
- Basic Webpack 2.x support #225
2.11.0
- Add xhtmloption which is turned of by default. When activated it will inject self closed<link href=".." />tags instead of unclosed<link href="..">tags. (#255)
- Add support for webpack placeholders inside the public path e.g. '/dist/[hash]/'. (#249)
2.10.0
- Add hashfield to the chunk object
- Add compilationfield to the templateParam object (#237)
- Add html-webpack-plugin-before-html-generationevent
- Improve error messages
2.9.0
2.8.2
- Support relative URLs on Windows (#205)
2.8.1
- Caching improvements (#204)
2.8.0
- Add dependencymode forchunksSortModeto sort chunks based on their dependencies with each other
2.7.2
- Add support for require in js templates
2.7.1
- Refactoring
- Fix relative windows path
2.6.5
2.6.4
- Fix for "Uncaught TypeError: __webpack_require__(...) is not a function"
- Fix incomplete cache modules causing "HtmlWebpackPlugin Error: No source available"
- Fix some issues on Windows
2.6.3
- Prevent parsing the base template with the html-loader
2.6.2
- Fix lodashresolve error (#172)
2.6.1
- Fix missing module (#164)
2.6.0
- Move compiler to its own file
- Improve error messages
- Fix global HTML_WEBPACK_PLUGIN variable
2.5.0
- Support lodashtemplate's HTML "escape" delimiter (<%- %>)
- Fix bluebird warning (#130)
- Fix an issue where incomplete cache modules were used
2.4.0
- Don't recompile if the assets didn't change
2.3.0
- Add events html-webpack-plugin-before-html-processing,html-webpack-plugin-after-html-processing,html-webpack-plugin-after-emitto allow other plugins to alter the html this plugin executes
2.2.0
- Inject css and js even if the html file is incomplete (#135)
- Update dependencies
2.1.0
- Synchronize with the stable @1version
2.0.4
- Fix minifyoption
- Fix missing hash interpolation in publicPath
2.0.3
- Add support for webpack.BannerPlugin
2.0.2
- Add support for loaders in templates (#41)
- Remove templateContentoption from configuration
- Better error messages
- Update dependencies
1.7.0
- Add chunksSortModeoption to configuration to control how chunks should be sorted before they are included to the html
- Don't insert async chunks into html (#95)
- Update dependencies
1.6.2
- Fix paths on Windows
- Fix missing hash interpolation in publicPath
- Allow only falseorobjectinminifyconfiguration option
1.6.1
- Add sizefield to the chunk object
- Fix stylesheet <link>s being discarded when used with"inject: 'head'"
- Update dependencies
1.6.0
- Support placing templates in subfolders
- Don't include chunks with undefined name (#60)
- Don't include async chunks
1.5.2
- Update dependencies (lodash)
1.5.1
- Fix error when manifest is specified (#56)
1.5.0
- Allow to inject javascript files into the head of the html page
- Fix error reporting
1.4.0
- Add favicon.icooption
- Add html minifcation
1.2.0
- Set charset using HTML5 meta attribute
- Reload upon change when using webpack watch mode
- Generate manifest attribute when using
appcache-webpack-plugin
- Optionally add webpack hash as a query string to resources included in the HTML
(hash: true) for cache busting
- CSS files generated using webpack (for example, by using the
extract-text-webpack-plugin)
are now automatically included into the generated HTML
- More detailed information about the files generated by webpack is now available
to templates in the o.htmlWebpackPlugin.filesattribute. See readme for more
details. This new attribute deprecates the oldo.htmlWebpackPlugin.assetsattribute.
- The templateContentoption can now be a function that returns the template string to use
- Expose webpack configuration to templates (o.webpackConfig)
- Sort chunks to honour dependencies between them (useful for use with CommonsChunkPlugin).