ANN: Ruby 1.8.6 pl383 released

I am happy to announce that Ruby 1.8.6 pl383 was been released.

This release is primarily a bugfix release.

    * lib/rdoc/parsers/parse_c.rb: Fixed a small error in the 

documentation.
* ext/tk/extconf.rb: Added some additional paths where TCL
files are common found; fixes problems with building on some
distributions.
* lib/complex.rb: Adjust #angle/#arg NaN return as per issue
#1715 and recent rubyspec changes. Adjust angle/arg handling of
(-0.0).angle as per r23960 & recent rubyspec changes.
* numeric.c, bignum.c: Applied changes from r23730. Infinity
is > any bignum number in comparisons.
* configure.in: fixed problems with using $libdir instead of
$prefix/lib for RUBY_LIB and friends.
* file.c: Added FCNTL inclusion to fix a compile error with
solaris (backport from r22812)
* gc.c: Fixed Backport #1322 [ruby-core:23050], backport of
r23257; Fixes a define_method scope bug.
* gc.c: Add a check for DATA_PTR(obj) to run_final as a
stopgap fix for debilitating segfaults.
* gc.c: Fixes warning: passing argument 1 of ‘add_freelist’
makes pointer from integer without a cast
* node.h: Remove surplus comma
* ext/socket/extconf.rb: Corrected function definitions to
specify return values.
* lib/date.rb: Removed private on to_date and to_datetime
* configure.in: Little fixes for x64 libdir/sitedir.
* lib/ostruct.rb: Fixed buggy openstruct#inspect recursion.
* test/ostruct/test_ostruct.rb: Modified tests to fit the
#inspect fix.

The most significant changes are in gc.c. If you have experienced
inexplicable segmentation faults with Ruby 1.8.6 pl369 or Ruby 1.8.6
pl369, you should look at upgrading.

Source archives of this release are available at:

ftp://ftp.ruby-lang.org/pub/ruby/ruby-1.8.6-p383.tar.bz2
ftp://ftp.ruby-lang.org/pub/ruby/ruby-1.8.6-p383.tar.gz
ftp://ftp.ruby-lang.org/pub/ruby/ruby-1.8.6-p383.zip

As always, feel free to contact me with any questions or concerns.

Kirk H.
[email protected]

Kirk H. wrote:

I am happy to announce that Ruby 1.8.6 pl383 was been released.

Has something changed in how pthread is turned off?

In my old build dir of ruby-1.8.6-p287, I have:

$ grep disable-pthread config*
config.log: $ ./configure --disable-pthread --with-tcl-dir=/usr/local
–with-tk-dir=/usr/local --disable-tcl-thread
$ ldd ruby | grep thread
$

I’m not sure all those switches were needed (I get warnings about the
last 3 now), but it works–ruby/tk doesn’t crash.

Now, with p383, I get this:

$ ./configure --disable-pthread --with-tcl-dir=/usr/local
–with-tk-dir=/usr/local --disable-tcl-thread
[warnings about the last three switches]
$ make
$ ldd ruby | grep thread
libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0
(0xb7de0000)

Same thing happens if I do simply:

$ ./configure

What do I need to do to get ruby to not use pthread? Shouldn’t pthread
be disabled by default, since “–enable-pthread” is listed under
optional features?

On Thu, Aug 13, 2009 at 4:33 PM, Joel
VanderWerf[email protected] wrote:

Kirk H. wrote:

I am happy to announce that Ruby 1.8.6 pl383 was been released.

Has something changed in how pthread is turned off?

This is a good catch, Joel. I was just able to confirm similar
results. I’ll debug this and get back to you.

Kirk H.

On Aug 13, 7:55 pm, Kirk H. [email protected] wrote:

On Thu, Aug 13, 2009 at 4:33 PM, Joel VanderWerf[email protected] wrote:

Kirk H. wrote:

I am happy to announce that Ruby 1.8.6 pl383 was been released.

Has something changed in how pthread is turned off?

This is a good catch, Joel. I was just able to confirm similar
results. I’ll debug this and get back to you.

Perhaps this is related to pthread been always detected, even when –
disable-pthread has been explicitly indicated?

I remember report it to Redmine but cannot find the specific revision
on 1.9.1

On Thu, Aug 13, 2009 at 9:15 PM, Luis L.[email protected]
wrote:

Found it:

r23601:

configure.in (THREAD_MODEL): reject unknown value and checks pthread.h
only when pthread. [ruby-core:23577]

I believe that needs to be backported to 1.8 and 1.8.6 since is a
problem introduced by previous pthread related commits and backports.

You rock Luis. I’ll put that on my todo list.

Thanks,

Kirk H.

Kirk H. wrote:

problem introduced by previous pthread related commits and backports.

You rock Luis. I’ll put that on my todo list.

I’ve backported this into 1.8 as revision r24534. Please check.

On Aug 14, 12:06 am, Luis L. [email protected] wrote:

results. I’ll debug this and get back to you.

Perhaps this is related to pthread been always detected, even when –
disable-pthread has been explicitly indicated?

I remember report it to Redmine but cannot find the specific revision
on 1.9.1

Found it:

r23601:

configure.in (THREAD_MODEL): reject unknown value and checks pthread.h
only when pthread. [ruby-core:23577]

I believe that needs to be backported to 1.8 and 1.8.6 since is a
problem introduced by previous pthread related commits and backports.

Cheers,

On Fri, 14 Aug 2009 14:11:37 +0900, Urabe S.
[email protected] wrote:

I’ve backported this into 1.8 as revision r24534. Please check.

That unfortunately doesn’t help.

While diffing through configure.in between p287 and p383, I noticed
this:

+AC_CHECK_LIB(rt, clock_gettime) # GNU/Linux

Ruby now links against librt, as introduced for a new implementation of
timeofday() proposed on ruby-core [1]. And librt again, surprise,
links against libpthread.

Afaik the link dependencies are flattened, and so that should be
where the libpthread link comes from.

Alex
(Sorry about that empty email earlier)

[1] http://www.ruby-forum.com/topic/151618

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs