diff --git a/.editorconfig b/.editorconfig index 45137161298..2bd8cf9e86d 100644 --- a/.editorconfig +++ b/.editorconfig @@ -8,10 +8,6 @@ trim_trailing_whitespace = true insert_final_newline = true max_line_length = 80 -[.prettierrc] -indent_style = space -indent_size = 2 - [*.{yml,yaml,json}] indent_style = space indent_size = 2 diff --git a/.eslintrc.js b/.eslintrc.js index a70d08eb0fb..79cee6b118f 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -1,7 +1,11 @@ module.exports = { root: true, plugins: ["prettier", "node", "jest"], - extends: ["eslint:recommended", "plugin:node/recommended", "plugin:prettier/recommended"], + extends: [ + "eslint:recommended", + "plugin:node/recommended", + "plugin:prettier/recommended" + ], env: { node: true, es6: true @@ -16,10 +20,10 @@ module.exports = { "no-template-curly-in-string": "error", "no-caller": "error", "no-control-regex": "off", - "yoda": "error", - "eqeqeq": "error", + yoda: "error", + eqeqeq: "error", "global-require": "off", - "brace-style": "error", + "brace-style": "off", "eol-last": "error", "no-extra-bind": "warn", "no-process-exit": "warn", @@ -27,22 +31,26 @@ module.exports = { "no-unused-vars": ["error", { args: "none" }], "no-unsafe-negation": "error", "no-loop-func": "warn", - "indent": "off", + indent: "off", "no-console": "off", - "valid-jsdoc": ["error", { - "prefer": { - "return": "returns", - "memberof": "DONTUSE", - "class": "DONTUSE", - "inheritdoc": "DONTUSE", - "description": "DONTUSE", - "readonly": "DONTUSE" - }, - "preferType": { - "*": "any" - }, - "requireReturnType": true - }], + "valid-jsdoc": [ + "error", + { + prefer: { + return: "returns", + prop: "property", + memberof: "DONTUSE", + class: "DONTUSE", + inheritdoc: "DONTUSE", + description: "DONTUSE", + readonly: "DONTUSE" + }, + preferType: { + "*": "any" + }, + requireReturnType: true + } + ], "node/no-unsupported-features": "error", "node/no-deprecated-api": "error", "node/no-missing-import": "error", @@ -59,7 +67,7 @@ module.exports = { browser: true }, globals: { - Promise: false, + Promise: false }, parserOptions: { ecmaVersion: 5 @@ -69,6 +77,9 @@ module.exports = { files: ["test/**/*.js"], env: { "jest/globals": true + }, + globals: { + nsObj: false } } ] diff --git a/.github/ISSUE_TEMPLATE/Bug_report.md b/.github/ISSUE_TEMPLATE/Bug_report.md index 657747d6289..437637672bb 100644 --- a/.github/ISSUE_TEMPLATE/Bug_report.md +++ b/.github/ISSUE_TEMPLATE/Bug_report.md @@ -1,39 +1,39 @@ ---- -name: Bug report -about: Create a report to help us improve ---- - - - - -# Bug report - - - - - - -**What is the current behavior?** - - -**If the current behavior is a bug, please provide the steps to reproduce.** - - - - - - - - - -**What is the expected behavior?** - - - - - -**Other relevant information:** -webpack version: -Node.js version: -Operating System: -Additional tools: +--- +name: Bug report +about: Create a report to help us improve +--- + + + + +# Bug report + + + + + + +**What is the current behavior?** + + +**If the current behavior is a bug, please provide the steps to reproduce.** + + + + + + + + + +**What is the expected behavior?** + + + + + +**Other relevant information:** +webpack version: +Node.js version: +Operating System: +Additional tools: diff --git a/.github/ISSUE_TEMPLATE/Feature_request.md b/.github/ISSUE_TEMPLATE/Feature_request.md index e23f20d97cf..1b69aa08fd4 100644 --- a/.github/ISSUE_TEMPLATE/Feature_request.md +++ b/.github/ISSUE_TEMPLATE/Feature_request.md @@ -1,27 +1,27 @@ ---- -name: Feature request -about: Suggest an idea for this project - ---- - - - -## Feature request - - - - - - - -**What is the expected behavior?** - - -**What is motivation or use case for adding/changing the behavior?** - - -**How should this be implemented in your opinion?** - - -**Are you willing to work on this yourself?** -yes +--- +name: Feature request +about: Suggest an idea for this project + +--- + + + +## Feature request + + + + + + + +**What is the expected behavior?** + + +**What is motivation or use case for adding/changing the behavior?** + + +**How should this be implemented in your opinion?** + + +**Are you willing to work on this yourself?** +yes diff --git a/.github/ISSUE_TEMPLATE/Other.md b/.github/ISSUE_TEMPLATE/Other.md index 5e5b62bd605..033e88fcad4 100644 --- a/.github/ISSUE_TEMPLATE/Other.md +++ b/.github/ISSUE_TEMPLATE/Other.md @@ -1,9 +1,9 @@ ---- -name: Other -about: Something else - ---- - - - - +--- +name: Other +about: Something else + +--- + + + + diff --git a/.prettierignore b/.prettierignore index c99674c1822..bdf38e4bc19 100644 --- a/.prettierignore +++ b/.prettierignore @@ -1,15 +1,8 @@ -# Ignore all paths. -**/*.* - -# Enable prettier for the following paths. -!setup/**/*.js -!lib/**/*.js -!bin/*.js -!hot/*.js -!buildin/*.js -!benchmark/**/*.js +# Ignore test fixtures +test !test/*.js !test/**/webpack.config.js + +# Ignore example fixtures +examples !examples/**/webpack.config.js -!schemas/**/*.js -!declarations.d.ts diff --git a/.prettierrc.js b/.prettierrc.js index 03b9da1bac3..cc7e3b51355 100644 --- a/.prettierrc.js +++ b/.prettierrc.js @@ -1,5 +1,13 @@ module.exports = { printWidth: 80, useTabs: true, - tabWidth: 2 + tabWidth: 2, + overrides: [ + { + files: "*.json", + options: { + useTabs: false + } + } + ] }; diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 3364e380801..da3b43b7186 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -7,7 +7,7 @@ work is not in vain. ## Issues -Most of the time, if webpack is not working correctly for you it is a simple configuration issue. +Most of the time, if webpack is not working correctly for you, it is a simple configuration issue. If you are still having difficulty after looking over your configuration carefully, please post a question to [StackOverflow with the webpack tag](http://stackoverflow.com/tags/webpack). Questions @@ -35,11 +35,11 @@ If you have created your own loader/plugin please include it on the relevant doc ## Submitting Changes -After getting some feedback, push to your fork and submit a pull request. We +After getting some feedbacks, push to your fork and submit a pull request. We may suggest some changes or improvements or alternatives, but for small changes your pull request should be accepted quickly. -Some things that will increase the chance that your pull request is accepted: +Something that will increase the chance that your pull request is accepted: * [Write tests](./test/README.md) * Follow the existing coding style diff --git a/README.md b/README.md index cb5e32d94ad..344ca1fa9ad 100644 --- a/README.md +++ b/README.md @@ -11,10 +11,14 @@ [![deps][deps]][deps-url] [![tests][tests]][tests-url] [![builds][builds]][builds-url] +[![builds2][builds2]][builds2-url] [![coverage][cover]][cover-url] [![licenses][licenses]][licenses-url]
+ + + @@ -55,8 +59,6 @@ yarn add webpack --dev

Introduction

-> This README reflects webpack v2.x and v3.x. The webpack v1.x documentation has been deprecated and deleted. - webpack is a bundler for modules. The main purpose is to bundle JavaScript files for usage in a browser, yet it is also capable of transforming, bundling, or packaging just about any resource or asset. @@ -89,16 +91,19 @@ within webpack itself use this plugin interface. This makes webpack very |Name|Status|Install Size|Description| |:--:|:----:|:----------:|:----------| -|[extract-text-webpack-plugin][extract]|![extract-npm]|![extract-size]|Extracts Text (CSS) from your bundles into a separate file (app.bundle.css)| +|[mini-css-extract-plugin][mini-css]|![mini-css-npm]|![mini-css-size]|Extracts CSS into separate files. It creates a CSS file per JS file which contains CSS.| |[compression-webpack-plugin][compression]|![compression-npm]|![compression-size]|Prepares compressed versions of assets to serve them with Content-Encoding| |[i18n-webpack-plugin][i18n]|![i18n-npm]|![i18n-size]|Adds i18n support to your bundles| |[html-webpack-plugin][html-plugin]|![html-plugin-npm]|![html-plugin-size]| Simplifies creation of HTML files (`index.html`) to serve your bundles| - +|[extract-text-webpack-plugin][extract]|![extract-npm]|![extract-size]|Extract text from a bundle, or bundles, into a separate file| [common-npm]: https://img.shields.io/npm/v/webpack.svg [extract]: https://github.com/webpack/extract-text-webpack-plugin [extract-npm]: https://img.shields.io/npm/v/extract-text-webpack-plugin.svg [extract-size]: https://packagephobia.now.sh/badge?p=extract-text-webpack-plugin +[mini-css]: https://github.com/webpack-contrib/mini-css-extract-plugin +[mini-css-npm]: https://img.shields.io/npm/v/mini-css-extract-plugin.svg +[mini-css-size]: https://packagephobia.now.sh/badge?p=mini-css-extract-plugin [component]: https://github.com/webpack/component-webpack-plugin [component-npm]: https://img.shields.io/npm/v/component-webpack-plugin.svg [component-size]: https://packagephobia.now.sh/badge?p=component-webpack-plugin @@ -217,7 +222,7 @@ or are automatically applied via regex from your webpack configuration. |`