From: "naruse (Yui NARUSE)" <naruse@...>
Date: 2013-06-24T01:33:07+09:00
Subject: [ruby-core:55606] [ruby-trunk - Feature #8544] OpenURI should open 'file://' URIs


Issue #8544 has been updated by naruse (Yui NARUSE).

Target version changed from Next Major to next minor

> > phluid61 (Matthew Kerwin) wrote:
> > In the absence of a living RFC [...]
>
> Perhaps this can get some traction: http://tools.ietf.org/html/draft-kerwin-file-scheme-01

Great!

duerst (Martin D��rst) wrote:
> phluid61 (Matthew Kerwin) wrote:
> 
> > Perhaps this can get some traction: http://tools.ietf.org/html/draft-kerwin-file-scheme-01
> 
> It would be great if it did. Just for your reference, others have tried before you.
> Please check out http://tools.ietf.org/html/draft-yevstifeyev-ftp-uri-scheme-08, http://tools.ietf.org/html/draft-hoffman-ftp-uri-04, and http://tools.ietf.org/html/draft-hoffman-ftp-uri-04.

They are ftp: scheme.
For file scheme,
http://tools.ietf.org/html/draft-hoffman-file-uri-03
http://url.spec.whatwg.org/

http://suika.fam.cx/~wakaba/wiki/sw/n/file has additional points but in Japanese
----------------------------------------
Feature #8544: OpenURI should open 'file://' URIs
https://bugs.ruby-lang.org/issues/8544#change-40095

Author: silasdavis (Silas Davis)
Status: Open
Priority: Normal
Assignee: 
Category: core
Target version: next minor


The following code prints the contents of '/tmp/file.txt':

require 'open-uri'
open('/tmp/file.txt').read {|f| puts f.read }

which although useful should probably fail since a unix file path is not a URI, and therefore might shield data problems in a system

However the following should produce the same output and is a URI, but fails:

open('file:///tmp/file.txt').read {|f| puts f.read }

I note that the documentation for open-uri does explain that it is a wrapper for http, https, and ftp, but to deserve its name it should open such URIs as specified in this RFC: http://tools.ietf.org/html/rfc1630. This coupled with the fact that it already does open files, but not by a URI specification.



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