Working Around Bugs: OysterKit on XCode 6 Beta 3

Just a short note here, two XCode 6 Beta 3 bugs were stopping the OysterKit framework building, and the examples from running. 

We have work around the first, which is caused when two protocols refer to each other

protocol ProtocolA {
    func test(argument: ProtocolB)

protocol ProtocolB {
    func  test(argument:ProtocolA)

Which crashes the compiler! We've addressed this by making TokenizationState a class for now. It is unlikely to impact anyone, but I wanted to flag up the change. 

Finally the examples won't build and run because of another XCode bug, but luckily folks on the apple developer forums have figured out a work around (sadly it has to be applied for each app individually), please just follow the steps provided in this thread.

We've left the changes in a separate branch on GitHub (xcode6beta3), as I'm not sure I'll keep the change to TokenizationState after the bug has been fixed. I do love my protocols as contracts pattern!



Swift Studies

Nigel has been developing software for over 30 years. Starting with the ZX Spectrum and moving through the Commodore 64, Amiga, the Windows PC area and for the last 6 years the Mac.