K
Kubo Takehiro
Ruby-oci8 2.0.5 is released. This is the Oracle module using OCI8 API.
http://rubyforge.org/projects/ruby-oci8/
The next release will be 2.1.0 which doesn't support Oracle8 (8.0)
and Oracle 8i (8.1) anymore.
* New Features
- Support Rubinius.
I just now found that temporary LOBs causes SEGV when they are GCed on
rubinius 1.2.3. It works fine on the latest rubinius in github.
- OraNumber#has_decimal_part? -> boolean
OraNumber(10).has_decimal_part? # => false
OraNumber(10.1).has_decimal_part? # => true
- Limitted support for OraNumber's positive and negative infinity.
They are converted to '~' and '-~' respectively as described in
<URL:http://www.ixora.com.au/notes/infinity.htm>.
- OCI8.properties is added to control ruby-oci8 behaviour.
It supports :bind_string_as_nchar only for now.
- OCI8.properties[:bind_string_as_nchar] is added.
You need to set "OCI8.properties[:bind_string_as_nchar] = true"
if the database character set is not UTF-8 and NCHAR/NVARCHAR2 columns
contain characters which cannot be converted to the database character set.
See: http://rubyforge.org/forum/forum.php?thread_id=48838&forum_id=1078
* Fixed issues
- Fix InvalidHandle errors on Rails.
(reported by Jordan Curzon and Aaron Qian)
See: http://rubyforge.org/forum/forum.php?thread_id=49751&forum_id=1078
- Raise "OCIError: ORA-01805: possible error in date/time operation"
when Oracle 11gR2's client and server timezone versions are not same
instead of raising a exception "undefined method `*' for nil:NilClass."
See: http://rubyforge.org/forum/forum.php?thread_id=49102&forum_id=1078
- Fix unexpectedly disconnect when failed-logon connections is GC'ed
and the connection object's address is accidentally same with
an alive connection.
- Fix segmentation fault when calling OCI8::Cursor#[] for
closed statement object's (reported by Hugo L. Borges)
- Fix a bug that a string is bound to RAW.
Its encoding had been convertd to OCI.encoding incorrectly.
- Fix memory leaks when temporary lobs are used.
- Fix a problem to assign NULL bind value to object type bind variables.
(reported by Raimonds Simanovskis)
- Support LOB datatypes in object type.
(reported by Michael Sexton)
- Fix to compile on cygwin. The declaration of 'boolean' in Oracle
conflicts with that of latest cygwin.
(reported by Don Hill).
- Fix to complie for the 32-bit ruby which was compiled on x86_64 linux
and configured without '--build', '--host' nor '--target'.
The RUBY_PLATFORM is 'x86_64-linux' even though the ruby is 32-bit.
(reported by Jason Renschler)
- Fix wrong dependencies in Makefile when running 'make -jNNN (where
NNN >= 2)'
(contributed by Alyano Alyanos. See bug #28129 on rubyforge.)
- Fix to compile on HP-UX. Duplicated const qualifiers prevented HP-UX cc
from compiling. (reported by Sebastian YEPES)
http://rubyforge.org/projects/ruby-oci8/
The next release will be 2.1.0 which doesn't support Oracle8 (8.0)
and Oracle 8i (8.1) anymore.
* New Features
- Support Rubinius.
I just now found that temporary LOBs causes SEGV when they are GCed on
rubinius 1.2.3. It works fine on the latest rubinius in github.
- OraNumber#has_decimal_part? -> boolean
OraNumber(10).has_decimal_part? # => false
OraNumber(10.1).has_decimal_part? # => true
- Limitted support for OraNumber's positive and negative infinity.
They are converted to '~' and '-~' respectively as described in
<URL:http://www.ixora.com.au/notes/infinity.htm>.
- OCI8.properties is added to control ruby-oci8 behaviour.
It supports :bind_string_as_nchar only for now.
- OCI8.properties[:bind_string_as_nchar] is added.
You need to set "OCI8.properties[:bind_string_as_nchar] = true"
if the database character set is not UTF-8 and NCHAR/NVARCHAR2 columns
contain characters which cannot be converted to the database character set.
See: http://rubyforge.org/forum/forum.php?thread_id=48838&forum_id=1078
* Fixed issues
- Fix InvalidHandle errors on Rails.
(reported by Jordan Curzon and Aaron Qian)
See: http://rubyforge.org/forum/forum.php?thread_id=49751&forum_id=1078
- Raise "OCIError: ORA-01805: possible error in date/time operation"
when Oracle 11gR2's client and server timezone versions are not same
instead of raising a exception "undefined method `*' for nil:NilClass."
See: http://rubyforge.org/forum/forum.php?thread_id=49102&forum_id=1078
- Fix unexpectedly disconnect when failed-logon connections is GC'ed
and the connection object's address is accidentally same with
an alive connection.
- Fix segmentation fault when calling OCI8::Cursor#[] for
closed statement object's (reported by Hugo L. Borges)
- Fix a bug that a string is bound to RAW.
Its encoding had been convertd to OCI.encoding incorrectly.
- Fix memory leaks when temporary lobs are used.
- Fix a problem to assign NULL bind value to object type bind variables.
(reported by Raimonds Simanovskis)
- Support LOB datatypes in object type.
(reported by Michael Sexton)
- Fix to compile on cygwin. The declaration of 'boolean' in Oracle
conflicts with that of latest cygwin.
(reported by Don Hill).
- Fix to complie for the 32-bit ruby which was compiled on x86_64 linux
and configured without '--build', '--host' nor '--target'.
The RUBY_PLATFORM is 'x86_64-linux' even though the ruby is 32-bit.
(reported by Jason Renschler)
- Fix wrong dependencies in Makefile when running 'make -jNNN (where
NNN >= 2)'
(contributed by Alyano Alyanos. See bug #28129 on rubyforge.)
- Fix to compile on HP-UX. Duplicated const qualifiers prevented HP-UX cc
from compiling. (reported by Sebastian YEPES)