Apache Arrowの開発に参加している須藤です。Apache ArrowのSwift実装のバージョン21.0.0をリリースしたので紹介します。
背景
Apache Arrowはいろんなプログラミング言語で広く使えることも大事にしているので、各種プログラミング言語用の実装があります。
もともとは https://github.com/apache/arrow の中で各種言語の実装を管理していました。しかし、 https://github.com/apache/arrow のメンテナンス・リリースコストが高くなってきました。そのため、メンテナンス・リリースコストを分散するために言語ごとに別々のリポジトリーに分離していっています。
Swift実装は https://github.com/apache/arrow-swift に分離することになりました。関連議論はここらへんです。
Swift Package Indexに登録するにはトップレベルにPackage.swift
を置かないといけなそうというのが一番のモチベーションでした。メンテンナンスを楽にというのもあるけど、リリースコスト云々はあんまり関係ありませんでした。そもそもSwift用のリリース作業はほとんど発生していなかったからです。
分離してからせっせとリリースの準備を進めていたのですが、ようやく、今日、分離したリポジトリー https://github.com/apache/arrow-swift からリリースできました!やったよ!
21.0.0の変更点
新しいバージョンは21.0.0とメジャーバージョンアップになっています。非互換の変更は含まれていない気はしますが、私のSwift力では判断しきれなかったからです。(なけなしの私のSwift力で)5.10だけではなく6.0以降でもビルドできるようにしましたが、これは、たぶん非互換にはなっていないはず。
まぁ、リポジトリーを分離したので、メジャーバージョンアップから始めたほうがスッキリしそうだなくらいのものです。これからは、真面目にセマンティックバージョニングをしていくはず。
これから
このリポジトリーの分離と、分離されたリポジトリーからのリリースは、私が結構がんばった感はあるのですが、私はSwiftに詳しくありません。たとえば、READMEにインストール方法も書けないくらいです。SwiftでもApache Arrowを使えるとデータ処理がはかどるはずなので、ぜひ、Swiftを書ける人は開発に参加してください!半年とか一年とか継続的に開発に参加していればApache Arrowコミッターになれる気はします。私が推薦するかもしれませんし、他のPMCメンバーが推薦するかもしれません。
まとめ
Apache ArrowのSwift実装の新しいバージョンをリリースしたので一緒に開発する人を募集しました。
それはそうと、Apache ArrowのSwift実装のリリースをがんばった私にApache Arrow関連のサポートを頼みたいという場合はクリアコードのApache Arrowサービスをどうぞ。