[ruby-oci8-commit] [260] branches/ruby-oci8-1.0: * NEWS: add changes between 1.0.0 and 1.0.1.
nobody at rubyforge.org
nobody at rubyforge.org
Sun Apr 27 08:04:08 EDT 2008
Revision: 260
Author: kubo
Date: 2008-04-27 08:04:07 -0400 (Sun, 27 Apr 2008)
Log Message:
-----------
* NEWS: add changes between 1.0.0 and 1.0.1.
* VERSION: update to 1.0.1.
* ext/oci8/extconf.rb: raise error if the ruby is 1.9.
* ext/oci8/oraconf.rb: fix for intel mac instant client.
Modified Paths:
--------------
branches/ruby-oci8-1.0/ChangeLog
branches/ruby-oci8-1.0/NEWS
branches/ruby-oci8-1.0/VERSION
branches/ruby-oci8-1.0/ext/oci8/extconf.rb
branches/ruby-oci8-1.0/ext/oci8/oraconf.rb
Modified: branches/ruby-oci8-1.0/ChangeLog
===================================================================
--- branches/ruby-oci8-1.0/ChangeLog 2008-04-08 06:49:49 UTC (rev 259)
+++ branches/ruby-oci8-1.0/ChangeLog 2008-04-27 12:04:07 UTC (rev 260)
@@ -1,3 +1,9 @@
+2008-04-27 KUBO Takehiro <kubo at jiubao.org>
+ * NEWS: add changes between 1.0.0 and 1.0.1.
+ * VERSION: update to 1.0.1.
+ * ext/oci8/extconf.rb: raise error if the ruby is 1.9.
+ * ext/oci8/oraconf.rb: fix for intel mac instant client.
+
2008-04-08 KUBO Takehiro <kubo at jiubao.org>
* ext/oci8/oraconf.rb: add error messages for the beta
version of intel mac oracle instant client. But the production
Modified: branches/ruby-oci8-1.0/NEWS
===================================================================
--- branches/ruby-oci8-1.0/NEWS 2008-04-08 06:49:49 UTC (rev 259)
+++ branches/ruby-oci8-1.0/NEWS 2008-04-27 12:04:07 UTC (rev 260)
@@ -1,3 +1,45 @@
+1.0.1:
+
+1. [SPEC CHANGE] OCI8#exec and OCI8::Cursor#exec's return value is changed
+ for statement except select, insert, update and delete statement.
+
+ It had been true. But now it is the number of rows processed for all
+ non-select statements.
+
+ For example:
+
+ # 1.0.0 or before
+ conn = OCI8.new('user/pass')
+ conn.exec('rename FOO_TABLE to BAR_TABLE') # => true
+
+ # 1.0.1
+ conn = OCI8.new('user/pass')
+ conn.exec('rename FOO_TABLE to BAR_TABLE') # => 0
+
+2. fix a bug that OraDate.new made a core dump on x86_64 linux.
+ (reported by Alun Eyre)
+
+3. fix OCI8#non_blocking = false problem.
+ Once the connection became non-bocking mode, it could
+ not be reset to blocking mode. Now it can be reset.
+ (reported by Cagdas Gerede)
+
+4. support cursors in a result set.
+ (contributed by Randy Gordon)
+
+ For example:
+ conn = OCI8.new('ruby/oci8')
+ sql = 'SELECT CURSOR(SELECT * FROM foo where foo.c1 = bar.c1 ) FROM bar'
+ conn.exec(sql) do |row|
+ cursor_in_result_set = row[0]
+ cursor_in_result_set.fetch do |row|
+ puts row.join(',')
+ end
+ end
+
+5. fix oraconf.rb for official x86_64 linux rpms.
+ (contributed by Pat)
+
1.0.0:
1. fix a BUG when binding a Bignum. This bug was added in
Modified: branches/ruby-oci8-1.0/VERSION
===================================================================
--- branches/ruby-oci8-1.0/VERSION 2008-04-08 06:49:49 UTC (rev 259)
+++ branches/ruby-oci8-1.0/VERSION 2008-04-27 12:04:07 UTC (rev 260)
@@ -1 +1 @@
-1.0.0
\ No newline at end of file
+1.0.1
\ No newline at end of file
Modified: branches/ruby-oci8-1.0/ext/oci8/extconf.rb
===================================================================
--- branches/ruby-oci8-1.0/ext/oci8/extconf.rb 2008-04-08 06:49:49 UTC (rev 259)
+++ branches/ruby-oci8-1.0/ext/oci8/extconf.rb 2008-04-27 12:04:07 UTC (rev 260)
@@ -1,3 +1,11 @@
+raise <<EOS if RUBY_VERSION.index("1.9") == 0
+---------------------------------------------------
+error message:
+ruby-oci8 1.0 is not supported by ruby #{RUBY_VERSION}.
+Use ruby-oci8 2.0 in SVN trunk.
+---------------------------------------------------
+EOS
+
begin
require 'mkmf'
rescue LoadError
Modified: branches/ruby-oci8-1.0/ext/oci8/oraconf.rb
===================================================================
--- branches/ruby-oci8-1.0/ext/oci8/oraconf.rb 2008-04-08 06:49:49 UTC (rev 259)
+++ branches/ruby-oci8-1.0/ext/oci8/oraconf.rb 2008-04-27 12:04:07 UTC (rev 260)
@@ -939,16 +939,32 @@
while line = f.gets
# universal-darwin8.0 (Mac OS X 10.4?)
if line.include? 'cputype (18, architecture ppc) does not match cputype (7)'
+ # try to link an i386 library but the instant client is ppc.
arch_i386_error = true
end
if line.include? 'cputype (7, architecture i386) does not match cputype (18)'
+ # try to link a ppc library but the instant client is i386.
arch_ppc_error = true
end
+ if line.include? '/libclntsh.dylib load command 8 unknown cmd field'
+ raise <<EOS
+Intel mac instant client is for Mac OS X 10.5.
+It doesn't work on Mac OS X 10.4 or before.
+
+You have three workarounds.
+ 1. Compile ruby as ppc binary and use it with ppc instant client.
+ 2. Use JRuby and JDBC
+ 3. Use a third-party ODBC driver and ruby-odbc.
+EOS
+ # '
+ end
# universal-darwin9.0 (Mac OS X 10.5?)
if line.include? 'Undefined symbols for architecture i386:'
+ # try to link an i386 library but the instant client is ppc.
arch_i386_error = true
end
if line.include? 'Undefined symbols for architecture ppc:'
+ # try to link a ppc library but the instant client is i386.
arch_ppc_error = true
end
@@ -957,13 +973,7 @@
# intel mac and '-arch i386' error
raise <<EOS
Could not compile with Oracle instant client.
-Use intel mac client, which will be released in a couple of weeks.
- http://forums.oracle.com/forums/thread.jspa?threadID=634246
-
-If it has not been released yet, you have three workarounds.
- 1. Compile ruby as ppc binary.
- 2. Use JRuby and JDBC
- 3. Use a third-party ODBC driver and ruby-odbc.
+Use intel mac instant client.
EOS
else
# ppc mac and '-arch i386' error
More information about the ruby-oci8-commit
mailing list