This maintenance update to DTFoundation fixes an issue with DTFolderMonitor. The update is available via GitHub tag or Cocoapods.
- FIXED: DTFolderMonitor might cause exception if monitoring is started and stopped quickly in succession
- CHANGED: Migrated unit testing to XCTest
Sebastian Hunkeler provided the main fix of this release. Thanks!
Builds kept failing on Travis-CI and in an attempt to fix this I migrated to XCTest. I had to perform the migration manually because the refactoring method of Xcode failed me. When this didn’t fix the build I found that an old version of xctool was the culprit.
This is how I changed my build file to force an update to xctool. The problem I was having had been fixed as of version 0.1.15 of xctool while Travis-CI had only 0.1.14 preinstalled on the build nodes. It might be a good idea to add such an update to each build script.
--- language: objective-c before_install: - brew update install: - brew upgrade xctool - sudo easy_install cpp-coveralls script: - xctool -project DTFoundation.xcodeproj -scheme "DTSidePanels Demo" build -sdk iphonesimulator -arch i386 ONLY_ACTIVE_ARCH=NO - xctool -project DTFoundation.xcodeproj -scheme "DTReachability Demo" build -sdk iphonesimulator -arch i386 ONLY_ACTIVE_ARCH=NO - xctool -project DTFoundation.xcodeproj -scheme "DTZipArchive Demo" build -sdk iphonesimulator -arch i386 ONLY_ACTIVE_ARCH=NO - xctool -project DTFoundation.xcodeproj -scheme "Static Library" build test -sdk iphonesimulator -arch i386 ONLY_ACTIVE_ARCH=NO -configuration Coverage after_success: - ./coveralls.rb --extension m --exclude-folder Demo --exclude-folder Test --exclude-folder Externals
Thanks to Cédric Luthi for providing the idea to do brew update and upgrade in the before_install and install sections. Richard Lee deserves some of the credit too for being the first to respond to my question.
As an afterthought I also wanted to add my documentation completeness test which requires appledoc to be installed on build nodes. Unfortunately appledoc went missing when Travis-CI updated to Xcode 5.1. So this has to wait until the next release.