[#47135] [ruby-trunk - Feature #8024][Assigned] Lazy sweep を on/off するための機能 — "mrkn (Kenta Murata)" <muraken@...>
16 messages
2013/03/06
[#47150] [ruby-trunk - Bug #8054][Open] open-uri と resolv-replace を同時にロードすると壊れる — "mrkn (Kenta Murata)" <muraken@...>
4 messages
2013/03/09
[#47157] 1CPUでtest-allするとfiberとFileUtilsでエラーたくさん — KOSAKI Motohiro <kosaki.motohiro@...>
CentOS6.3上で
3 messages
2013/03/10
[ruby-dev:47133] [ruby-trunk - Bug #7881] Windows でパスに日本語を含むスクリプトからの require が失敗する
From:
"h.shirosaki (Hiroshi Shirosaki)" <h.shirosaki@...>
Date:
2013-03-05 05:54:55 UTC
List:
ruby-dev #47133
Issue #7881 has been updated by h.shirosaki (Hiroshi Shirosaki).
=begin
たとえば、下記のようなコードを書いたときに、current directoryのパスが日本語を含んでいても
Encoding::CompatibilityError にならずに動く、という利点はあるのではないでしょうか。
expand_pathの結果がfilesystem encodingに変わる可能性があれば、日本語の引数に.encode('filesystem')をつけるなどしておかないといけません。
# coding: euc-jp
expand = File.expand_path('あ')
p [expand, expand.encoding]
path = File.join(expand, "あああ")
p [path, path.encoding]
あと、報告のあったrequire "./b" に関しては require_relative "b" でも動作するようです。
=end
----------------------------------------
Bug #7881: Windows でパスに日本語を含むスクリプトからの require が失敗する
https://bugs.ruby-lang.org/issues/7881#change-37295
Author: 5.5 (5 5)
Status: Assigned
Priority: Normal
Assignee: h.shirosaki (Hiroshi Shirosaki)
Category: core
Target version: next minor
ruby -v: ruby 1.9.3p385 (2013-02-06) [i386-mingw32]
=begin
Windows でパスに日本語を含むスクリプトからの require が失敗します。
Ruby 1.9.3 の p374,p385 でこの現象が起こりますが,p125 では起こりません。
p286 あたりから起こるようになったと思います。
【再現手順】
(1) d:/テスト というフォルダーを作る。
(2) d:/テスト/a.rb を下記のように書く。
(3) d:/テスト/b.rb を下記のように書く。
(4) cd /テスト
(5) ruby a.rb
a.rb の内容:
# encoding: utf-8
require "./b"
b.rb の内容
# encoding: utf-8
puts "No problem."
これで,
cannot load such file -- ./b (LoadError)
が出ます。
* フォルダー名を「テスト」から「test」に変えると正常に動作します。
* a.rb のスクリプトエンコーディングを CP932 に変えると正常に動作します。
* require "./b" を require "./b".encode("CP932") に変えると正常に動作します。
* 標準添付ライブラリーや gem はふつうに require できます。
=end
--
http://bugs.ruby-lang.org/