技術評論社様から頂きましたありがとうございます。
今号の git 特集は知ってることが大半だったのでパラパラと眺めて、ドラクエの方もチーム体制やモーションに関するアレコレは面白かったけど、ブランチ戦略であるとか開発プロセスについては、ブランチ切る日は数時間かかってデプロイロックが〜みたいなやつに近い話だったので、大変そうだな...という感想で辛さしか無かった。
「私を変えたソフトウェア」特集はとても良くて、特に竹内先生が相変わらずロックで面白かったかな。ちなみに僕を変えたソフトウェアは tDiary と Ruby です。
gemspec には指定した ruby や rubygems のバージョンでのみインストールを許可するような仕組みとして required_ruby_vesion
と required_rubygems_version
が用意されているけど、これらの比較は文字列比較ではなくて、なかなか賢くできている。
例えば、required_ruby_version='>= 2.3.0dev'
と指定して Ruby 2.3.0 で gemspec を読み込んだ時は以下のような比較が行われる。
Gem::Requirement.create('>= 2.3.0dev').satisfied_by? Gem::Version.new('2.3.0')
=> true
true なので、2.3.0 ではインストールできるよ、ということを示している。ruby や rubygems に新しく追加された機能を使った gem を作ったりメンテナンスする人は覚えておくといいと思います。