Now in REALITY Tech #3 Xcode12.5対応 等
ワクチン接種2回目の副反応で苦しんだションローです。
注射をされた左腕が痛いので、この記事は右手だけで書いています。
ということで今週の「Now in REALITY Tech」は、iOSチームから最近のトピックを紹介します!
Xcode 12.5環境への更新
開発で使うXcodeのバージョンを 12.5 に更新しました。
Big Surへの更新が伴ったのもあり、普段よりも若干時間が掛かったなーという印象。
やったことは
* Mockolo のバージョンを更新する
* Facebook SDK のバージョンを更新する
* Jenkins, BitriseなどのCI環境のXcodeバージョンを更新する
* メンバーの皆様に手元の macOS を Big Sur に更新して頂く
でした。
Xcode 12.5 になってからEditor上のスワイプ操作で前のファイルに戻るときの挙動がバグっているのがかなりやっかいで困っています・・どうにかならんもんか。
あとOSの更新タイミングでJenkinsのAgentを動かしている端末の調子が若干おかしくなってしまったので、iOS関連のJobはBitriseに逃がすのを急いでやっていきたいなーという所感です。
XcodeGenなどのSwift製ツールを全てSwiftPM管理に
「Homebrewを用いたコマンドのインストールが必須になるのが嫌だ」
という議論がチーム内であり、Swift製のCLIを管理は全てSwiftPMで行うことにしました。(もともと一部のコマンドはSwiftPM管理にしていた)
アプリのプロジェクト全体をSwiftPMで管理しているわけではないので、CLI管理用のディレクトリを作った上で以下のような Package.swift を元にCLIをインストールしています。
// swift-tools-version:5.4
// The swift-tools-version declares the minimum version of Swift required to build this package.
import PackageDescription
let package = Package(
name: "Tools",
dependencies: [
.package(url: "https://github.com/apple/swift-format", .exact("0.50400.0")),
.package(url: "https://github.com/uber/mockolo.git", .exact("1.4.1")),
.package(url: "https://github.com/yonaskolb/XcodeGen.git", .exact("2.24.0")),
]
)
インストールしたコマンドは以下のように実行しています
swift run xcodegen generate -r ../. -s ../project.yml
fastlane matchへの対応
fastlane matchを用いた証明書とデバイス管理に対応しました。
過去、証明書やデバイスの管理を雑にやってしまっていたことを反省した + (6月時点で)来月から新しい人が入社することになる、という2点のモチベーションからついにやり遂げました。
デバイスの登録申請のフォームとして Slack のワークフローを試してみたのですが、作るのも管理も簡単だし結構使えるかも!?という感触でした。
↑を入力すると、slackに↓が通知されるように作りました。
Slack ワークフローからGoogle スプレッドシートへの連携などもできるようなので、またどっかで活用したい。
おまけのコーナー
明日 Mirrativ さんと合同でLT会を開催するので、ご興味ある方は是非ご参加ください!
うちのチームからもメンバーが発表するので、お楽しみに!