[#24648] [Bug #1852] Enumerable's #hash Raises ArgumentError When Recursive Values are Present — Run Paint Run Run <redmine@...>

Bug #1852: Enumerable's #hash Raises ArgumentError When Recursive Values are Present

20 messages 2009/08/01
[#24649] Re: [Bug #1852] Enumerable's #hash Raises ArgumentError When Recursive Values are Present — Tanaka Akira <akr@...> 2009/08/01

In article <4a73e51b5a4f9_138119f2a982704e@redmine.ruby-lang.org>,

[#24652] Re: [Bug #1852] Enumerable's #hash Raises ArgumentError When Recursive Values are Present — Run Paint Run Run <runrun@...> 2009/08/01

> Is it valuable to implement such function?

[#24682] Re: [Bug #1852] Enumerable's #hash Raises ArgumentError When Recursive Values are Present — Tanaka Akira <akr@...> 2009/08/02

In article <67e307490908010125r6fa76654pa8e2224f714588fc@mail.gmail.com>,

[#24673] [Feature #1857] install *.h and *.inc — Roger Pack <redmine@...>

Feature #1857: install *.h and *.inc

21 messages 2009/08/01

[#24732] [Bug #1873] MatchData#[]: Omits All But Last Captures Corresponding to the Same Named Group — Run Paint Run Run <redmine@...>

Bug #1873: MatchData#[]: Omits All But Last Captures Corresponding to the Same Named Group

12 messages 2009/08/03

[#24775] [Feature #1889] Teach Onigurma Unicode 5.0 Character Properties — Run Paint Run Run <redmine@...>

Feature #1889: Teach Onigurma Unicode 5.0 Character Properties

30 messages 2009/08/05

[#24786] [Bug #1893] Recursive Enumerable#join is surprising — Jeremy Kemper <redmine@...>

Bug #1893: Recursive Enumerable#join is surprising

24 messages 2009/08/06
[#28422] [Bug #1893] Recursive Enumerable#join is surprising — Yusuke Endoh <redmine@...> 2010/03/02

Issue #1893 has been updated by Yusuke Endoh.

[#28438] Re: [Bug #1893] Recursive Enumerable#join is surprising — Yukihiro Matsumoto <matz@...> 2010/03/03

Hi,

[#24854] embedding ruby 1.9 frustration — Rolando Abarca <funkaster@...>

Hello,

12 messages 2009/08/10

[#24982] [Feature #1961] Kernel#__dir__ — Yutaka HARA <redmine@...>

Feature #1961: Kernel#__dir__

26 messages 2009/08/19
[#28898] [Feature #1961] Kernel#__dir__ — Roger Pack <redmine@...> 2010/03/23

Issue #1961 has been updated by Roger Pack.

[#28900] Re: [Feature #1961] Kernel#__dir__ — Kornelius Kalnbach <murphy@...> 2010/03/23

On 23.03.10 19:10, Roger Pack wrote:

[#25025] [Backport #1975] Backport Dir.mktmpdir — Kirk Haines <redmine@...>

Backport #1975: Backport Dir.mktmpdir

12 messages 2009/08/21

[#25041] Proposal: Simpler block format — Yehuda Katz <wycats@...>

I'd like to propose that we add the following syntax for procs in Ruby:

45 messages 2009/08/23
[#25046] Re: Proposal: Simpler block format — Caleb Clausen <caleb@...> 2009/08/23

Yehuda Katz wrote:

[#25049] Re: Proposal: Simpler block format — Yehuda Katz <wycats@...> 2009/08/23

On Sat, Aug 22, 2009 at 7:38 PM, Caleb Clausen <caleb@inforadical.net>wrote:

[#25058] Re: Proposal: Simpler block format — Yukihiro Matsumoto <matz@...> 2009/08/23

Hi,

[#25059] Re: Proposal: Simpler block format — Yehuda Katz <wycats@...> 2009/08/23

On Sun, Aug 23, 2009 at 3:33 PM, Yukihiro Matsumoto <matz@ruby-lang.org>wrote:

[#25063] Re: Proposal: Simpler block format — "David A. Black" <dblack@...> 2009/08/23

Hi --

[#25068] Re: Proposal: Simpler block format — brian ford <brixen@...> 2009/08/24

Hi,

[#25086] [Bug #1991] ruby should use twolevel namespace on OS X — Michal Suchanek <redmine@...>

Bug #1991: ruby should use twolevel namespace on OS X

12 messages 2009/08/24

[#25208] Module#prepend and Array#prepend — Yehuda Katz <wycats@...>

Matz,

23 messages 2009/08/30

[#25210] [Feature #2022] Patch for ruby-1.8.6 and openssl-1.0 — Jeroen van Meeuwen <redmine@...>

Feature #2022: Patch for ruby-1.8.6 and openssl-1.0

15 messages 2009/08/30

[#25220] [Bug #2026] String encodings are not supported by most of IO on Linux — Vit Ondruch <redmine@...>

Bug #2026: String encodings are not supported by most of IO on Linux

18 messages 2009/08/31

[ruby-core:24968] Re: 1.9 gem env is far slower than on 1.8?

From: Jon <jon.forums@...>
Date: 2009-08-18 16:43:29 UTC
List: ruby-core #24968
> > Currently when I run "gem env" on a windows machine
> >
> > with 1.8.6 it takes [~80 gems installed]
> >
> > real    0m0.360s
> >
> > with 1.9.1 [~80 gems]
> >
> > real    0m1.610s
> >
> > with 1.9.2 [~40 gems]
> >
> > real    0m1.140s
> >
> > [all with 1.3.5 installed]
> >
> > Not so for Linux--1.9.2 seems slightly faster than 1.8.6 for its gem list.
> >
> > Anybody have any inkling as to what's going on here?
> > Thanks!
> I guess the slowdown is due to the following lines from io.c
> 
> #if defined(RUBY_TEST_CRLF_ENVIRONMENT) || defined(_WIN32)
> /* Windows */
> # define NEED_NEWLINE_DECORATOR_ON_READ(fptr) (!(fptr->mode & FMODE_BINMODE))
> # define NEED_NEWLINE_DECORATOR_ON_WRITE(fptr) (!(fptr->mode & FMODE_BINMODE))
> # define TEXTMODE_NEWLINE_DECORATOR_ON_WRITE ECONV_CRLF_NEWLINE_DECORATOR
> #else
> /* Unix */
> # define NEED_NEWLINE_DECORATOR_ON_READ(fptr) (fptr->mode & FMODE_TEXTMODE)
> # define NEED_NEWLINE_DECORATOR_ON_WRITE(fptr) 0
> #endif
> 
> On windows, default mode regarded as text mode and
> NEED_NEWLINE_DECORATOR_ON_READ is set. On the contrary, on Linux,
> default mode regarded as binary mode and
> NEED_NEWLINE_DECORATOR_ON_READ is not set.
> 
> 
> Regards,
> 
> Park Heesob

I'm a bit surprised that this post hasn't generated more interest.

Has anyone done any rough performance testing to see what the impact of NEED_NEWLINE_DECORATOR_ON_READ on Windows is?

After reading that "...Ruby 1.9.1 on Linux is about 70% faster than the Windows version" from http://antoniocangiano.com/2009/08/10/how-much-faster-is-ruby-on-linux/ and seeing some truly awful numbers (e.g. - bm_so_count_words.rb of 3.741 vs 31.031) as well as seeing some of my IO-based spec runs take considerably longer on 1.9.1, I'd like to better understand the issues.

However, it's not clear from this post were the issue might be.  Is it a core implementation issue?  Is it a RubyGems implementation issue?  Is it just a fact of life of having 0x0D's in files?

I'm new to the codebase but am planning to find time to do the following investigation on my Windows box.

If anyone more experienced would care to point out some of the expected problems before I dive down the rabbit hole, I'd appreciate it:

1) Download ftp://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.1-p243.tar.gz

2) Forceably disable macro via

#if defined(RUBY_TEST_CRLF_ENVIRONMENT) || defined(_WIN32)
/* Windows */
# define NEED_NEWLINE_DECORATOR_ON_READ(fptr) 0

3) Compile with MSys/MinGW 4.4.0 using

./configure --prefix=/e/ruby19 --disable-pthread --enable-shared --disable-install-doc
make
make install

4) Ensure all .rb files in this Ruby installation use Unix line endings

5) Pull http://github.com/acangiano/ruby-benchmark-suite/tree/master and ensure all files use Unix line endings.

6) Steal any missing .dll's or .so's from http://rubyinstaller.org/ to make things work

7) Disable RubyGems custome require in order to take RubyGems out of the picture.

8) Try to run the benchmarks and my specs ensuring all specs hav

Does this even have a hope of working?  Or is segfaults and other fun things expected to happen?

Thanks, Jon

In This Thread