Skip to content

Commit adeee86

Browse files
committed
refactor(scripts): standardize logger method usage in validation scripts
Replace inconsistent .error() usage with proper .fail() and .log() methods across all validation scripts for consistent user-facing output. Pattern standardized: - .fail() for validation failure headers - .log() for detail/informational lines - .error() reserved for actual exceptions only Affects all validation scripts: - markdown-filenames.mjs - file-count.mjs - file-size.mjs - no-link-deps.mjs - dist-exports.mjs - esbuild-minify.mjs - esm-named-exports.mjs - external-esm-cjs.mjs - external-exports.mjs - no-extraneous-dependencies.mjs - no-cdn-refs.mjs
1 parent f6baf3e commit adeee86

10 files changed

Lines changed: 53 additions & 55 deletions

scripts/validate/dist-exports.mjs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -102,12 +102,12 @@ async function main() {
102102

103103
if (failures.length > 0) {
104104
if (!quiet) {
105-
logger.error(
105+
logger.fail(
106106
`Found ${failures.length} public ${pluralize('export', { count: failures.length })} with incorrect exports:`,
107107
)
108108
for (const failure of failures) {
109109
const relativePath = path.relative(distDir, failure.path)
110-
logger.error(` ${relativePath}`)
110+
logger.log(` ${relativePath}`)
111111
logger.substep(failure.reason)
112112
}
113113
}
@@ -122,6 +122,6 @@ async function main() {
122122
}
123123

124124
main().catch(error => {
125-
logger.error(`Validation failed: ${error.message}`)
125+
logger.fail(`Validation failed: ${error.message}`)
126126
process.exitCode = 1
127127
})

scripts/validate/esbuild-minify.mjs

Lines changed: 10 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ async function validateEsbuildMinify() {
5050

5151
return violations
5252
} catch (error) {
53-
logger.error(`Failed to load esbuild config: ${error.message}`)
53+
logger.fail(`Failed to load esbuild config: ${error.message}`)
5454
process.exitCode = 1
5555
return []
5656
}
@@ -65,25 +65,23 @@ async function main() {
6565
return
6666
}
6767

68-
logger.error('esbuild minify validation failed\n')
68+
logger.fail('esbuild minify validation failed\n')
6969

7070
for (const violation of violations) {
71-
logger.error(` ${violation.message}`)
72-
logger.error(` Found: minify: ${violation.value}`)
73-
logger.error(' Expected: minify: false')
74-
logger.error(` Location: ${violation.location}`)
75-
logger.error('')
71+
logger.log(` ${violation.message}`)
72+
logger.log(` Found: minify: ${violation.value}`)
73+
logger.log(' Expected: minify: false')
74+
logger.log(` Location: ${violation.location}`)
75+
logger.log('')
7676
}
7777

78-
logger.error(
79-
'Minification breaks ESM/CJS interop and makes debugging harder.',
80-
)
81-
logger.error('')
78+
logger.log('Minification breaks ESM/CJS interop and makes debugging harder.')
79+
logger.log('')
8280

8381
process.exitCode = 1
8482
}
8583

8684
main().catch(error => {
87-
logger.error('Validation failed:', error)
85+
logger.fail('Validation failed:', error)
8886
process.exitCode = 1
8987
})

scripts/validate/esm-named-exports.mjs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -155,12 +155,12 @@ async function main() {
155155

156156
if (failures.length > 0) {
157157
if (!quiet) {
158-
logger.error(
158+
logger.fail(
159159
`Found ${failures.length} ${pluralize('file', { count: failures.length })} without ESM-compatible named exports:`,
160160
)
161161
for (const failure of failures) {
162162
const relativePath = path.relative(distDir, failure.path)
163-
logger.error(` ${relativePath}`)
163+
logger.log(` ${relativePath}`)
164164
logger.substep(failure.reason)
165165
}
166166
logger.warn(
@@ -178,6 +178,6 @@ async function main() {
178178
}
179179

180180
main().catch(error => {
181-
logger.error(`Validation failed: ${error.message}`)
181+
logger.fail(`Validation failed: ${error.message}`)
182182
process.exitCode = 1
183183
})

scripts/validate/external-esm-cjs.mjs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -256,11 +256,11 @@ async function main() {
256256

257257
if (failures.length > 0) {
258258
if (!quiet) {
259-
logger.error(
259+
logger.fail(
260260
`Found ${failures.length} external ${pluralize('module', { count: failures.length })} with ESM/CJS export issues:`,
261261
)
262262
for (const failure of failures) {
263-
logger.error(` ${failure.path}`)
263+
logger.log(` ${failure.path}`)
264264
for (const issue of failure.issues) {
265265
logger.substep(issue)
266266
}
@@ -322,7 +322,7 @@ async function main() {
322322
}
323323

324324
main().catch(error => {
325-
logger.error(`Validation failed: ${error.message}`)
325+
logger.fail(`Validation failed: ${error.message}`)
326326
if (!isQuiet() && error.stack) {
327327
logger.log(error.stack)
328328
}

scripts/validate/external-exports.mjs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -159,11 +159,11 @@ async function main() {
159159

160160
if (failures.length > 0) {
161161
if (!quiet) {
162-
logger.error(
162+
logger.fail(
163163
`Found ${failures.length} external ${pluralize('module', { count: failures.length })} with export issues:`,
164164
)
165165
for (const failure of failures) {
166-
logger.error(` ${failure.path}`)
166+
logger.log(` ${failure.path}`)
167167
logger.substep(failure.reason)
168168
}
169169
}
@@ -182,6 +182,6 @@ async function main() {
182182
}
183183

184184
main().catch(error => {
185-
logger.error(`Validation failed: ${error.message}`)
185+
logger.fail(`Validation failed: ${error.message}`)
186186
process.exitCode = 1
187187
})

scripts/validate/file-count.mjs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ async function main() {
7676
return
7777
}
7878

79-
logger.error('Too many files staged for commit')
79+
logger.fail('Too many files staged for commit')
8080
logger.log('')
8181
logger.log(`Staged files: ${violation.count}`)
8282
logger.log(`Maximum allowed: ${violation.limit}`)
@@ -102,12 +102,12 @@ async function main() {
102102

103103
process.exitCode = 1
104104
} catch (error) {
105-
logger.error(`Validation failed: ${error.message}`)
105+
logger.fail(`Validation failed: ${error.message}`)
106106
process.exitCode = 1
107107
}
108108
}
109109

110110
main().catch(error => {
111-
logger.error(`Validation failed: ${error}`)
111+
logger.fail(`Validation failed: ${error}`)
112112
process.exitCode = 1
113113
})

scripts/validate/file-size.mjs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,7 @@ async function main() {
117117
return
118118
}
119119

120-
logger.error('File size violations found')
120+
logger.fail('File size violations found')
121121
logger.log('')
122122
logger.log(`Maximum allowed file size: ${formatBytes(MAX_FILE_SIZE)}`)
123123
logger.log('')
@@ -140,12 +140,12 @@ async function main() {
140140

141141
process.exitCode = 1
142142
} catch (error) {
143-
logger.error(`Validation failed: ${error.message}`)
143+
logger.fail(`Validation failed: ${error.message}`)
144144
process.exitCode = 1
145145
}
146146
}
147147

148148
main().catch(error => {
149-
logger.error(`Validation failed: ${error}`)
149+
logger.fail(`Validation failed: ${error}`)
150150
process.exitCode = 1
151151
})

scripts/validate/markdown-filenames.mjs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -264,7 +264,7 @@ async function main() {
264264
return
265265
}
266266

267-
logger.error('Markdown filename violations found')
267+
logger.fail('Markdown filename violations found')
268268
logger.log('')
269269
logger.log('Special files (allowed anywhere):')
270270
logger.log(' README.md, LICENSE')
@@ -293,12 +293,12 @@ async function main() {
293293

294294
process.exitCode = 1
295295
} catch (error) {
296-
logger.error(`Validation failed: ${error.message}`)
296+
logger.fail(`Validation failed: ${error.message}`)
297297
process.exitCode = 1
298298
}
299299
}
300300

301301
main().catch(error => {
302-
logger.error(`Validation failed: ${error}`)
302+
logger.fail(`Validation failed: ${error}`)
303303
process.exitCode = 1
304304
})

scripts/validate/no-extraneous-dependencies.mjs

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -288,39 +288,39 @@ async function main() {
288288
return
289289
}
290290

291-
logger.error('Found extraneous or missing dependencies:\n')
291+
logger.fail('Found extraneous or missing dependencies:\n')
292292

293293
for (const error of errors) {
294294
if (error.type === 'missing-dependency') {
295-
logger.error(
295+
logger.log(
296296
` ${error.file}:${error.line}:${error.column} - ${error.message}`,
297297
)
298-
logger.error(` require('${error.specifier}')`)
298+
logger.log(` require('${error.specifier}')`)
299299
if (
300300
error.message.includes('is in devDependencies but required in dist/')
301301
) {
302-
logger.error(
302+
logger.log(
303303
` Fix: Move "${error.packageName}" to dependencies OR bundle it (add to esbuild external exclusion)\n`,
304304
)
305305
} else {
306-
logger.error(
306+
logger.log(
307307
` Fix: Add "${error.packageName}" to dependencies or peerDependencies\n`,
308308
)
309309
}
310310
} else if (error.type === 'missing-file') {
311-
logger.error(
311+
logger.log(
312312
` ${error.file}:${error.line}:${error.column} - ${error.message}`,
313313
)
314-
logger.error(` require('${error.specifier}')`)
315-
logger.error(' Fix: Create the missing file or fix the path\n')
314+
logger.log(` require('${error.specifier}')`)
315+
logger.log(' Fix: Create the missing file or fix the path\n')
316316
} else if (error.type === 'parse-error') {
317-
logger.error(` ${error.file} - ${error.message}\n`)
317+
logger.log(` ${error.file} - ${error.message}\n`)
318318
}
319319
}
320320

321321
process.exitCode = 1
322322
} catch (error) {
323-
logger.error('Validation failed:', error.message)
323+
logger.fail('Validation failed:', error.message)
324324
process.exitCode = 1
325325
}
326326
}

scripts/validate/no-link-deps.mjs

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -121,26 +121,26 @@ async function main() {
121121
}
122122

123123
if (allViolations.length > 0) {
124-
logger.error('Found link: dependencies (prohibited)')
125-
logger.error('')
126-
logger.error(
124+
logger.fail('Found link: dependencies (prohibited)')
125+
logger.log('')
126+
logger.log(
127127
'Use workspace: protocol for monorepo packages or catalog: for centralized versions.',
128128
)
129-
logger.error('')
129+
logger.log('')
130130

131131
for (const violation of allViolations) {
132132
const relativePath = path.relative(rootPath, violation.file)
133-
logger.error(` ${relativePath}`)
134-
logger.error(
133+
logger.log(` ${relativePath}`)
134+
logger.log(
135135
` ${violation.field}.${violation.package}: "${violation.value}"`,
136136
)
137137
}
138138

139-
logger.error('')
140-
logger.error('Replace link: with:')
141-
logger.error(' - workspace: for monorepo packages')
142-
logger.error(' - catalog: for centralized version management')
143-
logger.error('')
139+
logger.log('')
140+
logger.log('Replace link: with:')
141+
logger.log(' - workspace: for monorepo packages')
142+
logger.log(' - catalog: for centralized version management')
143+
logger.log('')
144144

145145
process.exitCode = 1
146146
} else {
@@ -149,6 +149,6 @@ async function main() {
149149
}
150150

151151
main().catch(error => {
152-
logger.error('Validation failed:', error)
152+
logger.fail('Validation failed:', error)
153153
process.exitCode = 1
154154
})

0 commit comments

Comments
 (0)