Skip to content
Closed
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Next Next commit
Webpack 4
  • Loading branch information
Nikolaus Piccolotto committed Sep 28, 2018
commit 05df949dbe73fd4e04d2320c19f8e47074e767f7
3 changes: 3 additions & 0 deletions tests/.babelrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
"presets": ["@babel/preset-react"]
}
7,089 changes: 7,089 additions & 0 deletions tests/package-lock.json

Large diffs are not rendered by default.

23 changes: 13 additions & 10 deletions tests/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,17 +6,20 @@
"author": "Owais Lone",
"license": "MIT",
"devDependencies": {
"babel": "^5.4.7",
"babel-core": "^5.4.7",
"babel-loader": "^5.1.3",
"css-loader": "^0.14.1",
"extract-text-webpack-plugin": "^0.8.0",
"@babel/cli": "^7.0.0",
"@babel/core": "^7.0.0",
"@babel/preset-react": "^7.0.0",
"babel-core": "^7.0.0-0",
"babel-loader": "^8.0.0-beta",
"css-loader": "^0.28.7",
"mini-css-extract-plugin": "^0.4.0",
"react": "^16.0.0",
"style-loader": "^0.21.0",
"webpack": "^4.11.1",
"webpack-bundle-tracker": "0.4.0-beta",
"webpack-cli": "^3.0.3",
"webpack-dev-server": "^3.1.4",
"node-libs-browser": "^0.5.0",
"react": "^0.13.3",
"style-loader": "^0.12.3",
"webpack": "^1.9.8",
"webpack-bundle-tracker": "0.0.8",
"webpack-dev-server": "^1.9.0",
"webpack-split-by-path": "0.0.1"
}
}
4 changes: 2 additions & 2 deletions tests/webpack.config.app2.js
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
var config = require("./webpack.config.simple.js");
var BundleTracker = require('webpack-bundle-tracker');
var ExtractTextPlugin = require("extract-text-webpack-plugin");
var MiniCssPlugin = require("mini-css-extract-plugin");

config.entry = {
app2: './assets/js/index'
};

config.plugins = [
new ExtractTextPlugin("styles-app2.css"),
new MiniCssPlugin("styles-app2.css"),
new BundleTracker({filename: './webpack-stats-app2.json'})
];

Expand Down
15 changes: 8 additions & 7 deletions tests/webpack.config.error.js
Original file line number Diff line number Diff line change
@@ -1,32 +1,33 @@
var path = require("path");
var webpack = require('webpack');
var BundleTracker = require('webpack-bundle-tracker');
var ExtractTextPlugin = require("extract-text-webpack-plugin");
var MiniCssPlugin = require("mini-css-extract-plugin");


module.exports = {
context: __dirname,
mode: 'production',
entry: './assets/js/bad_index',
output: {
path: path.resolve('./assets/bundles/'),
filename: "[name].js",
},

plugins: [
new ExtractTextPlugin("styles.css"),
new MiniCssPlugin({ filename: '[name]-[chunkhash].css', chunkFilename: '[id]-[chunkhash].css' }),
new BundleTracker({filename: './webpack-stats.json'}),
],

module: {
loaders: [
rules: [
// we pass the output from babel loader to react-hot loader
{ test: /\.jsx?$/, exclude: /node_modules/, loaders: ['babel'], },
{ test: /\.css$/, loader: ExtractTextPlugin.extract("style-loader", "css-loader") }
{ test: /\.jsx?$/, exclude: /node_modules/, use: [ 'babel-loader'], },
{ test: /\.css$/, use: [MiniCssPlugin.loader, "css-loader"] }
],
},

resolve: {
modulesDirectories: ['node_modules', 'bower_components'],
extensions: ['', '.js', '.jsx']

extensions: ['.css', '.js', '.jsx']
},
}
15 changes: 8 additions & 7 deletions tests/webpack.config.gzipTest.js
Original file line number Diff line number Diff line change
@@ -1,32 +1,33 @@
var path = require("path");
var webpack = require('webpack');
var BundleTracker = require('webpack-bundle-tracker');
var ExtractTextPlugin = require("extract-text-webpack-plugin");
var MiniCssPlugin = require("mini-css-extract-plugin");


module.exports = {
context: __dirname,
mode: 'production',
entry: './assets/js/index',
output: {
path: path.resolve('./assets/bundles/'),
filename: "[name].js.gz"
},

plugins: [
new ExtractTextPlugin("styles.css"),
new MiniCssPlugin({ filename: '[name]-[chunkhash].css', chunkFilename: '[id]-[chunkhash].css' }),
new BundleTracker({filename: './webpack-stats.json'}),
],

module: {
loaders: [
rules: [
// we pass the output from babel loader to react-hot loader
{ test: /\.jsx?$/, exclude: /node_modules/, loaders: ['babel'], },
{ test: /\.css$/, loader: ExtractTextPlugin.extract("style-loader", "css-loader") }
{ test: /\.jsx?$/, exclude: /node_modules/, use: [ 'babel-loader'], },
{ test: /\.css$/, use: [MiniCssPlugin.loader, "css-loader"] }
],
},

resolve: {
modulesDirectories: ['node_modules', 'bower_components'],
extensions: ['', '.js', '.jsx']

extensions: ['.css', '.js', '.jsx']
},
}
15 changes: 8 additions & 7 deletions tests/webpack.config.simple.js
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
var path = require("path");
var webpack = require('webpack');
var BundleTracker = require('webpack-bundle-tracker');
var ExtractTextPlugin = require("extract-text-webpack-plugin");
var MiniCssPlugin = require("mini-css-extract-plugin");


module.exports = {
mode: 'production',
context: __dirname,
entry: './assets/js/index',
output: {
Expand All @@ -13,20 +14,20 @@ module.exports = {
},

plugins: [
new ExtractTextPlugin("styles.css"),
new MiniCssPlugin({ filename: '[name]-[chunkhash].css', chunkFilename: '[id]-[chunkhash].css' }),
new BundleTracker({filename: './webpack-stats.json'}),
],

module: {
loaders: [
rules: [
// we pass the output from babel loader to react-hot loader
{ test: /\.jsx?$/, exclude: /node_modules/, loaders: ['babel'], },
{ test: /\.css$/, loader: ExtractTextPlugin.extract("style-loader", "css-loader") }
{ test: /\.jsx?$/, exclude: /node_modules/, use: [ 'babel-loader'], },
{ test: /\.css$/, use: [MiniCssPlugin.loader, "css-loader"] }
],
},

resolve: {
modulesDirectories: ['node_modules', 'bower_components'],
extensions: ['', '.js', '.jsx']

extensions: ['.css', '.js', '.jsx']
},
}
15 changes: 8 additions & 7 deletions tests/webpack.config.split.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,12 @@ var path = require("path");
var webpack = require('webpack');
var BundleTracker = require('webpack-bundle-tracker');
var SplitByPathPlugin = require('webpack-split-by-path');
var ExtractTextPlugin = require("extract-text-webpack-plugin");
var MiniCssPlugin = require("mini-css-extract-plugin");


module.exports = {
context: __dirname,
mode: 'production',
entry: './assets/js/index',
output: {
path: path.resolve('./assets/bundles/'),
Expand All @@ -15,7 +16,7 @@ module.exports = {
},

plugins: [
new ExtractTextPlugin("styles.css"),
new MiniCssPlugin({ filename: '[name]-[chunkhash].css', chunkFilename: '[id]-[chunkhash].css' }),
new BundleTracker({filename: './webpack-stats.json'}),
new SplitByPathPlugin([
{
Expand All @@ -26,15 +27,15 @@ module.exports = {
],

module: {
loaders: [
rules: [
// we pass the output from babel loader to react-hot loader
{ test: /\.jsx?$/, exclude: /node_modules/, loaders: ['babel'], },
{ test: /\.css$/, loader: ExtractTextPlugin.extract("style-loader", "css-loader") }
{ test: /\.jsx?$/, exclude: /node_modules/, use: [ 'babel-loader'], },
{ test: /\.css$/, use: [MiniCssPlugin.loader, "css-loader"] }
],
},

resolve: {
modulesDirectories: ['node_modules', 'bower_components'],
extensions: ['', '.js', '.jsx']

extensions: ['.css', '.js', '.jsx']
},
}
39 changes: 39 additions & 0 deletions tests/webpack.config.v4.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
var path = require("path");
var BundleTracker = require('webpack-bundle-tracker');
var MiniCssPlugin = require("mini-css-extract-plugin");


module.exports = {
context: __dirname,
mode: 'production',
entry: './assets/js/index',
output: {
path: path.resolve('./assets/bundles/'),
filename: "[name].js",
chunkFilename: "[name].js"
},

optimization: {
splitChunks: {
chunks: 'all'
}
},

plugins: [
new MiniCssPlugin({filename: '[name]-[chunkhash].css', chunkFilename: '[id]-[chunkhash].css' }),
new BundleTracker({filename: './webpack-stats.json'}),
],

module: {
rules: [
// we pass the output from babel loader to react-hot loader
{ test: /\.jsx?$/, exclude: /node_modules/, use: [ 'babel-loader'], },
{ test: /\.css$/, use: [MiniCssPlugin.loader, "css-loader"] }
],
},

resolve: {

extensions: ['.css', '.js', '.jsx']
},
}