@@ -156,7 +156,7 @@ struct PackageToJSPlugin: CommandPlugin {
156156 let productName = try buildOptions. product ?? deriveDefaultProduct ( package : context. package )
157157 let build = try buildWasm (
158158 productName: productName, context: context,
159- enableCodeCoverage : buildOptions. packageOptions. enableCodeCoverage
159+ options : buildOptions. packageOptions
160160 )
161161 guard build. succeeded else {
162162 reportBuildFailure ( build, arguments)
@@ -212,7 +212,7 @@ struct PackageToJSPlugin: CommandPlugin {
212212 let productName = " \( context. package . displayName) PackageTests "
213213 let build = try buildWasm (
214214 productName: productName, context: context,
215- enableCodeCoverage : testOptions. packageOptions. enableCodeCoverage
215+ options : testOptions. packageOptions
216216 )
217217 guard build. succeeded else {
218218 reportBuildFailure ( build, arguments)
@@ -284,12 +284,12 @@ struct PackageToJSPlugin: CommandPlugin {
284284 }
285285 }
286286
287- private func buildWasm( productName: String , context: PluginContext , enableCodeCoverage : Bool ) throws
287+ private func buildWasm( productName: String , context: PluginContext , options : PackageToJS . PackageOptions ) throws
288288 -> PackageManager . BuildResult
289289 {
290290 var parameters = PackageManager . BuildParameters (
291291 configuration: . inherit,
292- logging: . concise
292+ logging: options . verbose ? . verbose : . concise
293293 )
294294 parameters. echoLogs = true
295295 parameters. otherSwiftcFlags = [ " -color-diagnostics " ]
@@ -308,7 +308,7 @@ struct PackageToJSPlugin: CommandPlugin {
308308 ]
309309
310310 // Enable code coverage options if requested
311- if enableCodeCoverage {
311+ if options . enableCodeCoverage {
312312 parameters. otherSwiftcFlags += [ " -profile-coverage-mapping " , " -profile-generate " ]
313313 parameters. otherCFlags += [ " -fprofile-instr-generate " , " -fcoverage-mapping " ]
314314 }
@@ -356,9 +356,10 @@ extension PackageToJS.PackageOptions {
356356 let packageName = extractor. extractOption ( named: " package-name " ) . last
357357 let explain = extractor. extractFlag ( named: " explain " )
358358 let useCDN = extractor. extractFlag ( named: " use-cdn " )
359+ let verbose = extractor. extractFlag ( named: " verbose " )
359360 let enableCodeCoverage = extractor. extractFlag ( named: " enable-code-coverage " )
360361 return PackageToJS . PackageOptions (
361- outputPath: outputPath, packageName: packageName, explain: explain != 0 , useCDN: useCDN != 0 , enableCodeCoverage: enableCodeCoverage != 0
362+ outputPath: outputPath, packageName: packageName, explain: explain != 0 , verbose : verbose != 0 , useCDN: useCDN != 0 , enableCodeCoverage: enableCodeCoverage != 0
362363 )
363364 }
364365}
@@ -390,6 +391,7 @@ extension PackageToJS.BuildOptions {
390391 --output <path> Path to the output directory (default: .build/plugins/PackageToJS/outputs/Package)
391392 --package-name <name> Name of the package (default: lowercased Package.swift name)
392393 --explain Whether to explain the build plan
394+ --verbose Whether to print verbose output
393395 --no-optimize Whether to disable wasm-opt optimization
394396 --use-cdn Whether to use CDN for dependency packages
395397 --enable-code-coverage Whether to enable code coverage collection
@@ -419,14 +421,12 @@ extension PackageToJS.TestOptions {
419421 let prelude = extractor. extractOption ( named: " prelude " ) . last
420422 let environment = extractor. extractOption ( named: " environment " ) . last
421423 let inspect = extractor. extractFlag ( named: " inspect " )
422- let verbose = extractor. extractFlag ( named: " verbose " )
423424 let extraNodeArguments = extractor. extractSingleDashOption ( named: " Xnode " )
424425 let packageOptions = PackageToJS . PackageOptions. parse ( from: & extractor)
425426 var options = PackageToJS . TestOptions (
426427 buildOnly: buildOnly != 0 , listTests: listTests != 0 ,
427428 filter: filter, prelude: prelude, environment: environment, inspect: inspect != 0 ,
428429 extraNodeArguments: extraNodeArguments,
429- verbose: verbose != 0 ,
430430 packageOptions: packageOptions
431431 )
432432
@@ -448,9 +448,10 @@ extension PackageToJS.TestOptions {
448448 --prelude <path> Path to the prelude script
449449 --environment <name> The environment to use for the tests (values: node, browser; default: node)
450450 --inspect Whether to run tests in the browser with inspector enabled
451+ --explain Whether to explain the build plan
452+ --verbose Whether to print verbose output
451453 --use-cdn Whether to use CDN for dependency packages
452454 --enable-code-coverage Whether to enable code coverage collection
453- --verbose Whether to print verbose output
454455 -Xnode <args> Extra arguments to pass to Node.js
455456
456457 EXAMPLES:
0 commit comments