Live data from Hacker News

Ruby 1.9.3 released

blade.nagaokaut.ac.jp

21–30 of 45 posts

Re: Ruby 1.9.3 released

#22
post #18

Apparently the licensing has changed as well - it's now BSD dual-licensed, rather than GPLv2: http://svn.ruby-lang.org/repos/ruby/tags/v1_9_3_0/NEWS

That was on the linked page:

> Also the license of Ruby has changed. Previously Ruby has been released under GPLv2 and "Ruby" license. But Ruby 1.9.3 is released under a joint 2-clause BSD license and "Ruby" license.

Re: Ruby 1.9.3 released

#23
post #17
post #15

Earlier quoted context omitted.

Actually, Ruby used to follows the "unstable odd, stable even" versioning scheme but they seems to quit doing that since 1.9.1 (since both 1.9.1 and 1.9.2 are declared stable[1]) [1]: http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/... EDIT: provide a source about Ruby 1.9.1

Good to know! I didn't realize 1.9.1 was considered stable.

Similarly, 1.8.7 is the stable version of the 1.8 series.

Re: Ruby 1.9.3 released

#24
I'm a little unclear about threads in ruby 1.9. I've been told in the past that threads in ruby were problematic. Can anyone illuminate the current state of affairs?

Re: Ruby 1.9.3 released

#26
post #24

I'm a little unclear about threads in ruby 1.9. I've been told in the past that threads in ruby were problematic. Can anyone illuminate the current state of affairs?

1.8 had green threads and when the interpreter blocked on some operations it would block all the threads.

1.9 uses native threads but it has a global interpreter lock which has known issues.

I am not sure what the improvements to locking in 1.9.3, as the changelog has quite a few commits related to that.

Re: Ruby 1.9.3 released

#28
post #24

I'm a little unclear about threads in ruby 1.9. I've been told in the past that threads in ruby were problematic. Can anyone illuminate the current state of affairs?

1.8 had green threads and when the interpreter blocked on some operations it would block all the threads. 1.9 uses native threads but it has a global interpreter lock which has known issues. I am not sure what the improvements to locking in 1.9.3, as the changelog has quite a few commits related to that.

In both Ruby 1.8 and 1.9, Ruby code will not cause all threads to block when the CPU is idle. However, poorly coded C libraries that blocked on IO without providing Ruby a file descriptor (via rb_thread_select) could cause all threads to block.

Those libraries have largely been fixed or replaced (e.g. mysql with mysql2). Ruby 1.9.2 also provides a mechanism for C code to release the GIL if it does not involve any Ruby code, which is used Blythe typecasting code in mysql2, for instance.

Re: Ruby 1.9.3 released

#30
post #8

ruby-build was already updated to support 1.9.3-p0, just clone the latest: https://github.com/sstephenson/ruby-build

if you have ruby-build already installed and you pull, you need to rerun ./install.sh

Homebrew also updated: https://github.com/mxcl/homebrew/commit/ae9b146fb64cc2db914b...

Just brew update and upgrade.

Post reply on HN