Upgrade to Pro — share decks privately, control downloads, hide ads and more …

「ツールの」バージョン管理ツール mise について

「ツールの」バージョン管理ツール mise について

■イベント
SansanモバイルエンジニアLT会 & 懇親会 〜春の新生活編〜
https://sansan.connpass.com/event/312187/

■発表者
Mobile Applicationグループ ⼭本 ⼀樹

■iOSエンジニア 採用情報
https://media.sansan-engineering.com/ios-engineer

■Androidエンジニア 採用情報
https://media.sansan-engineering.com/android-engineer

SansanTech

March 28, 2024
Tweet

More Decks by SansanTech

Other Decks in Technology

Transcript

  1. ⼭本⼀樹 Sansan株式会社 技術本部 Mobile Application Group - 2018年4⽉ Fenrir 新卒⼊社

    - 2020年10⽉ Sansan に Join - Eight の iOS アプリ歴4年⽬? - ネコを飼いたいと⾔い続けて早6年、いまだにお家にいないの はなぜ・・・?
  2. 最近 Eight iOS で取り組んでいること - 最近 Eight iOS では Xcode

    Project 管理ツールの導⼊を進めている - Xcode Project 管理ツール = .xcodeproj を⾃動⽣成するツール - 有名なものだと XcodeGen - ツールとしては Tuist を選んだ - https://tuist.io - 選定理由は会社ブログにでも... - ⼀気に時間を取るのではなく、毎週時間をとって少しずつ作業中
  3. We are deprecating tuistenv in favor of mise - tuistenv

    = Tuist をインストールするためのツール - .tuist-version ファイルを⽤意しておくとそのバージョンをインストール してくれていた - そんな tuistenv が Deprecated になり、代わりに mise を使ってねという アナウンス
  4. - > dev tools, env vars, task runner - 複数の機能を持ったツール

    - バージョン管理 - 環境変数 - タスクランナー - Rust で書かれている - ⾼速! - 読み⽅は “meez” らしい - フランス語が由来とのこと - https://mise.jdx.dev/about.html About mise
  5. - バージョン管理機能 - like asdf 、らしい - 要するに rbenv とかのなんでも版

    - iOS 開発でよく⾒かけるツールもサポートされている mise - dev tools
  6. サポートされているツール例 - Ruby - Swift - SwiftFormat - SwiftGen -

    SwiftLint - Sourcery - XcodeGen - Xcodes mise - dev tools
  7. mise - task runner - make のような、コマンドを簡単に実⾏できる仕組み - Input や

    Output を指定することで timestamp を元に変更がない場合はス キップするや、タスクをグループ化してまとめて実⾏できる機能がある - まだ experimental feature らしい
  8. - ⼀部のツールは⾃前でビルドしていたが、 mise で⼊れることで爆速に - 導⼊前: 2m40s - 導⼊後: 3s

    - ⾊々な管理ツールに分散していたのが mise 1本に - rbenv - SwiftPM - CocoaPods 導⼊の効果