Skip to content

Commit

Permalink
fix: logging and silent (#195)
Browse files Browse the repository at this point in the history
* merge options in correct order

* fixed tests

* fix error handling logging

* add contributor
  • Loading branch information
kevjin authored and Kent C. Dodds committed Mar 10, 2019
1 parent c5d3b73 commit a0c961a
Show file tree
Hide file tree
Showing 6 changed files with 41 additions and 15 deletions.
9 changes: 9 additions & 0 deletions .all-contributorsrc
Original file line number Diff line number Diff line change
Expand Up @@ -407,6 +407,15 @@
"contributions": [
"code"
]
},
{
"login": "kevjin",
"name": "Kevin J",
"avatar_url": "https://avatars2.githubusercontent.com/u/15851351?v=4",
"profile": "https://github.com/kevjin",
"contributions": [
"code"
]
}
],
"repoType": "github"
Expand Down
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ All the benefits of npm scripts without the cost of a bloated package.json and l
[![downloads][downloads-badge]][npm-stat]
[![MIT License][license-badge]][LICENSE]

[![All Contributors](https://img.shields.io/badge/all_contributors-40-orange.svg?style=flat-square)](#contributors)
[![All Contributors](https://img.shields.io/badge/all_contributors-41-orange.svg?style=flat-square)](#contributors)
[![PRs Welcome][prs-badge]][prs]
[![Donate][donate-badge]][donate]
[![Code of Conduct][coc-badge]][coc]
Expand Down Expand Up @@ -489,7 +489,7 @@ Thanks goes to these people ([emoji key][emojis]):
| [<img src="https://avatars.githubusercontent.com/u/1155589?v=3" width="100px;"/><br /><sub><b>Sorin Muntean</b></sub>](https://github.com/sxn)<br />[💻](https://github.com/kentcdodds/p-s/commits?author=sxn "Code") [⚠️](https://github.com/kentcdodds/p-s/commits?author=sxn "Tests") [📖](https://github.com/kentcdodds/p-s/commits?author=sxn "Documentation") | [<img src="https://avatars.githubusercontent.com/u/1970063?v=3" width="100px;"/><br /><sub><b>Keith Gunn</b></sub>](https://github.com/gunnx)<br />[🐛](https://github.com/kentcdodds/p-s/issues?q=author%3Agunnx "Bug reports") [💻](https://github.com/kentcdodds/p-s/commits?author=gunnx "Code") [⚠️](https://github.com/kentcdodds/p-s/commits?author=gunnx "Tests") | [<img src="https://avatars.githubusercontent.com/u/1019478?v=3" width="100px;"/><br /><sub><b>Joe Martella</b></sub>](http://martellaj.github.io)<br />[🐛](https://github.com/kentcdodds/p-s/issues?q=author%3Amartellaj "Bug reports") [💻](https://github.com/kentcdodds/p-s/commits?author=martellaj "Code") [⚠️](https://github.com/kentcdodds/p-s/commits?author=martellaj "Tests") | [<img src="https://avatars.githubusercontent.com/u/1887854?v=3" width="100px;"/><br /><sub><b>Martin Segado</b></sub>](https://github.com/msegado)<br />[📖](https://github.com/kentcdodds/p-s/commits?author=msegado "Documentation") | [<img src="https://avatars.githubusercontent.com/u/36491?v=3" width="100px;"/><br /><sub><b>Bram Borggreve</b></sub>](http://colmena.io/)<br />[🐛](https://github.com/kentcdodds/p-s/issues?q=author%3Abeeman "Bug reports") [💻](https://github.com/kentcdodds/p-s/commits?author=beeman "Code") | [<img src="https://avatars.githubusercontent.com/u/86454?v=3" width="100px;"/><br /><sub><b>Elijah Manor</b></sub>](http://elijahmanor.com)<br />[📹](#video-elijahmanor "Videos") | [<img src="https://avatars.githubusercontent.com/u/10691183?v=3" width="100px;"/><br /><sub><b>Ragu Ramaswamy</b></sub>](https://github.com/rrag)<br />[💻](https://github.com/kentcdodds/p-s/commits?author=rrag "Code") [⚠️](https://github.com/kentcdodds/p-s/commits?author=rrag "Tests") [🐛](https://github.com/kentcdodds/p-s/issues?q=author%3Arrag "Bug reports") |
| [<img src="https://avatars.githubusercontent.com/u/2915616?v=3" width="100px;"/><br /><sub><b>Erik Fox</b></sub>](http://www.erikfox.co/)<br />[🐛](https://github.com/kentcdodds/p-s/issues?q=author%3Aerikfox "Bug reports") [💻](https://github.com/kentcdodds/p-s/commits?author=erikfox "Code") [📖](https://github.com/kentcdodds/p-s/commits?author=erikfox "Documentation") [⚠️](https://github.com/kentcdodds/p-s/commits?author=erikfox "Tests") | [<img src="https://avatars.githubusercontent.com/u/5351262?v=3" width="100px;"/><br /><sub><b>Aditya Pratap Singh</b></sub>](http://blog.adityapsingh.com)<br />[👀](#review-addityasingh "Reviewed Pull Requests") | [<img src="https://avatars.githubusercontent.com/u/7687132?v=3" width="100px;"/><br /><sub><b>bumbleblym</b></sub>](https://github.com/bumbleblym)<br />[💻](https://github.com/kentcdodds/p-s/commits?author=bumbleblym "Code") [📖](https://github.com/kentcdodds/p-s/commits?author=bumbleblym "Documentation") | [<img src="https://avatars.githubusercontent.com/u/7091543?v=3" width="100px;"/><br /><sub><b>Islam Attrash</b></sub>](https://twitter.com/IslamAttrash)<br />[💻](https://github.com/kentcdodds/p-s/commits?author=Attrash-Islam "Code") | [<img src="https://avatars.githubusercontent.com/u/7215306?v=3" width="100px;"/><br /><sub><b>JasonSooter</b></sub>](https://github.com/JasonSooter)<br />[📖](https://github.com/kentcdodds/p-s/commits?author=JasonSooter "Documentation") | [<img src="https://avatars1.githubusercontent.com/u/116871?v=3" width="100px;"/><br /><sub><b>Nate Cavanaugh</b></sub>](http://alterform.com)<br />[💻](https://github.com/kentcdodds/p-s/commits?author=natecavanaugh "Code") | [<img src="https://avatars2.githubusercontent.com/u/3534924?v=3" width="100px;"/><br /><sub><b>Wissam Abirached</b></sub>](https://designingforscale.com)<br />[💻](https://github.com/kentcdodds/p-s/commits?author=wabirached "Code") [⚠️](https://github.com/kentcdodds/p-s/commits?author=wabirached "Tests") |
| [<img src="https://avatars1.githubusercontent.com/u/12592677?v=3" width="100px;"/><br /><sub><b>Paweł Mikołajczyk</b></sub>](https://github.com/Miklet)<br />[💻](https://github.com/kentcdodds/p-s/commits?author=Miklet "Code") [⚠️](https://github.com/kentcdodds/p-s/commits?author=Miklet "Tests") | [<img src="https://avatars0.githubusercontent.com/u/1295580?v=3" width="100px;"/><br /><sub><b>Kyle Welch</b></sub>](http://www.krwelch.com)<br />[💻](https://github.com/kentcdodds/p-s/commits?author=kwelch "Code") [⚠️](https://github.com/kentcdodds/p-s/commits?author=kwelch "Tests") | [<img src="https://avatars3.githubusercontent.com/u/22868432?v=3" width="100px;"/><br /><sub><b>Lufty Wiranda</b></sub>](http://instagram.com/luftywiranda13)<br />[💻](https://github.com/kentcdodds/p-s/commits?author=luftywiranda13 "Code") | [<img src="https://avatars6.githubusercontent.com/u/2936644?v=4" width="100px;"/><br /><sub><b>Bhargav Ponnapalli</b></sub>](http://imbhargav5.com)<br />[💻](https://github.com/kentcdodds/p-s/commits?author=imbhargav5 "Code") | [<img src="https://avatars0.githubusercontent.com/u/1538572?v=4" width="100px;"/><br /><sub><b>falieson</b></sub>](https://github.com/Falieson)<br />[📖](https://github.com/kentcdodds/p-s/commits?author=Falieson "Documentation") [🔧](#tool-Falieson "Tools") | [<img src="https://avatars2.githubusercontent.com/u/22251956?v=4" width="100px;"/><br /><sub><b>Suhas Karanth</b></sub>](https://github.com/sudo-suhas)<br />[🐛](https://github.com/kentcdodds/p-s/issues?q=author%3Asudo-suhas "Bug reports") [💻](https://github.com/kentcdodds/p-s/commits?author=sudo-suhas "Code") | [<img src="https://avatars3.githubusercontent.com/u/1228867?v=4" width="100px;"/><br /><sub><b>Eric Skram</b></sub>](http://www.ericskram.com)<br />[📖](https://github.com/kentcdodds/p-s/commits?author=Vpr99 "Documentation") |
| [<img src="https://avatars2.githubusercontent.com/u/11901111?v=4" width="100px;"/><br /><sub><b>Kether Saturnius</b></sub>](http://www.k3th3r.com)<br />[💻](https://github.com/kentcdodds/p-s/commits?author=iamkether "Code") [📖](https://github.com/kentcdodds/p-s/commits?author=iamkether "Documentation") | [<img src="https://avatars2.githubusercontent.com/u/2536916?v=4" width="100px;"/><br /><sub><b>Sviatoslav</b></sub>](https://github.com/SleepWalker)<br />[🐛](https://github.com/kentcdodds/p-s/issues?q=author%3ASleepWalker "Bug reports") [💻](https://github.com/kentcdodds/p-s/commits?author=SleepWalker "Code") | [<img src="https://avatars2.githubusercontent.com/u/1470998?v=4" width="100px;"/><br /><sub><b>Wei Wang</b></sub>](https://github.com/onlywei)<br />[💻](https://github.com/kentcdodds/p-s/commits?author=onlywei "Code") | [<img src="https://avatars2.githubusercontent.com/u/1393142?v=4" width="100px;"/><br /><sub><b>Sami Jaber</b></sub>](http://twitter.com/samjabz)<br />[🐛](https://github.com/kentcdodds/p-s/issues?q=author%3Asamijaber "Bug reports") [💻](https://github.com/kentcdodds/p-s/commits?author=samijaber "Code") | [<img src="https://avatars3.githubusercontent.com/u/28313487?v=4" width="100px;"/><br /><sub><b>Florian Löchle</b></sub>](https://github.com/schottilol)<br />[💻](https://github.com/kentcdodds/p-s/commits?author=schottilol "Code") |
| [<img src="https://avatars2.githubusercontent.com/u/11901111?v=4" width="100px;"/><br /><sub><b>Kether Saturnius</b></sub>](http://www.k3th3r.com)<br />[💻](https://github.com/kentcdodds/p-s/commits?author=iamkether "Code") [📖](https://github.com/kentcdodds/p-s/commits?author=iamkether "Documentation") | [<img src="https://avatars2.githubusercontent.com/u/2536916?v=4" width="100px;"/><br /><sub><b>Sviatoslav</b></sub>](https://github.com/SleepWalker)<br />[🐛](https://github.com/kentcdodds/p-s/issues?q=author%3ASleepWalker "Bug reports") [💻](https://github.com/kentcdodds/p-s/commits?author=SleepWalker "Code") | [<img src="https://avatars2.githubusercontent.com/u/1470998?v=4" width="100px;"/><br /><sub><b>Wei Wang</b></sub>](https://github.com/onlywei)<br />[💻](https://github.com/kentcdodds/p-s/commits?author=onlywei "Code") | [<img src="https://avatars2.githubusercontent.com/u/1393142?v=4" width="100px;"/><br /><sub><b>Sami Jaber</b></sub>](http://twitter.com/samjabz)<br />[🐛](https://github.com/kentcdodds/p-s/issues?q=author%3Asamijaber "Bug reports") [💻](https://github.com/kentcdodds/p-s/commits?author=samijaber "Code") | [<img src="https://avatars3.githubusercontent.com/u/28313487?v=4" width="100px;"/><br /><sub><b>Florian Löchle</b></sub>](https://github.com/schottilol)<br />[💻](https://github.com/kentcdodds/p-s/commits?author=schottilol "Code") | [<img src="https://avatars2.githubusercontent.com/u/15851351?v=4" width="100px;"/><br /><sub><b>Kevin J</b></sub>](https://github.com/kevjin)<br />[💻](https://github.com/kentcdodds/p-s/commits?author=kevjin "Code") |
<!-- ALL-CONTRIBUTORS-LIST:END -->

This project follows the [all-contributors][all-contributors] specification.
Expand Down
4 changes: 2 additions & 2 deletions cli-test/__tests__/__snapshots__/cli.js.snap
Original file line number Diff line number Diff line change
Expand Up @@ -29,10 +29,10 @@ log
}
`;

exports[`with --silent 1`] = `
exports[`with silent option set true 1`] = `
Object {
"stderr": "",
"stdout": "test script
"stdout": "silent
",
}
`;
Expand Down
3 changes: 2 additions & 1 deletion cli-test/__tests__/cli.js
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,8 @@ test('with config with default script', () =>
test('with a missing config', () =>
snapshot('-c ./something-that-does-not-exist.js'))

test('with --silent', () => snapshot('test --silent'))
test('with silent option set true', () =>
snapshot('-c ./package-script-silent.js'))

test('with --require', () =>
snapshot('--config ./es6-package-scripts.js --require babel-register log'))
Expand Down
8 changes: 8 additions & 0 deletions cli-test/__tests__/fixtures/package-script-silent.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
module.exports = {
scripts: {
default: 'echo "silent"',
},
options: {
silent: true,
}
}
28 changes: 18 additions & 10 deletions src/bin/nps.js
Original file line number Diff line number Diff line change
Expand Up @@ -12,11 +12,14 @@ if (argv && psConfig) {
runPackageScript({
scriptConfig: psConfig.scripts,
scripts: argv._,
options: merge(psConfig.options, {
silent: argv.silent,
logLevel: argv.logLevel,
scripts: argv.scripts,
}),
options: merge(
{
silent: argv.silent,
logLevel: argv.logLevel,
scripts: argv.scripts,
},
psConfig.options,
),
}).then(
() => {
// make this explicit
Expand All @@ -25,11 +28,16 @@ if (argv && psConfig) {
process.exitCode = 0
},
error => {
const logLevel = getLogLevel({
silent: argv.silent,
logLevel: argv.logLevel,
scripts: argv.scripts,
})
const logLevel = getLogLevel(
merge(
{
silent: argv.silent,
logLevel: argv.logLevel,
scripts: argv.scripts,
},
psConfig.options,
),
)
const log = getLogger(logLevel)
log.error(error)
process.exitCode = error.code || FAIL_CODE
Expand Down

0 comments on commit a0c961a

Please sign in to comment.