Skip to content

Commit 10b075c

Browse files
committedJul 4, 2023
Update p-queue and ansi-styles
1 parent 2c81236 commit 10b075c

File tree

5 files changed

+28
-24
lines changed

5 files changed

+28
-24
lines changed
 

‎lib/create-header.js

+1-7
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,6 @@
66
*/
77
'use strict'
88

9-
// ------------------------------------------------------------------------------
10-
// Requirements
11-
// ------------------------------------------------------------------------------
12-
13-
const ansiStyles = require('ansi-styles')
14-
159
// ------------------------------------------------------------------------------
1610
// Public Interface
1711
// ------------------------------------------------------------------------------
@@ -26,7 +20,7 @@ const ansiStyles = require('ansi-styles')
2620
* @param {boolean} isTTY - The flag to color the header.
2721
* @returns {string} The header of a given task.
2822
*/
29-
module.exports = function createHeader (nameAndArgs, packageInfo, isTTY) {
23+
module.exports = function createHeader (nameAndArgs, packageInfo, isTTY, ansiStyles) {
3024
if (!packageInfo) {
3125
return `\n> ${nameAndArgs}\n\n`
3226
}

‎lib/run-task.js

+9-7
Original file line numberDiff line numberDiff line change
@@ -11,11 +11,11 @@
1111
// ------------------------------------------------------------------------------
1212

1313
const path = require('path')
14-
const ansiStyles = require('ansi-styles')
1514
const parseArgs = require('shell-quote').parse
1615
const createHeader = require('./create-header')
1716
const createPrefixTransform = require('./create-prefix-transform-stream')
1817
const spawn = require('./spawn')
18+
const ansiStylesPromise = import('ansi-styles')
1919

2020
// ------------------------------------------------------------------------------
2121
// Helpers
@@ -50,7 +50,7 @@ function selectColor (taskName) {
5050
* @param {object} labelState - An label state for the transform stream.
5151
* @returns {stream.Writable} `source` or the created wrapped stream.
5252
*/
53-
function wrapLabeling (taskName, source, labelState) {
53+
function wrapLabeling (taskName, source, labelState, ansiStyles) {
5454
if (source == null || !labelState.enabled) {
5555
return source
5656
}
@@ -133,12 +133,13 @@ function cleanTaskArg (arg) {
133133
* This promise object has an extra method: `abort()`.
134134
* @private
135135
*/
136-
module.exports = function runTask (task, options) {
136+
module.exports = async function runTask (task, options) {
137137
let cp = null
138+
const ansiStyles = (await ansiStylesPromise).default
138139
const promise = new Promise((resolve, reject) => {
139140
const stdin = options.stdin
140-
const stdout = wrapLabeling(task, options.stdout, options.labelState)
141-
const stderr = wrapLabeling(task, options.stderr, options.labelState)
141+
const stdout = wrapLabeling(task, options.stdout, options.labelState, ansiStyles)
142+
const stderr = wrapLabeling(task, options.stderr, options.labelState, ansiStyles)
142143
const stdinKind = detectStreamKind(stdin, process.stdin)
143144
const stdoutKind = detectStreamKind(stdout, process.stdout)
144145
const stderrKind = detectStreamKind(stderr, process.stderr)
@@ -149,7 +150,8 @@ module.exports = function runTask (task, options) {
149150
stdout.write(createHeader(
150151
task,
151152
options.packageInfo,
152-
options.stdout.isTTY
153+
options.stdout.isTTY,
154+
ansiStyles
153155
))
154156
}
155157

@@ -203,5 +205,5 @@ module.exports = function runTask (task, options) {
203205
}
204206
}
205207

206-
return promise
208+
return await promise
207209
}

‎package.json

+2-2
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030
"postversion": "git push --follow-tags && gh-release -y"
3131
},
3232
"dependencies": {
33-
"ansi-styles": "^5.0.0",
33+
"ansi-styles": "^6.2.1",
3434
"cross-spawn": "^7.0.3",
3535
"memorystream": "^0.3.1",
3636
"minimatch": "^9.0.0",
@@ -46,7 +46,7 @@
4646
"gh-release": "^7.0.0",
4747
"jsdoc": "^4.0.0",
4848
"mocha": "^10.0.0",
49-
"p-queue": "^6.6.1",
49+
"p-queue": "^7.3.4",
5050
"yarn": "^1.12.3"
5151
},
5252
"repository": {

‎test/bin/run-tests.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@ const spawn = require('child_process').spawn
1717
const path = require('path')
1818
const os = require('os')
1919
const fs = require('fs-extra')
20-
const PQueue = require('p-queue')
2120

2221
// ------------------------------------------------------------------------------
2322
// Helpers
@@ -136,6 +135,7 @@ async function runMochaWithWorkspace (filePath) {
136135

137136
(async () => {
138137
const startInSec = process.uptime()
138+
const { default: PQueue } = await import('p-queue')
139139
const queue = new PQueue({ concurrency: os.cpus().length + 1 })
140140
const results = await Promise.all(
141141
(await fs.readdir(ROOT_PATH))

‎test/print-name.js

+15-7
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ const createHeader = require('../lib/create-header')
1616
const readPackageJson = require('../lib/read-package-json')
1717
const BufferStream = require('./lib/buffer-stream')
1818
const util = require('./lib/util')
19+
const ansiStylesPromise = import('ansi-styles')
1920
const runAll = util.runAll
2021
const runPar = util.runPar
2122
const runSeq = util.runSeq
@@ -37,51 +38,58 @@ describe('[print-name] npm-run-all', () => {
3738

3839
describe('should print names before running tasks:', () => {
3940
it('Node API', async () => {
41+
const ansiStyles = (await ansiStylesPromise).default
4042
const stdout = new BufferStream()
4143
await nodeApi('test-task:echo abc', { stdout, silent: true, printName: true })
42-
const header = createHeader('test-task:echo abc', packageInfo, false)
44+
const header = createHeader('test-task:echo abc', packageInfo, false, ansiStyles)
4345
assert.equal(stdout.value.slice(0, header.length), header)
4446
})
4547

4648
it('npm-run-all command (--print-name)', async () => {
49+
const ansiStyles = (await ansiStylesPromise).default
4750
const stdout = new BufferStream()
4851
await runAll(['test-task:echo abc', '--silent', '--print-name'], stdout)
49-
const header = createHeader('test-task:echo abc', packageInfo, false)
52+
const header = createHeader('test-task:echo abc', packageInfo, false, ansiStyles)
5053
assert.equal(stdout.value.slice(0, header.length), header)
5154
})
5255

5356
it('run-s command (--print-name)', async () => {
57+
const ansiStyles = (await ansiStylesPromise).default
5458
const stdout = new BufferStream()
5559
await runSeq(['test-task:echo abc', '--silent', '--print-name'], stdout)
56-
const header = createHeader('test-task:echo abc', packageInfo, false)
60+
const header = createHeader('test-task:echo abc', packageInfo, false, ansiStyles)
5761
assert.equal(stdout.value.slice(0, header.length), header)
5862
})
5963

6064
it('run-p command (--print-name)', async () => {
65+
const ansiStyles = (await ansiStylesPromise).default
6166
const stdout = new BufferStream()
6267
await runPar(['test-task:echo abc', '--silent', '--print-name'], stdout)
63-
const header = createHeader('test-task:echo abc', packageInfo, false)
68+
const header = createHeader('test-task:echo abc', packageInfo, false, ansiStyles)
6469
assert.equal(stdout.value.slice(0, header.length), header)
6570
})
6671

6772
it('npm-run-all command (-n)', async () => {
73+
const ansiStyles = (await ansiStylesPromise).default
6874
const stdout = new BufferStream()
6975
await runAll(['test-task:echo abc', '--silent', '-n'], stdout)
70-
const header = createHeader('test-task:echo abc', packageInfo, false)
76+
const header = createHeader('test-task:echo abc', packageInfo, false, ansiStyles)
7177
assert.equal(stdout.value.slice(0, header.length), header)
7278
})
7379

7480
it('run-s command (-n)', async () => {
81+
const ansiStyles = (await ansiStylesPromise).default
7582
const stdout = new BufferStream()
7683
await runSeq(['test-task:echo abc', '--silent', '-n'], stdout)
77-
const header = createHeader('test-task:echo abc', packageInfo, false)
84+
const header = createHeader('test-task:echo abc', packageInfo, false, ansiStyles)
7885
assert.equal(stdout.value.slice(0, header.length), header)
7986
})
8087

8188
it('run-p command (-n)', async () => {
89+
const ansiStyles = (await ansiStylesPromise).default
8290
const stdout = new BufferStream()
8391
await runPar(['test-task:echo abc', '--silent', '-n'], stdout)
84-
const header = createHeader('test-task:echo abc', packageInfo, false)
92+
const header = createHeader('test-task:echo abc', packageInfo, false, ansiStyles)
8593
assert.equal(stdout.value.slice(0, header.length), header)
8694
})
8795
})

0 commit comments

Comments
 (0)
Please sign in to comment.