[#34911] erb still treats $KCODE — "Yusuke ENDOH" <mame@...>

遠藤です。

16 messages 2008/06/03

[#34923] open() and encodings — "NARUSE, Yui" <naruse@...>

成瀬です。

53 messages 2008/06/03
[#34924] Re: open() and encodings — Yukihiro Matsumoto <matz@...> 2008/06/04

まつもと ゆきひろです

[#34931] Re: open() and encodings — "NARUSE, Yui" <naruse@...> 2008/06/04

成瀬です。

[#34934] Re: open() and encodings — Yukihiro Matsumoto <matz@...> 2008/06/05

まつもと ゆきひろです

[#34935] Re: open() and encodings — "U.Nakamura" <usa@...> 2008/06/05

こんにちは、なかむら(う)です。

[#34936] Re: open() and encodings — Yukihiro Matsumoto <matz@...> 2008/06/05

まつもと ゆきひろです

[#34937] Re: open() and encodings — "U.Nakamura" <usa@...> 2008/06/05

こんにちは、なかむら(う)です。

[#34948] Re: open() and encodings — Hidetoshi NAGAI <nagai@...> 2008/06/05

永井@知能.九工大です.

[#34961] Re: open() and encodings — "NARUSE, Yui" <naruse@...> 2008/06/05

成瀬です。

[#34997] Re: [ruby-changes:5517] Ruby:r17021 (trunk): * vm_insnhelper.c, vm.c, proc.c (proc_call): allow call method with — SASADA Koichi <ko1@...>

 ささだです.

19 messages 2008/06/08
[#34998] Re: [ruby-changes:5517] Ruby:r17021 (trunk): * vm_insnhelper.c, vm.c, proc.c (proc_call): allow call method with — Yukihiro Matsumoto <matz@...> 2008/06/08

まつもと ゆきひろです

[#34999] Re: [ruby-changes:5517] Ruby:r17021 (trunk): * vm_insnhelper.c, vm.c, proc.c (proc_call): allow call method with — SASADA Koichi <ko1@...> 2008/06/08

 ささだです.

[#35000] Re: [ruby-changes:5517] Ruby:r17021 (trunk): * vm_insnhelper.c, vm.c, proc.c (proc_call): allow call method with — Yukihiro Matsumoto <matz@...> 2008/06/08

まつもと ゆきひろです

[#35001] Re: [ruby-changes:5517] Ruby:r17021 (trunk): * vm_insnhelper.c, vm.c, proc.c (proc_call): allow call method with — SASADA Koichi <ko1@...> 2008/06/08

 ささだです.

[#35003] Re: [ruby-changes:5517] Ruby:r17021 (trunk): * vm_insnhelper.c, vm.c, proc.c (proc_call): allow call method with — Yukihiro Matsumoto <matz@...> 2008/06/08

まつもと ゆきひろです

[#35007] Re: [ruby-changes:5517] Ruby:r17021 (trunk): * vm_insnhelper.c, vm.c, proc.c (proc_call): allow call method with — "Yusuke ENDOH" <mame@...> 2008/06/09

遠藤です。

[#35013] Re: [ruby-changes:5517] Ruby:r17021 (trunk): * vm_insnhelper.c, vm.c, proc.c (proc_call): allow call method with — Yukihiro Matsumoto <matz@...> 2008/06/09

まつもと ゆきひろです

[#35019] Re: [ruby-changes:5517] Ruby:r17021 (trunk): * vm_insnhelper.c, vm.c, proc.c (proc_call): allow call method with — "Yusuke ENDOH" <mame@...> 2008/06/09

遠藤です。

[#35021] Re: [ruby-changes:5517] Ruby:r17021 (trunk): * vm_insnhelper.c, vm.c, proc.c (proc_call): allow call method with — Yukihiro Matsumoto <matz@...> 2008/06/09

まつもと ゆきひろです

[#35020] Ruby 1.8.7-p17 has been released — "Akinori MUSHA" <knu@...>

 Ruby 1.8.7-p17 をリリースしました。

13 messages 2008/06/09

[#35044] deadlock detection for 1.9 — "Yusuke ENDOH" <mame@...>

遠藤です。

14 messages 2008/06/10

[#35108] Re: [ruby-list:44988] Re: 各ブランチの計画 — Urabe Shyouhei <shyouhei@...>

卜部です。

15 messages 2008/06/15

[#35200] Win32 Unicode console output — Tietew <tietew@...>

Tietew です。

22 messages 2008/06/22
[#35270] Re: Win32 Unicode console output — "NARUSE, Yui" <naruse@...> 2008/06/29

[#35226] [PATCH] freeze required_paths in gem_prelude.rb — "Keita Yamaguchi" <keita.yamaguchi@...>

山口と申します。

14 messages 2008/06/25
[#35228] Re: [PATCH] freeze required_paths in gem_prelude.rb — "Yusuke ENDOH" <mame@...> 2008/06/25

遠藤です。

[#35230] Re: [PATCH] freeze required_paths in gem_prelude.rb — Yukihiro Matsumoto <matz@...> 2008/06/25

まつもと ゆきひろです

[#35227] [Bug:trunk] Re: [ruby-cvs:24798] Ruby:r17573 (trunk): * parse.y (primary): make functional-style not operator to act — "U.Nakamura" <usa@...>

こんにちは、なかむら(う)です。

7 messages 2008/06/25

[#35247] Re: [ruby-list:45128] Re: Ruby 1.9.0/1.8.7/1.8.6/1.8.5 new releases (Security Fix) — Urabe Shyouhei <shyouhei@...>

卜部です。-devに振ります。ひょっとしてこんなパッチでSEGVのほうはおさまっ

13 messages 2008/06/26
[#35250] Re: [ruby-list:45128] Re: Ruby 1.9.0/1.8.7/1.8.6/1.8.5 new releases (Security Fix) — Yukihiro Matsumoto <matz@...> 2008/06/26

まつもと ゆきひろです

[#35273] $SAFEの今後 — Urabe Shyouhei <shyouhei@...>

〜これまでのあらすじ〜

24 messages 2008/06/30
[#35293] Re: $SAFEの今後 — Yukihiro Matsumoto <matz@...> 2008/07/01

まつもと ゆきひろです

[#35298] Re: $SAFEの今後 — Urabe Shyouhei <shyouhei@...> 2008/07/01

卜部です。

[#35303] Re: $SAFEの今後 — Yukihiro Matsumoto <matz@...> 2008/07/01

まつもと ゆきひろです

[#35304] Re: $SAFEの今後 — Urabe Shyouhei <shyouhei@...> 2008/07/01

卜部です。

[#35305] Re: $SAFEの今後 — Yukihiro Matsumoto <matz@...> 2008/07/01

まつもと ゆきひろです

[#35306] Re: $SAFEの今後 — "Shugo Maeda" <shugo@...> 2008/07/02

前田です。

[#35278] [BUG] test_win32ole_event.rb in trunk — Masaki Suketa <masaki.suketa@...>

助田です。

22 messages 2008/06/30
[#35281] Re: [BUG] test_win32ole_event.rb in trunk — "U.Nakamura" <usa@...> 2008/06/30

こんにちは、なかむら(う)です。

[#35282] Re: [BUG] test_win32ole_event.rb in trunk — arton <artonx@...> 2008/06/30

artonです。

[#35295] Re: [BUG] test_win32ole_event.rb in trunk — Masaki Suketa <masaki.suketa@...> 2008/07/01

助田です。

[ruby-dev:35225] Re: IncompatibleEncodingError

From: "NARUSE, Yui" <naruse@...>
Date: 2008-06-25 07:12:51 UTC
List: ruby-dev #35225
At Wed, 25 Jun 2008 10:48:06 +0900,
成瀬です。

Martin Duerst wrote:
> 
> At 21:07 08/06/24, Akinori MUSHA wrote:
> >At Tue, 24 Jun 2008 01:38:47 +0900,
> >matz wrote:
> >> In message "Re: [ruby-dev:35210] Re: IncompatibleEncodingError"
> >>     on Tue, 24 Jun 2008 01:31:50 +0900, "NARUSE, Yui" <naruse@airemix.jp> 
> >writes:
> >>
> >> |Encoding::IncompatibleError < StandardError
> 
> > ほかに Encoding 関係のエラーを追加するときも StandardError の
> >直下にぶらさげるんでしょうか。
> >
> > IncompatibleEncodingError ってのは Encoding 関係で複数の例外を
> >区別する必要が生じてからでよいので、とりあえず
> >
> >class EncodingError < StandardError; end
> >
> >だけ導入するのはどうでしょうか。
> 
> Encoding と transcode を一緒にした方がいいと考えると、
> 現在一般的な例外になっている transcode.c 内の一部のところも
> Encoding:: 下に入れることが考えられる。

Transcodeクラスが作られることがないならば、一緒の方がいいかもしれません。
作られることがもしあると、悩ましいですねぇ。

> 現在の transcode.c 内の rb_raise を分析しますと次の通りになります:
> 
>         rb_raise(rb_eArgError, "transcoder from %s to %s has been already registered",
> 内部エラーみたいなもので、種類はそれほど気にしなくていい。
> 
>         rb_raise(rb_eArgError, "invalid library name - %s",
> 内部エラーみたいなもので、種類はそれほど気にしなくていい。

同意します。
むしろこれらは rb_bug とかの方がいいのかも。

>         rb_raise(rb_eRuntimeError /*@@@change exception*/, "conversion undefined for byte sequence (maybe invalid byte sequence)");
> 変換が未定義で、ここは Encoding::UndefinedCharacterError とか出はどうでしょうか。
> 典型例は UTF-8 から例えば EUC-JP への変換で、EUC-JP で表現できない文字の場合。

UndefinedCharacterError でしょうね
エラーメッセージは
 "conversion undefined in <to> for byte sequence in <from>"
というように、from encoding と to encoding が分かった方がいいかもしれません。

>         rb_raise(rb_eArgError, "unknown value for invalid: setting");
> 元のデータに問題があるということで、これは他のところで同じエラーが出ると
> 一緒にしたいと思います。典型例は UTF-8 で UTF-8 出ないバイト列など。

このエラーって、String#encode(enc, invalid: value) の value が不正な場合の
エラーじゃないですかね。

さておき、下のデータに問題がる場合は
re.c 1179 行目の "broken <encoding> string" や、
parse.y の "invalid ..." が同じ種類ですね。

>         rb_raise(rb_eArgError, "wrong number of arguments (%d for 1..2)", argc);
> これは encode メゾドに投げた引数の数が違うということで、多分 ArgError でいいだろう。

そうですね。

>         rb_raise(rb_eArgError, "transcoding not supported (from %s to %s)", from_e, to_e);
> これは割りと rescue するのが多いのではないかと思います (例えば何か特殊な encoding
> へ変換してみて、これがだめでしたら同じ系列のもっとベージックなものをやってみるとか)
> なので、もしかして区別してもいいのかな。

ですね、別にしてもいいかもしれません。
UnsupportedConversion ?

>         rb_raise(rb_eArgError, "not fully converted, %td bytes left", sp+slen-fromp);
> これは文字が途中で切られている場合など起こりますので、Encoding:: 下でいいと思います。

うーん、どうでしょう。
エラーのそもそもの原因は確かに引数であるStringが不完全だからなのですが、
現象としては不完全な「変換」ですので、区別してもいい気がします。
迷うところですね。

In This Thread

Prev Next