ruby-oci8 2.1.5.1-x64-mingw32 → 2.1.7-x64-mingw32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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
|