Jon_Shier
(Jon Shier)
1
Swift Users:
I’m trying to parse the command-line arguments of a Swift 3 script using Xcode 8 beta 6. However, ProcessInfo’s arguments array now contains all of the swift compiler arguments as well as the command itself. For example, this script:
#!/usr/bin/env swift
import Foundation
print(ProcessInfo.processInfo.arguments)
now prints:
["/Users/jshier/Downloads/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift”,
"-frontend”,
"-interpret”,
"./processInfo.swift”,
"-target”,
"x86_64-apple-macosx10.9”,
"-enable-objc-interop”,
"-sdk”,
"/Users/jshier/Downloads/Xcode-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk”,
"-color-diagnostics”,
"-module-name”,
"processInfo"]
(arguments broken into lines for readability)
Is this a bug (and if so, does it need to be reported) or is it an intentional change (if so, how are we supposed to parse arguments now?)?
Jon
jrose
(Jordan Rose)
2
I’d be surprised if the behavior of ProcessInfo has actually changed. Swift.CommandLine (formerly Swift.Process, unrelated to ProcessInfo) should have the script arguments only.
Jordan
···
On Aug 18, 2016, at 19:14, Jon Shier via swift-users <swift-users@swift.org> wrote:
Swift Users:
I’m trying to parse the command-line arguments of a Swift 3 script using Xcode 8 beta 6. However, ProcessInfo’s arguments array now contains all of the swift compiler arguments as well as the command itself. For example, this script:
#!/usr/bin/env swift
import Foundation
print(ProcessInfo.processInfo.arguments)
now prints:
["/Users/jshier/Downloads/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift”,
"-frontend”,
"-interpret”,
"./processInfo.swift”,
"-target”,
"x86_64-apple-macosx10.9”,
"-enable-objc-interop”,
"-sdk”,
"/Users/jshier/Downloads/Xcode-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk”,
"-color-diagnostics”,
"-module-name”,
"processInfo"]
(arguments broken into lines for readability)
Is this a bug (and if so, does it need to be reported) or is it an intentional change (if so, how are we supposed to parse arguments now?)?
Jon
_______________________________________________
swift-users mailing list
swift-users@swift.org
https://lists.swift.org/mailman/listinfo/swift-users
Jon_Shier
(Jon Shier)
3
Jordan:
You’re quite right. I knew something had been renamed but between Process and ProcessInfo I lost my way.
Jon
···
On Aug 18, 2016, at 11:05 PM, Jordan Rose <jordan_rose@apple.com> wrote:
I’d be surprised if the behavior of ProcessInfo has actually changed. Swift.CommandLine (formerly Swift.Process, unrelated to ProcessInfo) should have the script arguments only.
Jordan
On Aug 18, 2016, at 19:14, Jon Shier via swift-users <swift-users@swift.org> wrote:
Swift Users:
I’m trying to parse the command-line arguments of a Swift 3 script using Xcode 8 beta 6. However, ProcessInfo’s arguments array now contains all of the swift compiler arguments as well as the command itself. For example, this script:
#!/usr/bin/env swift
import Foundation
print(ProcessInfo.processInfo.arguments)
now prints:
["/Users/jshier/Downloads/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift”,
"-frontend”,
"-interpret”,
"./processInfo.swift”,
"-target”,
"x86_64-apple-macosx10.9”,
"-enable-objc-interop”,
"-sdk”,
"/Users/jshier/Downloads/Xcode-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk”,
"-color-diagnostics”,
"-module-name”,
"processInfo"]
(arguments broken into lines for readability)
Is this a bug (and if so, does it need to be reported) or is it an intentional change (if so, how are we supposed to parse arguments now?)?
Jon
_______________________________________________
swift-users mailing list
swift-users@swift.org
https://lists.swift.org/mailman/listinfo/swift-users