Skip to content

Commit 5f182d8

Browse files
authored
chore: make prettier peer dependency meta (#1829)
1 parent 9e9c70b commit 5f182d8

3 files changed

Lines changed: 17 additions & 8 deletions

File tree

packages/utils/package.json

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,14 @@
1616
"got": "10.7.0",
1717
"jscodeshift": "0.7.0",
1818
"p-each-series": "2.1.0",
19-
"prettier": "1.19.1",
2019
"yeoman-environment": "2.8.1",
2120
"yeoman-generator": "4.7.2"
2221
},
22+
"peerDependenciesMeta": {
23+
"prettier": {
24+
"optional": true
25+
}
26+
},
2327
"peerDependencies": {
2428
"webpack": "4.x.x || 5.x.x",
2529
"webpack-cli": "4.x.x || 5.x.x"

packages/utils/src/run-prettier.ts

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
import fs from 'fs';
2-
import prettier from 'prettier';
32
import logger from 'webpack-cli/lib/utils/logger';
43

54
/**
@@ -13,6 +12,18 @@ import logger from 'webpack-cli/lib/utils/logger';
1312

1413
export function runPrettier(outputPath: string, source: string): void {
1514
let prettySource: string = source;
15+
16+
let prettier;
17+
try {
18+
// eslint-disable-next-line node/no-extraneous-require
19+
prettier = require('prettier');
20+
} catch (err) {
21+
logger.warn(
22+
"File is not properly formatted because you don't have prettier installed, you can either install it or format it manually",
23+
);
24+
return fs.writeFileSync(outputPath, source, 'utf8');
25+
}
26+
1627
try {
1728
prettySource = prettier.format(source, {
1829
filepath: outputPath,
@@ -25,6 +36,5 @@ export function runPrettier(outputPath: string, source: string): void {
2536
logger.warn(`\nWARNING: Could not apply prettier to ${outputPath} due to validation error, but the file has been created`);
2637
prettySource = source;
2738
}
28-
2939
return fs.writeFileSync(outputPath, prettySource, 'utf8');
3040
}

yarn.lock

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10190,11 +10190,6 @@ prettier-linter-helpers@^1.0.0:
1019010190
dependencies:
1019110191
fast-diff "^1.1.2"
1019210192

10193-
prettier@1.19.1:
10194-
version "1.19.1"
10195-
resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.19.1.tgz#f7d7f5ff8a9cd872a7be4ca142095956a60797cb"
10196-
integrity sha512-s7PoyDv/II1ObgQunCbB9PdLmUcBZcnWOcxDh7O0N/UwDEsHyqkW+Qh28jW+mVuCdx7gLB0BotYI1Y6uI9iyew==
10197-
1019810193
prettier@^2.0.5:
1019910194
version "2.0.5"
1020010195
resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.0.5.tgz#d6d56282455243f2f92cc1716692c08aa31522d4"

0 commit comments

Comments
 (0)