From: emasaka@... Date: 2016-10-24T10:47:45+00:00 Subject: [ruby-dev:49846] [Ruby trunk Bug#12869] open-uri's open rejects `BOM' in encoding Issue #12869 has been reported by Masakazu Takahashi. ---------------------------------------- Bug #12869: open-uri's open rejects `BOM' in encoding https://bugs.ruby-lang.org/issues/12869 * Author: Masakazu Takahashi * Status: Open * Priority: Normal * Assignee: * ruby -v: ruby 2.3.1p112 (2016-04-26 revision 54768) [x86_64-linux] * Backport: 2.1: UNKNOWN, 2.2: UNKNOWN, 2.3: UNKNOWN ---------------------------------------- Kernel.#openのエンコード指定では、BOMへの対応も指定できます。

open('foo.txt', 'r:BOM|UTF-8') ...
open-uriが再定義したopenでURLをオープンするときにも同じ動作を期待して実行してみます。

require 'open-uri'
open('http://example.com/foo.txt', 'r:BOM|UTF-8') ...
しかし、エンコーディング指定のパースでエラーになります。
/path/to/lib/ruby/2.3.0/open-uri.rb:141:in `find': unknown encoding name - BOM|UTF-8 (ArgumentError)





-- 
https://bugs.ruby-lang.org/