Releases: facebookarchive/xctool
0.2.7
New xctool release.
- Pretty reporting is now allowed without overwrite when TTY is not detected.
- Simulator used to run iOS application tests can now be selected by its id passed to
-destination
option. xctest
symbolication in disabled in Xcode 7 for performance improvements.user-notifications
reporter is disabled on TeamCity, Jenkins and CircleCI.- Test method names with parameters are now supported.
-dry-run
and-skipUnavailableActions
xcodebuild options are now supported.- Other fixes.
Thanks for the fixes and new features to @hiltonc, @kernandreas, @yiding, @x2on, @morganchen12, @jspahrsummers, @LegNeato, @ikesyo, @thelvis4. 10 people contributed to this release! Amazing!
0.2.6
New xctool release.
- Added support of Xcode 7.
- Added an omit option for tests.
- Added an option for not reseting the simulator on failure.
- Switched to CoreSimulator framework to run application tests.
Thanks for the fixes and new features to @kcoons, @x2on, @bhamiltoncx, @Coneko! You rock!
0.2.5
New xctool release.
- Dropped Xcode 5 support.
- Switched to
simctl
to query test cases and run logic tests. - Added support for Xcode 7 beta.
- Improved support for networking, keychain and other specific service dependent tests.
- Pre and post action scripts defined in the active scheme are now run as expected.
- Fixed stripping of ANSI escape codes in the test output.
-only
option now supports wildcard prefixes for test class names and test cases.- Environment for app and logic tests is now the same as if you run them in Xcode.
- Added support for workspaces and projects that are located in a subdirectory of a project root directory.
- Improved support for projects with nested projects.
- Improved searching of available schemes.
-sdk
option now supports an absolute path to the sdk as a value.- Improved macro expansion in schemes.
- Many other small fixes and improvements.
Thanks for the fixes to @bgertzfield, @jimix, @loufranco, @jmkk, @hiltonc, @ExtremeMan and everyone who has reported detailed bug reports.
0.2.4
🕐 It's been too long between releases! 🚀
- Added
-testTimeout
option. When an individual test hits this timeout, it is considered a failure rather than waiting indefinitely - Tests now launch the simulator without stealing focus
- Improved error output when
xcodebuild
crashes - Improved support for OS X test bundles
- Fixed an issue where
NSTemporaryDirectory()
was broken in iOS logic tests - Fixed an issue where many tests with long names would break due to command line length
xctool
builds without warnings under Xcode 6.3- Switched to arc
👍 to @ExtremeMan, @bgertzfield, and @fpotter for the fixes!
0.2.3
🎉 Time for a release! 🎉
- Fix compilation warnings when using Xcode 6.3 betas
- Added
-derivedDataPath
option for specifying where DerivedData should be stored - Improvements to the TeamCity reporter
- Added
-launch-timeout
option for configuring the simulator launch timeout - Setting
XCTOOL_FORCE_TTY
will make thepretty-reporter
output special characters even if a TTY isn't detected - Fixed logic when running
analyze
on Xcode 6.1+- There is still more to do here as Apple changed some things around
- Various memory and correctness fixes
Thanks a TON to @zlandau, @acoomans, @x2on, @yiding, @maxwellE, @MSch, @leverdeterre, @ExtremeMan, and @stevenkramer for the fixes! ❤️
0.2.2
We haven't done a new release in a while, let's change that! 🎄 🎅
- Fixes for Xcode 6.1 / workarounds for Apple bugs
- Fixed problem with moving Xcode location after compiling
xctool
- Add a new reporter to output a database of copied files
- Updated
clang-as-ios-dylib
for cpp support - Various documentation fixes
Shout out to @ExtremeMan, @ryanrhee, @MatBD , @estsauver, @jeffreyjackson, @ewanmellor, @Orphis, and @grp for their contributions! 🎉 🎈 🎉
0.2.1
🌟 _If you only use one version of Xcode, you don't have to worry about any of this._ 🌟
In the last release, xctool
only worked with the Xcode version it was compiled with. This was needed due to the massive changes between Xcode 5 and Xcode 6, but caused problems for people using the same xctool
binary and switching between multiple Xcode versions when building and running their project (happens on CI a bunch).
@ExtremeMan updated xctool
to make Xcode version-specific functionality happen at runtime. This means an xctool
compiled with Xcode 6 can build and run tests using Xcode 5, etc.
There is an edge case where compiling xctool
on Xcode 6 and running it on an app pointed at Xcode 5 will fail if Xcode 6 is located in /Applications/Xcode.app
. The wrong private framework gets loaded (the framework from Xcode 6 rather than from Xcode 5). If Xcode 6 is saved somewhere like Xcode_6.app then it works.
0.2
New Xcode, new xctool
release!
- Added support for 💥 Xcode 6 💥
- Major kudos to @ExtremeMan...this was a ton of work
- Added a new TeamCity reporter
- Fixed an issue where
xctool
would not compile if the path contained spaces - Fixed a deterministic crash when running test cases on the iOS 5.0 simulator
- Fixed a random crash when running application tests
- Fixed a potential deadlock when running logic tests by working around the dispatch thread soft limit
- Fixed a bunch of memory leaks
Thanks to @ExtremeMan, @oscahie, @Pretz, @yiding, @ayanonagon, @jasonprado, @x2on, @acoomans, @Zehhu, @jacobrelkin, @g--n...you all rock! 🤘
0.1.16
Hey look, a timely release! Let's make these a habit.
- Added support for sending notifications via Notification Center when actions finish
- This can be controlled by turning the
user-notifications
reporter on and off - This is turned off by default on Travis CI
- This can be controlled by turning the
- Added
-listTestsOnly
option to list tests without running them- This is useful for integrating with wrapper scripts and test harnesses
- Added support for xcodebuild's
-install
option - Added support for xcodebuild's
-resultBundlePath
option - xctool now uses lazy binding when running tests
- This fixes an issue where a framework referenced by tests references a symbol that does not exist, thus causing the test to fail to link
❤️ to @fpotter, @ExtremeMan, @ianyh, and @jacobrelkin for their patches! 👏
0.1.15
Woah, 4 months since an official release...that's a long time! This release is full of so much great stuff:
- Added Xcode 5.1 support.
- You do not have to update. Xcode 5.0.x is still supported.
- Dropped support for Xcode < 5.0.
- If no
project
orworkspace
is specified, xctool searches in the current directory.- This matches xcodebuild semantics.
- Faster OCUnit tests by swizzling the slow implementation of
senIsSuperclassOfClass
. - Tests that crash will not halt the overall test run
- This gives you more signal by showing all failing tests in a run rather than stopping at the crash.
- Added
-resetSimulator
option to clear simulator content and settings between test runs. - Fix for the frequently-reported
Failed to query the list of test cases in the test bundle
bug. - When selecting an sdk, xctool will now fall back to the major release sdk.
- For example, if you specify
7.0.3
and it is unavailable xctool falls back to7.0
.
- For example, if you specify
- OCUnit errors are now reported as test failures.
- This should fix confusing results like
TEST FAILED: 25 passed, 0 failed, 0 errored, 25 total
- This should fix confusing results like
- Testcases in the JUnit reporter now have an
error
attribute. - The clang analyzer now publishes the
type
andcategory
of detected bugs to reporters. - ... as well as many smaller fixes and code cleanup.
❤️ to @fpotter, @ExtremeMan, @x2on, @carsonmcdonald, @PavelKatunin, @MatBD, @jlukas, @dblock, @spesholized, @donaldkwong, @ryanrhee, @yuichi-hamasaki, @testzugang, and @swolchok who all contributed code to this release. Cheers! 🍻