From: Yui NARUSE Date: 2011-09-13T19:41:37+09:00 Subject: [ruby-dev:44501] [Ruby 1.9 - Feature #5314] パッケージマネージャをコアリリースに含めて欲しい Issue #5314 has been updated by Yui NARUSE. 意外と事実関係が複雑なのでまずまとめますと、 ports の元の状態はこうでした。 * lang/ruby18 (1.8.7) * devel/ruby-gems (1.7.1 or 1.7.2) * www/redmine で、Rails は 2.3.11 が www/redmine に同梱されていました。 で、最近 /usr/local/bin/ruby の座が 1.9 に明け渡されたり、www/rubygems-rails が 3 になったりしてるんですがそれは関係なくて、 devel/rubygems が 1.8.7 になったことが原因です。 RubyGems では 1.8.5 において互換性を破壊する変更がなされており、件の Rails 2.3.11 が動かなくなりました。 http://blog.majesticseacreature.com/summary-of-rubygems-18-breakage-reports なお、これは Rails 等 gems のユーザ側が追従しています。 これによって redmine も影響を受けて動かなくなったというのが今回の問題です。 (なので、パッケージマネージャ同士の衝突は今回あんまり問題ではなく、単純にライブラリとしての RubyGems の問題) わたしが思うに今回の件で改善すべきものがあるとすれば、 * ports の www/redmine は devel/ruby-gems に依存する必要がある * www/redmine 同梱の rails を 2.3.14 に上げる * RubyGems は 1.8.5 みたいな中途半端なバージョンで非互換の変更を入れるな あたりですかね。 一方で、村岡さんのおっしゃる「パッケージマネージャとコアが密接にリリースマネージメントされていれば」というのは、 ちょっと問題がありまして、Ruby のリリースは1年~2年に一度なのです。 これはリソースが足りないという以外に、 * リリースごとに互換性がすこしずつ壊れるのでブランチのメンテがどちらにしろ必要 * ブランチのメンテではバグ修正以外はしない というポリシーの違いに起因している面も大きいので、やっぱりレイヤーが違うんじゃないかなぁと思いますね。 ま、根源的な問題として、RubyGems はパッケージマネージャのくせに頻繁にバージョンアップしすぎなんですよ(ぉぃ ---------------------------------------- Feature #5314: パッケージマネージャをコアリリースに含めて欲しい http://redmine.ruby-lang.org/issues/5314 Author: Taro MURAOKA Status: Third Party's Issue Priority: Normal Assignee: Category: Target version: Rubyは素晴らしいパッケージ(ライブラリ)が多いことが魅力の一つです。 その良さの維持には優れたパッケージマネージャが欠かせません。 しかしながら過去には代表的なパッケージマネージャ自身が バージョンアップに伴い互換性を欠くという問題を起こしたケースがあり、 これではその魅力が損なわれてしまいます。 よって今後そうならないように、コアリリースに安定したパッケージマネージャを含め、 リリース期間中はその安定性を堅持することを提案いたします。 -- http://redmine.ruby-lang.org