まつもと ゆきひろです

In message "[ruby-dev:21776] Re: access ENV on $SAFE==4"
    on 03/10/30, Hidetoshi NAGAI <nagai / ai.kyutech.ac.jp> writes:

|> |   ENV.insecure_keys       ->  ENV.insecure_ref_deny_list
|> |   ENV.secure_keys         ->  ENV.insecure_ref_allow_list
|> これは名前が変です。list_insecure_refがinsecure_keys相当なら
|> まだ分かる気もしますが。
|
|   ENV.insecure_keys   ->  ENV.list_insecure_ref
|   ENV.secure_keys     ->    x
|
|ということでしょうか.
|list_insecure_ref_denied がいいかはともかく,
|list_insecure_ref だけだとどちらを指しているかが
|わかりづらいのではないでしょうか.

そーですねえ。もっと良い名前はないものでしょうか。

|> |        x                  ->  ENV.insecure_ref_default
|> |        x                  ->  ENV.insecure_ref_default = {:allow|:deny}
|> 私はこれは不要だと思います。移行措置として考えられたのだと思
|> いますが、いずれにしてもグローバルな影響が大きすぎます。
|
|考えてみたら,ENV.keys.each{|k| ENV.deny_insecure_ref(k)} を
|実行すればいいだけですよね.
|影響が大きすぎること,また,定数の場合と比べてデフォルトが
|逆になってしまうことによる混乱とを考えると,
|どちらもデフォルト許可とするのが正しい選択に思えてきました.

うーん、そうなんだろうか。