ruby-oci8 1.0.7 → 2.0.0
Sign up to get free protection for your applications and to get access to all the features.
- data/ChangeLog +1254 -390
- data/Makefile +10 -13
- data/README +56 -385
- data/VERSION +1 -1
- data/dist-files +26 -27
- data/ext/oci8/.document +1 -0
- data/ext/oci8/MANIFEST +0 -4
- data/ext/oci8/apiwrap.c.tmpl +172 -0
- data/ext/oci8/apiwrap.h.tmpl +61 -0
- data/ext/oci8/apiwrap.rb +91 -0
- data/ext/oci8/apiwrap.yml +1243 -0
- data/ext/oci8/attr.c +124 -384
- data/ext/oci8/bind.c +472 -164
- data/ext/oci8/encoding.c +196 -0
- data/ext/oci8/env.c +84 -253
- data/ext/oci8/error.c +196 -127
- data/ext/oci8/extconf.rb +82 -59
- data/ext/oci8/lob.c +710 -370
- data/ext/oci8/metadata.c +359 -0
- data/ext/oci8/object.c +622 -0
- data/ext/oci8/oci8.c +577 -161
- data/ext/oci8/oci8.h +354 -258
- data/ext/oci8/oci8lib.c +493 -0
- data/ext/oci8/ocidatetime.c +473 -0
- data/ext/oci8/ocinumber.c +1123 -24
- data/ext/oci8/oraconf.rb +72 -106
- data/ext/oci8/oradate.c +511 -321
- data/ext/oci8/stmt.c +752 -572
- data/ext/oci8/win32.c +131 -0
- data/ext/oci8/xmldb.c +383 -0
- data/lib/.document +2 -0
- data/lib/dbd/OCI8.rb +2 -17
- data/lib/oci8.rb.in +41 -1622
- data/lib/oci8/.document +5 -0
- data/lib/oci8/compat.rb +108 -0
- data/lib/oci8/datetime.rb +489 -0
- data/lib/oci8/encoding-init.rb +40 -0
- data/lib/oci8/encoding.yml +537 -0
- data/lib/oci8/metadata.rb +2077 -0
- data/lib/oci8/object.rb +548 -0
- data/lib/oci8/oci8.rb +773 -0
- data/lib/oci8/oracle_version.rb +144 -0
- data/metaconfig +3 -3
- data/ruby-oci8.gemspec +5 -5
- data/setup.rb +4 -4
- data/test/config.rb +64 -84
- data/test/test_all.rb +14 -21
- data/test/test_array_dml.rb +317 -0
- data/test/test_bind_raw.rb +18 -25
- data/test/test_bind_time.rb +78 -91
- data/test/test_break.rb +37 -35
- data/test/test_clob.rb +33 -89
- data/test/test_connstr.rb +5 -4
- data/test/test_datetime.rb +469 -0
- data/test/test_dbi.rb +99 -60
- data/test/test_dbi_clob.rb +3 -8
- data/test/test_metadata.rb +65 -51
- data/test/test_oci8.rb +151 -55
- data/test/test_oracle_version.rb +70 -0
- data/test/test_oradate.rb +76 -83
- data/test/test_oranumber.rb +405 -71
- data/test/test_rowid.rb +6 -11
- metadata +31 -32
- data/NEWS +0 -420
- data/ext/oci8/const.c +0 -165
- data/ext/oci8/define.c +0 -53
- data/ext/oci8/describe.c +0 -81
- data/ext/oci8/descriptor.c +0 -39
- data/ext/oci8/handle.c +0 -273
- data/ext/oci8/oranumber.c +0 -445
- data/ext/oci8/param.c +0 -37
- data/ext/oci8/server.c +0 -182
- data/ext/oci8/session.c +0 -99
- data/ext/oci8/svcctx.c +0 -238
- data/ruby-oci8.spec +0 -62
- data/support/README +0 -4
- data/support/runit/assert.rb +0 -281
- data/support/runit/cui/testrunner.rb +0 -101
- data/support/runit/error.rb +0 -4
- data/support/runit/method_mappable.rb +0 -20
- data/support/runit/robserver.rb +0 -25
- data/support/runit/setuppable.rb +0 -15
- data/support/runit/teardownable.rb +0 -16
- data/support/runit/testcase.rb +0 -113
- data/support/runit/testfailure.rb +0 -25
- data/support/runit/testresult.rb +0 -121
- data/support/runit/testsuite.rb +0 -43
- data/support/runit/version.rb +0 -3
- data/test/test_describe.rb +0 -137
data/ChangeLog
CHANGED
@@ -1,63 +1,31 @@
|
|
1
|
-
2009-10-21 KUBO Takehiro <kubo@jiubao.org>
|
2
|
-
* NEWS: add changes between 1.0.6 and 1.0.7.
|
3
|
-
* VERSION: change version to 1.0.7.
|
4
|
-
|
5
|
-
2009-10-04 KUBO Takehiro <kubo@jiubao.org>
|
6
|
-
* ext/oci8/oraconf.rb:
|
7
|
-
1. Fix for ruby 1.8.5 with Oracle 8.x which needs some object
|
8
|
-
files to link with.
|
9
|
-
(reported by Jayson Cena)
|
10
|
-
2. Add additional error message if under the sudo environemnt.
|
11
|
-
3. Print not only error message but also the error backtrace when
|
12
|
-
oraconf.rb fails.
|
13
|
-
|
14
|
-
2009-09-13 KUBO Takehiro <kubo@jiubao.org>
|
15
|
-
* ext/oci8/lob.c, ext/oci8/oci8.h, test/test_clob.rb: Change
|
16
|
-
OCI8::LOB#write to accept an object which is not a String and
|
17
|
-
doesn't respond to 'to_str' as IO#write does.
|
18
|
-
(requested by Christopher Jones)
|
19
|
-
|
20
|
-
2009-09-12 KUBO Takehiro <kubo@jiubao.org>
|
21
|
-
* ext/oci8/oraconf.rb: Fixed to compile for AIX instant clients.
|
22
|
-
(reported by Kazuya Teramoto)
|
23
|
-
|
24
|
-
2009-05-17 KUBO Takehiro <kubo@jiubao.org>
|
25
|
-
* NEWS: add changes between 1.0.5 and 1.0.6.
|
26
|
-
* VERSION: change version to 1.0.6.
|
27
|
-
|
28
|
-
2009-04-14 KUBO Takehiro <kubo@jiubao.org>
|
29
|
-
* ext/oci8/oraconf.rb: Gets ORACLE_HOME from the Windows regitry
|
30
|
-
by enumerating subkeys of \\HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE.
|
31
|
-
|
32
|
-
2009-04-12 KUBO Takehiro <kubo@jiubao.org>
|
33
|
-
* lib/dbd/OCI8.rb: A data dictionary all_constraints doesn't have
|
34
|
-
index_name column on Oracle 8i or lower. Rewrite
|
35
|
-
DBI::DBD::OCI8::Database#column by using all_cons_columns.
|
36
|
-
(backport from ruby-oci8 trunk)
|
37
|
-
|
38
|
-
2009-04-12 KUBO Takehiro <kubo@jiubao.org>
|
39
|
-
* ext/oci8/extconf.rb, ext/oci8/oci8.h, ext/oci8/oraconf.rb:
|
40
|
-
fix a problem when compiling for Oracle 8.0.
|
41
|
-
(reported by Axel Reinhold as a ruby-oci8 2.0 issue)
|
42
|
-
* lib/dbd/OCI8.rb: fix DBI::DBD::OCI8::BindType::DBIStatementHandle
|
43
|
-
to pass a newly added sanity check in dbi 0.4.1.
|
44
|
-
(reported by Dirk Herzhauser as a ruby-oci8 2.0 issue)
|
45
|
-
* test/test_all.rb: fix to use dbi installed as a rubygem.
|
46
|
-
|
47
|
-
2009-03-17 KUBO Takehiro <kubo@jiubao.org>
|
48
|
-
* NEWS: add changes between 1.0.4 and 1.0.5.
|
49
|
-
* VERSION: change version to 1.0.5.
|
50
|
-
|
51
|
-
2009-03-11 KUBO Takehiro <kubo@jiubao.org>
|
52
|
-
* oraconf.rb: fix big/little endian checking problem on Mac OS X ppc.
|
53
|
-
(contributed by unknown. See: Bug ID 24284 on rubyforge.)
|
54
|
-
|
55
1
|
2009-02-08 KUBO Takehiro <kubo@jiubao.org>
|
56
|
-
*
|
57
|
-
|
2
|
+
* VERSION: change version from 2.0-svn to 2.0.0 to pass ruby
|
3
|
+
gem's version string validator.
|
4
|
+
* ruby-oci8.gemspec: added.
|
5
|
+
* ext/oci8/extconf.rb, ext/oci8/oci8.h, ext/oci8/oci8lib.c,
|
6
|
+
ext/oci8/win32.c: 1. add OCI8::Win32Util.dll_path to
|
7
|
+
retrieve Oracle home location from the OCI.DLL location.
|
8
|
+
2. add OCI8::Win32Util.enum_homes to get Oracle home and
|
9
|
+
NLS_LANG pairs in Windows registry.
|
10
|
+
* lib/oci8/encoding-init.rb: get NLS_LANG from Windows registry
|
11
|
+
if environment variable NLS_LANG is not set.
|
12
|
+
* ext/oci8/oraconf.rb: Change the output encoding of sqlplus to
|
13
|
+
US7ASCII by setting NLS_LANG. If the output encoding is
|
14
|
+
incompatible with the default external encoding, it raises
|
15
|
+
'invalid byte sequence' when using ruby 1.9.
|
16
|
+
* lib/oci8/datetime.rb: fix for ruby 1.9. Ruby 1.9 Time
|
17
|
+
class's resolution is nanosecond.
|
18
|
+
* dist-files: add dist-files, ruby-oci8.gemspec and ext/oci8/win32.c.
|
19
|
+
|
20
|
+
2009-02-06 KUBO Takehiro <kubo@jiubao.org>
|
21
|
+
* setup.rb: 1. install lib/**/*.yml flies also.
|
22
|
+
(It is pointed by Nate Wiger that encoding.yml is not installed.)
|
23
|
+
2. exclude .svn or .git directories on installation.
|
24
|
+
* lib/oci8/oci8.rb: A private method define_a_column was renamed
|
25
|
+
to define_one_column to prevent activerecord oracle adapter
|
26
|
+
and oracle enhanced adapter from redefining the method.
|
58
27
|
* dist-files: add newly added file names which must be included
|
59
28
|
in gem or tar.gz packages.
|
60
|
-
* metaconfig: follow the change of dbd/OCI8.rb location.
|
61
29
|
|
62
30
|
2009-02-01 KUBO Takehiro <kubo@jiubao.org>
|
63
31
|
* lib/dbd/OCI8.rb: add code for ruby-dbi 0.4 type conversion.
|
@@ -79,115 +47,360 @@
|
|
79
47
|
3. add DBI::DBD::OCI8.driver_name
|
80
48
|
(changes for ruby-dbi 0.4 contributed by James Cao.)
|
81
49
|
|
82
|
-
|
83
|
-
*
|
84
|
-
|
85
|
-
|
86
|
-
* lib/oci8.
|
87
|
-
|
50
|
+
2009-01-13 KUBO Takehiro <kubo@jiubao.org>
|
51
|
+
* lib/oci8.rb.in, lib/oci8/encoding-init.rb: (ruby 1.9) set
|
52
|
+
OCI8.encoding by querying NLS_LANG. If DEFAULT_OCI8_ENCODING
|
53
|
+
is defined, use it by default.
|
54
|
+
* lib/oci8/encoding.yml: (ruby 1.9) add a new file containing
|
55
|
+
mapping table from Oracle characterset name to Ruby encoding
|
56
|
+
name.
|
57
|
+
|
58
|
+
2009-01-11 KUBO Takehiro <kubo@jiubao.org>
|
59
|
+
* ext/oci8/encoding.c: (ruby 1.9) add OCI8.encoding and
|
60
|
+
OCI8.encoding= to get and set the encoding of the Oracle
|
61
|
+
library.
|
62
|
+
* ext/oci8/oci8.h: (ruby 1.9) add macros OCI8StringValue
|
63
|
+
and OCI8SafeStringValue which convert the string encoding
|
64
|
+
to Oracle librarie's encoding.
|
65
|
+
* ext/oci8/oci8.c: OCI8.new raise a SecurityError when specified
|
66
|
+
connect string is tainted and $SAFE >= 1.
|
67
|
+
* ext/oci8/stmt.c: OCI8#parse raise a SecurityError when specified
|
68
|
+
SQL statemenet is tainted and $SAFE >= 1.
|
69
|
+
* ext/oci8/metadata.c: OCI8#describe_* raise a SecurityError
|
70
|
+
when the object name to be described is tainted and $SAFE >= 1.
|
71
|
+
* ext/oci8/lob.c: OCI8::BFILE.new, OCI8::BFILE#dir_alias= and
|
72
|
+
OCI8::BFILE#filename= raise a SecurityError when specified
|
73
|
+
dir_alias or filename is tainted and $SAFE >= 1.
|
74
|
+
* ext/oci8/attr.c, ext/oci8/bind.c, ext/oci8/error.c,
|
75
|
+
ext/oci8/object.c, ext/oci8/oci8lib.c, ext/oci8/ocinumber.c:
|
76
|
+
(ruby 1.9) converts encoding from/to OCI.encoding.
|
77
|
+
|
78
|
+
2009-01-11 KUBO Takehiro <kubo@jiubao.org>
|
79
|
+
* ext/oci8/lob.c: concatenate read data at the end, instead of
|
80
|
+
appending them for each pieces when reading LOB data.
|
81
|
+
* test/test_oranumber.rb: fix for ruby 1.9.
|
82
|
+
|
83
|
+
2009-01-04 KUBO Takehiro <kubo@jiubao.org>
|
84
|
+
* ext/oci8/oci8.c: delete OCI8.oracle_client_version implemented
|
85
|
+
in C. add OCI8.oracle_client_vernum whose value is retrieved
|
86
|
+
by OCIClientVersion() if Oracle 10.2 or upper.
|
87
|
+
* ext/oci8/oci8.h: add macro rb_define_singleton_method_nodoc,
|
88
|
+
which prevents rdoc from gathering the specified method.
|
89
|
+
* lib/.document, lib/oci8/.document: add lib/oci8.rb and
|
90
|
+
lib/oci8/oracle_version.rb to rdoc targets.
|
91
|
+
* lib/oci8.rb.in, lib/oci8/oracle_version.rb: add
|
92
|
+
OCI8::OracleVersion OCI8.oracle_client_version.
|
93
|
+
* test/config.rb: change version checking code to use
|
94
|
+
OCI8::OracleVersion.
|
95
|
+
* test/test_all.rb, test/test_oracle_version.rb: add test cases
|
96
|
+
of OCI8::OracleVersion.
|
97
|
+
|
98
|
+
2009-01-03 KUBO Takehiro <kubo@jiubao.org>
|
99
|
+
* ext/oci8/encoding.c, ext/oci8/error.c, ext/oci8/ocinumber.c,
|
100
|
+
ext/oci8/oradate.c: use rb_usascii_str_new() or
|
101
|
+
rb_usascii_str_new_cstr() when its encoding is always
|
102
|
+
us-ascii.
|
103
|
+
* ext/oci8/extconf.rb: add type checking for rb_encoding
|
104
|
+
for ruby 1.9.
|
105
|
+
* ext/oci8/oci8.h: use rb_str_new(), rb_str_new2() and
|
106
|
+
rb_tainted_str_new() if rb_usascii_str_new(),
|
107
|
+
rb_usascii_str_new_cstr() and rb_external_str_new_with_enc()
|
108
|
+
are not usable.
|
109
|
+
* ext/oci8/oci8lib.c: use ORAVERNUM macro.
|
110
|
+
|
111
|
+
2009-01-03 KUBO Takehiro <kubo@jiubao.org>
|
112
|
+
* custom-rdoc.rb: fix for rdoc bundled with ruby 1.9.
|
113
|
+
* ext/oci8/apiwrap.yml, ext/oci8/oci8lib.c: set the value of
|
114
|
+
OCI8.oracle_client_version by OCIClientVersion() if
|
115
|
+
the binary is configured with --with-runtime-check and
|
116
|
+
the Oracle client is 10.2 or upper.
|
117
|
+
* test/test_oranumber.rb: disable workaround code when
|
118
|
+
the Oracle client is 10.2.0.4 or upper.
|
88
119
|
|
89
120
|
2008-12-30 KUBO Takehiro <kubo@jiubao.org>
|
90
|
-
* ext/oci8/
|
91
|
-
|
121
|
+
* ext/oci8/attr.c: rewrite code converting the rowid descriptor
|
122
|
+
to string representation by using oci8_exec_sql().
|
123
|
+
* ext/oci8/oci8.c, ext/oci8/oci8.h, ext/oci8/oci8lib.c,
|
124
|
+
ext/oci8/stmt.c: add check code to ensure that the process id
|
125
|
+
is not changed.
|
92
126
|
|
93
127
|
2008-12-30 KUBO Takehiro <kubo@jiubao.org>
|
94
128
|
* ext/oci8/oraconf.rb: add code to check the cpu type of Mac OS X
|
95
129
|
libclntsh.dylib.
|
96
130
|
|
131
|
+
2008-12-21 KUBO Takehiro <kubo@jiubao.org>
|
132
|
+
* ext/oci8/apiwrap.yml: add OCINlsCharSetNameToId()
|
133
|
+
* ext/oci8/encoding.c: add OCI8#charset_name2id and
|
134
|
+
OCI8#charset_id2name.
|
135
|
+
* ext/oci8/env.c: include <util.h> only when ruby 1.8.
|
136
|
+
* ext/oci8/oci8.h: don't include <rubyio.h> which is not used
|
137
|
+
anywhere.
|
138
|
+
* ext/oci8/ocinumber.c: include <errno.h> to compile
|
139
|
+
ruby-oci8 for ruby 1.9.
|
140
|
+
* lib/oci8/metadata.rb: comment duplicated typecode.
|
141
|
+
* test/test_all.rb: use AutoRunner when it is found.
|
142
|
+
Ruby 1.9's test unit does't has AutoRunner.
|
143
|
+
* test/test_oranumber.rb: explicity convert actual_val, which is
|
144
|
+
passed to before assert_in_delta(), to a Float to prevent
|
145
|
+
SEGV in OCINumberSub().
|
146
|
+
|
97
147
|
2008-12-14 KUBO Takehiro <kubo@jiubao.org>
|
98
|
-
*
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
148
|
+
* ext/oci8/stmt.c: fix comment.
|
149
|
+
* test/test_rowid.rb: add one assertion as ruby-oci8 1.0 branch does.
|
150
|
+
|
151
|
+
2008-09-10 KUBO Takehiro <kubo@jiubao.org>
|
152
|
+
* ext/oci8/ocidatetime.c: use session time zone when time zone
|
153
|
+
is not specified to set bind objects of timestamp with time
|
154
|
+
zone datatype.
|
155
|
+
* lib/oci8/datetime.rb: add OCI8::BindType::Util.default_timezone
|
156
|
+
to get Time or DateTime objects from bind objects of date
|
157
|
+
datatype.
|
158
|
+
* test/test_datetime.rb: fix test_datetype_duck_typing and add
|
159
|
+
test_timezone for the above changes.
|
160
|
+
|
161
|
+
2008-09-09 KUBO Takehiro <kubo@jiubao.org>
|
162
|
+
* ext/oci8/apiwrap.rb, ext/oci8/apiwrap.yml, ext/oci8/oci8.h,
|
163
|
+
ext/oci8/ocidatetime.c, lib/oci8.rb.in, lib/oci8/datetime.rb,
|
164
|
+
lib/oci8/metadata.rb, lib/oci8/oci8.rb, test/test_break.rb,
|
165
|
+
test/test_datetime.rb, test/test_dbi.rb, test/test_metadata.rb:
|
166
|
+
fix Oracle version number mistakes. rename ORAVER_9_1 to
|
167
|
+
ORAVER_9_0.
|
168
|
+
|
169
|
+
2008-08-31 KUBO Takehiro <kubo@jiubao.org>
|
170
|
+
* ext/oci8/bind.c, ext/oci8/stmt.c: disable DYNAMIC_FETCH to fetch
|
171
|
+
LONG or LONG RAW columns. It doesn't work well.
|
172
|
+
* lib/oci8/metadata.rb: define char_size for Oracle 8i.
|
173
|
+
* lib/oci8/oci8.rb: define OCI8::BindType::Long and
|
174
|
+
OCI8::BindType::LongRaw as subclasses of OCI8::BindType::String
|
175
|
+
and OCI8::BindType::RAW respectively. fix
|
176
|
+
OCI8::BindType::String.create and OCI8::BindType::RAW.create
|
177
|
+
for strings longer than 4000.
|
178
|
+
* test/test_array_dml.rb: add workaround of "ORA-01036: illegal
|
179
|
+
variable name/number" by renaming a bind variable name ":N"
|
180
|
+
to ":1". I guess this is a problem in the Oracle library.
|
181
|
+
* test/test_break.rb, test/test_dbi.rb, test/test_metadata.rb:
|
182
|
+
fix test codes for Oracle 8i or lower.
|
183
|
+
* test/test_oci8.rb: revise a test for LONG columns.
|
184
|
+
|
185
|
+
2008-08-28 KUBO Takehiro <kubo@jiubao.org>
|
186
|
+
* ext/oci8/apiwrap.yml: OCINumberSign is unavailable on Oracle 8.
|
187
|
+
* lib/DBD/OCI8/OCI8.rb: A data dictionary all_constraints doesn't have
|
188
|
+
index_name column on Oracle 8i or lower. Rewrite
|
189
|
+
DBI::DBD::OCI8::Database#column by using all_cons_columns.
|
190
|
+
* lib/oci8/metadata.rb: raise an error when using
|
191
|
+
* test/config.rb: Oracle 8 desn't have database_compatible_level data
|
192
|
+
dictionary.
|
193
|
+
* test/test_metadata.rb: fix test codes for Oracle 8i or lower.
|
194
|
+
|
195
|
+
2008-08-26 KUBO Takehiro <kubo@jiubao.org>
|
196
|
+
* ext/oci8/metadata.c: fix bugs when trying to use already freed
|
197
|
+
OCI8::Metadata::*.
|
198
|
+
* ext/oci8/ocidatetime.c: fix OCI8::BindType::OCIDate#set().
|
199
|
+
* ext/oci8/ocinumber.c: undef OraNumber#round_prec and OraNumber
|
200
|
+
#shift when using Oracle 8.0.
|
201
|
+
* lib/oci8/datetime.rb, lib/oci8/metadata.rb: fix bugs when using
|
202
|
+
Oracle 8.0.
|
203
|
+
* test/config.rb, test/test_dbi.rb, test/test_metadata.rb,
|
204
|
+
test/test_oci8.rb, test/test_oranumber.rb: do same with the
|
205
|
+
previous commit.
|
206
|
+
* test/test_datetime.rb: disable some test cases when Oracle 8.1
|
207
|
+
or lower.
|
208
|
+
* test/test_dbi_clob.rb: fix when testing in a deep directory.
|
209
|
+
|
210
|
+
2008-08-26 KUBO Takehiro <kubo@jiubao.org>
|
211
|
+
* ext/oci8/apiwrap.c.tmpl, ext/oci8/apiwrap.h.tmpl, ext/oci8/apiwrap.rb
|
212
|
+
ext/oci8/apiwrap.yml, ext/oci8/bind.c, ext/oci8/extconf.rb,
|
213
|
+
ext/oci8/oci8.h, ext/oci8/ocidatetime.c, ext/oci8/xmldb.c,
|
214
|
+
lib/oci8.rb.in, lib/oci8/datetime.rb, lib/oci8/metadata.rb,
|
215
|
+
lib/oci8/oci8.rb: change oracle version number format.
|
216
|
+
For example Oracle 9.1.0's version number was represented as 910
|
217
|
+
in ruby-oci8. Now it is 0x09000000. This format is same with
|
218
|
+
that of the last argument of OCIServerRelease().
|
112
219
|
|
113
220
|
2008-08-10 KUBO Takehiro <kubo@jiubao.org>
|
114
|
-
* NEWS: add changes between 1.0.2 and 1.0.3.
|
115
|
-
* VERSION: change version to 1.0.3.
|
116
221
|
* ext/oci8/lob.c: add workaround code for a losing character problem
|
117
222
|
when reading CLOB. The problem is happened at the following condition.
|
118
223
|
1. Oracle client version is 10.2.0.4 or 11.1.0.6.
|
119
224
|
(It doesn't depend on Oracle server version.)
|
120
225
|
2. The character set is a variable-length one (e.g. AL32UTF8).
|
121
|
-
|
122
|
-
fixed with Thomas Witt's help.)
|
226
|
+
* dist-files: add lib/oci8/datetime.rb and .document files.
|
123
227
|
|
124
228
|
2008-08-09 KUBO Takehiro <kubo@jiubao.org>
|
125
|
-
* ext/oci8/lob.c: fix
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
229
|
+
* ext/oci8/lob.c: fix OCI8::LOB#size= when using a lob over 2GB.
|
230
|
+
fix the return value of OCI8::LOB#write when writing a string
|
231
|
+
over 2GB.
|
232
|
+
|
233
|
+
2008-08-05 KUBO Takehiro <kubo@jiubao.org>
|
234
|
+
* test/config.rb, test/test_all.rb, test/test_array_dml.rb,
|
235
|
+
test/test_bind_raw.rb, test/test_bind_time.rb, test/test_break.rb,
|
236
|
+
test/test_clob.rb, test/test_connstr.rb, test/test_datetime.rb,
|
237
|
+
test/test_dbi.rb, test/test_dbi_clob.rb, test/test_metadata.rb,
|
238
|
+
test/test_object.rb, test/test_oci8.rb, test/test_oradate.rb,
|
239
|
+
test/test_oranumber.rb, test/test_rowid.rb:
|
240
|
+
fix to run tests in directories outside of 'test' directory.
|
241
|
+
|
242
|
+
2008-08-04 KUBO Takehiro <kubo@jiubao.org>
|
243
|
+
* ext/oci8/attr.c: If ORA-01000 (maximum open cursors exceeded) when
|
244
|
+
converting a rowid descriptor to string representation, run
|
245
|
+
GC to cleanup unreferenced statement handles and try again.
|
246
|
+
* ext/oci8/oci8.h, ext/oci8/oci8lib.c: add a utility function
|
247
|
+
oci8_exec_sql() to execute a SQL statement in C.
|
248
|
+
* ext/oci8/encoding.c: use oci8_exec_sql() to run anonymous PL/SQL
|
249
|
+
blocks in oci8_charset_id2name() and oci8_charset_name2id().
|
250
|
+
* ext/oci8/bind.c, ext/oci8/metadata.c, ext/oci8/ocidatetime.c,
|
251
|
+
ext/oci8/ocinumber.c: suppress compiler warnings.
|
252
|
+
* ext/oci8/oci8.c: avoid "[BUG] object allocation during garbage
|
253
|
+
collection phase" when using ruby 1.9. In GC, just free a
|
254
|
+
session handle without rollback.
|
255
|
+
|
256
|
+
2008-08-02 KUBO Takehiro <kubo@jiubao.org>
|
257
|
+
* ext/oci8/oci8.h, ext/oci8/ocidatetime.c, lib/oci8.rb.in,
|
258
|
+
lib/oci8/datetime.rb: change binding code for timestamps
|
259
|
+
and intervals. C side is a thin wrapper which converts Oracle's
|
260
|
+
date, timestamp and interval values to ruby arrays and vise
|
261
|
+
versa. Ruby side converts the arrays to ruby's Time, DateTime,
|
262
|
+
Integer (for interval year to month) and Rational (for interval
|
263
|
+
day to second).
|
264
|
+
* lib/oci8/oci8.rb: change mapping for binding date, timestamp and
|
265
|
+
timestamp with local time zone from OCI8::BindType::DateTime
|
266
|
+
to OCI8::BindType::Time.
|
267
|
+
* test/test_array_dml.rb, test/test_datetime.rb, test/test_dbi.rb,
|
268
|
+
test/test_oci8.rb: fix test cases for a change above.
|
269
|
+
|
270
|
+
2008-07-17 KUBO Takehiro <kubo@jiubao.org>
|
271
|
+
* Makefile: add a rdoc target to make rdoc document.
|
272
|
+
* custom-rdoc.rb: add a file which customizes rdoc to handle
|
273
|
+
oci8_define_class_under() and oci8_define_bind_class().
|
274
|
+
* ext/oci8/.document: add a new file for rdoc.
|
275
|
+
* ext/oci8/bind.c, ext/oci8/oci8.h: rename cOCIBind to cOCI8BindTypeBase,
|
276
|
+
which is same name used in custom-rdoc.rb.
|
277
|
+
* ext/oci8/oci8.c, ext/oci8/ocidatetime.c, ext/oci8/ocinumber.c:
|
278
|
+
delete code in comment for vanilla rdoc which doesn't know what
|
279
|
+
oci8_define_class_under() and oci8_define_bind_class() do.
|
280
|
+
* ext/oci8/oradate.c: fix rdoc comments.
|
281
|
+
|
282
|
+
2008-07-13 KUBO Takehiro <kubo@jiubao.org>
|
283
|
+
* ext/oci8/stmt.c: (1) add rdoc comments. (2) OCI8::Cursor#type
|
284
|
+
returns a Fixnum when the type is not undocumented value instead
|
285
|
+
of raising an exception.
|
286
|
+
* lib/.document, lib/oci8/.document: add new files for rdoc.
|
287
|
+
* lib/oci8/metadata.rb: fix OCI8::Metadata::Scheme#inspect.
|
288
|
+
* lib/oci8/object.rb: don't put OCI8::BindArgumentHelper, which is
|
289
|
+
not used by users, to rdoc.
|
290
|
+
* lib/oci8/oci8.rb: (1) fix rdoc comments. (2) change the return
|
291
|
+
value of OCI8#exec when the SQL statement is a PL/SQL block.
|
292
|
+
(3) change the method of customize the bind type for NUMBER
|
293
|
+
without precision and scale to same with ruby-oci8 1.0 as follows
|
294
|
+
OCI8::BindType::Mapping[:number_unknown_prec] = ...
|
295
|
+
OCI8::BindType::Mapping[:number_no_prec_setting] = ...
|
130
296
|
|
131
297
|
2008-07-12 KUBO Takehiro <kubo@jiubao.org>
|
132
|
-
* lib/oci8.rb
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
137
|
-
2008-07-07 KUBO Takehiro <kubo@jiubao.org>
|
138
|
-
* lib/oci8.rb.in: fix the problem that OraNumber#to_json returns
|
139
|
-
"{}" when using Rails. (This issue is reported by Alex Moore)
|
140
|
-
Object#to_json is added by active_support. But active_support
|
141
|
-
doesn't know what OraNumber is.
|
142
|
-
* ext/oci8/oraconf.rb: merge chages in ruby-oci8 trunk.
|
298
|
+
* lib/oci8/oci8.rb: add OraNumber#to_json and OraDate#to_json.
|
299
|
+
* lib/oci8/metadata.rb: define char_used?, char_size, fsprecision
|
300
|
+
and lfprecision methods to subclasses of OCI8::Metadata::Base
|
301
|
+
onln when Oracie 9i or upper. They ara unavailable on Oracle
|
302
|
+
8.1 or lower.
|
143
303
|
|
144
|
-
2008-07-
|
145
|
-
* ext/oci8/
|
146
|
-
LD_LIBRARY_PATH.
|
147
|
-
|
148
|
-
2008-06-26 KUBO Takehiro <kubo@jiubao.org>
|
149
|
-
* NEWS: add changes between 1.0.1 and 1.0.2.
|
150
|
-
* VERSION: change version to 1.0.2.
|
151
|
-
* Makefile: add targets 'gem' and 'binary_gem' to make pure ruby
|
152
|
-
and binary gems.
|
153
|
-
* ruby-oci8.spec: rename to ruby-oci8.spec.in.
|
154
|
-
* ruby-oci8.spec.in: rename from ruby-oci8.spec and set version
|
155
|
-
string from 'VERSION' file.
|
156
|
-
* ruby-oci8.gemspec: added.
|
157
|
-
* dist-files: add files to ruby-oci8 source packages for gemspec.
|
158
|
-
* test/test_clob.rb: fix to pass tests in a deep directory.
|
304
|
+
2008-07-06 KUBO Takehiro <kubo@jiubao.org>
|
305
|
+
* ext/oci8/oci8.h: add comments.
|
159
306
|
|
160
|
-
2008-
|
161
|
-
* ext/oci8/
|
162
|
-
|
163
|
-
|
164
|
-
|
165
|
-
|
166
|
-
|
167
|
-
test/test_oranumber.rb:
|
168
|
-
fix to run tests in directories outside of 'test' directory.
|
307
|
+
2008-07-05 KUBO Takehiro <kubo@jiubao.org>
|
308
|
+
* ext/oci8/oraconf.rb:
|
309
|
+
1. prints more information on checking LD_LIBRARY_PATH.
|
310
|
+
2. fix for windows Oracle 11g instant client.
|
311
|
+
3. fix for intel mac instant client.
|
312
|
+
* ext/oci8/object.c, lib/oci8/object.rb, lib/oci8/oci8.rb:
|
313
|
+
fix to pass an array of Oracle objects to a procedure.
|
169
314
|
|
170
315
|
2008-04-27 KUBO Takehiro <kubo@jiubao.org>
|
171
|
-
*
|
172
|
-
|
173
|
-
*
|
174
|
-
* ext/oci8/oraconf.rb: fix for intel mac instant client.
|
316
|
+
* ext/oci8/stmt.c, lib/oci8/oci8.rb: fix typo.
|
317
|
+
(pointed by Liming)
|
318
|
+
* dist-files: fix added and deleted files.
|
175
319
|
|
176
320
|
2008-04-08 KUBO Takehiro <kubo@jiubao.org>
|
177
|
-
*
|
178
|
-
|
179
|
-
|
180
|
-
|
181
|
-
|
182
|
-
|
183
|
-
|
184
|
-
|
185
|
-
|
186
|
-
the
|
187
|
-
|
188
|
-
|
189
|
-
|
190
|
-
|
321
|
+
* metaconfig: add '-w' when running test cases.
|
322
|
+
* test/test_metadata.rb: suppress warning: "shadowing outer local variable - i."
|
323
|
+
* ext/oci8/stmt.c: suppress warning: "warning: instance variable
|
324
|
+
@max_array_size not initialized" at lib/oci8/oci8.rb:375.
|
325
|
+
|
326
|
+
2008-03-29 KUBO Takehiro <kubo@jiubao.org>
|
327
|
+
* ext/oci8/encoding.c, ext/oci8/extconf.rb, ext/oci8/oci8.h
|
328
|
+
ext/oci8/oci8lib.c: add a new file encoding.c.
|
329
|
+
oci8_charset_id2name() is added to convert Oracle charset
|
330
|
+
id to charset name. If the Oracle client version is 9iR2
|
331
|
+
or upper, it uses OCINlsCharSetIdToName(). If 9iR1 or lower,
|
332
|
+
it uses PL/SQL function nls_charset_name() and converts
|
333
|
+
at the server side.
|
334
|
+
* ext/oci8/metadata.c: use oci8_charset_id2name() instead of
|
335
|
+
OCINlsCharSetIdToName().
|
336
|
+
|
337
|
+
2008-03-29 KUBO Takehiro <kubo@jiubao.org>
|
338
|
+
* ext/oci8/extconf.rb, ext/oci8/oci8lib.c, ext/oci8/oci8.h:
|
339
|
+
When '--with-runtime-check' is passed to extconf.rb, oci8lib.so
|
340
|
+
is no longer linked to an Oracle client library at compilation
|
341
|
+
time. It tries to search the Oracle client library at runtime.
|
342
|
+
* ext/oci8/bind.c: define OCI8::BindType::BinaryDouble when
|
343
|
+
oracle_client_version's value is 10g or later, not when SQLT_BDOUBLE
|
344
|
+
is declared. This is for runtime check.
|
345
|
+
|
346
|
+
2008-03-22 KUBO Takehiro <kubo@jiubao.org>
|
347
|
+
* ext/oci8/bind.c, ext/oci8/lob.c, ext/oci8/object.c, ext/oci8/oci8.h,
|
348
|
+
ext/oci8/oci8lib.c, ext/oci8/ocidatetime.c, ext/oci8/ocinumber.c,
|
349
|
+
ext/oci8/oradate.c, ext/oci8/stmt.c: add qualifier 'const' to
|
350
|
+
oci8_bind_*class_t values. These are read only.
|
351
|
+
|
352
|
+
2008-03-22 KUBO Takehiro <kubo@jiubao.org>
|
353
|
+
* ext/oci8/.: add apiwrap.[ch] to svn:ignore property.
|
354
|
+
* ext/oci8/apiwrap.c.tmpl, ext/oci8/apiwrap.rb, ext/oci8/apiwrap.yml:
|
355
|
+
add alternative code if OCINumberSetPi(), OCINumberIsInt() is
|
356
|
+
not found.
|
357
|
+
* ext/oci8/oci8.h: delete unused macros. add LIKELY and UNLIKELY
|
358
|
+
macros and use the former in oci8_get_errhp().
|
359
|
+
* ext/oci8/oci8.h, ext/oci8/oci8lib.c: change the scope of
|
360
|
+
oci8_base_class to static.
|
361
|
+
* ext/oci8/ocinumber.c: fix OraNumber#** and OraNumber#<=>. raise
|
362
|
+
exceptions when OraNumber#round_prec or OraNumber#shift is called
|
363
|
+
and the Oracle client version is 8.0.
|
364
|
+
* test/test_oranumber.rb: add testcass for all OraNumber methods.
|
365
|
+
|
366
|
+
2008-03-19 KUBO Takehiro <kubo@jiubao.org>
|
367
|
+
* ext/oci8/ocinumber.c, lib/oci8/compat.rb, lib/oci8/object.rb
|
368
|
+
lib/oci8/oci8.rb, test/test_oci8.rb:
|
369
|
+
1. OCINumber, which is a new object in 2.0, become OraNumber.
|
370
|
+
This means OraNumber become a true numeric class.
|
371
|
+
2. Rdoc comments in ocinumber.c are fixed.
|
372
|
+
|
373
|
+
2008-03-08 KUBO Takehiro <kubo@jiubao.org>
|
374
|
+
* ext/oci8/extconf.rb, ext/oci8/oci8lib.c, ext/oci8/rowid.c:
|
375
|
+
rowid.c is deleted. OCIRowid is no longer in use.
|
376
|
+
* ext/oci8/oci8.h, ext/oci8/attr.c: oci8_get_rowid_attr()
|
377
|
+
is moved from rowid.c and returns a String instead of
|
378
|
+
an OCIRowid object.
|
379
|
+
* ext/oci8/stmt.c: fix a rdoc comment of OCI8::Cursor#rowid.
|
380
|
+
* lib/oci8/oci8.rb: fetch a rowid value as a String.
|
381
|
+
* test/test_all.rb, test/test_rowid.rb: add a rowid testcase.
|
382
|
+
|
383
|
+
2008-03-07 KUBO Takehiro <kubo@jiubao.org>
|
384
|
+
* ext/oci8/apiwrap.c.tmpl, ext/oci8/apiwrap.rb, ext/oci8/apiwrap.yml:
|
385
|
+
add all OCI functions to 'apiwrap.yml'.
|
386
|
+
* ext/oci8/object.c: use OCIObjectPin_nb() instead of OCIObjectPin().
|
387
|
+
* ext/oci8/oci8lib.c: call OCIBreak in rb_thread_blocking_region()
|
388
|
+
to prevent the thread from being blocked.
|
389
|
+
|
390
|
+
2008-03-06 KUBO Takehiro <kubo@jiubao.org>
|
391
|
+
* ext/oci8/apiwrap.c.tmpl, ext/oci8/apiwrap.h.tmpl:
|
392
|
+
rewrite apiwrap.[ch].tmpl. All non-static variables
|
393
|
+
and functions have 'oci8_' prefix name.
|
394
|
+
* ext/oci8/apiwrap.rb, ext/oci8/apiwrap.yml,
|
395
|
+
ext/oci8/extconf.rb: change format of apiwrap.yml
|
396
|
+
to use both OCIAttrGet() and OCIAttrGet_nb().
|
397
|
+
* ext/oci8/oci8.c, test/config.rb: add OCI8.oracle_client_version.
|
398
|
+
|
399
|
+
2008-03-05 KUBO Takehiro <kubo@jiubao.org>
|
400
|
+
* ext/oci8/env.c, ext/oci8/oci8.h: use native API to get a thread
|
401
|
+
local errhp (ruby 1.9 only)
|
402
|
+
pthread: pthread_getspecific()
|
403
|
+
win32: TlsGetValue()
|
191
404
|
|
192
405
|
2008-03-04 KUBO Takehiro <kubo@jiubao.org>
|
193
406
|
* ext/oci8/extconf.rb: output a message to say 'install
|
@@ -196,56 +409,224 @@
|
|
196
409
|
development package are required to compile extension
|
197
410
|
libraries on Linux.
|
198
411
|
|
412
|
+
2008-03-04 KUBO Takehiro <kubo@jiubao.org>
|
413
|
+
* ext/oci8/ocinumber.c: fix for ruby-1.9.0-1.
|
414
|
+
The arguments of rb_num_coerce_cmp() and rb_num_coerce_bin()
|
415
|
+
are changed in ruby-1.9.0-1.
|
416
|
+
|
417
|
+
2008-2-27 Liming Lian <liming.lian@oracle.com>
|
418
|
+
Add new feature: Array DML
|
419
|
+
* lib/oci8/oci8.rb: add three new methods for Array DML to OCI8::Cursor:
|
420
|
+
max_array_size=, bind_param_array and exec_array
|
421
|
+
1) OCI8::Cursor#max_array_size=: set the maximum array size for OCI8::Cursor#bind_param_array.
|
422
|
+
This method should be called before OCI8::Cursor#bind_param_array
|
423
|
+
2) OCI8::Cursor#bind_param_array: bind array explicitly. This method is used to bind an array of
|
424
|
+
values to a placeholder embedded in the prepared statement which is to be executed with
|
425
|
+
OCI8::Cursor#exec_array
|
426
|
+
3) OCI8::Cursor#exec_array: executes the SQL statement assigned the cursor with array bindings.
|
427
|
+
This implementation currently only supports non-data returning statements (INSERT, UPDATE, DELETE
|
428
|
+
but not SELECT). All binding arrays should be the same size and this size will be used as iteration
|
429
|
+
count for OCIStmtExecute()
|
430
|
+
* ext/oci8/stmt.c: add support for Array DML
|
431
|
+
1) Change the parameters for invoking OCIBindByPos and OCIBindByName because
|
432
|
+
currently we only support Array DML for non-PL/SQL binds.
|
433
|
+
2) Add a new parameter "Value iteration_count" to function oci8_stmt_execute.
|
434
|
+
This parameter indicates iteration count for OCIStmtExecute. For Non-Array DML,
|
435
|
+
you should set this parameter "nil"
|
436
|
+
3) Add three new functions: each_value, clear_binds_iterator_proc, oci8_stmt_clear_binds.
|
437
|
+
Those functions are used to clear all binds from OCI8::Cursor. When calling OCI8::Cursor#max_array_size,
|
438
|
+
all the binds will be clean from cursor if instance variable max_array_size of cursor is set before.
|
439
|
+
* test/test_array_dml.rb(added): add test cases for Array DML
|
440
|
+
* test/test_all.rb: call test cases for Array DML
|
441
|
+
|
199
442
|
2008-02-17 KUBO Takehiro <kubo@jiubao.org>
|
200
|
-
*
|
201
|
-
|
202
|
-
|
203
|
-
|
204
|
-
|
205
|
-
|
206
|
-
|
207
|
-
|
208
|
-
|
209
|
-
|
210
|
-
|
211
|
-
*
|
212
|
-
|
213
|
-
|
214
|
-
|
215
|
-
|
216
|
-
|
443
|
+
* Makefile: add format_c_source target to fix indentation by
|
444
|
+
astyle. <URL:http://astyle.sourceforge.net>
|
445
|
+
* ext/oci8/error.c, ext/oci8/lob.c, ext/oci8/metadata.c,
|
446
|
+
ext/oci8/oci8.c, ext/oci8/oci8.h, ext/oci8/oci8lib.c,
|
447
|
+
ext/oci8/ocidatetime.c, ext/oci8/ocinumber.c,
|
448
|
+
ext/oci8/oradate.c, ext/oci8/stmt.c, ext/oci8/xmldb.c:
|
449
|
+
fix indentation by astyle.
|
450
|
+
The command line options are as follows.
|
451
|
+
astyle --style=linux --indent=spaces=4 --brackets=linux ext/oci8/*.[ch]
|
452
|
+
|
453
|
+
2008-02-17 KUBO Takehiro <kubo@jiubao.org>
|
454
|
+
* ext/oci8/object.c, ext/oci8/stmt.c:
|
455
|
+
change from:
|
456
|
+
switch (fixnum_value) {
|
457
|
+
case INT2FIX(INT_CONSTANT):
|
458
|
+
....;
|
459
|
+
to:
|
460
|
+
switch (FIX2INT(fixnum_value)) {
|
461
|
+
case INT_CONSTANT:
|
462
|
+
....;
|
463
|
+
"case INT2FIX(INT_CONSTANT)" confuses astyle.
|
464
|
+
astyle's URL: http://astyle.sourceforge.net
|
465
|
+
* test/config.rb: sleep 5 seconds and retry again when
|
466
|
+
ORA-12516 or ORA-12520. One second was too short on
|
467
|
+
my new linux box.
|
468
|
+
* test/test_oci8.rb: fix a test case for x86_64 linux.
|
469
|
+
|
470
|
+
2008-01-14 KUBO Takehiro <kubo@jiubao.org>
|
471
|
+
* ext/oci8/extconf.rb: add checking code for intern.h, util.h,
|
472
|
+
ruby/util.h, ruby_errinfo and rb_errinfo.
|
473
|
+
* ext/oci8/env.c: define a header file to be included by
|
474
|
+
HAVE_RUBY_UTIL_H and HAVE_UTIL_H, not by RUBY_VM.
|
475
|
+
* ext/oci8/oci8.h: define a header file to be included by
|
476
|
+
HAVE_INTERN_H, not by RUBY_VM. use HAVE_RB_ERRINFO and
|
477
|
+
HAVE_RUBY_ERRINFO to define rb_errinfo() as a macro.
|
478
|
+
* ext/oci8/oci8.c: use rb_eval_string() instead of rb_reg_new()
|
479
|
+
for not to use RUBY_VM.
|
480
|
+
|
481
|
+
2008-01-14 KUBO Takehiro <kubo@jiubao.org>
|
482
|
+
* ext/oci8/oci8.h ext/oci8/oci8lib.c: rename variable name
|
483
|
+
cOCIHandle to oci8_cOCIHandle to use outside of oci8lib.c.
|
484
|
+
* ext/oci8/metadata.c: use oci8_cOCIHandle instead of rb_cObject
|
485
|
+
to hold a descrbe handle. check parent object's handle type
|
486
|
+
in oci8_metadata_create().
|
487
|
+
|
488
|
+
2008-01-14 KUBO Takehiro <kubo@jiubao.org>
|
489
|
+
* ext/oci8/apiwrap.c.tmpl: fix a bug on runtime-api check.
|
490
|
+
* ext/oci8/ocidatetime.c, test/test_datetime.rb: use
|
491
|
+
DateTime.parse('0001-01-01 00:00:00.1') instead of
|
492
|
+
DateTime.parse('00:00:00.1'). The latter doesn't work
|
493
|
+
on ruby 1.8.5 or earlier.
|
494
|
+
* test/config.rb: revert the previous commit and add
|
495
|
+
get_oci8_connection() and get_dbi_connection() to the
|
496
|
+
base class of test cases. When an attempt to connect fails
|
497
|
+
by ORA-12516 or ORA-12520, their methods sleep one seconds
|
498
|
+
and try again more once.
|
499
|
+
delete unused method setup_lowapi().
|
500
|
+
* test/test_bind_raw.rb, test/test_bind_time.rb,
|
501
|
+
test/test_break.rb, test/test_clob.rb, test/test_datetime.rb,
|
502
|
+
test/test_dbi.rb, test/test_dbi_clob.rb, test/test_metadata.rb,
|
503
|
+
test/test_object.rb, test/test_oci8.rb, test/test_oradate.rb,
|
504
|
+
test_oranumber.rb: revert the previous commit and use
|
505
|
+
get_oci8_connection() or get_dbi_connection() to make a
|
506
|
+
connection.
|
507
|
+
|
508
|
+
2008-01-08 KUBO Takehiro <kubo@jiubao.org>
|
509
|
+
* test/config.rb, test/test_bind_raw.rb, test/test_bind_time.rb,
|
510
|
+
test/test_break.rb, test/test_clob.rb, test/test_datetime.rb,
|
511
|
+
test/test_dbi.rb, test/test_dbi_clob.rb, test/test_metadata.rb,
|
512
|
+
test/test_object.rb, test/test_oci8.rb, test/test_oradate.rb,
|
513
|
+
test_oranumber.rb: use one OCI8 session for all OCI8 test cases
|
514
|
+
and use one DBI session for all DBI test cases.
|
515
|
+
Before this changes, connection/disconnection were called
|
516
|
+
for each tests. If they are done too frequently and the Oracle
|
517
|
+
server is on a remote server, the following error is raised.
|
518
|
+
OCIError: ORA-12516: TNS:listener could not find available
|
519
|
+
handler with matching protocol stack
|
217
520
|
|
218
521
|
2008-01-04 KUBO Takehiro <kubo@jiubao.org>
|
219
|
-
* ext/oci8/
|
220
|
-
|
522
|
+
* ext/oci8/oci8.h, ext/oci8/stmt.c: 1. add a 'pre_fetch_hook'
|
523
|
+
callback function to oci8_bind_class_t. This function is
|
524
|
+
called before OCIStmtFetch in OCI8::Cursor#fetch.
|
525
|
+
2. allocate OCIStmt handle by pre_fetch_hook when a result set
|
526
|
+
has cursors.
|
527
|
+
3. change 'init' callback function's prototype in
|
528
|
+
oci8_bind_class_t.
|
529
|
+
* ext/oci8/bind.c, ext/oci8/lob.c, ext/oci8/object.c,
|
530
|
+
ext/oci8/ocidatetime.c, ext/oci8/ocinumber.c,
|
531
|
+
ext/oci8/oradate.c, ext/oci8/rowid.c: changes causes by above 1
|
532
|
+
and 3.
|
221
533
|
* test/test_oci8.rb: delete re-defining in a test case for cursors
|
222
534
|
in a result set.
|
223
535
|
|
536
|
+
2008-01-03 KUBO Takehiro <kubo@jiubao.org>
|
537
|
+
* ext/oci8/error.c: fix a SEGV bug when an error is raised in GC.
|
538
|
+
make a custom backtrace entry only when 'caller' returns an Array.
|
539
|
+
|
224
540
|
2007-12-29 KUBO Takehiro <kubo@jiubao.org>
|
225
|
-
* lib/oci8.rb.
|
226
|
-
|
227
|
-
FROM
|
228
|
-
|
541
|
+
* lib/oci8/metadata.rb, lib/oci8/oci8.rb: support cursors in a
|
542
|
+
result set. For example:
|
543
|
+
SELECT column1 A, column2 B, CURSOR(SELECT * FROM table2) C
|
544
|
+
FROM table1
|
545
|
+
(port from changes in 1.0.0, which is contributed by Randy Gordon)
|
229
546
|
* test/test_oci8.rb: add a testcase for cursors in a result set.
|
230
547
|
|
231
548
|
2007-12-23 KUBO Takehiro <kubo@jiubao.org>
|
232
549
|
* ext/oci8/oraconf.rb: fix for official x86_64 rpms.
|
233
550
|
(contributed by Pat.)
|
234
551
|
|
235
|
-
2007-
|
236
|
-
|
237
|
-
|
238
|
-
|
239
|
-
|
240
|
-
|
241
|
-
*
|
242
|
-
|
243
|
-
|
244
|
-
|
245
|
-
|
246
|
-
|
552
|
+
2007-12-04 KUBO Takehiro <kubo@jiubao.org>
|
553
|
+
* ext/oci8/stmt.c, lib/oci8/oci8.rb: delete a private method
|
554
|
+
OCI8::Curosr#__connection and use @con instead.
|
555
|
+
|
556
|
+
2007-12-04 KUBO Takehiro <kubo@jiubao.org>
|
557
|
+
* ext/oci8/extconf.rb: compile xmldb.o by default.
|
558
|
+
* ext/oci8/lob.c, ext/oci8/metadata.c, ext/oci8/oci8.c: use
|
559
|
+
functions which ends with _nb instead of normal OCI functions
|
560
|
+
if they may block ruby itself. delete BUILD_FOR_ORACLE_* macros
|
561
|
+
and use have_OCI* instead.
|
562
|
+
* ext/oci8/oci8.h: delete unused macros; BUILD_FOR_ORACLE_*,
|
563
|
+
Get_Int_With_Default, oci_rc2, oci_rc, and _D_.
|
564
|
+
* ext/oci8/oci8lib.c, ext/oci8/oci8.c: change the default value
|
565
|
+
of executing_thread member in oci8_svcctx_t.
|
566
|
+
* ext/oci8/xmldb.c: disabled for a while.
|
567
|
+
|
568
|
+
2007-12-04 KUBO Takehiro <kubo@jiubao.org>
|
569
|
+
* ext/oci8/apiwrap.c.tmpl, ext/oci8/apiwrap.h.tmpl, ext/oci8/apiwrap.rb:
|
570
|
+
change function declares of runtime-check.
|
571
|
+
add oracle_client_version.
|
572
|
+
* ext/oci8/apiwrap.yml: add OCI function prototypes.
|
573
|
+
* ext/oci8/extconf.rb: check oracle_client_version by existent functions
|
574
|
+
in OCI libraries. delete BUILD_FOR_ORACLE_VERSION_MAJOR and
|
575
|
+
BUILD_FOR_ORACLE_VERSION_MINOR macros. add ORACLE_CLIENT_VERSION.
|
576
|
+
* ext/oci8/oci8.h: use ORACLE_CLIENT_VERSION instead of
|
577
|
+
BUILD_FOR_ORACLE_VERSION_MAJOR and BUILD_FOR_ORACLE_VERSION_MINOR
|
578
|
+
macros.
|
579
|
+
* ext/oci8/ocidatetime.c: fix for ruby 1.8.
|
580
|
+
* ext/oci8/tdo.c: delete an unused file.
|
581
|
+
|
582
|
+
2007-12-03 KUBO Takehiro <kubo@jiubao.org>
|
583
|
+
* ext/oci8/apiwrap.c.tmpl: move rboci_blocking_region() and
|
584
|
+
find_symbol() to ext/oci8/oci8lib.c and rename to
|
585
|
+
oci8_blocking_region() and oci8_find_symbol() respectively.
|
586
|
+
* ext/oci8/bind.c: use RFLOAT_VALUE macro for ruby 1.9.
|
587
|
+
* ext/oci8/oci8.h: define a macro RFLOAT_VALUE if it is not defined.
|
588
|
+
add prototypes oci8_blocking_region() and oci8_find_symbol().
|
589
|
+
* ext/oci8/oci8lib.c: add oci8_blocking_region() and oci8_find_symbol().
|
590
|
+
* ext/oci8/ocidatetime.c: add workaround code for ruby 1.9 VM bug.
|
591
|
+
* lib/DBD/OCI8/OCI8.rb, lib/oci8/metadata.rb, test/test_metadata.rb:
|
592
|
+
rename OCI8::Metadata::Column#is_null? to
|
593
|
+
OCI8::Metadata::Column#nullable? as ruby 1.0.0 does.
|
594
|
+
* test/test_dbi.rb: add testcase to check binding ''(empty string)
|
595
|
+
via dbi as ruby 1.0.0 does.
|
247
596
|
* test/test_oci8.rb: add asserts binding Nan, +Infinity and
|
248
|
-
-Inifinty.
|
597
|
+
-Inifinty as ruby 1.0.0 does.
|
598
|
+
|
599
|
+
2007-11-23 KUBO Takehiro <kubo@jiubao.org>
|
600
|
+
* ext/oci8/apiwrap.c.tmpl, ext/oci8/apiwrap.h.tmpl, ext/oci8/apiwrap.rb
|
601
|
+
ext/oci8/apiwrap.yml, ext/oci8/extconf.rb, ext/oci8/oci8.h
|
602
|
+
ext/oci8/oci8lib.c: add a framework to check whether an OCI functions
|
603
|
+
exists at run-time.
|
604
|
+
* ext/oci8/lob.c: check whether OCILobIsTemporary and OCILobLocatorAssign
|
605
|
+
exist at run-time.
|
606
|
+
* ext/oci8/rowid.c: use new framework to check whether OCIRowidToChar
|
607
|
+
exists at run-time.
|
608
|
+
|
609
|
+
2007-11-20 KUBO Takehiro <kubo@jiubao.org>
|
610
|
+
* ext/oci8/extconf.rb, , ext/oci8/apiwrap.c.tmpl,
|
611
|
+
ext/oci8/apiwrap.h.tmpl, ext/oci8/apiwrap.rb,
|
612
|
+
ext/oci8/apiwrap.yml: add new files for non-blocking
|
613
|
+
executions. These use rb_thread_blocking_region in
|
614
|
+
ruby 1.9.
|
615
|
+
* ext/oci8/oci8.c, ext/oci8/oci8.h, ext/oci8/stmt.c:
|
616
|
+
use new non-blocking execution API for OCI8#exec and
|
617
|
+
OCI8::CUrsor#fetch.
|
618
|
+
* test/test_break.rb: add comment and add sleep to pass
|
619
|
+
test_blocking_mode.
|
620
|
+
|
621
|
+
2007-11-19 KUBO Takehiro <kubo@jiubao.org>
|
622
|
+
* ext/oci8/ocidatetime.c, test/test_datetime.rb: fix for a change
|
623
|
+
of DateTime#fsec_fractions in ruby 1.9.
|
624
|
+
* ext/oci8/stmt.c: rename OCI8::Cursor#__defineByPos to
|
625
|
+
OCI8::Cursor#__define.
|
626
|
+
* test/test_oci8.rb: add test_select_number.
|
627
|
+
* lib/oci8/oci8.rb: add OCI8::BindType::Base.create which acts as
|
628
|
+
a factory method. move bindtype specific code to create method
|
629
|
+
of OCI8::BindType::Base's subclasses.
|
249
630
|
|
250
631
|
2007-11-18 KUBO Takehiro <kubo@jiubao.org>
|
251
632
|
* lib/DBD/OCI8/OCI8.rb: add StatementHandle#column_info.
|
@@ -255,43 +636,61 @@
|
|
255
636
|
|
256
637
|
2007-11-17 KUBO Takehiro <kubo@jiubao.org>
|
257
638
|
* ext/oci8/error.c: add OCIError#initialize(msg, code = nil).
|
258
|
-
* lib/oci8.rb
|
259
|
-
|
260
|
-
|
261
|
-
|
639
|
+
* ext/oci8/metadata.c, lib/oci8/metadata.rb: rename char_semantics
|
640
|
+
method to "char_used?". change the return value of data_type
|
641
|
+
method when the data_type is NCHAR, NVARCHAR2 or NCLOB.
|
642
|
+
* test/test_all.rb, test/test_metadata.rb: add a testcase for
|
643
|
+
OCI8::Cursor#column_metadata and OCI8#describe_table.
|
262
644
|
|
263
645
|
2007-11-17 KUBO Takehiro <kubo@jiubao.org>
|
264
|
-
* lib/oci8.rb
|
265
|
-
OCI8#commit and OCI8#rollback return self now. They had returned
|
266
|
-
an OCISvcCtx which is internally used.
|
646
|
+
* lib/oci8/oci8.rb: OCI8::Cursor#fetch_hash accepts a block now.
|
267
647
|
* test/test_oci8.rb: add a test for fetch_hash with a block.
|
268
|
-
* ext/oci8/
|
269
|
-
|
270
|
-
|
271
|
-
|
272
|
-
|
273
|
-
|
274
|
-
|
275
|
-
|
276
|
-
|
277
|
-
|
278
|
-
|
279
|
-
|
280
|
-
2007-11-
|
281
|
-
* ext/oci8/
|
282
|
-
|
648
|
+
* ext/oci8/metadata.c: fix for 64-bit windows.
|
649
|
+
|
650
|
+
2007-11-12 KUBO Takehiro <kubo@jiubao.org>
|
651
|
+
* ext/oci8/stmt.c, lib/oci8/oci8.rb: add OCI8::Cursor#column_metadata.
|
652
|
+
* ext/oci8/metadata.c, ext/oci8/oci8.h, ext/oci8/stmt.c: Change
|
653
|
+
the lifetime of OCI8::Metadata::Base. It depended on the connection,
|
654
|
+
but now it depends on what it describes. For example OCI8::cursor
|
655
|
+
for OCI8::Cursor#column_metadata.
|
656
|
+
* ext/oci8/env.c, ext/oci8/oci8.c, ext/oci8/oci8.h, ext/oci8/oci8lib.c,
|
657
|
+
ext/oci8/oraconf.rb, setup.rb: fix for ruby 1.9. Not full tests are
|
658
|
+
not passed on ruby 1.9.
|
659
|
+
|
660
|
+
2007-11-11 KUBO Takehiro <kubo@jiubao.org>
|
661
|
+
* ext/oci8/oci8.c, lib/oci8/metadata.rb, test/test_datetime.rb:
|
662
|
+
suppress warnings 'instance variable @xxxx not initialized' when
|
663
|
+
running ruby with '-w' option. (suggested by Daniel Berger.)
|
283
664
|
|
284
665
|
2007-11-11 KUBO Takehiro <kubo@jiubao.org>
|
285
|
-
* test/config.rb, test/test_dbi.rb, test/
|
286
|
-
|
287
|
-
|
288
|
-
* ext/oci8/bind.c
|
289
|
-
|
290
|
-
|
666
|
+
* test/config.rb, test/test_dbi.rb, test/test_oci8.rb:
|
667
|
+
add 'purge' option to 'drop table' statement when Oracle 10g
|
668
|
+
or upper.
|
669
|
+
* ext/oci8/bind.c: add OCI8::BindType::BinaryDouble when SQLT_BDOUBLE
|
670
|
+
is defined.
|
671
|
+
* lib/oci8/compat.rb: add OCI8::SQLT_IBFLOAT, OCI8::SQLT_IBDOUBLE and
|
672
|
+
OCI8::SQLT_BFILE for compatibility with 1.0.
|
673
|
+
* lib/oci8/metadata.rb, lib/oci8/object.rb, lib/oci8/oci8.rb:
|
674
|
+
rename :bfloat and :bdouble to :binary_float and :binary_double
|
675
|
+
respectively.
|
676
|
+
* lib/oci8/oci8.rb: use OCI8::BindType::BinaryDouble for :binary_float
|
677
|
+
and :binary_double column when BinaryDouble is available.
|
678
|
+
* test/test_oci8.rb: bind as binary_double explicitly in
|
679
|
+
test_binary_float.
|
680
|
+
|
681
|
+
2007-10-15 KUBO Takehiro <kubo@jiubao.org>
|
682
|
+
* lib/oci8/object.rb: quick fix to get and set object
|
683
|
+
attributes without explicitly setting default_connection.
|
684
|
+
I am now wavering about what to do.
|
291
685
|
|
292
686
|
2007-10-14 KUBO Takehiro <kubo@jiubao.org>
|
687
|
+
* ext/oci8/oraconf.rb: fix a problem to compile with a
|
688
|
+
third-party x86_64 rpm package. '--with-instant-client'
|
689
|
+
option become obsolete and is ignored.
|
293
690
|
* ext/oci8/oraconf.rb: fix for FreeBSD oracle8-client port.
|
294
691
|
Not all tests are passed on FreeBSD yet.
|
692
|
+
* lib/oci8/object.rb: fix a problem when convertion ruby class
|
693
|
+
name to oracle object name fails.
|
295
694
|
|
296
695
|
2007-10-11 KUBO Takehiro <kubo@jiubao.org>
|
297
696
|
* lib/DBD/OCI8/OCI8.rb: add DatabaseHandle#columns for DBI.
|
@@ -301,21 +700,47 @@
|
|
301
700
|
* lib/DBD/OCI8/OCI8.rb: fix external OS authentication.
|
302
701
|
I applied Dan Fitch's patch to improper location.
|
303
702
|
|
703
|
+
2007-07-24 KUBO Takehiro <kubo@jiubao.org>
|
704
|
+
* ext/oci8/object.c, lib/oci8/object.rb: support binary_double,
|
705
|
+
binary_float and object member of object datatype.
|
706
|
+
* test/setup_test_object.sql, test/test_object.rb: add testcase for
|
707
|
+
binary_double, binary_float, embedded object, array of raw, array
|
708
|
+
of binary_double, array of binary_float, array of object in object
|
709
|
+
datatype.
|
710
|
+
|
711
|
+
2007-07-07 KUBO Takehiro <kubo@jiubao.org>
|
712
|
+
* ext/oci8/object.c: support array of number in OCI8::NamedCollection.
|
713
|
+
* test/setup_test_object.sql, test/test_object.rb: fix a testcase
|
714
|
+
to test array of number.
|
715
|
+
|
716
|
+
2007-07-05 KUBO Takehiro <kubo@jiubao.org>
|
717
|
+
* lib/oci8/object.rb, ext/oci8/object.c: add OCI8::NamedCollection
|
718
|
+
to support collection datatypes. add OCI8::NamedType#attributes
|
719
|
+
and #attributes= instead of OCI8::NamedType#copy_attributes_from
|
720
|
+
and #copy_attributes_to. and others.
|
721
|
+
* lib/oci8/oci8.rb: add OCI8#username.
|
722
|
+
* test/test_object.rb: add a testcase for array of varchar2.
|
723
|
+
|
724
|
+
2007-07-04 KUBO Takehiro <kubo@jiubao.org>
|
725
|
+
* ext/oci8/object.c, lib/oci8/object.rb, lib/oci8/oci8.rb:
|
726
|
+
delete OCI8::NamedType module and OCI8::NamedType::Base class
|
727
|
+
and add OCI8::Object module, OCI8::Object::Base class and
|
728
|
+
OCI8::NamedType class. In the user view, OCI8::NamedType::Base
|
729
|
+
become OCI8::Object::Base. The reason is that 'named type' is used
|
730
|
+
only by OCI documents, and Other Oracle manuals use Oracle Object.
|
731
|
+
* ext/oci8/oci8.c: free all dependent objects in advance to
|
732
|
+
disconnecting a connection.
|
733
|
+
* lib/oci8/metadata.rb: add OCI8::Metadata::Type#type_metadata.
|
734
|
+
fix typos.
|
735
|
+
* test/setup_test_object.sql, test/test_object.rb: add a testcase for
|
736
|
+
Oracle Objects.
|
737
|
+
|
304
738
|
2007-07-03 KUBO Takehiro <kubo@jiubao.org>
|
305
739
|
* lib/DBD/OCI8/OCI8.rb: fix for external OS authentication.
|
306
740
|
(contributed by Dan Fitch)
|
307
741
|
|
308
|
-
2007-07-01 KUBO Takehiro <kubo@jiubao.org>
|
309
|
-
* NEWS: add changes between 1.0.0-rc2 and 1.0.0-rc3.
|
310
|
-
* VERSION: change version to 1.0.0-rc3.
|
311
|
-
* ext/oci8/oraconf.rb: fix a problem to compile with a
|
312
|
-
third-party x86_64 rpm package. '--with-instant-client'
|
313
|
-
option become obsolete and is ignored.
|
314
|
-
* test/test_oci8.rb: skip test_binary_float test when the testing
|
315
|
-
server version is 9i or earlier.
|
316
|
-
|
317
742
|
2007-06-26 KUBO Takehiro <kubo@jiubao.org>
|
318
|
-
*
|
743
|
+
* ext/oci8/oci8.c: add external OS authentication. (suggested by Dan Fitch)
|
319
744
|
conn = OCI8.new('/')
|
320
745
|
or
|
321
746
|
conn = OCI8.new(nil, nil)
|
@@ -326,121 +751,280 @@
|
|
326
751
|
check what cpu is it for. (linux x86, x86_64 and ia64 only)
|
327
752
|
|
328
753
|
2007-06-05 KUBO Takehiro <kubo@jiubao.org>
|
329
|
-
* ext/oci8/oraconf.rb:
|
330
|
-
|
331
|
-
|
332
|
-
|
333
|
-
|
334
|
-
|
335
|
-
|
336
|
-
|
337
|
-
|
338
|
-
* ext/oci8/
|
339
|
-
|
340
|
-
|
341
|
-
|
342
|
-
*
|
343
|
-
|
344
|
-
|
345
|
-
*
|
346
|
-
*
|
347
|
-
*
|
348
|
-
|
349
|
-
|
350
|
-
|
754
|
+
* ext/oci8/oraconf.rb: copy oraconf.rb of ruby-oci8-1.0 branch.
|
755
|
+
* ext/oci8/lob.c, ext/oci8/oci8.h, ext/oci8/stmt.c: fix to bind
|
756
|
+
an OCI8::NCLOB value on Oralce 9i.
|
757
|
+
* test/test_oci8.rb: add testcases for binary_double datatype
|
758
|
+
and OCI8::NCLOB.new.
|
759
|
+
|
760
|
+
2007-05-20 KUBO Takehiro <kubo@jiubao.org>
|
761
|
+
* lib/oci8/object.rb, ext/oci8/object.c: add new files.
|
762
|
+
* ext/oci8/bind.c: fix to bind object type.
|
763
|
+
* ext/oci8/extconf.rb: use object.c instead of tdo.c.
|
764
|
+
* ext/oci8/metadata.c: add OCI8::Metadata::Base#tdo_id.
|
765
|
+
* ext/oci8/oci8.h: add new prototypes; oci8_set_ocinumber(),
|
766
|
+
oci8_set_integer() and Init_oci_object(). delete Init_oci_tdo().
|
767
|
+
* ext/oci8/oci8lib.c: use Init_oci_object() instead of Init_oci_tdo().
|
768
|
+
* ext/oci8/ocinumber.c: export oci8_set_ocinumber() and
|
769
|
+
oci8_set_integer().
|
770
|
+
* ext/oci8/stmt.c: fix to bind object type.
|
771
|
+
* lib/oci8.rb.in: add requiring 'oci8/object.rb'.
|
772
|
+
* lib/oci8/metadata.rb: add OCI8::Metadata::TypeMethod#has_result?
|
773
|
+
fix comments.
|
774
|
+
* lib/oci8/oci8.rb: fix to bind object type.
|
775
|
+
|
776
|
+
2007-05-12 KUBO Takehiro <kubo@jiubao.org>
|
777
|
+
* ext/oci8/bind.c, ext/oci8/lob.c, ext/oci8/oci8.h,
|
778
|
+
ext/oci8/ocidatetime.c, ext/oci8/ocinumber.c, ext/oci8/oradate.c,
|
779
|
+
ext/oci8/rowid.c, ext/oci8/stmt.c, ext/oci8/tdo.c:
|
780
|
+
change a callback function's argument type used internally
|
781
|
+
in OCI8::BindType::Base#set().
|
782
|
+
* ext/oci8/metadata.c, lib/oci8/metadata.rb: change the internal
|
783
|
+
structure of OCI8::Metadata::Base.
|
784
|
+
|
785
|
+
2007-05-10 KUBO Takehiro <kubo@jiubao.org>
|
786
|
+
* lib/oci8/oci8.rb: 1. move the location of setting
|
787
|
+
OCI8::BindType::Mapping to the end of the file.
|
788
|
+
2. set :xmltype to OCI8::BindType::Mapping's key when
|
789
|
+
the fetched column is XMLTYPE.
|
790
|
+
|
791
|
+
2007-05-03 KUBO Takehiro <kubo@jiubao.org>
|
792
|
+
* ext/oci8/extconf.rb: add '--with-oracle-version' option to
|
793
|
+
make a binary for the specified oracle version.
|
794
|
+
get the oracle client version from available OCI functions.
|
795
|
+
* ext/oci8/lob.c, ext/oci8/oci8.h, ext/oci8/oci8lib.c,
|
796
|
+
ext/oci8/rowid.c, ext/oci8/tdo.c, ext/oci8/xmldb.c: use
|
797
|
+
BUILD_FOR_ORACLE_major_minor macros instead of HAVE_xxx
|
798
|
+
macros.
|
799
|
+
* ext/oci8/oci8.c: delete unsed code.
|
800
|
+
* dist-files: add ext/oci8/xmldb.c and test/test_connstr.rb.
|
801
|
+
|
802
|
+
2007-05-01 KUBO Takehiro <kubo@jiubao.org>
|
803
|
+
* ext/oci8/bind.c: fix to return nil for LONG null column.
|
804
|
+
* ext/oci8/env.c: use OCIInitialize() and OCIEnvInit() instead
|
805
|
+
of OCIEnvCreate() on every Oracle version.
|
806
|
+
* ext/oci8/env.c, ext/oci8/error.c, ext/oci8/oci8.h: raise
|
807
|
+
"OCI Library Initialization Error" when Oracle can't supply
|
808
|
+
the error message.
|
809
|
+
* ext/oci8/oci8.c: raise OCIException instead of TypeError.
|
810
|
+
* lib/oci8/metadata.rb: fix typo in comment.
|
811
|
+
* VERSION: change to 2.0-svn.
|
812
|
+
|
813
|
+
2007-04-30 KUBO Takehiro <kubo@jiubao.org>
|
814
|
+
* ext/oci8/extconf.rb, ext/oci8/oci8.h, ext/oci8/oci8lib.c,
|
815
|
+
ext/oci8/tdo.c: enable XML support when Oracle 10g.
|
816
|
+
* ext/oci8/xmldb.c: add oci8_make_rexml() to support XML for reading.
|
817
|
+
* ext/oci8/lob.c: fix compiler warnings.
|
818
|
+
* ext/oci8/error.c: fix a bit.
|
819
|
+
|
820
|
+
2007-04-28 KUBO Takehiro <kubo@jiubao.org>
|
821
|
+
* lib/oci8/oci8.rb: fetch NCLOB column value as an OCI8::NCLOB. fetch
|
822
|
+
BINARY_DOUBLE and BINARY_FLOAT column as a Float.
|
823
|
+
* lib/oci8/metadata.rb: OCI8::Metadata::Column#data_type can return
|
824
|
+
:nclob, :bfloat and :bdouble now.
|
825
|
+
* ext/oci8/extconf.rb: check whether OCILobCreateTemporary exists.
|
826
|
+
* ext/oci8/lob.c: add OCI8::NCLOB.
|
827
|
+
* ext/oci8/oci8.h: add oci8_make_nclob().
|
828
|
+
* ext/oci8/tdo.c: use oci8_make_nclob().
|
829
|
+
|
830
|
+
2007-04-26 KUBO Takehiro <kubo@jiubao.org>
|
831
|
+
* lib/oci8/oci8.rb: fetch BFILE as OCI8::BFILE.
|
832
|
+
* ext/oci8/lob.c: add OCI8::BFILE.
|
833
|
+
* ext/oci8/oci8.h: add oci8_make_bfile().
|
834
|
+
* ext/oci8/tdo.c: use oci8_make_bfile().
|
835
|
+
* ext/oci8/stmt.c: use oci8_get_error_code().
|
351
836
|
|
352
837
|
2007-04-21 KUBO Takehiro <kubo@jiubao.org>
|
353
|
-
* ext/oci8/error.c
|
354
|
-
|
355
|
-
|
356
|
-
2007-
|
357
|
-
|
358
|
-
|
359
|
-
|
360
|
-
|
361
|
-
|
362
|
-
|
363
|
-
|
364
|
-
* ext/oci8/
|
365
|
-
|
366
|
-
|
367
|
-
|
368
|
-
|
369
|
-
|
370
|
-
|
371
|
-
|
372
|
-
* lib/oci8.rb.in: fix a probmen when fetching BINARY_FLOAT.
|
373
|
-
(This problem is reported by Duncan McCaffery.)
|
374
|
-
|
375
|
-
2007-04-16 KUBO Takehiro <kubo@jiubao.org>
|
376
|
-
* ruby-oci8.spec: add a rpm spec file. (contributed by Brian Candler)
|
377
|
-
* dist-files: add ruby-oci8.spec.
|
378
|
-
* ext/oci8/oraconf.rb: fix for oracle 8.x and gcc on AIX.
|
379
|
-
|
380
|
-
2007-02-14 Oracle Corporation (commited by KUBO Takehiro <kubo@jiubao.org>)
|
381
|
-
* lib/oci8.rb.in: add a private method parse_connect_string to support
|
838
|
+
* ext/oci8/error.c: change a way to set the error line number to the
|
839
|
+
OCIException's backtrace.
|
840
|
+
|
841
|
+
2007-02-15 KUBO Takehiro <kubo@jiubao.org>
|
842
|
+
no new features. fix to suppress warnings and to compile with ruby 1.9.
|
843
|
+
* ext/oci8/attr.c, ext/oci8/lob.c, ext/oci8/metadata.c, ext/oci8/oci8.c,
|
844
|
+
ext/oci8/oci8.h, ext/oci8/oci8lib.c, ext/oci8/rowid.c, ext/oci8/stmt.c,
|
845
|
+
ext/oci8/tdo.c: use union to suppress warnings: dereferencing type-punned
|
846
|
+
pointer will break strict-aliasing rules.
|
847
|
+
* ext/oci8/bind.c: change a format string tu suppress a warning.
|
848
|
+
* ext/oci8/error.c: use rb_errinfo() instead of ruby_errinfo to compile with ruby 1.9.
|
849
|
+
* ext/oci8/oci8.h: define rb_errinfo() as ruby_errinfo when compling with ruby 1.8.
|
850
|
+
* ext/oci8/oci8lib.c: delete unused macros OCI_DEFAULT and OCI_COMMIT_ON_SUCCESS.
|
851
|
+
* ext/oci8/ocidatetime.c, ext/oci8/ocinumber.c: fix bugs.
|
852
|
+
* ext/oci8/oraconf.rb: use File.exist? instead of File.exists?. The latter become obsolete on ruby 1.9.
|
853
|
+
* lib/oci8/compat.rb: fix for ruby 1.9. Class.constants returns an array of Symbols in 1.9.
|
854
|
+
|
855
|
+
2007-02-14 Oracle Corporation (modified for 2.0 by KUBO Takehiro <kubo@jiubao.org>)
|
856
|
+
* ext/oci8/oci8.c: add a private method parse_connect_string to support
|
382
857
|
"username/password[@(tns_name|//host[:port]/service_name)][ as (sysdba|sysoper)]".
|
858
|
+
(The original code, contributed by Oracle, is written
|
859
|
+
for ruby-oci8 1.0. Kubo rewrite it for 2.0.)
|
383
860
|
* test/test_connstr.rb: add test cases for parse_connect_string.
|
384
861
|
* test/test_all.rb: call test cases for parse_connect_string.
|
385
862
|
|
863
|
+
2007-02-14 KUBO Takehiro <kubo@jiubao.org>
|
864
|
+
* ext/oci8/ocinumber.c: fix a bug created by the previous commit.
|
865
|
+
|
386
866
|
2007-01-28 KUBO Takehiro <kubo@jiubao.org>
|
387
867
|
* ext/oci8/oci8.h: add TO_ORATEXT, TO_CHARPTR and RSTRING_ORATEXT
|
388
868
|
macros to suppress 'differ in signedness' warinings.
|
389
|
-
* ext/oci8/attr.c, ext/oci8/
|
390
|
-
ext/oci8/
|
391
|
-
ext/oci8/stmt.c: use TO_ORATEXT, TO_CHARPTR and
|
392
|
-
macros to suppress 'differ in signedness'
|
393
|
-
|
394
|
-
2007-01-20 KUBO Takehiro <kubo@jiubao.org>
|
395
|
-
* lib/oci8.rb.in: don't call OCIEnv.create when initializing.
|
396
|
-
* release as 1.0.0-rc1.
|
397
|
-
|
398
|
-
2007-01-19 KUBO Takehiro <kubo@jiubao.org>
|
399
|
-
* ext/oci8/oraconf.rb: fix bugs on windows created by the previous commit.
|
869
|
+
* ext/oci8/attr.c, ext/oci8/error.c, ext/oci8/metadata.c,
|
870
|
+
ext/oci8/oci8.c, ext/oci8/ocinumber.c, ext/oci8/rowid.c,
|
871
|
+
ext/oci8/stmt.c, ext/oci8/tdo.c: use TO_ORATEXT, TO_CHARPTR and
|
872
|
+
RSTRING_ORATEXT macros to suppress 'differ in signedness'
|
873
|
+
warinings.
|
400
874
|
|
401
875
|
2007-01-08 KUBO Takehiro <kubo@jiubao.org>
|
402
|
-
* ext/oci8/oraconf.rb: check whether Full Client or Instant Client by checking
|
403
|
-
load library path.
|
404
|
-
|
405
|
-
2007-01-03 KUBO Takehiro <kubo@jiubao.org>
|
406
|
-
* ext/oci8/env.c: raise "OCI Library Initialization Error" message
|
407
|
-
if no message can not be retrieved while OCIEnv.create.
|
408
876
|
* ext/oci8/oraconf.rb, ext/oci8/extconf.rb: refactor oraconf.rb.
|
409
|
-
|
410
|
-
|
411
|
-
|
412
|
-
2006-12-
|
413
|
-
* ext/oci8/
|
414
|
-
|
415
|
-
|
416
|
-
|
417
|
-
|
418
|
-
|
419
|
-
|
877
|
+
check whether Full Client or Instant Client by checking load
|
878
|
+
library path.
|
879
|
+
|
880
|
+
2006-12-27 KUBO Takehiro <kubo@jiubao.org>
|
881
|
+
* ext/oci8/oci8.c: ignore an exception during GC.
|
882
|
+
|
883
|
+
2006-12-22 KUBO Takehiro <kubo@jiubao.org>
|
884
|
+
* ext/oci8/oci8.h, ext/oci8/oci8lib.c: add new structure
|
885
|
+
members to oci8_base_t to handle parent-children tree.
|
886
|
+
add new functions oci8_link_to_parent() and
|
887
|
+
oci8_unlink_from_parent().
|
888
|
+
In prior to free the object's content. free all its children.
|
889
|
+
* ext/oci8/bind.c, ext/oci8/stmt.c:
|
890
|
+
use oci8_base_t's structure members instead of oci8_bind_t
|
891
|
+
and oci8_stmt_t's members.
|
892
|
+
* ext/oci8/lob.c, ext/oci8/metadata.c, ext/oci8/tdo.c:
|
893
|
+
link to the connection which creates the LOB, Metadata, TDO objects.
|
894
|
+
These objects are freed when the connection is disconnected.
|
895
|
+
* ext/oci8/oci8.c: call logoff explicitly when the connection object
|
896
|
+
is freed.
|
897
|
+
|
898
|
+
2006-12-19 KUBO Takehiro <kubo@jiubao.org>
|
899
|
+
* ext/oci8/tdo.c: fix a GC problem.
|
900
|
+
* ext/oci8/stmt.c: add OCI8::Cursor#prefetch_rows=
|
901
|
+
* ext/oci8/oci8.c: add OCI8#prefetch_rows=. add comments for rdoc.
|
902
|
+
* doc/oci8-ja.rb: add comments for rdoc.
|
903
|
+
|
904
|
+
2006-12-14 KUBO Takehiro <kubo@jiubao.org>
|
905
|
+
* ext/oci8/bind.c, ext/oci8/lob.c, ext/oci8/oci8.h,
|
906
|
+
ext/oci8/ocidatetime.c ext/oci8/ocinumber.c, ext/oci8/oradate.c,
|
907
|
+
ext/oci8/rowid.c, ext/oci8/stmt.c, ext/oci8/tdo.c: add PL/SQL
|
908
|
+
table support. unify the variable names of oci8_bind_t.
|
909
|
+
* lib/oci8/oci8.rb: add PL/SQL table support.
|
910
|
+
|
911
|
+
2006-12-13 KUBO Takehiro <kubo@jiubao.org>
|
912
|
+
* ext/oci8/bind.c, ext/oci8/lob.c, ext/oci8/oci8.h, ext/oci8/stmt.c:
|
913
|
+
delete oci8_bind_handle_t and use oci8_hp_obj_t.
|
914
|
+
(prepare to bind an array)
|
915
|
+
* ext/oci8/bind.c: fix for alignment.
|
916
|
+
(prepare to bind an array)
|
917
|
+
|
918
|
+
2006-12-12 KUBO Takehiro <kubo@jiubao.org>
|
919
|
+
* ext/oci8/bind.c, ext/oci8/lob.c, ext/oci8/oci8.h,
|
920
|
+
ext/oci8/ocidatetime.c, ext/oci8/ocinumber.c, ext/oci8/oradate.c,
|
921
|
+
ext/oci8/rowid.c, ext/oci8/stmt.c, ext/oci8/tdo.c, lib/oci8/oci8.rb:
|
922
|
+
change arguments of internal bind-init functions.
|
923
|
+
(refactoring)
|
924
|
+
* ext/oci8/bind.c, ext/oci8/lob.c, ext/oci8/oci8.h,
|
925
|
+
ext/oci8/ocidatetime.c, ext/oci8/ocinumber.c, ext/oci8/oradate.c,
|
926
|
+
ext/oci8/rowid.c, ext/oci8/stmt.c, ext/oci8/tdo.c:
|
927
|
+
split bind-init callback to init and init_elem.
|
928
|
+
(prepare to bind an array)
|
929
|
+
* ext/oci8/bind.c, ext/oci8/oci8.h, ext/oci8/stmt.c:
|
930
|
+
change arguments of piece-width-fetch callbacks.
|
931
|
+
(prepare to bind an array)
|
932
|
+
|
933
|
+
2006-12-07 KUBO Takehiro <kubo@jiubao.org>
|
934
|
+
* ext/oci8/bind.c, ext/oci8/oci8.h, ext/oci8/stmt.c, ext/oci8/tdo.c:
|
935
|
+
delete rlen and use_rlen from oci8_bind_t.
|
936
|
+
* ext/oci8/rowid.c: change the bind type for ROWID not to use rlen.
|
420
937
|
|
421
938
|
2006-12-05 KUBO Takehiro <kubo@jiubao.org>
|
422
|
-
* ext/oci8/attr.c, ext/oci8/bind.c, ext/oci8/error.c, ext/oci8/
|
423
|
-
ext/oci8/
|
424
|
-
ext/oci8/
|
425
|
-
|
939
|
+
* ext/oci8/attr.c, ext/oci8/bind.c, ext/oci8/error.c, ext/oci8/lob.c,
|
940
|
+
ext/oci8/metadata.c, ext/oci8/oci8.c, ext/oci8/oci8.h,
|
941
|
+
ext/oci8/ocidatetime.c, ext/oci8/ocinumber.c, ext/oci8/oradate.c,
|
942
|
+
ext/oci8/rowid.c, ext/oci8/stmt.c, ext/oci8/tdo.c:
|
943
|
+
use RSTRING_LEN, RSTRING_PTR, RARRAY_LEN and RARRAY_PTR macros.
|
944
|
+
|
945
|
+
2006-11-25 KUBO Takehiro <kubo@jiubao.org>
|
946
|
+
* doc/oci8-ja.rb: add a new file for Japanese rdoc document.
|
947
|
+
* ext/oci8/ocidatetime.c: add comments for rdoc.
|
948
|
+
* test/test_datetime.rb: add testcases for OCI8::BindType::DateTime.
|
949
|
+
|
950
|
+
2006-11-23 KUBO Takehiro <kubo@jiubao.org>
|
951
|
+
* dist-files, ext/oci8/extconf.rb, ext/oci8/oci8.h, ext/oci8/oci8lib.c,
|
952
|
+
ext/oci8/oranumber.c: delete OraNumber implemented by C.
|
953
|
+
* ext/oci8/metadata.c: use oci8_make_integer() instead of ora_number_to_str()
|
954
|
+
which was implemented in oranumber.c.
|
955
|
+
* ext/oci8/ocinumber.c: add OCINumber#initialize_copy for OCINumber#copy.
|
956
|
+
* lib/oci8.rb.in: delete "require 'oci8/interval.rb'".
|
957
|
+
* lib/oci8/oci8.rb: remove OraNumber-related code.
|
958
|
+
* lib/oci8/compat.rb: add emulation code of OraNumber by using OCINumber.
|
959
|
+
* test_oranumber.rb: use assert_in_delta when comparing Float value.
|
960
|
+
|
961
|
+
2006-11-22 KUBO Takehiro <kubo@jiubao.org>
|
962
|
+
* ext/oci8/ocidatetime.c: bind types for interval_ym and interval_ds
|
963
|
+
are now Rational instread of OCI8::IntervalYM and OCI8::IntervalDS.
|
964
|
+
* lib/oci8/interval.rb: delete OCI8::IntervalYM and OCI8::IntervalDS.
|
965
|
+
* lib/oci8/oci8.rb: delete OCI8::IntervalYM and OCI8::IntervalDS.
|
966
|
+
* test/test_all.rb: call testcases for timestamps and intervals.
|
967
|
+
* test/test_datetime.rb: add testcases for timestamps and intervals.
|
968
|
+
|
969
|
+
2006-11-19 KUBO Takehiro <kubo@jiubao.org>
|
970
|
+
* ext/oci8/oci8.c: fix the default value of OCI8#long_read_len.
|
971
|
+
* ext/oci8/stmt.c: fix bug when execute RENAME statement.
|
972
|
+
* test/test_oci8.rb: add testcases for above two problems.
|
973
|
+
The testcases are contributed by Pete Schwamb.
|
974
|
+
|
975
|
+
2006-11-18 KUBO Takehiro <kubo@jiubao.org>
|
976
|
+
* ext/oci8/tdo.c: add a new class OCI8::TDO to fetch Oracle's
|
977
|
+
object types.
|
978
|
+
* ext/oci8/bind.c, ext/oci8/extconf.rb, ext/oci8/lob.c,
|
979
|
+
ext/oci8/oci8.h, ext/oci8/oci8lib.c, ext/oci8/stmt.c,
|
980
|
+
lib/oci8/oci8.rb: use OCI8::TDO to fetch Oracle's object
|
981
|
+
types.
|
982
|
+
* ext/oci8/lob.c: add oci8_make_clob() and oci8_make_blob()
|
983
|
+
for OCI8::TDO.
|
984
|
+
* ext/oci8/metadata.c: export cOCI8MetadataBase for OCI8::TDO.
|
985
|
+
* ext/oci8/error.c: prepend error line in C to the exception's
|
986
|
+
backtrace for debug.
|
426
987
|
|
427
988
|
2006-11-18 KUBO Takehiro <kubo@jiubao.org>
|
428
989
|
* ext/oci8/oraconf.rb: add check code whether oci.h exists.
|
429
990
|
|
430
|
-
2006-
|
431
|
-
* ext/oci8/
|
432
|
-
|
991
|
+
2006-11-09 KUBO Takehiro <kubo@jiubao.org>
|
992
|
+
* ext/oci8/oci8.h, ext/oci8/ocinumber.c: rename make_oci_number()
|
993
|
+
and make_integer to oci8_make_ocinumber() and oci8_make_integer().
|
994
|
+
add oci8_make_float().
|
995
|
+
* ext/oci8/oci8.h, ext/oci8/ocidatetime.c, lib/oci8/oci8.rb: add
|
996
|
+
oci8_make_datetime_from_ocidate(), oci8_make_datetime_from_ocidatetime(),
|
997
|
+
oci8_make_interval_ym() and oci8_make_interval_ds().
|
998
|
+
OCI8::BindType::IntervalYM#get return an OCI8::IntervalYM instead of an array.
|
999
|
+
OCI8::BindType::IntervalDS#get return an OCI8::IntervalDS instead of an array.
|
1000
|
+
OCI8::BindType::DateTime#get return a DateTime instead of an array.
|
1001
|
+
|
1002
|
+
2006-11-04 KUBO Takehiro <kubo@jiubao.org>
|
1003
|
+
* ext/oci8/oci8.h: add callbacks for piecewise operations.
|
1004
|
+
* ext/oci8/oraconf.rb: add an error message for intel mac.
|
1005
|
+
* ext/oci8/bind.c: add OCI8::BindType::Long and
|
1006
|
+
OCI8::BindType::LongRaw.
|
1007
|
+
* ext/oci8/stmt.c: fix OCI8::Cursor#define, OCI8::Cursor#bind_param,
|
1008
|
+
OCI8::Cursor#exec and OCI8::Cursor#fetch for piecewise operations.
|
1009
|
+
* ext/oci8/lob.c, ext/oci8/oradate.c, ext/oci8/ocinumber.c,
|
1010
|
+
ext/oci8/rowid.c, ext/oci8/ocidatetime.c, ext/oci8/oranumber.c:
|
1011
|
+
follow up the change of piecewise operations.
|
1012
|
+
* lib/oci8/oci8.rb: use OCI8::BindType::Long and
|
1013
|
+
OCI8::BindType::LongRaw for LONG and LONG RAW respectively.
|
433
1014
|
|
434
1015
|
2006-08-18 KUBO Takehiro <kubo@jiubao.org>
|
435
1016
|
* ext/oci8/oradate.c: add OraDate.hash().
|
436
1017
|
* ext/oci8/oranumber.c: OraNumber.new() now accepts a String.
|
437
|
-
* lib/oci8.rb
|
1018
|
+
* lib/oci8/oci8.rb: add YAML support for OraDate and OraNumber.
|
438
1019
|
* test/test_oranumber.rb: add testcases for OraNumber.new(aString).
|
439
1020
|
|
440
1021
|
2006-08-17 KUBO Takehiro <kubo@jiubao.org>
|
441
|
-
* ext/oci8/
|
1022
|
+
* ext/oci8/bind.c:
|
442
1023
|
Use long instead of int to bind Fixnum.
|
443
|
-
|
1024
|
+
* lib/oci8.rb.in: add a workaround code on cygwin version.
|
1025
|
+
Cygwin manages environment variables by itself. They don't
|
1026
|
+
synchroize with Win32's ones. set some Oracle's environment
|
1027
|
+
variables to win32.
|
444
1028
|
|
445
1029
|
2006-08-03 KUBO Takehiro <kubo@jiubao.org>
|
446
1030
|
* lib/oci8.rb.in: add a workaround code on cygwin version.
|
@@ -453,130 +1037,410 @@
|
|
453
1037
|
and OraDate._load.
|
454
1038
|
* ext/oci8/oranumber.c: add OraNumber#dup, OraNumber#clone,
|
455
1039
|
OraNumber#_dump and OraNumber._load.
|
1040
|
+
* ext/oci8/rowid.c: add OCIRowid#dup, OCIRowid#clone.
|
1041
|
+
These methods raise an error when using Oracle 8.x.
|
456
1042
|
* test/test_oradate.rb: add tests for OraDate#dup, OraDate#clone,
|
457
1043
|
OraDate#_dump and OraDate._load.
|
458
1044
|
* test/test_oranumber.rb: add tests for OraNumber#dup,
|
459
1045
|
OraNumber#clone, OraNumber#_dump and OraNumber._load.
|
460
|
-
|
461
|
-
|
462
|
-
|
1046
|
+
|
1047
|
+
2006-07-22 KUBO Takehiro <kubo@jiubao.org>
|
1048
|
+
* ext/oci8/metadata.c, lib/oci8/metadata.rb: add a type_metadata method
|
1049
|
+
to OCI8::Metadata::Table, OCI8::Metadata::View, OCI8::Metadata::TypeAttr,
|
1050
|
+
OCI8::Metadata::Collection, OCI8::Metadata::Column, OCI8::Metadata::Argument
|
1051
|
+
OCI8::Metadata::TypeArgument and OCI8::Metadata::TypeResult.
|
463
1052
|
|
464
1053
|
2006-07-21 KUBO Takehiro <kubo@jiubao.org>
|
465
|
-
* ext/oci8/oci8.h, ext/oci8/bind.c, ext/oci8/stmt.c,
|
466
|
-
Support LONG and LONG RAW longer than 65535 bytes.
|
1054
|
+
* ext/oci8/oci8.c, ext/oci8/oci8.h, ext/oci8/bind.c, ext/oci8/stmt.c,
|
1055
|
+
lib/oci8/oci8.rb: Support LONG and LONG RAW longer than 65535 bytes.
|
467
1056
|
Add OCI8#long_read_len and OCI8#long_read_len= to set max long
|
468
1057
|
length.
|
469
1058
|
* ext/oci8/oraconf.rb: fix typo.
|
470
1059
|
|
471
1060
|
2006-07-20 KUBO Takehiro <kubo@jiubao.org>
|
472
|
-
* ext/oci8/oci8.c, ext/oci8/
|
473
|
-
|
474
|
-
|
475
|
-
* ext/oci8/
|
476
|
-
|
477
|
-
|
478
|
-
|
479
|
-
|
480
|
-
|
481
|
-
|
482
|
-
|
483
|
-
|
484
|
-
|
485
|
-
|
486
|
-
|
487
|
-
|
488
|
-
* ext/oci8/
|
1061
|
+
* ext/oci8/oci8.h, ext/oci8/rowid.c, ext/oci8/oci8lib.c: change
|
1062
|
+
Rowid's internal structure when OCIRowidToChar is available.
|
1063
|
+
The new structure can be passed to Marshal.
|
1064
|
+
* VERSION, Makefile, ext/oci8/extconf.rb:
|
1065
|
+
read version string from the VERSION file.
|
1066
|
+
|
1067
|
+
2006-06-27 KUBO Takehiro <kubo@jiubao.org>
|
1068
|
+
Many method move to C layer. Add support of Timestamp, Interval
|
1069
|
+
year to month and Interval day to second. Oracle's Date become
|
1070
|
+
DateTime instead of OraDate.
|
1071
|
+
* ext/oci8/env.c: 1. delete code registering ruby_xmalloc(),
|
1072
|
+
ruby_xrealloc() and ruby_xfree() to OCI library. These
|
1073
|
+
API cannot be called only in ruby VM's native thread.
|
1074
|
+
2. add workaround code to avoid breaking ENV.
|
1075
|
+
* ext/oci8/oci8.c: move OCI8#parse from ruby to C layer.
|
1076
|
+
* ext/oci8/oci8.h, ext/oci8/oci8lib.c: add oci8_id_* variables.
|
1077
|
+
* ext/oci8/ocidatetime.c: delete OCIDateTime and OCIInterval.
|
1078
|
+
add OCI8::BindType::DateTime, OCI8::BindType::IntervalYM and
|
1079
|
+
OCI8::BindType::IntervalDS.
|
1080
|
+
* ext/oci8/ocinumber.c: delete OCI8::Math::E, OCINumber#trunc
|
1081
|
+
and OCINumber#sign. add OCINumber#truncate and
|
1082
|
+
OCI8::BindType::Integer.
|
1083
|
+
* ext/oci8/oraconf.rb:fix for OracleXE windows version. OracleXE's
|
489
1084
|
registry path is \\HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_XE.
|
490
|
-
|
491
|
-
|
492
|
-
|
493
|
-
|
494
|
-
|
495
|
-
|
496
|
-
|
497
|
-
*
|
498
|
-
|
499
|
-
|
500
|
-
* ext/oci8/const.c, ext/oci8/handle.c, ext/oci8/oci8.h, ext/oci8/stmt.c:
|
501
|
-
Fix a memory leak when binding a placeholder which is already
|
502
|
-
bound. In C layer, bind handles were registered to an Array.
|
503
|
-
There is no chance to unregister it except closing Cursor.
|
504
|
-
Now bind handles are registered to a Hash. When already bound
|
505
|
-
placeholder is bound, the old bind handle is unregistered.
|
506
|
-
* lib/oci8.rb.in: initialize @prefetch_rows.
|
1085
|
+
* ext/oci8/oranumber.c: move OCI8::BindType::Integer to ocinumber.c
|
1086
|
+
* ext/oci8/stmt.c: OCI8::Cursor#initialize become private.
|
1087
|
+
move OCI8::Cursor#fetch, OCI8::Cursor#[], OCI8::Cursor#[]=,
|
1088
|
+
OCI8::Cursor#keys from ruby to C layer. add a private method
|
1089
|
+
OCI8::Cursor#__defined?
|
1090
|
+
* lib/oci8/oci8.rb: many methods move to C layer.
|
1091
|
+
* lib/oci8/interval.rb: add OCI8::IntervalYM an OCI8::IntervalDS.
|
1092
|
+
* lib/ocidatetime.rb: deleted.
|
1093
|
+
* test/test_dbi.rb: fix test script which retrieving Date.
|
1094
|
+
* test/test_oci8.rb: fix test script which retrieving Date.
|
507
1095
|
|
508
1096
|
2006-03-05 KUBO Takehiro <kubo@jiubao.org>
|
509
1097
|
* ext/oci8/oraconf.rb: add check_ruby_header to warn when
|
510
1098
|
broken darwin ruby.
|
511
1099
|
add export #{ld_path} in check_instant_client().
|
512
1100
|
|
513
|
-
2006-02-26 KUBO Takehiro <kubo@jiubao.org>
|
514
|
-
release as 0.1.14.
|
515
|
-
* ext/oci8/const.c: add OCI_PTYPE_UNK.
|
516
|
-
|
517
1101
|
2006-02-25 KUBO Takehiro <kubo@jiubao.org>
|
518
|
-
*
|
519
|
-
|
520
|
-
|
521
|
-
|
522
|
-
*
|
523
|
-
|
524
|
-
|
525
|
-
|
526
|
-
|
527
|
-
|
528
|
-
*
|
529
|
-
|
530
|
-
*
|
531
|
-
|
532
|
-
|
533
|
-
|
534
|
-
|
535
|
-
|
536
|
-
*
|
537
|
-
|
538
|
-
|
539
|
-
|
540
|
-
|
1102
|
+
* ext/oci8/metadata.c: set default value zero in C of private method
|
1103
|
+
OCI::Metadata::Base#__get_*. add a private method
|
1104
|
+
OCI::Metadata::Base#__charset_name.
|
1105
|
+
* lib/DBD/OCI8/OCI8.rb: fix to work with ruby-oci8 0.1 also.
|
1106
|
+
* lib/oci8/metadata.rb: refactor and add comments for rdoc.
|
1107
|
+
|
1108
|
+
2006-02-11 KUBO Takehiro <kubo@jiubao.org>
|
1109
|
+
* lib/oci8.rb.in: require oci8/compat.rb also.
|
1110
|
+
* lib/oci8/compat.rb: add a new file. Old version's features
|
1111
|
+
are moved from lib/oci8/oci8.rb.
|
1112
|
+
* lib/oci8/metadata.rb: data_type's return value become symbol
|
1113
|
+
instead of number.
|
1114
|
+
* lib/oci8/oci8.rb: Old version's features are moved to
|
1115
|
+
lib/oci8/compat.rb.
|
1116
|
+
|
1117
|
+
2006-02-09 KUBO Takehiro <kubo@jiubao.org>
|
1118
|
+
add OCI8::Metadata module.
|
1119
|
+
* ext/oci8/error.c: add oci8_get_error_code().
|
1120
|
+
* ext/oci8/extconf.rb: delete param.o and add metadata.o.
|
1121
|
+
* ext/oci8/metadata.c: add a new file.
|
1122
|
+
* ext/oci8/oci8.h: add oci8_get_error_code(), Init_oci8_metadata(),
|
1123
|
+
oci8_metadata_create() and ora_number_to_str().
|
1124
|
+
delete and oci8_param_create().
|
1125
|
+
* ext/oci8/oci8lib.c: call Init_oci8_metadata() instead of
|
1126
|
+
Init_oci8_param().
|
1127
|
+
* ext/oci8/oranumber.c: export ora_number_to_str().
|
1128
|
+
* ext/oci8/param.c: deleted.
|
1129
|
+
* ext/oci8/stmt.c: call oci8_metadata_create instead of
|
1130
|
+
oci8_param_create().
|
1131
|
+
* lib/oci8.rb.in: require 'oci8/metadata.rb'
|
1132
|
+
* lib/oci8/metadata.rb: add a new file.
|
1133
|
+
|
1134
|
+
2006-02-08 KUBO Takehiro <kubo@jiubao.org>
|
1135
|
+
* lib/oci8.rb: move almost code to lib/oci8/oci8.rb.
|
1136
|
+
* lib/oci8/oci8.rb: moved from lib/oci8.rb.
|
1137
|
+
|
1138
|
+
2006-02-04 KUBO Takehiro <kubo@jiubao.org>
|
1139
|
+
merge OCIStmt to OCi8::Curosr.
|
1140
|
+
* ext/oci8/oci8.c: implement OCI8::autocommit? and OCI8::autocommit=
|
1141
|
+
in C layer.
|
1142
|
+
* ext/oci8/oci8.h: fix oci8_svcctx_t structure to support
|
1143
|
+
OCI8::autocommit in C layer. fix Init_oci8_stmt() prototype.
|
1144
|
+
* ext/oci8/oci8lib.c: fix Init_oci8_stmt().
|
1145
|
+
* ext/oci8/stmt.c: OCIStmt become OCI8::Cursor. Almost OCIStmt's
|
1146
|
+
methods become private methods, which are called by ruby layer.
|
1147
|
+
* lib/oci8.rb.in: delete OCI8::autocommit?, OCI8::autocommit=,
|
1148
|
+
|
1149
|
+
2006-02-02 KUBO Takehiro <kubo@jiubao.org>
|
1150
|
+
move non-blocking handling code from oci8.rb to oci8lib.so.
|
1151
|
+
* ext/oci8/error.c: add OCIBreak class.
|
1152
|
+
* ext/oci8/oci8.c: move oci8_svcctx_t to oci8.h.
|
1153
|
+
change oci8_commit(), oci8_rollback(), oci8_non_blocking_p()
|
1154
|
+
and oci8_set_non_blocking() to use oci_rc macro.
|
1155
|
+
change oci8_break() for oci_rc macro.
|
1156
|
+
delete oci8_reset(). OCIReset is called in oci_rc macro now.
|
1157
|
+
change oci8_get_svcctx() scope to global.
|
1158
|
+
implement OCI8#commit, OCI8#rollback, OCI8#non_blocking?,
|
1159
|
+
OCI8#non_blocking=, OCI8#break in C layer.
|
1160
|
+
* ext/oci8/oci8.h: move oci8_svcctx_t from oci8.c.
|
1161
|
+
implement oci_rc2 and oci_rc macro.
|
1162
|
+
* ext/oci8/stmt.c: change oci8_stmt_execute() and oci8_stmt_fetch()
|
1163
|
+
to use oci_rc macro.
|
1164
|
+
* lib/oci8.rb.in: delete non-blocking handling code.
|
1165
|
+
delete OCI8#commit, OCI8#rollback, OCI8#non_blocking?,
|
1166
|
+
OCI8#non_blocking=, OCI8#break from ruby layer.
|
1167
|
+
|
1168
|
+
2006-01-29 KUBO Takehiro <kubo@jiubao.org>
|
1169
|
+
* ext/oci8/oci8lib.c: rename OCI8Base to OCIHandle.
|
1170
|
+
|
1171
|
+
2006-01-28 KUBO Takehiro <kubo@jiubao.org>
|
1172
|
+
* ext/oci8/const.c: delete this file.
|
1173
|
+
delete global constants OCI_TYPECODE_*.
|
1174
|
+
* ext/oci8/extconf.rb: delete const.o from compilation objects.
|
1175
|
+
* ext/oci8/oci8lib.c: move oci8_id_new, OCI_DEFAULT and
|
1176
|
+
OCI_COMMIT_ON_SUCCESS from const.c.
|
1177
|
+
rename Init_oci8_svcctx() to Init_oci8().
|
1178
|
+
* ext/oci8/oci8.c: rename Init_oci8_svcctx() to Init_oci8().
|
1179
|
+
* ext/oci8/oci8.h: rename Init_oci8_svcctx() to Init_oci8() and so on...
|
1180
|
+
|
1181
|
+
2006-01-28 KUBO Takehiro <kubo@jiubao.org>
|
1182
|
+
* ext/oci8/bind.c, ext/oci8/error.c, ext/oci8/oci8.c,
|
1183
|
+
ext/oci8/ocidatetime.c, ext/oci8/oradate.c,
|
1184
|
+
ext/oci8/oranumber.c, ext/oci8/param.c, ext/oci8/rowid.c,
|
1185
|
+
ext/oci8/stmt.c: fix indentation.
|
1186
|
+
* .cvsignore, ext/oci8/.cvsignore: added.
|
1187
|
+
|
1188
|
+
2005-10-22 KUBO Takehiro <kubo@jiubao.org>
|
1189
|
+
* ext/oci8/oci8lib.c, ext/oci8/oci8.c, ext/oci8/svcctx.c, ext/oci8/extconf.rb:
|
1190
|
+
oci8.c is renamed to oci8lib.c.
|
1191
|
+
svcctx.c is renamed to oci8.c.
|
1192
|
+
|
1193
|
+
2005-10-22 KUBO Takehiro <kubo@jiubao.org>
|
1194
|
+
* ext/oci8/ocidatetime.c: fix to bind OCIDateTime.
|
541
1195
|
* ext/oci8/oraconf.rb: add -R to linker on Solaris and Linux.
|
542
1196
|
http://rubyforge.org/tracker/index.php?func=detail&aid=2148&group_id=256&atid=1051
|
543
|
-
*
|
1197
|
+
* ext/oci8/svcctx.c: change a setter name. __non_blocking= doesn't work. use
|
1198
|
+
__set_non_blocking instead.
|
1199
|
+
* lib/oci8.rb.in: add ruby's Datetime support.
|
1200
|
+
* lib/ocidatetime.rb: add a ruby's Datetime support file.
|
1201
|
+
* test/test_all.rb: fix
|
1202
|
+
* test/test_break.rb: add two assesion to check a non_blocking status.
|
544
1203
|
* test/test_dbi.rb, test/test_oci8.rb: testcases for DateTime.
|
545
1204
|
* test/test_oradate.rb: delete an unsuccessfull testcase, which depends on libc implementation.
|
546
|
-
* README: add bind-types.
|
547
|
-
* Makefile, ext/oci8/extconf.rb: change version to 0.1.13.
|
548
1205
|
|
549
|
-
2005-07-
|
550
|
-
*
|
551
|
-
|
552
|
-
|
553
|
-
|
554
|
-
|
1206
|
+
2005-07-17 KUBO Takehiro <kubo@jiubao.org>
|
1207
|
+
* ext/oci8/lob.c, ext/oci8/oci8.c, ext/oci8/oci8.h, lib/oci8.rb.in:
|
1208
|
+
delete OCILobLocator. implement OCI8::LOB by C instead of ruby.
|
1209
|
+
* ext/oci8/svcctx.c: add more check in oci8_get_svcctx().
|
1210
|
+
|
1211
|
+
2005-07-17 KUBO Takehiro <kubo@jiubao.org>
|
1212
|
+
* ext/oci8/bind.c, ext/oci8/lob.c, ext/oci8/oci8.h, ext/oci8/ocidatetime.c,
|
1213
|
+
ext/oci8/ocinumber.c, ext/oci8/oradate.c, ext/oci8/oranumber.c,
|
1214
|
+
ext/oci8/rowid.c, ext/oci8/stmt.c, ext/oci8/svcctx.c:
|
1215
|
+
change arguments of (oci8_bind_class_t *)->init(). change the return
|
1216
|
+
value of oci8_get_svcctx(). add oci8_get_oci_session().
|
1217
|
+
* lib/oci8.rb.in: change arguments of OCI8::BindType:Base.new().
|
555
1218
|
|
556
1219
|
2005-07-16 KUBO Takehiro <kubo@jiubao.org>
|
557
1220
|
* metaconfig: move "require 'base64'" and "require 'zlib'" to the
|
558
1221
|
next line of "def get_zcontent(file)" for a ruby which doesn't
|
559
1222
|
have 'zlib'.
|
560
1223
|
|
1224
|
+
2005-07-10 KUBO Takehiro <kubo@jiubao.org>
|
1225
|
+
* ext/oci8/oci8.c, ext/oci8/oci8.h, ext/oci8/svcctx.c, lib/oci8.rb.in:
|
1226
|
+
OCISvcCtx class is merged to OCI8 class. OCISvcCtx's public instance
|
1227
|
+
methods become OCI8's private instance methods.
|
1228
|
+
* ext/oci8/depend: deleted.
|
1229
|
+
|
1230
|
+
2005-07-10 KUBO Takehiro <kubo@jiubao.org>
|
1231
|
+
* Makefile, ext/oci8/extconf.rb: change version to 0.2.0-alpha.
|
1232
|
+
* ext/oci8/extconf.rb: add "ocidatetime.o" to $objs. add '--with-instant-client'
|
1233
|
+
to Makefile when setup.rb is called with '--with-instant-client'.
|
1234
|
+
* ext/oci8/oci8.c: add oci8_base_class. fix bug in oci8_handle_initialize().
|
1235
|
+
call Init_oci_datetime() in Init_oci8().
|
1236
|
+
* ext/oci8/oci8.h: add macros oci_lc, CHECK_STRING, TO_STRING_PTR and TO_STRING_LEN.
|
1237
|
+
* ext/oci8/ocinumber.c: add oci8_get_ocinumber().
|
1238
|
+
* ext/oci8/ocidatetime.c: add a new file for OCIDateTime.
|
1239
|
+
|
1240
|
+
2005-07-09 KUBO Takehiro <kubo@jiubao.org>
|
1241
|
+
* ext/oci8/bind.c, ext/oci8/lob.c, ext/oci8/oci8.h, ext/oci8/oradate.c,
|
1242
|
+
ext/oci8/oranumber.c, ext/oci8/rowid.c, ext/oci8/stmt.c:
|
1243
|
+
use doubly linked list to free OCI8::BindType::*.
|
1244
|
+
* ext/oci8/extconf.rb, ext/oci8/oci8.c, ext/oci8/ocinumber.c: add OCINumber.
|
1245
|
+
|
1246
|
+
2005-07-03 KUBO Takehiro <kubo@jiubao.org>
|
1247
|
+
* ext/oci8/*.c, ext/oci8/*.h: remove oci8_handle_t and oci8_base_class_t.
|
1248
|
+
use oci8_base_t and oci8_bind_t instead of them. use oci8_base_class_t
|
1249
|
+
and oci8_bind_class_t.
|
1250
|
+
* ext/oci8/descriptor.c, ext/oci8/handle.c: removed.
|
1251
|
+
* ext/oci8/rowid.c: added.
|
1252
|
+
|
1253
|
+
2005-07-01 KUBO Takehiro <kubo@jiubao.org>
|
1254
|
+
* ext/oci8/oraconf.rb: try default $libs then get from demo_rdbms.mk.
|
1255
|
+
|
1256
|
+
2005-06-29 KUBO Takehiro <kubo@jiubao.org>
|
1257
|
+
* ext/oci8/oraconf.rb: don't read sysliblist when instant client.
|
1258
|
+
|
1259
|
+
2005-06-12 KUBO Takehiro <kubo@jiubao.org>
|
1260
|
+
* ext/oci8/const.c: delete unused constants.
|
1261
|
+
move some oci_id_* to ext/oci8/error.c.
|
1262
|
+
move oci8_sym_*stmt to ext/oci8/stmt.c.
|
1263
|
+
* ext/oci8/error.c:
|
1264
|
+
move some oci_id_* from ext/oci8/const.c.
|
1265
|
+
move subclasses of cOCIException from ext/oci8/oci8.c.
|
1266
|
+
* ext/oci8/extconf.rb: add have_func("localtime_r").
|
1267
|
+
* ext/oci8/handle.c: delete explicit OCIParam.
|
1268
|
+
* ext/oci8/lob.c: delete #ifdef OCI8_USE_CALLBACK_LOB_READ.
|
1269
|
+
* ext/oci8/oci8.c:
|
1270
|
+
move subclasses of cOCIException to ext/oci8/error.c.
|
1271
|
+
move cOraDate to ext/oci8/oradate.c.
|
1272
|
+
move cOraNumber to ext/oci8/oranumber.c.
|
1273
|
+
* ext/oci8/oci8.h:
|
1274
|
+
move ora_date_t to ext/oci8/oradate.c.
|
1275
|
+
move ora_number_t and ora_vnumber_t to ext/oci8/oranumber.c.
|
1276
|
+
* ext/oci8/oradate.c: fix indentation.
|
1277
|
+
move cOraDate from ext/oci8/oci8.c.
|
1278
|
+
move ora_date_t from ext/oci8/oci8.h.
|
1279
|
+
* ext/oci8/oranumber.c: fix indentation.
|
1280
|
+
move cOraNumber from ext/oci8/oci8.c.
|
1281
|
+
move ora_number_t and ora_vnumber_t from ext/oci8/oci8.h.
|
1282
|
+
* ext/oci8/param.c: delete OCIParam#paramGet().
|
1283
|
+
* ext/oci8/stmt.c:
|
1284
|
+
move oci8_sym_*stmt from ext/oci8/const.c.
|
1285
|
+
fix OCIStmt#prepare() and OCIStmt#execute().
|
1286
|
+
|
1287
|
+
2005-06-12 KUBO Takehiro <kubo@jiubao.org>
|
1288
|
+
* ext/oci8/bind.c: add oci8_register_bind_type().
|
1289
|
+
move bind_rowid* to ext/oci8/descriptor.c.
|
1290
|
+
move bind_clob* and bind_blob* to ext/oci8/lob.c.
|
1291
|
+
move bind_oradate* to ext/oci8/oradate.c.
|
1292
|
+
move bind_oranumber* and bind_integer* to ext/oci8/oranumber.c.
|
1293
|
+
move bind_stmt* to ext/oci8/stmt.c.
|
1294
|
+
* ext/oci8/const.c: add oci8_sym_*_stmt. delete ruby constants OCI_STMT_*.
|
1295
|
+
* ext/oci8/descriptor.c: move bind_rowid* from ext/oci8/bind.c.
|
1296
|
+
* ext/oci8/lob.c: move bind_clob* and bind_blob* from ext/oci8/bind.c.
|
1297
|
+
* ext/oci8/oci8.c: change initialization order for oci8_register_bind_type().
|
1298
|
+
* ext/oci8/oci8.h: add oci8_register_bind_type(). add oci8_sym_*_stmt.
|
1299
|
+
* ext/oci8/oradate.c: move bind_oradate* from ext/oci8/bind.c.
|
1300
|
+
oci8_set_ora_date() become a static function.
|
1301
|
+
delete oci8_get_ora_date().
|
1302
|
+
* ext/oci8/oranumber.c: move bind_oranumber* and bind_integer* from ext/oci8/bind.c.
|
1303
|
+
* ext/oci8/stmt.c: move bind_stmt* from ext/oci8/bind.c.
|
1304
|
+
OCIStmt#stmt_type returns a Symbol instead of a Fixnum.
|
1305
|
+
* lib/oci8.rb.in: OCI8::Cursor#type returns a Symbol instead of a Fixnum.
|
1306
|
+
|
1307
|
+
2005-06-12 KUBO Takehiro <kubo@jiubao.org>
|
1308
|
+
* ext/oci8/extconf.rb: add have_func("OCILobLocatorAssign").
|
1309
|
+
* ext/oci8/lob.c: delete OCILobLocator#getChunkSize().
|
1310
|
+
use OCILobAssign instead of OCILobLocatorAssign on Oracle 8.
|
1311
|
+
* ext/oci8/attr.c, ext/oci8/oci8.h: delete OCI*#attrGet(), OCI*#attrSet().
|
1312
|
+
* ext/oci8/const.c: delete OCI_ATTR_* constants.
|
1313
|
+
* ext/oci8/descriptor.c: delete OCIDescriptor#attrGet(), OCIDescriptor#attrSet().
|
1314
|
+
* ext/oci8/handle.c: delete OCIHandle#attrGet(), OCIHandle#attrSet().
|
1315
|
+
* ext/oci8/param.c: add OCIParam#name, OCIParam#data_type, OCIParam#data_size,
|
1316
|
+
OCIParam#precision and OCIParam#scale.
|
1317
|
+
* ext/oci8/stmt.c: add OCIStmt#stmt_type, OCIStmt#row_count, OCIStmt#rowid and
|
1318
|
+
OCIStmt#param_count.
|
1319
|
+
* lib/oci8.rb.in: use OCIParam#name, OCIParam#data_type, OCIParam#data_size,
|
1320
|
+
OCIParam#precision, OCIParam#scale, OCIStmt#stmt_type, OCIStmt#row_count,
|
1321
|
+
OCIStmt#rowid and OCIStmt#param_count instead of OCIHandle#attrGet() and
|
1322
|
+
OCIDescriptor#attrGet().
|
1323
|
+
|
1324
|
+
2005-06-12 KUBO Takehiro <kubo@jiubao.org>
|
1325
|
+
* ext/oci8/oraconf.rb: rewrie OraConf#check_lp64().
|
1326
|
+
* ext/oci8/bind.c, ext/oci8/descriptor.c, ext/oci8/env.c,
|
1327
|
+
ext/oci8/handle.c, ext/oci8/lob.c, ext/oci8/oci8.h,
|
1328
|
+
ext/oci8/stmt.c, ext/oci8/svcctx.c, lib/oci8.rb.in:
|
1329
|
+
delete an OCIEnv instance from each instance method's argument.
|
1330
|
+
get it from the internal global variable in C.
|
1331
|
+
* ext/oci8/oci8.c, lib/DBD/OCI8/OCI8.rb: change the OCIBind class name
|
1332
|
+
to OCI8::BindType::Base.
|
1333
|
+
* lib/oci8.rb.in: fix typo rb_eArgError to ArgumentError.
|
1334
|
+
|
1335
|
+
2005-06-08 KUBO Takehiro <kubo@jiubao.org>
|
1336
|
+
* ext/oci8/oraconf.rb: test __64BIT__ to check whether lp64. (for AIX 64bit)
|
1337
|
+
|
561
1338
|
2005-05-31 KUBO Takehiro <kubo@jiubao.org>
|
562
1339
|
* ext/oci8/oraconf.rb: fix for cygwin. fix for oracle instant client.
|
563
1340
|
* metaconfig: add distbin task.
|
564
1341
|
|
565
1342
|
2005-05-29 KUBO Takehiro <kubo@jiubao.org>
|
566
|
-
*
|
567
|
-
|
568
|
-
|
569
|
-
|
570
|
-
|
571
|
-
|
572
|
-
|
573
|
-
|
574
|
-
*
|
1343
|
+
* ext/oci8/oraconf.rb: change the detection logic for Multiple
|
1344
|
+
Oracle Homes on Windows.
|
1345
|
+
|
1346
|
+
2005-05-24 KUBO Takehiro <kubo@jiubao.org>
|
1347
|
+
* ext/oci8/oraconf.rb: use "-L#{@oracle_home}/lib(32) -lclntsh" as
|
1348
|
+
a last resort.
|
1349
|
+
|
1350
|
+
2005-04-14 KUBO Takehiro <kubo@jiubao.org>
|
1351
|
+
* ext/oci8/oraconf.rb: fix for Cygwin with Oracle instant client.
|
1352
|
+
add Oraconf#lp64, which is true when long and pointer are 64 bits.
|
1353
|
+
improve error message.
|
1354
|
+
|
1355
|
+
2005-04-10 KUBO Takehiro <kubo@jiubao.org>
|
1356
|
+
* README: change the document format for rdoc.
|
1357
|
+
* ext/oci8/bind.c, ext/oci8/descriptor.c, ext/oci8/env.c,
|
1358
|
+
ext/oci8/error.c, ext/oci8/const.c, ext/oci8/handle.c
|
1359
|
+
ext/oci8/oci8.c, ext/oci8/oci8.h, ext/oci8/stmt.c:
|
1360
|
+
change bind_type_t structure. bind_* variables in binc.c
|
1361
|
+
become OCI8::BindType::* which are subclasses of OCIBind.
|
1362
|
+
add envh member to oci8_handle_t and oci8_bind_handle_t.
|
1363
|
+
add OCIRowid#initialize.
|
1364
|
+
delete macros to compile on ruby 1.6.
|
1365
|
+
* lib/oci8.rb.in: add comments for rdoc.
|
1366
|
+
change OCI8::BindType::*.
|
1367
|
+
* lib/DBD/OCI8/OCI8.rb
|
1368
|
+
change DBI::DBD::OCI8::BindType::*.
|
1369
|
+
|
1370
|
+
2005-04-06 KUBO Takehiro <kubo@jiubao.org>
|
1371
|
+
* ext/oci8/oci8.h, ext/oci8/handle.c: delete enum oci8_bind_type.
|
1372
|
+
add oci8_bind_type_t.
|
1373
|
+
* ext/oci8/bind.c: add oci8_bind_type_t structures bind_string, bind_raw,
|
1374
|
+
bind_fixnum, bind_float, bind_oradate, bind_integer, bind_oranumber,
|
1375
|
+
bind_rowid, bind_clob, bind_blob, and bind_stmt.
|
1376
|
+
add oci8_bind_type_set() and oci8_bind_type_get() to get/set
|
1377
|
+
an oci8_bind_type_t structure.
|
1378
|
+
delete oci8_get_value() and oci8_set_value(), use
|
1379
|
+
(oci8_bind_type_t*)->get()/set() instead.
|
1380
|
+
* ext/oci8/stmt.c: change check_bind_type() by using oci8_bind_type_t.
|
1381
|
+
change oci8_define_by_pos(), oci8_bind_by_pos() and oci8_bind_by_name().
|
1382
|
+
* ext/oci8/MANIFEST, ext/oci8/depend, ext/oci8/extconf.rb, ext/oci8/oci8.c,
|
1383
|
+
ext/oci8/define.c: delete define.c and Init_define().
|
1384
|
+
* lib/oci8.rb.in: change OCI8::BindType::Float, OCI8::BindType::Fixnum,
|
1385
|
+
OCI8::BindType::Integer and OCI8::BindType::OraNumber for in-bind.
|
1386
|
+
|
1387
|
+
2005-04-03 KUBO Takehiro <kubo@jiubao.org>
|
1388
|
+
* ext/oci8/oraconf.rb: improve Oracle instance client check:
|
1389
|
+
1. add more strict libclntsh.so check.
|
1390
|
+
2. change LD_LIBRARY_PATH message by its platform.
|
1391
|
+
3. add '-Wl,-rpath,#{lib_dir}' to $libs when Linux.
|
1392
|
+
* ext/oci8/MANIFEST, ext/oci8/depend, ext/oci8/extconf.rb:
|
1393
|
+
delete server.c and session.c.
|
1394
|
+
* ext/oci8/attr.c: delete OCISvcCtx#attrGet(OCI_ATTR_NONBLOCKING_MODE),
|
1395
|
+
OCISvcCtx#attrSet(OCI_ATTR_NONBLOCKING_MODE, nil),
|
1396
|
+
OCISvcCtx#attrSet(OCI_ATTR_SERVER, aOCIServer),
|
1397
|
+
OCISvcCtx#attrSet(OCI_ATTR_SESSION, aOCISession).
|
1398
|
+
* ext/oci8/const.c: delete constants unused by high-level API.
|
1399
|
+
delete oci8_id_server, oci8_id_session.
|
1400
|
+
* ext/oci8/handle.c, ext/oci8/descriptor.c: use ruby1.8 allocation
|
1401
|
+
framework.
|
1402
|
+
* ext/oci8/env.c: add OCIEnv.new. delete OCIEnv.initialise(),
|
1403
|
+
OCIEnv.init(), OCIEnv.create(), OCIEnv.terminate(),
|
1404
|
+
OCIEnv#alloc(), OCIEnv#logon().
|
1405
|
+
* ext/oci8/oci8.c, ext/oci8/oci8.h: use ruby1.8 allocation
|
1406
|
+
framework. delete OCIServer and OCISession.
|
1407
|
+
* ext/oci8/lob.c: add OCILobLocator.new
|
1408
|
+
* ext/oci8/stmt.c: add OCIStmt.new
|
1409
|
+
* ext/oci8/svcctx.c: add OCISvcCtx.new, OCISvcCtx#non_blocking?,
|
1410
|
+
OCISvcCtx#non_blocking=
|
1411
|
+
* ext/oci8/server.c, ext/oci8/session.c: deleted.
|
1412
|
+
* lib/oci8.rb.in: use OCIEnv.new and OCISvcCtx.new instead of
|
1413
|
+
OCIEnv.create, OCIEnv#alloc, OCISession#begin, OCIServer#attach.
|
1414
|
+
use OCISvcCtx.logoff instead of OCISession#end, OCIServer#detach,
|
1415
|
+
OCISvcCtx.free. use OCISvcCtx#non_blocking? instead of
|
1416
|
+
OCISvcCtx#attrGet(OCI_ATTR_NONBLOCKING_MODE).
|
1417
|
+
use OCISvcCtx#non_blocking= instead of
|
1418
|
+
OCISvcCtx#attrSet(OCI_ATTR_NONBLOCKING_MODE, nil).
|
1419
|
+
use <OCICLASS>.new(anOCIEnv) instead of
|
1420
|
+
OCIEnv#alloc(<OCIClass>)
|
1421
|
+
* lib/DBD/OCI8/OCI8.rb: use OCIStmt.new(env) instead of
|
1422
|
+
env.alloc(OCIStmt).
|
1423
|
+
|
1424
|
+
2005-03-27 KUBO Takehiro <kubo@jiubao.org>
|
1425
|
+
* ext/oci8/server.c: delete OCIServer#version, OCIServer#break, OCIServer#reset.
|
1426
|
+
* ext/oci8/stmt.c: OCIStmt#bindByName accepts a symbol as a bind name.
|
1427
|
+
* lib/oci8.rb.in: add OCI8::LOB#sync, OCI8::LOB#sync= and OCI8::LOB#flush.
|
1428
|
+
* test/test_bind_raw.rb, test/test_bind_time.rb, test/test_clob.rb,
|
1429
|
+
test/test_oradate.rb, test/test_oranumber.rb: use OCI8 high-level API
|
1430
|
+
instead of low-level API.
|
575
1431
|
|
576
1432
|
2005-03-24 KUBO Takehiro <kubo@jiubao.org>
|
577
|
-
* branch as oci8-0-1.
|
578
1433
|
* oci8.rb.in: fix bug on binding Time or Date.
|
579
|
-
*
|
1434
|
+
* support/*: deleted.
|
1435
|
+
* test/*.rb: use 'test/unit' instead of runit.
|
1436
|
+
ruby 1.6.8 won't be supported by this commit.
|
1437
|
+
* ext/oci8/MANIFEST, ext/oci8/depend, ext/oci8/describe.c(deleted),
|
1438
|
+
ext/oci8/env.c, ext/oci8/extconf.rb, ext/oci8/handle.c,
|
1439
|
+
ext/oci8/oci8.c, ext/oci8/oci8.h, ext/oci8/svcctx.c:
|
1440
|
+
delete OCIDescribe and OCISvcCtx#describeAny. OCIDescribe isn't used by
|
1441
|
+
oci8 high-level API.
|
1442
|
+
* test/test_all.rb, test/test_describe.rb(deleted): delete OCIDescribe
|
1443
|
+
test cases.
|
580
1444
|
|
581
1445
|
2005-03-23 KUBO Takehiro <kubo@jiubao.org>
|
582
1446
|
* oci8.rb.in, OCI8.rb:
|