Improved new ruby docs a little bit.

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9700 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
Gonzalo Garramuno 2007-04-29 18:49:01 +00:00
commit bbc118c076

View file

@ -1,25 +1,24 @@
Version 1.3.32 (in progress) Version 1.3.32 (in progress)
============================ ============================
04/30/2007: gga
[Ruby] Removed the need for -DSWIGEXTERN.
Changed swig_ruby_trackings to be a static variable, but also
be kept within a hidden instance variable in the SWIG module.
This allows properly dealing with trackings across multiple
DSOs, which was previously broken.
(bug #1700535 and improvement to patch #1702907)
04/29/2007: gga 04/29/2007: gga
[Ruby] Fixed GC memory issues with trackings that could lead [Ruby] Fixed GC memory issues with trackings that could lead
to segfaults when dealing, mainly, with static variables. to segfaults when dealing, mainly, with static variables.
[Bug: ] (bug #1700535 and patch #1702907)
04/29/2007: gga 04/29/2007: gga
[Ruby] [Ruby]
Fixed String conversion using old ruby1.6 macros. Now Fixed String conversion using old ruby1.6 macros. Now
StringValuePtr() is used if available. This removes warnings StringValuePtr() is used if available. This removes warnings
when converting strings with \0 in them. [Bug:] when converting strings with \0 in them.
(bug #1700535 and patch #1702907)
04/29/2007: gga
[Ruby]
Changed VALUE swig_ruby_trackings (the tracking hash table)
from static to being exposed outside of a single DSO. This
allows properly dealing with directors across multiple DSOs.
However, the developer is currently forced to turn on and off
a -DSWIGEXTERN flag. In the next revision this will be
addressed.
[Bug: ]
04/29/2007: gga 04/29/2007: gga
[Ruby] [Ruby]
@ -35,11 +34,14 @@ Version 1.3.32 (in progress)
04/29/2007: gga 04/29/2007: gga
[Ruby - but should be made generic] [Ruby - but should be made generic]
%feature("numoutputs","0") added. This (temporary) feature
allows you to ignore the output of a function so that it is %feature("numoutputs","0") added.
not added to a list of outpus values ( ie. argouts ).
This should also become a feature of %typemap(out) as This feature allows you to ignore the output of a function so
"numoutputs"=0, just like "numinputs"=0 exists. that it is not added to a list of outpus values
( ie. argouts ).
This should also become a feature of %typemap(out/directorout)
as "numoutputs"=0, just like "numinputs"=0 exists.
%feature("directors"=1) %feature("directors"=1)
@ -68,11 +70,11 @@ Version 1.3.32 (in progress)
Directors will now try to reset the ruby stack on the first call Directors will now try to reset the ruby stack on the first call
to them if the developer sets the define RUBY_EMBEDDED. to them if the developer sets the define RUBY_EMBEDDED.
Explanation: Explanation:
Ruby's GC needs to be aware of the running stack in order to mark Ruby's GC needs to be aware of the running OS stack in order to
any VALUE (Ruby objects) it finds there to avoid collection of mark any VALUE (Ruby objects) it finds there to avoid collection
them. This allows the ruby API to very simple and allows you of them. This allows the ruby API to be very simple and allows
to write code like "VALUE a = sth" anywhere without needing to you to write code like "VALUE a = sth" anywhere without needing
do things like refcounting like python. to do things like refcounting like python.
By default, the start of the stack is set when ruby_init() is By default, the start of the stack is set when ruby_init() is
called. If ruby is inited within main(), as it usually is called. If ruby is inited within main(), as it usually is
with the main ruby executable, ruby will be able to calculate with the main ruby executable, ruby will be able to calculate
@ -90,6 +92,7 @@ Version 1.3.32 (in progress)
very rarely, when ruby is called from two very distinct places very rarely, when ruby is called from two very distinct places
in memory, like a branch of main() and another dso. This bug in memory, like a branch of main() and another dso. This bug
has now been reported to ruby-core. has now been reported to ruby-core.
(bug #1700535 and patch #1702907)
04/21/2007: olly 04/21/2007: olly