Instruments CLI verbose output option is broken

Originator:jlipps
Number:rdar://17362629 Date Originated:6/18/2014
Status:Resolved Resolved:7/22/2014
Product:Instruments Product Version:6
Classification:Major Bug Reproducible:Always
 
Summary:
The verbose output flag for instruments (-v) seems to be broken. It seems to be sensitive to the contents of the -w flag. When using a valid device as the parameter to -w, the -v flag works. Otherwise, including the -v flag results in a usage error

Steps to Reproduce:
1. Install Xcode and command-line tools
2. Run instruments from the command line with a device that instruments does not recognize:

/Applications/Xcode6-Beta.app/Contents/Developer/usr/bin/instruments -t /Applications/Xcode6-beta.app/Contents/Applications/Instruments.app/Contents/PlugIns/AutomationInstrument.xrplugin/Contents/Resources/Automation.tracetemplate -w "baddevice" /path/to/my.app -e UIASCRIPT /path/to/my/test.js -e UIARESULTSPATH /tmp

3. Notice the appropriate response:

Instruments Usage Error : Unknown hardware device specified: baddevice
Known Devices:
Sauce’s MacBook Air (EC381EA7-C2D0-5273-879B-04200C48ED34)
Resizable iPad (8.0 Simulator) (78F6FC88-3E04-409B-9186-6B4E7B90212D)
Resizable iPhone (8.0 Simulator) (881FDF6F-669E-4765-8FB2-C7F819834063)
iPad 2 (8.0 Simulator) (98141C01-B98F-4576-90F7-950ED2EEF102)
iPad Air (8.0 Simulator) (D6C8E111-6D93-426B-BC51-390F22108193)
iPad Retina (8.0 Simulator) (BF8DA1BE-250E-4561-AC91-901D0D91F638)
iPhone 4s (8.0 Simulator) (1C1B7C9D-6B38-4374-86BB-31A7CFA6F9F5)
iPhone 5 (8.0 Simulator) (C06770EE-66DC-43E2-A73C-3FFC09C74A89)
iPhone 5s (8.0 Simulator) (7538FB7A-DF4B-45FD-B7C5-F9D53BA8FEB6)

4. Now try again with verbose logging enabled:

/Applications/Xcode6-Beta.app/Contents/Developer/usr/bin/instruments -v -t /Applications/Xcode6-beta.app/Contents/Applications/Instruments.app/Contents/PlugIns/AutomationInstrument.xrplugin/Contents/Resources/Automation.tracetemplate -w "baddevice" /path/to/my.app -e UIASCRIPT /path/to/my/test.js -e UIARESULTSPATH /tmp


Expected Results:
I expect to see the same result as in step 3, with perhaps more verbose logging attached to it.

Actual Results:
Instead, we get this usage error:

Instruments Usage Error : No template (-t) specified
instruments, version 6.0 (56107.10.7)
usage: instruments [-t template] [-D document] [-l timeLimit] [-i #] [-w device] [[-p pid] | [application [-e variable value] [argument ...]]]

Clearly, it is incorrect, as nothing about the command changed other than adding the -v flag.

Also, if we try the -v flag with a correct device (say "iPhone 5s"), the verbose logging works.

Version:
Xcode 6
Instruments 6
OS X 10.10

Notes:


Configuration:
Macbook Air

Comments


Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!