ruby-oci8 2.1.5.1-x64-mingw32 → 2.1.7-x64-mingw32
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/ChangeLog +123 -0
- data/NEWS +54 -0
- data/README.md +9 -6
- data/VERSION +1 -1
- data/docs/install-full-client.md +2 -4
- data/docs/install-instant-client.md +14 -9
- data/docs/report-installation-issue.md +1 -1
- data/lib/oci8.rb +10 -19
- data/lib/oci8.rb.in +8 -17
- data/lib/oci8/cursor.rb +2 -0
- data/lib/oci8/metadata.rb +87 -9
- data/lib/oci8/object.rb +23 -0
- data/lib/oci8lib_200.so +0 -0
- data/lib/oci8lib_210.so +0 -0
- data/ruby-oci8.gemspec +1 -1
- data/test/config.rb +76 -66
- data/test/test_all.rb +4 -6
- data/test/test_appinfo.rb +2 -3
- data/test/test_array_dml.rb +6 -7
- data/test/test_bind_raw.rb +1 -2
- data/test/test_bind_string.rb +1 -2
- data/test/test_bind_time.rb +1 -2
- data/test/test_break.rb +2 -3
- data/test/test_clob.rb +1 -2
- data/test/test_connection_pool.rb +2 -3
- data/test/test_connstr.rb +1 -4
- data/test/test_datetime.rb +2 -3
- data/test/test_dbi.rb +1 -2
- data/test/test_dbi_clob.rb +6 -6
- data/test/test_encoding.rb +1 -2
- data/test/test_error.rb +1 -2
- data/test/test_metadata.rb +2086 -898
- data/test/test_object.rb +8 -11
- data/test/test_oci8.rb +1 -2
- data/test/test_oracle_version.rb +1 -3
- data/test/test_oradate.rb +1 -2
- data/test/test_oranumber.rb +5 -6
- data/test/test_rowid.rb +1 -2
- metadata +6 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4517d7b8e77041f98b00d928bccfc654f9d903bd
|
4
|
+
data.tar.gz: ff271cc4dd36ca154b53c3b1cc8591e5c7e8830a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d349a3f2c65eae827c449a588c7bd2de29d3b66deafc91edadef333fd0ae7553b313c18384fcbb37c1164d1e90a9846c394b45afa66c986e95748bee814307b6
|
7
|
+
data.tar.gz: 75a567db4eb5d22aeaf852b9235294edbf632166f92e32e94173595cfbc2439926a39c7cbb6f70eda783dbe66e5820caaf51d91d1265f91b2caaf34648339d4f
|
data/ChangeLog
CHANGED
@@ -1,3 +1,126 @@
|
|
1
|
+
2014-02-02 Kubo Takehiro <kubo@jiubao.org>
|
2
|
+
* NEWS: add changes between 2.1.7 and 2.1.6.
|
3
|
+
* VERSION: change the version to 2.1.7.
|
4
|
+
|
5
|
+
2014-01-25 Kubo Takehiro <kubo@jiubao.org>
|
6
|
+
* ext/oci8/extconf.rb, lib/oci8.rb.in: Follow ABI versioning after ruby 2.1.0.
|
7
|
+
|
8
|
+
2014-01-19 Kubo Takehiro <kubo@jiubao.org>
|
9
|
+
* docs/install-full-client.md, docs/install-instant-client.md: Change down
|
10
|
+
load URL and filenames in examples.
|
11
|
+
|
12
|
+
2014-01-06 Kubo Takehiro <kubo@jiubao.org>
|
13
|
+
* README.md, docs/install-full-client.md, docs/install-instant-client.md,
|
14
|
+
docs/report-installation-issue.md, ext/oci8/oraconf.rb, ruby-oci8.gemspec:
|
15
|
+
Move the project page and download URL to github.
|
16
|
+
|
17
|
+
2014-01-05 KUBO Takehiro <kubo@jiubao.org>
|
18
|
+
* ext/oci8/metadata.c, ext/oci8/oci8.h, lib/oci8/metadata.rb:
|
19
|
+
Fix OCI8#describe_table to follow synonyms in a remote database.
|
20
|
+
Add OCI8::Metadata::Base#obj_link.
|
21
|
+
|
22
|
+
2013-12-29 KUBO Takehiro <kubo@jiubao.org>
|
23
|
+
* NEWS: add changes between 2.1.6 and 2.1.5.
|
24
|
+
* VERSION: change the version to 2.1.6.
|
25
|
+
|
26
|
+
2013-12-28 KUBO Takehiro <kubo@jiubao.org>
|
27
|
+
* ext/oci8/oraconf.rb: fix for Windows x64. OCI.lib for MSVC doesn't
|
28
|
+
work with mingw64 compilers. fix URL in the error message.
|
29
|
+
|
30
|
+
2013-12-14 KUBO Takehiro <kubo@jiubao.org>
|
31
|
+
* lib/oci8/metadata.rb, test/test_metadata.rb: fix
|
32
|
+
OCI8::Metadata::Synonym#schema_name and #translated_name
|
33
|
+
for synonyms with a database link and without schema_name.
|
34
|
+
|
35
|
+
2013-12-14 KUBO Takehiro <kubo@jiubao.org>
|
36
|
+
* test/*.rb: suppress warnings "MiniTest::Unit::TestCase is now Minitest::Test"
|
37
|
+
when minitest gem is installed.
|
38
|
+
|
39
|
+
2013-12-14 KUBO Takehiro <kubo@jiubao.org>
|
40
|
+
* test/test_metadata.rb: fix tests in an environment where
|
41
|
+
the data size of "CAST('1' AS CHAR(1 char))" is wrong.
|
42
|
+
|
43
|
+
2013-11-18 KUBO Takehiro <kubo@jiubao.org>
|
44
|
+
* ext/oci8/oraconf.rb: support cygwin x86_64.
|
45
|
+
|
46
|
+
2013-11-10 KUBO Takehiro <kubo@jiubao.org>
|
47
|
+
* ext/oci8/error.c, ext/oci8/lob.c, ext/oci8/object.c, ext/oci8/oci8.h,
|
48
|
+
ext/oci8/oci8lib.c, ext/oci8/ocihandle.c, ext/oci8/stmt.c:
|
49
|
+
use rb_class_new_instance() instead of rb_funcall() with rb_intern("new").
|
50
|
+
|
51
|
+
2013-11-09 KUBO Takehiro <kubo@jiubao.org>
|
52
|
+
* ext/oci8/error.c, ext/oci8/extconf.rb, ext/oci8/oci8.h:
|
53
|
+
append the full path of the Oracle client library when OCIEnvCreate
|
54
|
+
is failed such as "OCI Library Initialization Error - /path/to/libclntsh.so.12.1".
|
55
|
+
|
56
|
+
2013-11-09 KUBO Takehiro <kubo@jiubao.org>
|
57
|
+
* ext/oci8/extconf.rb, lib/oci8.rb.in: support rubinius 2.x whose
|
58
|
+
RUBY_VERSION is 2.1.0.
|
59
|
+
* ext/oci8/oraconf.rb: reduce the size of libOCI.a created for cygwin.
|
60
|
+
|
61
|
+
2013-11-09 KUBO Takehiro <kubo@jiubao.org>
|
62
|
+
* ext/oci8/extconf.rb, lib/oci8.rb.in: support ruby 2.1.0-preview1.
|
63
|
+
(requested by Yasuo Honda)
|
64
|
+
|
65
|
+
2013-08-24 KUBO Takehiro <kubo@jiubao.org>
|
66
|
+
* ext/oci8/oraconf.rb: Use Dir.glob to find the Oracle instant client
|
67
|
+
NLS data file. Its name depends on the Oracle major version on
|
68
|
+
Windows.
|
69
|
+
|
70
|
+
2013-08-03 KUBO Takehiro <kubo@jiubao.org>
|
71
|
+
* lib/oci8/metadata.rb: fix undefined method 'char_used?' when
|
72
|
+
OCI8::Metadata::Argument#inspect is called.
|
73
|
+
* test/test_metadata.rb: refactor and add tests for #inspect methods.
|
74
|
+
* test/test_package_type.rb: add some test data.
|
75
|
+
|
76
|
+
2013-07-30 KUBO Takehiro <kubo@jiubao.org>
|
77
|
+
* ext/oci8/metadata.c, ext/oci8/ocihandle.c, test/test_metadata.rb:
|
78
|
+
Fix segmentation fault when metadata are accessed after the
|
79
|
+
session is disconnected.
|
80
|
+
|
81
|
+
2013-07-24 KUBO Takehiro <kubo@jiubao.org>
|
82
|
+
* lib/oci8/metadata.rb, test/test_package_type.rb:
|
83
|
+
Add OCI8::Metadata::Type#package_name and
|
84
|
+
OCI8::Metadata::ArgBase#has_default?.
|
85
|
+
|
86
|
+
2013-07-22 KUBO Takehiro <kubo@jiubao.org>
|
87
|
+
* ext/oci8/oci8lib.c, lib/oci8.rb.in, lib/oci8/metadata.rb: Add
|
88
|
+
OCI8::Metadata::Package:types to support package type
|
89
|
+
description. It is a new feature of Oracle 12c.
|
90
|
+
* test/setup_test_package.sql, test/test_all.rb,
|
91
|
+
test/test_package_type.rb: Add tests for package type description.
|
92
|
+
|
93
|
+
2013-07-15 KUBO Takehiro <kubo@jiubao.org>
|
94
|
+
* test/*.rb: Use MiniTest instead of Test::Unit.
|
95
|
+
|
96
|
+
2013-06-23 KUBO Takehiro <kubo@jiubao.org>
|
97
|
+
* lib/oci8/cursor.rb, lib/oci8/object.rb: fix to bind object types by
|
98
|
+
name as OCI8::Cursor#bind_param(pos, val, :named_type, typename).
|
99
|
+
* test/test_object.rb: fix to test OCI8::Cursor#bind_param(pos, val,
|
100
|
+
:named_type, typename).
|
101
|
+
|
102
|
+
2013-06-23 KUBO Takehiro <kubo@jiubao.org>
|
103
|
+
* lib/oci8/metadata.rb: OCI8#describe_synonym and OCI8#describe_any
|
104
|
+
accept 'PUBLIC.XXX' as a public synonym name.
|
105
|
+
* test/test_metadata.rb: add tests for OCI8#describe_synonym.
|
106
|
+
|
107
|
+
2013-06-11 KUBO Takehiro <kubo@jiubao.org>
|
108
|
+
* ruby-oci8.gemspec: fix ruby version checking in binary gem.
|
109
|
+
Gem::ruby_version of ruby 2.0.0p195 is 2.0.0.195, which
|
110
|
+
doesn't match '= 2.0.0'.
|
111
|
+
(github issue #36 reported by sodonnel)
|
112
|
+
|
113
|
+
2013-03-30 KUBO Takehiro <kubo@jiubao.org>
|
114
|
+
* ext/oci8/oci8lib.c: fix potential SEGV when one connection
|
115
|
+
is used by more than two threads and temporary lobs are
|
116
|
+
freed by GC.
|
117
|
+
|
118
|
+
2013-03-16 KUBO Takehiro <kubo@jiubao.org>
|
119
|
+
* ext/oci8/apiwrap.yml, ext/oci8/stmt.c: call OCIStmtPrepare2()
|
120
|
+
without GVL to prevent OCI8#parse from blocking ruby itself
|
121
|
+
while the connection is used by another thread even though
|
122
|
+
non-blocking mode is set.
|
123
|
+
|
1
124
|
2013-03-09 KUBO Takehiro <kubo@jiubao.org>
|
2
125
|
* ruby-oci8.gemspec: revert the previous commit because old
|
3
126
|
rubygems doesn't support:
|
data/NEWS
CHANGED
@@ -1,5 +1,59 @@
|
|
1
1
|
# @markup markdown
|
2
2
|
|
3
|
+
2.1.7
|
4
|
+
=====
|
5
|
+
|
6
|
+
New Features
|
7
|
+
------------
|
8
|
+
|
9
|
+
### Add OCI8::Metadata::Base#obj_link.
|
10
|
+
|
11
|
+
Fixed Issues
|
12
|
+
------------
|
13
|
+
|
14
|
+
- Fix OCI8#describe_table to follow synonyms in a remote database.
|
15
|
+
|
16
|
+
2.1.6
|
17
|
+
=====
|
18
|
+
|
19
|
+
New Features
|
20
|
+
------------
|
21
|
+
|
22
|
+
### Support ruby 2.1.0
|
23
|
+
|
24
|
+
### Support cygwin x86_64
|
25
|
+
|
26
|
+
### OCI8#describe_synonym and OCI8#describe_any accept 'PUBLIC.XXX' as a public synonym name.
|
27
|
+
|
28
|
+
Fixed Issues
|
29
|
+
------------
|
30
|
+
|
31
|
+
- fix wrong return valus of OCI8::Metadata::Synonym#schema_name
|
32
|
+
and #translated_name for synonyms with a database link but
|
33
|
+
without schema_name.
|
34
|
+
|
35
|
+
- fix ruby version checking in binary gem. Gem::ruby_version of
|
36
|
+
ruby 2.0.0p195 is 2.0.0.195, which doesn't match '= 2.0.0'.
|
37
|
+
|
38
|
+
(github issue #36 reported by sodonnel)
|
39
|
+
|
40
|
+
- fix SEGV when metadata are accessed after the session is disconnected.
|
41
|
+
|
42
|
+
- fix undefined method 'char_used?' when OCI8::Metadata::Argument#inspect is called.
|
43
|
+
|
44
|
+
- fix tests in an environment where the data size of "CAST('1' AS CHAR(1 char))"
|
45
|
+
is wrong.
|
46
|
+
|
47
|
+
- suppress warnings "MiniTest::Unit::TestCase is now Minitest::Test"
|
48
|
+
when minitest gem is installed.
|
49
|
+
|
50
|
+
- fix SEGV when oci8lib.so is compiled by mingw64 without runtime-check option.
|
51
|
+
Note that binary gems are compiled with runtime-check to check available Oracle
|
52
|
+
client features at runtime.
|
53
|
+
|
54
|
+
- fix SEGV when one connection is used by more than two threads and temporary
|
55
|
+
lobs are freed by GC.
|
56
|
+
|
3
57
|
2.1.5
|
4
58
|
=====
|
5
59
|
|
data/README.md
CHANGED
@@ -21,20 +21,23 @@ Connect to scott/tiger, select `emp` and print as CSV format.
|
|
21
21
|
|
22
22
|
If you install a ruby-oci8 gem package, you may need to add `-rubygems` before `-r oci8`.
|
23
23
|
|
24
|
-
|
24
|
+
API Reference
|
25
25
|
=============
|
26
26
|
|
27
|
-
*
|
28
|
-
|
29
|
-
|
30
|
-
|
27
|
+
* http://rubydoc.info/gems/ruby-oci8/frames/file/README.md
|
28
|
+
|
29
|
+
Installation
|
30
|
+
============
|
31
|
+
|
32
|
+
* {file:docs/install-full-client.md Install for Oracle Full Client}
|
33
|
+
* {file:docs/install-instant-client.md Install for Oracle Instant Client}
|
34
|
+
* {file:docs/install-binary-package.md Install Binary Package}
|
31
35
|
|
32
36
|
Report issues
|
33
37
|
=============
|
34
38
|
|
35
39
|
* {file:docs/report-installation-issue.md}
|
36
40
|
* [The issues page on github](https://github.com/kubo/ruby-oci8/issues)
|
37
|
-
* [The ruby-oci8 help forum on rubyforge](http://rubyforge.org/forum/forum.php?forum_id=1078)
|
38
41
|
|
39
42
|
License
|
40
43
|
=======
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
2.1.
|
1
|
+
2.1.7
|
data/docs/install-full-client.md
CHANGED
@@ -90,8 +90,7 @@ tar.gz package
|
|
90
90
|
|
91
91
|
### Download the source code
|
92
92
|
|
93
|
-
Download the latest tar.gz package
|
94
|
-
which is the latest version at the time of writing, from [rubyforge][].
|
93
|
+
Download the latest tar.gz package from [download page][].
|
95
94
|
|
96
95
|
### Run make and install
|
97
96
|
|
@@ -107,10 +106,9 @@ note: If you use '`sudo`', use it only when running '`make install`'.
|
|
107
106
|
|
108
107
|
#### Windows(mswin32)
|
109
108
|
|
110
|
-
|
111
109
|
gzip -dc ruby-oci8-VERSION.tar.gz | tar xvf -
|
112
110
|
cd ruby-oci8-VERSION
|
113
111
|
nmake
|
114
112
|
nmake install
|
115
113
|
|
116
|
-
[
|
114
|
+
[download page]: https://bintray.com/kubo/generic/ruby-oci8
|
@@ -34,11 +34,11 @@ Unzip the packages as follows:
|
|
34
34
|
unzip path/to/instantclient-sdk-OS-VERSION.zip
|
35
35
|
unzip path/to/instantclient-sqlplus-OS-VERSION.zip
|
36
36
|
|
37
|
-
If /opt/oracle/
|
37
|
+
If /opt/oracle/instantclient12_1/libclntsh.so is not found, make
|
38
38
|
a symbolic link to link the library.
|
39
39
|
|
40
|
-
cd /opt/oracle/
|
41
|
-
ln -s libclntsh.so.
|
40
|
+
cd /opt/oracle/instantclient12_1
|
41
|
+
ln -s libclntsh.so.12.1 libclntsh.so
|
42
42
|
|
43
43
|
Note:
|
44
44
|
|
@@ -66,9 +66,15 @@ the installed directory.
|
|
66
66
|
</table>
|
67
67
|
|
68
68
|
For example:
|
69
|
-
|
69
|
+
|
70
|
+
$ LD_LIBRARY_PATH=/opt/oracle/instantclient_12_1
|
70
71
|
$ export LD_LIBRARY_PATH
|
71
72
|
|
73
|
+
Though many instant client pages indicate that the environment varialbe
|
74
|
+
`ORACLE_HOME` should be set, it isn't necessary unless Oracle Net
|
75
|
+
configuration files such as `tnsnames.ora` and `sqlnet.ora` are in
|
76
|
+
`$ORACLE_HOME/network/admin/`.
|
77
|
+
|
72
78
|
Linux rpm packages
|
73
79
|
------------------
|
74
80
|
|
@@ -81,7 +87,8 @@ Install the downloaded packages as follows:
|
|
81
87
|
Set LD_LIBRARY_PATH to point to the directory where libclntsh.so is installed.
|
82
88
|
|
83
89
|
For example:
|
84
|
-
|
90
|
+
|
91
|
+
$ LD_LIBRARY_PATH=/usr/lib/oracle/12.1/client/lib
|
85
92
|
$ export LD_LIBRARY_PATH
|
86
93
|
|
87
94
|
Windows
|
@@ -138,8 +145,7 @@ tar.gz package
|
|
138
145
|
|
139
146
|
### Download the source code
|
140
147
|
|
141
|
-
Download the latest tar.gz package
|
142
|
-
which is the latest version at the time of writing, from [rubyforge][].
|
148
|
+
Download the latest tar.gz package from [download page][].
|
143
149
|
|
144
150
|
Note: if you are using Windows and you have no special need to compile
|
145
151
|
it by yourself, look at {file:docs/install-binary-packge.md}.
|
@@ -158,10 +164,9 @@ note: If you use '`sudo`', use it only when running '`make install`'.
|
|
158
164
|
|
159
165
|
#### Windows(mswin32)
|
160
166
|
|
161
|
-
|
162
167
|
gzip -dc ruby-oci8-VERSION.tar.gz | tar xvf -
|
163
168
|
cd ruby-oci8-VERSION
|
164
169
|
nmake
|
165
170
|
nmake install
|
166
171
|
|
167
|
-
[
|
172
|
+
[download page]: https://bintray.com/kubo/generic/ruby-oci8
|
@@ -4,7 +4,7 @@ Look at {file:docs/platform-specific-issues.md},
|
|
4
4
|
[the issues page on github][github] and [the ruby-oci8 help forum on rubyforge][rubyforge]
|
5
5
|
to check whether your issue is fixed or not.
|
6
6
|
|
7
|
-
If it is a new one, post the following information to [github][]
|
7
|
+
If it is a new one, post the following information to [github][].
|
8
8
|
|
9
9
|
[github]: https://github.com/kubo/ruby-oci8/issues
|
10
10
|
[rubyforge]: http://rubyforge.org/forum/forum.php?forum_id=1078
|
data/lib/oci8.rb
CHANGED
@@ -43,15 +43,14 @@ when 'ruby'
|
|
43
43
|
# 1.9.3 | 1.9.1
|
44
44
|
# --------------+--------------
|
45
45
|
# 2.0.0 | 2.0.0
|
46
|
-
#
|
46
|
+
# --------------+--------------
|
47
|
+
# 2.1.0 | 2.1.0
|
47
48
|
# ... | ...
|
48
49
|
#
|
49
|
-
#
|
50
|
-
#
|
50
|
+
# The ABI version of ruby 2.1.1 will be 2.1.0.
|
51
|
+
# See "ABI Compatibility" in <URL:http://www.ruby-lang.org/en/news/2013/12/21/semantic-versioning-after-2-1-0/>.
|
51
52
|
#
|
52
53
|
case RUBY_VERSION
|
53
|
-
when /^2\.0/
|
54
|
-
so_basename += RUBY_VERSION.gsub(/\W/, '')
|
55
54
|
when /^1\.9\.0/
|
56
55
|
raise 'unsupported ruby version: 1.9.0'
|
57
56
|
when /^1\.9/
|
@@ -59,20 +58,10 @@ when 'ruby'
|
|
59
58
|
when /^1\.8/
|
60
59
|
so_basename += '18'
|
61
60
|
else
|
62
|
-
|
61
|
+
so_basename += RUBY_VERSION.gsub(/(\d+)\.(\d+).(.*)/, '\1\20')
|
63
62
|
end
|
64
63
|
when 'rbx'
|
65
|
-
|
66
|
-
case RUBY_VERSION
|
67
|
-
when /^2\.0/
|
68
|
-
so_basename += 'rbx20'
|
69
|
-
when /^1\.9/
|
70
|
-
so_basename += 'rbx19'
|
71
|
-
when /^1\.8/
|
72
|
-
so_basename += 'rbx18'
|
73
|
-
else
|
74
|
-
raise 'unsupported language mode: ' + RUBY_VERSION
|
75
|
-
end
|
64
|
+
so_basename += 'rbx'
|
76
65
|
when 'jruby'
|
77
66
|
raise "Ruby-oci8 doesn't support jruby because its C extension support is in development in jruby 1.6 and deprecated in jruby 1.7."
|
78
67
|
else
|
@@ -80,10 +69,10 @@ else
|
|
80
69
|
end
|
81
70
|
require so_basename
|
82
71
|
|
83
|
-
if OCI8::VERSION != '2.1.
|
72
|
+
if OCI8::VERSION != '2.1.7'
|
84
73
|
require 'rbconfig'
|
85
74
|
so_name = so_basename + "." + RbConfig::CONFIG['DLEXT']
|
86
|
-
raise "VERSION MISMATCH! #{so_name} version is #{OCI8::VERSION}, but oci8.rb version is 2.1.
|
75
|
+
raise "VERSION MISMATCH! #{so_name} version is #{OCI8::VERSION}, but oci8.rb version is 2.1.7."
|
87
76
|
end
|
88
77
|
|
89
78
|
require 'oci8/encoding-init.rb'
|
@@ -104,6 +93,8 @@ class OCI8
|
|
104
93
|
ORAVER_10_2 = OCI8::OracleVersion.new(10, 2)
|
105
94
|
# @private
|
106
95
|
ORAVER_11_1 = OCI8::OracleVersion.new(11, 1)
|
96
|
+
# @private
|
97
|
+
ORAVER_12_1 = OCI8::OracleVersion.new(12, 1)
|
107
98
|
|
108
99
|
# @private
|
109
100
|
@@oracle_client_version = OCI8::OracleVersion.new(self.oracle_client_vernum)
|
data/lib/oci8.rb.in
CHANGED
@@ -43,15 +43,14 @@ when 'ruby'
|
|
43
43
|
# 1.9.3 | 1.9.1
|
44
44
|
# --------------+--------------
|
45
45
|
# 2.0.0 | 2.0.0
|
46
|
-
#
|
46
|
+
# --------------+--------------
|
47
|
+
# 2.1.0 | 2.1.0
|
47
48
|
# ... | ...
|
48
49
|
#
|
49
|
-
#
|
50
|
-
#
|
50
|
+
# The ABI version of ruby 2.1.1 will be 2.1.0.
|
51
|
+
# See "ABI Compatibility" in <URL:http://www.ruby-lang.org/en/news/2013/12/21/semantic-versioning-after-2-1-0/>.
|
51
52
|
#
|
52
53
|
case RUBY_VERSION
|
53
|
-
when /^2\.0/
|
54
|
-
so_basename += RUBY_VERSION.gsub(/\W/, '')
|
55
54
|
when /^1\.9\.0/
|
56
55
|
raise 'unsupported ruby version: 1.9.0'
|
57
56
|
when /^1\.9/
|
@@ -59,20 +58,10 @@ when 'ruby'
|
|
59
58
|
when /^1\.8/
|
60
59
|
so_basename += '18'
|
61
60
|
else
|
62
|
-
|
61
|
+
so_basename += RUBY_VERSION.gsub(/(\d+)\.(\d+).(.*)/, '\1\20')
|
63
62
|
end
|
64
63
|
when 'rbx'
|
65
|
-
|
66
|
-
case RUBY_VERSION
|
67
|
-
when /^2\.0/
|
68
|
-
so_basename += 'rbx20'
|
69
|
-
when /^1\.9/
|
70
|
-
so_basename += 'rbx19'
|
71
|
-
when /^1\.8/
|
72
|
-
so_basename += 'rbx18'
|
73
|
-
else
|
74
|
-
raise 'unsupported language mode: ' + RUBY_VERSION
|
75
|
-
end
|
64
|
+
so_basename += 'rbx'
|
76
65
|
when 'jruby'
|
77
66
|
raise "Ruby-oci8 doesn't support jruby because its C extension support is in development in jruby 1.6 and deprecated in jruby 1.7."
|
78
67
|
else
|
@@ -104,6 +93,8 @@ class OCI8
|
|
104
93
|
ORAVER_10_2 = OCI8::OracleVersion.new(10, 2)
|
105
94
|
# @private
|
106
95
|
ORAVER_11_1 = OCI8::OracleVersion.new(11, 1)
|
96
|
+
# @private
|
97
|
+
ORAVER_12_1 = OCI8::OracleVersion.new(12, 1)
|
107
98
|
|
108
99
|
# @private
|
109
100
|
@@oracle_client_version = OCI8::OracleVersion.new(self.oracle_client_vernum)
|
data/lib/oci8/cursor.rb
CHANGED
@@ -478,6 +478,8 @@ class OCI8
|
|
478
478
|
elsif key.class == Class && key < OCI8::Object::Base
|
479
479
|
param = @con.get_tdo_by_class(key)
|
480
480
|
key = :named_type
|
481
|
+
elsif key == :named_type
|
482
|
+
param = @con.get_tdo_by_typename(param[:length])
|
481
483
|
end
|
482
484
|
when OCI8::Metadata::Base
|
483
485
|
key = param.data_type
|