ruby 1.8 系 snapshot での ruby 1.8.2 からの変更点です。
掲載方針
以下は各変更点に付けるべきタグです。
記号について(特に重要なものは大文字(主観))
オプション -s でアクセスできないグローバル変数ができてしまうバグを修正 しました。- を _ に変換してグローバル変数を定義するようになりました。- 以外の 記号がふくまれる場合は、例外 NameError を投げます。
$ ruby-1.8.2 -se 'puts global_variables.grep(/foo/)' -- --foo-bar $-foo-bar $ ruby-1.8.3 -se 'puts global_variables.grep(/foo/)' -- --foo-bar $_foo_bar $ ruby-1.8.3 -se 'puts global_variables.grep(/foo/)' -- --foo\@bar -e: invalid name for global variable - --foo@bar (NameError)
複数のDublin Coreの要素を扱えるようになりました。
このためdc_#{Dublin Coreの要素名の複数形}というメソッドが導入されました。
互換性のために以前のdc_#{Dublin Coreの要素名の単数形}というメソッドも残されています。
比較できないものを渡された時に false ではなく nil を返すようになりました。 [ruby-dev:25811]
$ ruby-1.8.2 -e 'p "a" <=> 1' false $ ruby-1.8.3 -e 'p "a" <=> 1' nil
レシーバを指定したメソッド呼び出しが、同名のローカル変数の有無によっ て影響されるバグが修正されました。 [ruby-dev:25737] <URL:http://yowaken.dip.jp/tdiary/20050220.html#p01>
defined?(@a = b)
のような NODE_IASGN が nil ではなく
"assignment" を返すようになりました。
[yarv-dev:418]
モジュール関数としても使えるようになりました。[ruby-dev:25687]
https をサポートするようになりました。
:http_basic_authentication
オプションの追加
[ruby-core:4416]
Imageモジュールのサポート
valueのエンコーディングを変換するメソッドを公開。
valueのエンコーディングは要素の内部エンコーディングからoutput_encoding=で設定したエンコーディングへ変換されます。
close, close_read, close_write が IO と同じように、 nil を返すようになりました。[ruby-dev:25623]
追加 (RFC2782)
Windows 上での File#flock(File::LOCK_UN) が正しく理解されないバグが 修正されました。[ruby-dev:25574]
環境変数 RUBYOPT の -T オプションを適切に解釈するようになりました。 またハイフン - を省略できるようになりました。[ruby-dev:25512]
$ env RUBYOPT='Ke rnet/http' ruby -e 'p Net::HTTP' Net::HTTP
オプション :SSLEnable のデフォルトが false になりました。
0.1.2 -> 0.1.3
継承するとエラーになるバグを修正。 [ruby-talk:126104]
don't warn nonblocking behavior by default [ruby-dev:25443]
特異クラスのメソッド superclass が特異クラスを返すように修正されました。 [ruby-list:40519]
nonblocking IO に対する IO#read の挙動は 1.9 で変化するため、1.8 で警告が行われるようになりました。 そしてその代替手段として IO#readpartial が追加されました。 [ruby-dev:25430]
引数を与えない場合、可能なら /dev/urandom を参照するようになりました。[ruby-dev:25392]