Skip to content
This repository was archived by the owner on Oct 7, 2025. It is now read-only.

Commit 79861c1

Browse files
chore(release): 6.0.0
1 parent b93e15b commit 79861c1

17 files changed

+242
-151
lines changed

CHANGELOG.md

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,24 @@
22

33
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
44

5+
### [6.0.0](https://github.com/webpack-contrib/webpack-defaults/compare/v5.1.1...v6.0.0) (2019-11-14)
6+
7+
8+
### Features
9+
10+
* more test utils
11+
* refactor test
12+
* cache dependencies on CI
13+
* support webpack@5
14+
* migrate on `memfs`
15+
16+
17+
### BREAKING CHANGES
18+
19+
* minimum supported node version is 10.13.0
20+
21+
22+
523
### [5.1.1](https://github.com/webpack-contrib/webpack-defaults/compare/v5.1.0...v5.1.1) (2019-10-22)
624

725

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@webpack-contrib/defaults",
3-
"version": "5.1.1",
3+
"version": "6.0.0",
44
"description": "Project configuration and boilerplate defaults for webpack projects",
55
"license": "MIT",
66
"repository": "webpack-contrib/webpack-defaults",

src/tasks/package.js

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ const devPackages = [
1212
'del',
1313
'del-cli',
1414
'cross-env',
15-
'memory-fs',
15+
'memfs',
1616
'standard-version',
1717
'@commitlint/cli',
1818
'@commitlint/config-conventional',
@@ -66,31 +66,33 @@ module.exports = () => {
6666
bugs: `https://github.com/${repository}/issues`,
6767
main: existing.main || 'dist/cjs.js',
6868
engines: {
69-
node: `>= 8.9.0`,
69+
node: `>= 10.13.0`,
7070
},
7171
scripts: {
7272
start: 'npm run build -- -w',
73+
clean: 'del-cli dist',
7374
prebuild: 'npm run clean',
7475
build: 'cross-env NODE_ENV=production babel src -d dist --copy-files',
75-
clean: 'del-cli dist',
7676
commitlint: 'commitlint --from=master',
77+
security: 'npm audit',
7778
'lint:prettier':
7879
'prettier "{**/*,*}.{js,json,md,yml,css,ts}" --list-different',
7980
'lint:js': 'eslint --cache src test',
8081
lint: 'npm-run-all -l -p "lint:**"',
81-
prepare: 'npm run build',
82-
release: 'standard-version',
83-
security: 'npm audit',
8482
'test:only': 'cross-env NODE_ENV=test jest',
8583
'test:watch': 'cross-env NODE_ENV=test jest --watch',
8684
'test:coverage':
8785
'cross-env NODE_ENV=test jest --collectCoverageFrom="src/**/*.js" --coverage',
8886
pretest: 'npm run lint',
8987
test: 'cross-env NODE_ENV=test npm run test:coverage',
88+
prepare: 'npm run build',
89+
release: 'standard-version',
9090
defaults: existing.scripts.defaults || 'webpack-defaults',
9191
},
9292
files: existing.files || ['dist/', 'lib/', 'index.js'],
93-
peerDependencies: existing.peerDependencies || { webpack: '^4.0.0' },
93+
peerDependencies: existing.peerDependencies || {
94+
webpack: '^4.0.0 || ^5.0.0',
95+
},
9496
dependencies: existing.dependencies || {},
9597
devDependencies: existing.devDependencies || {},
9698
keywords: existing.keywords || ['webpack'],

templates/azure-pipelines.yml

Lines changed: 25 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,13 @@ trigger:
22
- master
33
- next
44

5+
variables:
6+
npm_config_cache: $(Pipeline.Workspace)/.npm
7+
58
jobs:
69
- job: Lint
710
pool:
8-
vmImage: ubuntu-16.04
11+
vmImage: ubuntu-latest
912
steps:
1013
- task: NodeTool@0
1114
inputs:
@@ -34,9 +37,9 @@ jobs:
3437

3538
- job: Linux
3639
pool:
37-
vmImage: ubuntu-16.04
40+
vmImage: ubuntu-latest
3841
strategy:
39-
maxParallel: 5
42+
maxParallel: 4
4043
matrix:
4144
node-13:
4245
node_version: ^13.0.0
@@ -47,13 +50,9 @@ jobs:
4750
node-10:
4851
node_version: ^10.13.0
4952
webpack_version: latest
50-
node-8:
51-
node_version: ^8.9.0
52-
webpack_version: latest
5353
node-10-canary:
5454
node_version: ^10.13.0
5555
webpack_version: next
56-
continue_on_error: true
5756
steps:
5857
- task: NodeTool@0
5958
inputs:
@@ -68,10 +67,12 @@ jobs:
6867
node -v
6968
npm -v
7069
displayName: 'Print versions'
71-
- task: Npm@1
70+
- task: CacheBeta@1
7271
inputs:
73-
command: custom
74-
customCommand: ci
72+
key: npm | $(Agent.OS) | package-lock.json
73+
path: $(npm_config_cache)
74+
displayName: 'Cache npm'
75+
- script: npm ci
7576
displayName: 'Install dependencies'
7677
- script: npm i webpack@$(webpack_version)
7778
displayName: 'Install "webpack@$(webpack_version)"'
@@ -89,9 +90,9 @@ jobs:
8990

9091
- job: macOS
9192
pool:
92-
vmImage: macOS-10.14
93+
vmImage: macOS-latest
9394
strategy:
94-
maxParallel: 5
95+
maxParallel: 4
9596
matrix:
9697
node-13:
9798
node_version: ^13.0.0
@@ -102,13 +103,9 @@ jobs:
102103
node-10:
103104
node_version: ^10.13.0
104105
webpack_version: latest
105-
node-8:
106-
node_version: ^8.9.0
107-
webpack_version: latest
108106
node-10-canary:
109107
node_version: ^10.13.0
110108
webpack_version: next
111-
continue_on_error: true
112109
steps:
113110
- task: NodeTool@0
114111
inputs:
@@ -123,10 +120,12 @@ jobs:
123120
node -v
124121
npm -v
125122
displayName: 'Print versions'
126-
- task: Npm@1
123+
- task: CacheBeta@1
127124
inputs:
128-
command: custom
129-
customCommand: ci
125+
key: npm | $(Agent.OS) | package-lock.json
126+
path: $(npm_config_cache)
127+
displayName: 'Cache npm'
128+
- script: npm ci
130129
displayName: 'Install dependencies'
131130
- script: npm i webpack@$(webpack_version)
132131
displayName: 'Install "webpack@$(webpack_version)"'
@@ -144,9 +143,9 @@ jobs:
144143

145144
- job: Windows
146145
pool:
147-
vmImage: windows-2019
146+
vmImage: windows-latest
148147
strategy:
149-
maxParallel: 5
148+
maxParallel: 4
150149
matrix:
151150
node-13:
152151
node_version: ^13.0.0
@@ -157,13 +156,9 @@ jobs:
157156
node-10:
158157
node_version: ^10.13.0
159158
webpack_version: latest
160-
node-8:
161-
node_version: ^8.9.0
162-
webpack_version: latest
163159
node-10-canary:
164160
node_version: ^10.13.0
165161
webpack_version: next
166-
continue_on_error: true
167162
steps:
168163
- script: 'git config --global core.autocrlf input'
169164
displayName: 'Config git core.autocrlf'
@@ -181,10 +176,12 @@ jobs:
181176
node -v
182177
npm -v
183178
displayName: 'Print versions'
184-
- task: Npm@1
179+
- task: CacheBeta@1
185180
inputs:
186-
command: custom
187-
customCommand: ci
181+
key: npm | $(Agent.OS) | package-lock.json
182+
path: $(npm_config_cache)
183+
displayName: 'Cache npm'
184+
- script: npm ci
188185
displayName: 'Install dependencies'
189186
- script: npm i webpack@$(webpack_version)
190187
displayName: 'Install "webpack@$(webpack_version)"'

templates/babel.config.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ module.exports = (api) => {
1010
'@babel/preset-env',
1111
{
1212
targets: {
13-
node: '8.9.0',
13+
node: '10.13.0',
1414
},
1515
},
1616
],
File renamed without changes.

templates/test/helpers/compile.js

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
export default (compiler) => {
2+
return new Promise((resolve, reject) => {
3+
compiler.run((error, stats) => {
4+
if (error) {
5+
return reject(error);
6+
}
7+
8+
return resolve(stats);
9+
});
10+
});
11+
};

templates/test/helpers/compiler.js

Lines changed: 0 additions & 69 deletions
This file was deleted.
Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
import path from 'path';
2+
3+
import webpack from 'webpack';
4+
import memfs from 'memfs';
5+
6+
export default (fixture, loaderOptions = {}, config = {}) => {
7+
const fullConfig = {
8+
mode: 'development',
9+
devtool: config.devtool || false,
10+
context: path.resolve(__dirname, '../fixtures'),
11+
entry: path.resolve(__dirname, '../fixtures', fixture),
12+
output: {
13+
path: path.resolve(__dirname, '../outputs'),
14+
filename: '[name].bundle.js',
15+
chunkFilename: '[name].chunk.js',
16+
},
17+
module: {
18+
rules: [
19+
{
20+
test: /\.js$/i,
21+
rules: [
22+
{
23+
loader: path.resolve(__dirname, '../../src'),
24+
options: loaderOptions || {},
25+
},
26+
],
27+
},
28+
],
29+
},
30+
plugins: [],
31+
...config,
32+
};
33+
34+
const compiler = webpack(fullConfig);
35+
36+
if (!config.outputFileSystem) {
37+
const outputFileSystem = memfs;
38+
39+
outputFileSystem.vol.reset();
40+
// Todo remove when we drop webpack@4 support
41+
outputFileSystem.join = path.join.bind(path);
42+
43+
compiler.outputFileSystem = outputFileSystem;
44+
}
45+
46+
return compiler;
47+
};

templates/test/helpers/index.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
import compile from './compile';
2+
import getCompiler from './getCompiler';
3+
import normalizeErrors from './normalizeErrors';
4+
import readAsset from './readAsset';
5+
6+
export { compile, getCompiler, normalizeErrors, readAsset };

0 commit comments

Comments
 (0)