Xcode 8.0ではデフォルトでSwift 3.0が使われるようになり、Swift 2.3は、古いプロジェクトからの互換性を維持するも目的で残っているにとどまっている状態である。これが思わぬところで落とし穴になっている。Homebrewを使っている環境でSwiftLintをインストールしようとした時、SwiftLine 0.12.0の段階ではビルドに失敗するようになっているのである。
SwiftLine 0.12.0の段階では、以下のコマンドを単純に入れた場合に発生する。
brew install swiftlint
こうすると、Xcode 8.0をインストールしたMacでは、ビルドが通らないのである。
これは、SwiftLint 0.12.0の段階ではXcode 7.3.xで開発された関係上、Xcode 8には対応していないからによるものである。
もっとも、開発ブランチでは対応がなされているので、以下の方法でインストールすることができる。
brew install --HEAD swiftlint
こうすれば、インストールが通る。
ただ、これは開発バージョンを使うことになるので、あまり長い時間は使うべきではないので、気をつけるべきところではある。
(2017/02/05追記)
2017/02/05時点では最新バージョンは0.16.1で、Homebrewのインストールスクリプトを確認する限り、SierraまたはEl Capitanではバイナリインストールに対応している模様のため、現時点では解消されている。また、SwiftLint自体はバージョン0.14.0でXcode 8.x/Swift 3.xへ移行している。
2017年春に登場すると言われているXcode 8.3ではSwift 2.3の廃止、Swift 3.1への移行が考えられる ((Xcode 8.3 beta Release Notes )) 。また、将来的にはSwift 4.0への移行もあるため、その時には再び要注意箇所が出るかもしれない。
ウェブマスター。本ブログでITを中心にいろいろな情報や意見などを提供しています。主にスマートフォン向けアプリやウェブアプリの開発を携わっています。ご用の方はコメントかコンタクトフォームにて。