Skip to content

Commit 53388cd

Browse files
authored
Feature: Add --quiet option to suppress warnings (#157)
1 parent 4f8931f commit 53388cd

File tree

4 files changed

+12
-11
lines changed

4 files changed

+12
-11
lines changed

.idea/codestream.xml

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

packages/webdoc-cli/src/index.js

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,8 @@ require("./shims");// Node v10 support
1818

1919
declare var global: Object;
2020

21-
export function initLogger(verbose: boolean = false) {
22-
const defaultLevel = verbose ? "INFO" : "WARN";
21+
export function initLogger(verbose: boolean = false, quiet: boolean = false) {
22+
const defaultLevel = verbose ? "INFO" : quiet ? "ERROR" : "WARN";
2323

2424
log.init(
2525
{
@@ -44,15 +44,13 @@ export function initLogger(verbose: boolean = false) {
4444
break;
4545
}
4646
});
47+
48+
initParserLogger(defaultLevel);
4749
}
4850

4951
// main() is the default command.
5052
async function main(argv: yargs.Argv) {
51-
initLogger(!!argv.verbose);
52-
53-
if (argv.verbose) {
54-
initParserLogger("INFO");
55-
}
53+
initLogger(!!argv.verbose, !!argv.quiet);
5654

5755
const start = performance.now();
5856

@@ -184,6 +182,7 @@ const argv = yargs.scriptName("@webdoc/cli")
184182
.alias("c", "config")
185183
.alias("u", "tutorials")
186184
.alias("v", "verbose")
185+
.alias("q", "quiet")
187186
.command("$0", "Run webdoc", () => {})
188187
.argv;
189188

packages/webdoc-parser/src/Logger.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ export function initLogger(defaultLevel: string = "INFO") {
3636
DocParser: defaultLevel,
3737
DocumentTreeModifier: defaultLevel,
3838
Indexer: defaultLevel,
39+
Validator: defaultLevel,
3940
},
4041
(level, tag, msg, params) => {
4142
let tagPrefix = `[${tag}]:`;

packages/webdoc-parser/src/validators/validate-parameters.js

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
// @flow
22

33
import type {DocShape, Param} from "@webdoc/types";
4+
import {parserLogger, tag} from "../Logger";
45
import type {SymbolSignature} from "../types/Symbol";
56

67
// Validate the parameters are structurally (not nominally) correct
@@ -20,7 +21,7 @@ function validateParameters(doc: DocShape, meta: SymbolSignature): void {
2021
const name = param.identifier;
2122

2223
if (!name) {
23-
console.warn("Anonymous documented parameters are not supported");
24+
parserLogger.error(tag.Validator, "Anonymous documented parameters are not supported");
2425
}
2526

2627
const dotIndex = name.indexOf(".");
@@ -33,14 +34,14 @@ function validateParameters(doc: DocShape, meta: SymbolSignature): void {
3334
// @param {string} string
3435
// @param {string} options.title
3536
if (firstId !== lastParam) {
36-
console.warn(`Object property ${name} parameter must be placed` +
37+
parserLogger.warn(tag.Validator, `Object property ${name} parameter must be placed` +
3738
`directly after object parameter ${firstId}`);
3839
}
3940

4041
continue;
4142
}
4243
if (j >= metaParams.length) {
43-
console.warn(`"${name}" is not a parameter & cannot` +
44+
parserLogger.warn(tag.Validator, `"${name}" is not a parameter & cannot` +
4445
` come after the last parameter "${lastParam || ""}"`);
4546
}
4647

0 commit comments

Comments
 (0)