Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 56ec458

Browse files
PackageToJS: Generalize --verbose flag to all commands
And use it to control the verbosity of the build process.
1 parent 29ba8ae commit 56ec458

File tree

2 files changed

+13
-12
lines changed

2 files changed

+13
-12
lines changed

‎Plugins/PackageToJS/Sources/PackageToJS.swift‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,8 @@ struct PackageToJS {
88
var packageName: String?
99
/// Whether to explain the build plan (default: false)
1010
var explain: Bool = false
11+
/// Whether to print verbose output
12+
var verbose: Bool = false
1113
/// Whether to use CDN for dependency packages (default: false)
1214
var useCDN: Bool = false
1315
/// Whether to enable code coverage collection (default: false)
@@ -49,8 +51,6 @@ struct PackageToJS {
4951
var inspect: Bool
5052
/// The extra arguments to pass to node
5153
var extraNodeArguments: [String]
52-
/// Whether to print verbose output
53-
var verbose: Bool
5454
/// The options for packaging
5555
var packageOptions: PackageOptions
5656
}
@@ -99,7 +99,7 @@ struct PackageToJS {
9999
try PackageToJS.runSingleTestingLibrary(
100100
testRunner: testRunner, currentDirectoryURL: currentDirectoryURL,
101101
extraArguments: extraArguments,
102-
testParser: testOptions.verbose ? nil : FancyTestsParser(write: { print(0ドル, terminator: "") }),
102+
testParser: testOptions.packageOptions.verbose ? nil : FancyTestsParser(write: { print(0ドル, terminator: "") }),
103103
testOptions: testOptions
104104
)
105105
}

‎Plugins/PackageToJS/Sources/PackageToJSPlugin.swift‎

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -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

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /