Hello,

This is a summary of ruby-dev mailing list last week.


[ruby-dev:21809] lib/test/unit/ui/tk/testrunner.rb

   A new GUI interface for lib/test/unit using Tk extensions
   has been developed by Kazuhiro NISHIYAMA, with help of
   U.Nakamura, Nobu Nakada and Hidetoshi NAGAI.  The TK
   interface almost works well so far if you apply a patch
   for pthread by NAGAI(See an article below). Let's try it out.


[ruby-dev:21819] error message of Array.new(9,0) {|x|x+1}

   Take_tk reported a strange error message from Array.new:

     Array.new(9,0){|x|x+1}
       #=> wrong number of arguments (ArgumentError)

   The Array.new takes only 4 styles of arguments, an another array,
   size of array, size and a default value, or size and a block to
   generate default values.  The example above mixes 2 argument
   styles at once, but the error message is a little bit difficult
   to understand.

   Proper English message for this error is wanted.  Fell free to
   post your idea.


[ruby-dev:21833] pthread trouble on tcltklib (Re: ruby-tk hangs
                  when exception is raised)

   Hidetoshi NAGAI commited a patch to make pthread to work well with
   Ruby's thread together.  The patch will solve problems in extension
   libraries using pthreads, Tcl/Tk extension for example.  You can
   try it by adding "--with-pthread-ext" to configure options. The
   options is disabled by default.
   Nagai said the patch works, but it is just preliminary. Testing
   with other extensions using pthread and sending bug reports are
   welcome.


[ruby-dev:21846] StringIO#path

   In 1.8.0, StringIO#path behaved the same as StringIO#inspect.
   This behavior was to provide polymorphic #path operation for
   applications uses not only File objects but also similar IO
   subclasses.  By suggestions that StringIO and other IO subclasses
   (such as sockets) doesn't always have an applicable path, and a
   comment that using #path with File#rename and #open may occur
   unexpected behavior,  Nobu Nakada has changed StringIO#path to
   return nil.


[ruby-dev:21876] get_last_error or getLastError by DL::Importable

   Take_tk found a difference of imported method name between Ruby/DL
   and Apollo.  For instance, When you import GetLastError() from
   kernel32.dll on Windows, Ruby/DL converts its name to "getLastError".
   Meanwhile, Apollo converts it to "get_last_error".

   Takaaki Tateishi, who is the maintainer of Ruby/DL, said that the
   behavior can be changed but he also received a request from who
   wants to use imported method name as-is, "GetLastError" in this case.

   They started talking about how Ruby/DL treat this and how to implement
   it.


Kazuo Saito <ksaito / uranus.dti.ne.jp>