From: "Юрий Соколов" Date: 2013-03-30T05:48:11+09:00 Subject: [ruby-core:53831] Re: [ruby-trunk - Bug #8165] Problems with require --047d7bb03a5072df9504d91663fd Content-Type: text/plain; charset=KOI8-R Content-Transfer-Encoding: quoted-printable My patch doesn't store any string value, only hashes of them. It relies on loaded_feature_path for string comparison. Nor it uses ruby arrays for index storage - it organize them in linked lists which are stored in a single C array. 29.03.2013 20:14 =D0=CF=CC=D8=DA=CF=D7=C1=D4=C5=CC=D8 "h.shirosaki (Hiroshi= Shirosaki)" < h.shirosaki@gmail.com> =CE=C1=D0=C9=D3=C1=CC: > > Issue #8165 has been updated by h.shirosaki (Hiroshi Shirosaki). > > > funny_falcon (Yura Sokolov) wrote: > > May be it will be simpler to accept > https://bugs.ruby-lang.org/issues/8158 ? > > It has less memory requirement, avoids string comparisons, etc > > > > Indeed your patch would not have this bug since using C string instead of > string object. > I think smaller patch or splitting patch might be better to be reviewed. > > > ---------------------------------------- > Bug #8165: Problems with require > https://bugs.ruby-lang.org/issues/8165#change-38032 > > Author: Krugloff (Alexandr Kruglov) > Status: Assigned > Priority: Normal > Assignee: tarui (Masaya Tarui) > Category: > Target version: current: 2.1.0 > ruby -v: ruby 2.0.0-p0 > > > Require doesn't work correctly if path contains cyrillic. > > require '/home/mak/test.rb' #-> true > require '/home/mak/test.rb' #-> false > > require '/home/mak/=F0=D2=CF=C5=CB=D4=D9/test.rb' #-> true > require '/home/mak/=F0=D2=CF=C5=CB=D4=D9/test.rb' #-> true > > > -- > http://bugs.ruby-lang.org/ > > --047d7bb03a5072df9504d91663fd Content-Type: text/html; charset=KOI8-R Content-Transfer-Encoding: quoted-printable

My patch doesn't store any string value, only hashes of = them. It relies on loaded_feature_path for string comparison.

Nor it uses ruby arrays for index storage - it organize them= in linked lists which are stored in a single C array.

29.03.2013 20:14 =D0=CF=CC=D8=DA=CF=D7=C1=D4=C5= =CC=D8 "h.shirosaki (Hiroshi Shirosaki)" <h.shirosaki@gmail.com> =CE=C1=D0=C9=D3=C1=CC:

Issue #8165 has been updated by h.shirosaki (Hiroshi Shirosaki).


funny_falcon (Yura Sokolov) wrote:
> May be it will be simpler to accept https://bugs.ruby-lang.org/issues/8158 ?
> =9AIt has less memory requirement, avoids string comparisons, etc
>

Indeed your patch would not have this bug since using C string instead of s= tring object.
I think smaller patch or splitting patch might be better to be reviewed.

----------------------------------------
Bug #8165: Problems with require
https://bugs.ruby-lang.org/issues/8165#change-38032

Author: Krugloff (Alexandr Kruglov)
Status: Assigned
Priority: Normal
Assignee: tarui (Masaya Tarui)
Category:
Target version: current: 2.1.0
ruby -v: ruby 2.0.0-p0


Require doesn't work correctly if path contains cyrillic.

require '/home/mak/test.rb' #-> true
require '/home/mak/test.rb' #-> false

require '/home/mak/=F0=D2=CF=C5=CB=D4=D9/test.rb' #-> true
require '/home/mak/=F0=D2=CF=C5=CB=D4=D9/test.rb' #-> true


--
http://bugs.ruby-l= ang.org/

--047d7bb03a5072df9504d91663fd--