ruby-oci8 1.0.6-x86-mswin32-60

Sign up to get free protection for your applications and to get access to all the features.
Files changed (50) hide show
  1. data/ChangeLog +693 -0
  2. data/Makefile +51 -0
  3. data/NEWS +407 -0
  4. data/README +415 -0
  5. data/VERSION +1 -0
  6. data/dist-files +71 -0
  7. data/doc/api.en.html +527 -0
  8. data/doc/api.en.rd +554 -0
  9. data/doc/api.ja.html +525 -0
  10. data/doc/api.ja.rd +557 -0
  11. data/doc/manual.css +35 -0
  12. data/ext/oci8/oci8lib.so +0 -0
  13. data/lib/dbd/OCI8.rb +591 -0
  14. data/lib/oci8.rb +1655 -0
  15. data/lib/oci8.rb.in +1655 -0
  16. data/metaconfig +142 -0
  17. data/pre-distclean.rb +7 -0
  18. data/ruby-oci8.gemspec +54 -0
  19. data/ruby-oci8.spec +62 -0
  20. data/setup.rb +1331 -0
  21. data/support/README +4 -0
  22. data/support/runit/assert.rb +281 -0
  23. data/support/runit/cui/testrunner.rb +101 -0
  24. data/support/runit/error.rb +4 -0
  25. data/support/runit/method_mappable.rb +20 -0
  26. data/support/runit/robserver.rb +25 -0
  27. data/support/runit/setuppable.rb +15 -0
  28. data/support/runit/teardownable.rb +16 -0
  29. data/support/runit/testcase.rb +113 -0
  30. data/support/runit/testfailure.rb +25 -0
  31. data/support/runit/testresult.rb +121 -0
  32. data/support/runit/testsuite.rb +43 -0
  33. data/support/runit/version.rb +3 -0
  34. data/test/README +4 -0
  35. data/test/config.rb +129 -0
  36. data/test/test_all.rb +48 -0
  37. data/test/test_bind_raw.rb +53 -0
  38. data/test/test_bind_time.rb +191 -0
  39. data/test/test_break.rb +81 -0
  40. data/test/test_clob.rb +101 -0
  41. data/test/test_connstr.rb +80 -0
  42. data/test/test_dbi.rb +327 -0
  43. data/test/test_dbi_clob.rb +58 -0
  44. data/test/test_describe.rb +137 -0
  45. data/test/test_metadata.rb +243 -0
  46. data/test/test_oci8.rb +273 -0
  47. data/test/test_oradate.rb +263 -0
  48. data/test/test_oranumber.rb +149 -0
  49. data/test/test_rowid.rb +38 -0
  50. metadata +105 -0
@@ -0,0 +1,693 @@
1
+ 2009-05-17 KUBO Takehiro <kubo@jiubao.org>
2
+ * NEWS: add changes between 1.0.5 and 1.0.6.
3
+ * VERSION: change version to 1.0.6.
4
+
5
+ 2009-04-14 KUBO Takehiro <kubo@jiubao.org>
6
+ * ext/oci8/oraconf.rb: Gets ORACLE_HOME from the Windows regitry
7
+ by enumerating subkeys of \\HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE.
8
+
9
+ 2009-04-12 KUBO Takehiro <kubo@jiubao.org>
10
+ * lib/dbd/OCI8.rb: A data dictionary all_constraints doesn't have
11
+ index_name column on Oracle 8i or lower. Rewrite
12
+ DBI::DBD::OCI8::Database#column by using all_cons_columns.
13
+ (backport from ruby-oci8 trunk)
14
+
15
+ 2009-04-12 KUBO Takehiro <kubo@jiubao.org>
16
+ * ext/oci8/extconf.rb, ext/oci8/oci8.h, ext/oci8/oraconf.rb:
17
+ fix a problem when compiling for Oracle 8.0.
18
+ (reported by Axel Reinhold as a ruby-oci8 2.0 issue)
19
+ * lib/dbd/OCI8.rb: fix DBI::DBD::OCI8::BindType::DBIStatementHandle
20
+ to pass a newly added sanity check in dbi 0.4.1.
21
+ (reported by Dirk Herzhauser as a ruby-oci8 2.0 issue)
22
+ * test/test_all.rb: fix to use dbi installed as a rubygem.
23
+
24
+ 2009-03-17 KUBO Takehiro <kubo@jiubao.org>
25
+ * NEWS: add changes between 1.0.4 and 1.0.5.
26
+ * VERSION: change version to 1.0.5.
27
+
28
+ 2009-03-11 KUBO Takehiro <kubo@jiubao.org>
29
+ * oraconf.rb: fix big/little endian checking problem on Mac OS X ppc.
30
+ (contributed by unknown. See: Bug ID 24284 on rubyforge.)
31
+
32
+ 2009-02-08 KUBO Takehiro <kubo@jiubao.org>
33
+ * NEWS: add changes between 1.0.3 and 1.0.4.
34
+ * VERSION: change version to 1.0.4.
35
+ * dist-files: add newly added file names which must be included
36
+ in gem or tar.gz packages.
37
+ * metaconfig: follow the change of dbd/OCI8.rb location.
38
+
39
+ 2009-02-01 KUBO Takehiro <kubo@jiubao.org>
40
+ * lib/dbd/OCI8.rb: add code for ruby-dbi 0.4 type conversion.
41
+ * test/test_dbi.rb: suppress deprecated warnings while running
42
+ test_bind_dbi_data_type.
43
+ * test/test_dbi_clob.rb: fix a problem when running this
44
+ file directly.
45
+
46
+ 2009-01-31 KUBO Takehiro <kubo@jiubao.org>
47
+ * ext/oci8/oraconf.rb: fix for Oracle 11.1.0.7.0 instant
48
+ client rpm package. The directory tree is a bit different
49
+ with that of 11.1.0.6.0 or earlier.
50
+ (reported by Luis Parravicini.)
51
+
52
+ 2009-01-31 KUBO Takehiro <kubo@jiubao.org>
53
+ * lib/DBD/OCI8/OCI8.rb: renamed to lib/dbd/OCI8.rb.
54
+ * lib/dbd/OCI8.rb: 1. renamed from lib/DBD/OCI8/OCI8.rb
55
+ 2. fix USED_DBD_VERSION from 0.2 to 0.4.
56
+ 3. add DBI::DBD::OCI8.driver_name
57
+ (changes for ruby-dbi 0.4 contributed by James Cao.)
58
+
59
+ 2008-12-30 KUBO Takehiro <kubo@jiubao.org>
60
+ * ext/oci8/handle.c, ext/oci8/oci8.h, ext/oci8/svcctx.c: add
61
+ OCISvcCtx.pid, which returns id of the process where the
62
+ OCISvcCtx is created.
63
+ * lib/oci8.rb.in: add check code to ensure that the process id
64
+ is not changed.
65
+
66
+ 2008-12-30 KUBO Takehiro <kubo@jiubao.org>
67
+ * ext/oci8/const.c, ext/oci8/handle.c: suppress compilation warnings.
68
+ (contributed by Daniel Berger)
69
+
70
+ 2008-12-30 KUBO Takehiro <kubo@jiubao.org>
71
+ * ext/oci8/oraconf.rb: add code to check the cpu type of Mac OS X
72
+ libclntsh.dylib.
73
+
74
+ 2008-12-14 KUBO Takehiro <kubo@jiubao.org>
75
+ * lib/oci8.rb.in:
76
+ 1. fix to fetch a rowid column as s String.
77
+ 2. change the return type of OCI8::Cursor#rowid from OCIRowid
78
+ to String. It is a local call on Oracle 9.0 or upper.
79
+ But on Oracle 8.x client, it needs one network roundtrip
80
+ to convert OCIRowid to String on server side.
81
+ 3. fix OCI8#describe_table to prevent OCIStillExecuting when
82
+ non-blocking mode is enabled and it needs a time to
83
+ retrieve table information.
84
+ * ext/oci8/extconf.rb, ext/oci8/oci8.c: add OCIRowid#to_s
85
+ when OCIRowidToChar() is available.
86
+ * test/test_all.rb, test/test_rowid.rb: add a rowid test case.
87
+ * test/test_dbi_clob.rb: fix to pass tests when the test directory
88
+ path is too long.
89
+
90
+ 2008-08-10 KUBO Takehiro <kubo@jiubao.org>
91
+ * NEWS: add changes between 1.0.2 and 1.0.3.
92
+ * VERSION: change version to 1.0.3.
93
+ * ext/oci8/lob.c: add workaround code for a losing character problem
94
+ when reading CLOB. The problem is happened at the following condition.
95
+ 1. Oracle client version is 10.2.0.4 or 11.1.0.6.
96
+ (It doesn't depend on Oracle server version.)
97
+ 2. The character set is a variable-length one (e.g. AL32UTF8).
98
+ (This probmem was reported by Efren Yevale and Thomas Witt and
99
+ fixed with Thomas Witt's help.)
100
+
101
+ 2008-08-09 KUBO Takehiro <kubo@jiubao.org>
102
+ * ext/oci8/lob.c: fix OCILobLocator#getLength for a lob over 1GB,
103
+ which affect OCI8::LOB#size and OCI8::LOB#read. fix
104
+ OCILobLocator#read and OCILobLocator#write to set offset over 2GB,
105
+ which affect OCI8::LOB#read and OCI8::LOB#write.
106
+ (This probmem was reported by Jonathan Hadders.)
107
+
108
+ 2008-07-12 KUBO Takehiro <kubo@jiubao.org>
109
+ * lib/oci8.rb.in: (1) add #to_json to OraDate too.
110
+ (2) fix a bug when using Oracle 8i and dbd. OCI_ATTR_FSPRECISION
111
+ is for TIMESTAMP data type which is new in Oracle 9i.
112
+ (This probmem was reported by Glauco Magnelli.)
113
+
114
+ 2008-07-07 KUBO Takehiro <kubo@jiubao.org>
115
+ * lib/oci8.rb.in: fix the problem that OraNumber#to_json returns
116
+ "{}" when using Rails. (This issue is reported by Alex Moore)
117
+ Object#to_json is added by active_support. But active_support
118
+ doesn't know what OraNumber is.
119
+ * ext/oci8/oraconf.rb: merge chages in ruby-oci8 trunk.
120
+
121
+ 2008-07-05 KUBO Takehiro <kubo@jiubao.org>
122
+ * ext/oci8/oraconf.rb: prints more information on checking
123
+ LD_LIBRARY_PATH.
124
+
125
+ 2008-06-26 KUBO Takehiro <kubo@jiubao.org>
126
+ * NEWS: add changes between 1.0.1 and 1.0.2.
127
+ * VERSION: change version to 1.0.2.
128
+ * Makefile: add targets 'gem' and 'binary_gem' to make pure ruby
129
+ and binary gems.
130
+ * ruby-oci8.spec: rename to ruby-oci8.spec.in.
131
+ * ruby-oci8.spec.in: rename from ruby-oci8.spec and set version
132
+ string from 'VERSION' file.
133
+ * ruby-oci8.gemspec: added.
134
+ * dist-files: add files to ruby-oci8 source packages for gemspec.
135
+ * test/test_clob.rb: fix to pass tests in a deep directory.
136
+
137
+ 2008-06-24 KUBO Takehiro <kubo@jiubao.org>
138
+ * ext/oci8/handle.c: fix a segv bug in gc mark. (Thanks to authorNari)
139
+ * ext/oci8/oraconf.rb: fix for windows Oracle 11g instant client.
140
+ * test/config.rb, test/test_bind_raw.rb, test/test_bind_time.rb,
141
+ test/test_break.rb, test/test_clob.rb, test/test_connstr.rb,
142
+ test/test_dbi.rb, test/test_dbi_clob.rb, test/test_describe.rb,
143
+ test/test_metadata.rb, test/test_oci8.rb, test/test_oradate.rb,
144
+ test/test_oranumber.rb:
145
+ fix to run tests in directories outside of 'test' directory.
146
+
147
+ 2008-04-27 KUBO Takehiro <kubo@jiubao.org>
148
+ * NEWS: add changes between 1.0.0 and 1.0.1.
149
+ * VERSION: update to 1.0.1.
150
+ * ext/oci8/extconf.rb: raise error if the ruby is 1.9.
151
+ * ext/oci8/oraconf.rb: fix for intel mac instant client.
152
+
153
+ 2008-04-08 KUBO Takehiro <kubo@jiubao.org>
154
+ * ext/oci8/oraconf.rb: add error messages for the beta
155
+ version of intel mac oracle instant client. But the production
156
+ version may not need this.
157
+ * lib/oci8.rb.in: change the spec of OCI8#exec and OCI8::Cursor#exec.
158
+ Before this change, the number of rows had been returned
159
+ only when the SQL statement is update, delete or insert
160
+ statement. After this, it is returned when the SQL statement
161
+ is not select statement. For example OCI8#exec had returned
162
+ true for MERGE statement (pointed by Jim Cain). But now it is
163
+ the number of rows processed.
164
+ * ext/oci8/oradate.c, ext/oci8/oranumber.c: fix some (not all) warnings
165
+ in compilation by HP-UX C compiler.
166
+ * ext/oci8/stmt.c: fix a compilation warning. iter's type is ub4. It
167
+ cannot be minus value.
168
+
169
+ 2008-03-04 KUBO Takehiro <kubo@jiubao.org>
170
+ * ext/oci8/extconf.rb: output a message to say 'install
171
+ a ruby development package' when 'mkmf.rb' is not
172
+ found and the platform is Linux. Both ruby and its
173
+ development package are required to compile extension
174
+ libraries on Linux.
175
+
176
+ 2008-02-17 KUBO Takehiro <kubo@jiubao.org>
177
+ * test/config.rb, test/test_break.rb, test/test_dbi.rb,
178
+ test/test_dbi_clob.rb, test/test_metadata.rb, test/test_oci8.rb
179
+ sleep a few seconds and retry if an attempt to connect to
180
+ a database server fails and its error code is ORA-12516
181
+ or ORA-12520 in test cases.
182
+
183
+ 2008-01-12 KUBO Takehiro <kubo@jiubao.org>
184
+ * lib/oci8.rb.in: fix OCI8#non_blocking = false problem.
185
+ Once the connection became non-bocking mode, it could
186
+ not be reset to blocking mode.
187
+ (This problem is reported by Cagdas Gerede.)
188
+ * test/test_break.rb: add a testcase to test the above problem.
189
+
190
+ 2008-01-12 KUBO Takehiro <kubo@jiubao.org>
191
+ * ext/oci8/oradate.c, ext/oci8/oranumber.c: fix SEGV bugs.
192
+ OraDate.new made a core dump on x86_64 linux.
193
+ (This problem is reported by Alun Eyre.)
194
+
195
+ 2008-01-04 KUBO Takehiro <kubo@jiubao.org>
196
+ * ext/oci8/define.c, lib/oci8.rb.in: support cursors in a result
197
+ set without re-defining the define handle.
198
+ * test/test_oci8.rb: delete re-defining in a test case for cursors
199
+ in a result set.
200
+
201
+ 2007-12-29 KUBO Takehiro <kubo@jiubao.org>
202
+ * lib/oci8.rb.in: support cursors in a result set. For example:
203
+ SELECT column1 A, column2 B, CURSOR(SELECT * FROM table2) C
204
+ FROM table1
205
+ (contributed by Randy Gordon)
206
+ * test/test_oci8.rb: add a testcase for cursors in a result set.
207
+
208
+ 2007-12-23 KUBO Takehiro <kubo@jiubao.org>
209
+ * ext/oci8/oraconf.rb: fix for official x86_64 rpms.
210
+ (contributed by Pat.)
211
+
212
+ 2007-11-25 KUBO Takehiro <kubo@jiubao.org>
213
+ release as 1.0.0 again.
214
+ * ext/oci8/stmt.c, test/test_dbi.rb: fix a problem when binding
215
+ ''(empty string) via dbi.
216
+
217
+ 2007-11-25 KUBO Takehiro <kubo@jiubao.org>
218
+ * NEWS: add changes between 1.0.0-rc3 and 1.0.0.
219
+ * VERSION: change version to 1.0.0.
220
+ * dist-files: add test/test_metadata.rb.
221
+ * lib/DBD/OCI8/OCI8.rb, lib/oci8.rb.in, test/test_metadata.rb:
222
+ rename OCI8::Metadata::Column#is_null? to
223
+ OCI8::Metadata::Column#nullable?.
224
+ * test/test_oci8.rb: add asserts binding Nan, +Infinity and
225
+ -Inifinty.
226
+
227
+ 2007-11-18 KUBO Takehiro <kubo@jiubao.org>
228
+ * lib/DBD/OCI8/OCI8.rb: add StatementHandle#column_info.
229
+ refine DatabaseHandle#columns.
230
+ * test/test_dbi.rb: add a testcase for StatementHandle#column_info
231
+ and DatabaseHandle#columns.
232
+
233
+ 2007-11-17 KUBO Takehiro <kubo@jiubao.org>
234
+ * ext/oci8/error.c: add OCIError#initialize(msg, code = nil).
235
+ * lib/oci8.rb.in: add OCI8#describe_table(table_name),
236
+ OCI8::Metadata::Table and OCI8::Metadata::View.
237
+ * test/test_metadata.rb: fix test_metadata for OCI8#describe_table.
238
+ add test_error_describe_table.
239
+
240
+ 2007-11-17 KUBO Takehiro <kubo@jiubao.org>
241
+ * lib/oci8.rb.in: OCI8::Cursor#fetch_hash accepts a block now.
242
+ OCI8#commit and OCI8#rollback return self now. They had returned
243
+ an OCISvcCtx which is internally used.
244
+ * test/test_oci8.rb: add a test for fetch_hash with a block.
245
+ * ext/oci8/oci8.h: fix a potential bug.
246
+ http://rubyforge.org/forum/forum.php?thread_id=19213&forum_id=1078
247
+ * ext/oci8/attr.c: fix signedness. Logically this won't be related with
248
+ the following URL's problem. But there is a few possibility.
249
+ http://rubyforge.org/forum/forum.php?thread_id=15158&forum_id=1078
250
+
251
+ 2007-11-16 KUBO Takehiro <kubo@jiubao.org>
252
+ * lib/oci8.rb.in: add OCI8::Cursor#column_metadata and a new class
253
+ OCI8::Metadata::Column.
254
+ * test/test_all.rb, test/test_metadata.rb: add testcases for
255
+ OCI8::Metadata::Column.
256
+
257
+ 2007-11-16 KUBO Takehiro <kubo@jiubao.org>
258
+ * ext/oci8/ocinumber.c, test/test_oci8.rb: fix a BUG to bind
259
+ Bignum. This bug was added in ruby-oci8 1.0.0-rc2.
260
+
261
+ 2007-11-11 KUBO Takehiro <kubo@jiubao.org>
262
+ * test/config.rb, test/test_dbi.rb, test/test_describe.rb,
263
+ test/test_oci8.rb: add 'purge' option to 'drop table' statement
264
+ when Oracle 10g or upper.
265
+ * ext/oci8/bind.c, ext/oci8/const.c, ext/oci8/oci8.h, ext/oci8/stmt.c,
266
+ lib/oci8.rb.in, test/test_oci8.rb: add OCI8::BindType::BinaryDouble
267
+ when SQLT_BDOUBLE is defined.
268
+
269
+ 2007-10-14 KUBO Takehiro <kubo@jiubao.org>
270
+ * ext/oci8/oraconf.rb: fix for FreeBSD oracle8-client port.
271
+ Not all tests are passed on FreeBSD yet.
272
+
273
+ 2007-10-11 KUBO Takehiro <kubo@jiubao.org>
274
+ * lib/DBD/OCI8/OCI8.rb: add DatabaseHandle#columns for DBI.
275
+ (suggested by Venkat Pa)
276
+
277
+ 2007-10-11 KUBO Takehiro <kubo@jiubao.org>
278
+ * lib/DBD/OCI8/OCI8.rb: fix external OS authentication.
279
+ I applied Dan Fitch's patch to improper location.
280
+
281
+ 2007-07-03 KUBO Takehiro <kubo@jiubao.org>
282
+ * lib/DBD/OCI8/OCI8.rb: fix for external OS authentication.
283
+ (contributed by Dan Fitch)
284
+
285
+ 2007-07-01 KUBO Takehiro <kubo@jiubao.org>
286
+ * NEWS: add changes between 1.0.0-rc2 and 1.0.0-rc3.
287
+ * VERSION: change version to 1.0.0-rc3.
288
+ * ext/oci8/oraconf.rb: fix a problem to compile with a
289
+ third-party x86_64 rpm package. '--with-instant-client'
290
+ option become obsolete and is ignored.
291
+ * test/test_oci8.rb: skip test_binary_float test when the testing
292
+ server version is 9i or earlier.
293
+
294
+ 2007-06-26 KUBO Takehiro <kubo@jiubao.org>
295
+ * lib/oci8.rb.in: add external OS authentication. (suggested by Dan Fitch)
296
+ conn = OCI8.new('/')
297
+ or
298
+ conn = OCI8.new(nil, nil)
299
+ * test/test_connstr.rb: fix a testcase for external OS authentication.
300
+
301
+ 2007-06-23 KUBO Takehiro <kubo@jiubao.org>
302
+ * ext/oci8/oraconf.rb: read a shared library's ELF header to
303
+ check what cpu is it for. (linux x86, x86_64 and ia64 only)
304
+
305
+ 2007-06-05 KUBO Takehiro <kubo@jiubao.org>
306
+ * ext/oci8/oraconf.rb: use 'File.exist?' instead of deprecated
307
+ method 'File.exists?'.
308
+ * lib/oci8.rb.in: fix to bind an OCI8::NCLOB value on Oralce 9i.
309
+ add a mapping to fetch a timestamp column value as an OraDate.
310
+
311
+ 2007-05-18 KUBO Takehiro <kubo@jiubao.org>
312
+ * ext/oci8/oraconf.rb: fix for Oracle 11g.
313
+
314
+ 2007-05-17 KUBO Takehiro <kubo@jiubao.org>
315
+ * ext/oci8/oraconf.rb: add the output of sqlplus to mkmf.log
316
+
317
+ 2007-04-22 KUBO Takehiro <kubo@jiubao.org>
318
+ * ext/oci8/error.c: fix errors when compiled by gcc-4.1.
319
+ * NEWS: fix typo.
320
+
321
+ 2007-04-22 KUBO Takehiro <kubo@jiubao.org>
322
+ * NEWS: add changes between 1.0.0-rc2 and 0.1.16
323
+ * ruby-oci8.spec: fix hardcoded sitearch dir.
324
+ * VERSION: change version to 1.0.0-rc2
325
+ * ext/oci8/extconf.rb, ext/oci8/lob.c: check whether
326
+ OCILobCreateTemporary is available.
327
+ * dist-files: add test/test_connstr.rb.
328
+
329
+ 2007-04-21 KUBO Takehiro <kubo@jiubao.org>
330
+ * ext/oci8/error.c, ext/oci8/oci8.h: add the error line number
331
+ in C code to OCIException's backtrace.
332
+
333
+ 2007-04-19 KUBO Takehiro <kubo@jiubao.org>
334
+ * lib/oci8.rb.in: add OCI8::NCLOB and add new method to bind
335
+ CLOB/NCLOB/BLOB.
336
+ * ext/oci8/lob.c: add OCILobLocator#create_temporary.
337
+ * test/test_oci8.rb: add two testcases for BINARY_FLOAT and
338
+ CLOB/NCLOB/BLOB.
339
+
340
+ 2007-04-18 KUBO Takehiro <kubo@jiubao.org>
341
+ * ext/oci8/bind.c, ext/oci8/handle.c, ext/oci8/oci8.h, ext/oci8/stmt.c
342
+ lib/oci8.rb.in: change the internal structure to enable
343
+ OCIBind#set(anOCIHandle).
344
+
345
+ 2007-04-17 KUBO Takehiro <kubo@jiubao.org>
346
+ * ext/oci8/attr.c, ext/oci8/lob.c, lib/oci8.rb.in: fix a problem
347
+ when reading NCLOB.
348
+ (This problem is reported by Dmitry Zadvornykh.)
349
+ * lib/oci8.rb.in: fix a probmen when fetching BINARY_FLOAT.
350
+ (This problem is reported by Duncan McCaffery.)
351
+
352
+ 2007-04-16 KUBO Takehiro <kubo@jiubao.org>
353
+ * ruby-oci8.spec: add a rpm spec file. (contributed by Brian Candler)
354
+ * dist-files: add ruby-oci8.spec.
355
+ * ext/oci8/oraconf.rb: fix for oracle 8.x and gcc on AIX.
356
+
357
+ 2007-02-14 Oracle Corporation (commited by KUBO Takehiro <kubo@jiubao.org>)
358
+ * lib/oci8.rb.in: add a private method parse_connect_string to support
359
+ "username/password[@(tns_name|//host[:port]/service_name)][ as (sysdba|sysoper)]".
360
+ * test/test_connstr.rb: add test cases for parse_connect_string.
361
+ * test/test_all.rb: call test cases for parse_connect_string.
362
+
363
+ 2007-01-28 KUBO Takehiro <kubo@jiubao.org>
364
+ * ext/oci8/oci8.h: add TO_ORATEXT, TO_CHARPTR and RSTRING_ORATEXT
365
+ macros to suppress 'differ in signedness' warinings.
366
+ * ext/oci8/attr.c, ext/oci8/bind.c, ext/oci8/error.c, ext/oci8/lob.c,
367
+ ext/oci8/ocinumber.c, ext/oci8/oranumber.c, ext/oci8/server.c,
368
+ ext/oci8/stmt.c: use TO_ORATEXT, TO_CHARPTR and RSTRING_ORATEXT
369
+ macros to suppress 'differ in signedness' warinings.
370
+
371
+ 2007-01-20 KUBO Takehiro <kubo@jiubao.org>
372
+ * lib/oci8.rb.in: don't call OCIEnv.create when initializing.
373
+ * release as 1.0.0-rc1.
374
+
375
+ 2007-01-19 KUBO Takehiro <kubo@jiubao.org>
376
+ * ext/oci8/oraconf.rb: fix bugs on windows created by the previous commit.
377
+
378
+ 2007-01-08 KUBO Takehiro <kubo@jiubao.org>
379
+ * ext/oci8/oraconf.rb: check whether Full Client or Instant Client by checking
380
+ load library path.
381
+
382
+ 2007-01-03 KUBO Takehiro <kubo@jiubao.org>
383
+ * ext/oci8/env.c: raise "OCI Library Initialization Error" message
384
+ if no message can not be retrieved while OCIEnv.create.
385
+ * ext/oci8/oraconf.rb, ext/oci8/extconf.rb: refactor oraconf.rb.
386
+ * lib/oci8.rb.in: don't raise OCIError on requireing oci8. raise
387
+ the error when connecting to the Oracle. (for active record)
388
+
389
+ 2006-12-09 KUBO Takehiro <kubo@jiubao.org>
390
+ * ext/oci8/env.c, ext/oci8/handle.c, ext/oci8/oci8.c, ext/oci8/oci8.h,
391
+ ext/oci8/stmt.c: add OCIFileLocator.
392
+ * ext/oci8/lob.c: fix OCILobLocator#open to accept a second argument.
393
+ add OCIFileLocator#name, OCIFileLocator#set_name and
394
+ OCIFileLocator#exists?
395
+ * ext/oci8/svcctx.c: add OCISvcCtx#close_all_files.
396
+ * lib/oci8.rb.in: add OCI8::BFILE and OCI8::BindType::BFILE.
397
+
398
+ 2006-12-05 KUBO Takehiro <kubo@jiubao.org>
399
+ * ext/oci8/attr.c, ext/oci8/bind.c, ext/oci8/error.c, ext/oci8/oci8.h,
400
+ ext/oci8/ocinumber.c, ext/oci8/oradate.c, ext/oci8/oranumber.c,
401
+ ext/oci8/stmt.c: use RSTRING_LEN, RSTRING_PTR, RARRAY_LEN and RARRAY_PTR
402
+ macros.
403
+
404
+ 2006-11-18 KUBO Takehiro <kubo@jiubao.org>
405
+ * ext/oci8/oraconf.rb: add check code whether oci.h exists.
406
+
407
+ 2006-08-20 KUBO Takehiro <kubo@jiubao.org>
408
+ * ext/oci8/oraconf.rb: add error code for intel mac.
409
+ * NEWS: add a new file.
410
+
411
+ 2006-08-18 KUBO Takehiro <kubo@jiubao.org>
412
+ * ext/oci8/oradate.c: add OraDate.hash().
413
+ * ext/oci8/oranumber.c: OraNumber.new() now accepts a String.
414
+ * lib/oci8.rb.in: add YAML support for OraDate and OraNumber.
415
+ * test/test_oranumber.rb: add testcases for OraNumber.new(aString).
416
+
417
+ 2006-08-17 KUBO Takehiro <kubo@jiubao.org>
418
+ * ext/oci8/oci8.h, ext/oci8/bind.c, ext/oci8/stmt.c:
419
+ Use long instead of int to bind Fixnum.
420
+ http://rubyforge.org/forum/forum.php?thread_id=7955&forum_id=1078
421
+
422
+ 2006-08-03 KUBO Takehiro <kubo@jiubao.org>
423
+ * lib/oci8.rb.in: add a workaround code on cygwin version.
424
+ Cygwin manages environment variables by itself. They don't
425
+ synchroize with Win32's ones. set some Oracle's environment
426
+ variables to win32.
427
+
428
+ 2006-07-29 KUBO Takehiro <kubo@jiubao.org>
429
+ * ext/oci8/oradate.c: add OraDate#dup, OraDate#clone, OraDate#_dump
430
+ and OraDate._load.
431
+ * ext/oci8/oranumber.c: add OraNumber#dup, OraNumber#clone,
432
+ OraNumber#_dump and OraNumber._load.
433
+ * test/test_oradate.rb: add tests for OraDate#dup, OraDate#clone,
434
+ OraDate#_dump and OraDate._load.
435
+ * test/test_oranumber.rb: add tests for OraNumber#dup,
436
+ OraNumber#clone, OraNumber#_dump and OraNumber._load.
437
+ * test/test_dbi.rb, test/test_oci8.rb, ext/oci8/oraconf.rb,
438
+ ext/oci8/extconf.rb, lib/oci8.rb.in, ext/oci8/ocinumber.c:
439
+ fix for ruby 1.6.
440
+
441
+ 2006-07-21 KUBO Takehiro <kubo@jiubao.org>
442
+ * ext/oci8/oci8.h, ext/oci8/bind.c, ext/oci8/stmt.c, lib/oci8.rb.in:
443
+ Support LONG and LONG RAW longer than 65535 bytes.
444
+ Add OCI8#long_read_len and OCI8#long_read_len= to set max long
445
+ length.
446
+ * ext/oci8/oraconf.rb: fix typo.
447
+
448
+ 2006-07-20 KUBO Takehiro <kubo@jiubao.org>
449
+ * ext/oci8/oci8.c, ext/oci8/env.c: move workaround code for
450
+ instant client environment variable problem from
451
+ ext/oci8/oci8.c to ext/oci8/env.c.
452
+ * ext/oci8/oraconf.rb: check a c develop file when linux.
453
+ * VERSION, Makefile, ext/oci8/extconf.rb: read version string from
454
+ the VERSION file.
455
+ * lib/oci8.rb.in: use OCIEnv.create when it exists.
456
+
457
+ 2006-04-23 KUBO Takehiro <kubo@jiubao.org>
458
+ * ext/oci8/extconf.rb: disable OCIServerRelease checking.
459
+ That's because mswin32 binary is for 8.1 or later, but 8.1.5
460
+ doesn't have OCIServerRelease.
461
+ * ext/oci8/oci8.c: call ruby_setenv on loading oci8lib.so. This is
462
+ a workaround for the following problem: OCIInitialize()
463
+ implicitly set environment variables. But is make environment
464
+ variables invalid when setting $0.
465
+ * ext/oci8/oraconf.rb: fix for OracleXE windows version. OracleXE's
466
+ registry path is \\HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_XE.
467
+
468
+ 2006-04-23 KUBO Takehiro <kubo@jiubao.org>
469
+ * Makefile: change version to 0.1.15.
470
+ * README: add note for Intel Mac.
471
+ * ext/oci8/extconf.rb: change version to 0.1.15.
472
+
473
+ 2006-04-05 KUBO Takehiro <kubo@jiubao.org>
474
+ * ext/oci8/attr.c: Fix segmentation fault while GC runs at exit.
475
+ It was caused by freeing OCIEnv before freeing OCIRowid.
476
+ Now when freeing OCIEnv, OCIRowid is freed in advance.
477
+ * ext/oci8/const.c, ext/oci8/handle.c, ext/oci8/oci8.h, ext/oci8/stmt.c:
478
+ Fix a memory leak when binding a placeholder which is already
479
+ bound. In C layer, bind handles were registered to an Array.
480
+ There is no chance to unregister it except closing Cursor.
481
+ Now bind handles are registered to a Hash. When already bound
482
+ placeholder is bound, the old bind handle is unregistered.
483
+ * lib/oci8.rb.in: initialize @prefetch_rows.
484
+
485
+ 2006-03-05 KUBO Takehiro <kubo@jiubao.org>
486
+ * ext/oci8/oraconf.rb: add check_ruby_header to warn when
487
+ broken darwin ruby.
488
+ add export #{ld_path} in check_instant_client().
489
+
490
+ 2006-02-26 KUBO Takehiro <kubo@jiubao.org>
491
+ release as 0.1.14.
492
+ * ext/oci8/const.c: add OCI_PTYPE_UNK.
493
+
494
+ 2006-02-25 KUBO Takehiro <kubo@jiubao.org>
495
+ * Makefile: change version to 0.1.14.
496
+ * ext/oci8/bind.c: fix to accept OCIBind#set(aNumeric).
497
+ * ext/oci8/extconf.rb: change version to 0.1.14.
498
+ fix to compile ocinumber.c also.
499
+ * ext/oci8/oci8.h: add set_oci_vnumber() prototype.
500
+ * ext/oci8/ocinumber.c: add a new file for set_oci_vnumber().
501
+ * lib/oci8.rb.in: setup OCI environment as an object mode.
502
+
503
+ 2006-02-17 KUBO Takehiro <kubo@jiubao.org>
504
+ * README: fix documentation bug.
505
+ * ext/oci8/attr.c: add attrGet(OCI_ATTR_SERVER) and attrSet(OCI_ATTR_DESC_PUBLIC, -1).
506
+ * ext/oci8/env.c: delete code to register malloc/realloc/free callbacks.
507
+ * ext/oci8/handle.c: free memory by calling xfree(), not by free()
508
+ in oci8_handle_cleanup().
509
+ * lib/oci8.rb.in: use OCIEnv#logon for non-privilege login.
510
+ add OCI8#prefetch_rows= and OCI8::Cursor#prefetch_rows=.
511
+ use @srv instead of @svc in OCI8#non_blocking= for
512
+ non-privilege login.
513
+ * lib/DBD/OCI8/OCI8.rb: fix to work with ruby-oci8 0.1 and ruby-oci8 0.2 either.
514
+
515
+ 2005-10-15 KUBO Takehiro <kubo@jiubao.org>
516
+ * ext/oci8/handle.c: fix memory leaks. 700k per 10000 queries.
517
+ fixed by Nathaniel Talbott. Thank you!
518
+ * ext/oci8/oraconf.rb: add -R to linker on Solaris and Linux.
519
+ http://rubyforge.org/tracker/index.php?func=detail&aid=2148&group_id=256&atid=1051
520
+ * lib/oci8.rb.in: add DateTime suppport. suggested by Daniel Berger.
521
+ * test/test_dbi.rb, test/test_oci8.rb: testcases for DateTime.
522
+ * test/test_oradate.rb: delete an unsuccessfull testcase, which depends on libc implementation.
523
+ * README: add bind-types.
524
+ * Makefile, ext/oci8/extconf.rb: change version to 0.1.13.
525
+
526
+ 2005-07-20 KUBO Takehiro <kubo@jiubao.org>
527
+ * README: rewrite.
528
+ * ext/oci8/oraconf.rb: 1. try $libs which works on many cases then
529
+ get from demo_rdbms.mk. 2. don't read sysliblist when instant client.
530
+ 3. rewrie OraConf#check_lp64().
531
+ * Makefile, ext/oci8/extconf.rb: change version to 0.1.12.
532
+
533
+ 2005-07-16 KUBO Takehiro <kubo@jiubao.org>
534
+ * metaconfig: move "require 'base64'" and "require 'zlib'" to the
535
+ next line of "def get_zcontent(file)" for a ruby which doesn't
536
+ have 'zlib'.
537
+
538
+ 2005-05-31 KUBO Takehiro <kubo@jiubao.org>
539
+ * ext/oci8/oraconf.rb: fix for cygwin. fix for oracle instant client.
540
+ * metaconfig: add distbin task.
541
+
542
+ 2005-05-29 KUBO Takehiro <kubo@jiubao.org>
543
+ * lib/oci8.rb.in: add OCI8::BindType::Mapping[:number_unknown_prec]
544
+ and OCI8::BindType::Mapping[:number_no_prec_setting].
545
+ * ext/oci8/oraconf.rb: copy from oraconf.rb of ruby-oci8 0.2.
546
+ * ext/oci8/lob.c: delete OCILobLocator#getChunkSize on Oracle 8.0.
547
+ use OCILobAssign() instead of OCILobLocatorAssign() on Oracle 8.0.
548
+ * ext/oci8/extconf.rb: add have_func("OCILobGetChunkSize") and
549
+ have_func("OCILobLocatorAssign") for Oracle 8.0.
550
+ * Makefile, ext/oci8/extconf.rb: change version to 0.1.11
551
+ * README: add '5. How to customize fetched datatypes.'
552
+
553
+ 2005-03-24 KUBO Takehiro <kubo@jiubao.org>
554
+ * branch as oci8-0-1.
555
+ * oci8.rb.in: fix bug on binding Time or Date.
556
+ * Makefile, ext/oci8/extconf.rb: change version to 0.1.10.1
557
+
558
+ 2005-03-23 KUBO Takehiro <kubo@jiubao.org>
559
+ * oci8.rb.in, OCI8.rb:
560
+ delete OCI8.register_type_fixer, OCI8::TypeFixer.
561
+ add OCI8::BindType::* instead.
562
+
563
+ 2005-03-21 KUBO Takehiro <kubo@jiubao.org>
564
+ * oci8.rb.in, OCI8.rb: refactoring OCI8::Cursor#define_a_column
565
+ * Makefile, ext/oci8/extconf.rb: change version to 0.1.10
566
+
567
+ 2005-03-20 KUBO Takehiro <kubo@jiubao.org>
568
+ * ext/oci8/stmt.c, lib/oci8.rb.in, lib/DBD/OCI8/OCI8.rb, test/test_dbi.rb:
569
+ enable DATE to be bound as a DBI::Date or a DBI::Timestamp.
570
+
571
+ 2005-03-20 KUBO Takehiro <kubo@jiubao.org>
572
+ * ext/oci8/stmt.c, lib/oci8.rb.in, test/test_oci8.rb:
573
+ bind a ref cursor as an OCI8::Cursor.
574
+ apply a patch at <URL:http://rubyforge.org/tracker/index.php?func=detail&aid=1409&group_id=256&atid=1053>.
575
+
576
+ 2005-01-16 KUBO Takehiro <kubo@jiubao.org>
577
+
578
+ * lib/oci8.rb.in: change default bindtype for NUMBER with
579
+ unspecified scale.
580
+ (This problem is reported by William Lawson, Dmitry Maksyoma and Andreas Habel)
581
+ * lib/oci8.rb.in: add OCI8::Cursor.select_number_as=
582
+ (for someone who want old bindtype)
583
+ * lib/oci8.rb.in: add OCI8::Cursor#fetch_hash
584
+ (contributed by Jason Sweat)
585
+ * ext/oci8/oci8.h, ext/oci8/stmt.c: don't raise an error when OCI_SUCCESS_WITH_INFO.
586
+ (suggested by Kenji Nishishiro)
587
+ * ext/ooi8/oraconf.rb: support Oracle Instant Installer.
588
+ (suggested by Eustaquio Rangel de Oliveira Jr.)
589
+ * Makefile, ext/oci8/extconf.rb: change version to 0.1.9
590
+
591
+ 2004-10-30 KUBO Takehiro <kubo@jiubao.org>
592
+
593
+ * pre-distclean.rb: delete a temporary file made by ext/oci8/oraconf.rb.
594
+ * ext/oci8/oraconf.rb: 1. change object files to an archive file
595
+ to work around on Oracle 8.1.7. 2. raise error when OCI.H can't
596
+ be found on Windows.
597
+
598
+ 2004-06-21 KUBO Takehiro <kubo@jiubao.org>
599
+
600
+ * Makefile, ext/oci8/extconf.rb: change version to 0.1.8-pre1
601
+ * lib/DBD/OCI8/OCI8.rb: add DBI::DatabaseHandle#tables. add DBI::StatementHandle#func(:bind_value, ...).
602
+
603
+ 2004-03-07 KUBO Takehiro <kubo@jiubao.org>
604
+
605
+ * ext/oci8/extconf.rb: fix to use setup.rb.
606
+ * ext/oci8/oraconf.rb: add support Borland C++ Builder.
607
+ * lib/oci8.rb.in: support OCI8::CLOB.
608
+ * test/config.rb: CLOB test file depends on NLS_LANG.
609
+ * test/test_oci8.rb: fix a test method.
610
+ * test/test_break.rb: break time depends on OS?...
611
+ * test/test_dbi_clob.rb: add a new file to test CLOB via DBI.
612
+
613
+ 2003-09-20 KUBO Takehiro <kubo@jiubao.org>
614
+
615
+ * src/handle.c: fix bug of OCI8::BLOB at running GC.
616
+ * src/stmt.c: accept Bignum as (({type})) of OCI8::Cursor#define.
617
+ * src/lib/oci8.rb.in: accept OCI8::BLOB as (({type})) of OCI8::Cursor#define.
618
+ * src/lib/DBD/OCI8/OCI8.rb: add (({define})) function to DBD::OCI8.
619
+ * src/oranumber.c, src/oci8.h: use rb_cstr_to_dbl instead of strtod for ruby 1.8.
620
+ * support/runit/cui/testrunner.rb, support/runit/testcase.rb: fix for ruby 1.8.
621
+ * test/test_dbi.rb: add a test method.
622
+ * test/test_oci8.rb: fix a test method.
623
+
624
+ 2003-08-03 KUBO Takehiro <kubo@jiubao.org>
625
+
626
+ * Makefile: update version to 0.1.5
627
+ * MANIFEST: add test/test_oci8.rb
628
+ * src/lib/oci8.rb.in: implement OCI8::Cursor#define, OraDate#to_time and OraDate#to_date.
629
+ * test/test_oci8.rb: add new tests of OCI8::Cursor#define.
630
+ * test/test_oradate.rb: add new tests of OraDate#to_time and OraDate#to_date.
631
+ * test/test_all.rb: call test_oci8.rb.
632
+
633
+ 2003-07-20 KUBO Takehiro <kubo@jiubao.org>
634
+
635
+ * src/stmt.c: When the error "ORA-01000: maximum open cursors
636
+ exceeded" happens, run garbage collect to close unused cursors
637
+ and retry automatically.
638
+
639
+ 2003-06-07 KUBO Takehiro <kubo@jiubao.org>
640
+
641
+ * Makefile: update version to 0.1.4
642
+ * src/lob.c: add OCILobLocator#clone()
643
+ * src/bind.c, src/stmt.c, src/lib/oci8.rb.in: fix BLOB support.
644
+ * src/lib/DBD/OCI8/OCI8.rb: set the backtrace of an original exception
645
+ to newly created DBI exception.
646
+ * src/oraconf.rb: retry get_libs with postfix '32' when compilation
647
+ failed with Oracle 9i on Solaris.
648
+ * src/oradate.c: add OraDate#<=> and include 'Comparable'.
649
+ (contributed by Brian Candler)
650
+ * test/test_oradate.rb: add test cases of OraDate#<=>.
651
+
652
+ 2003-04-27 KUBO Takehiro <kubo@jiubao.org>
653
+
654
+ * Makefile: update version to 0.1.3
655
+ * doc/api.*.rd, doc/api.*.html: update document.
656
+ * src/lob.c: add new LOB APIs.
657
+ * src/lib/oci8.rb.in: add BLOB support.
658
+ * src/lib/DBD/OCI8/OCI8.rb: add 'NonBlocking' support(suggested by Brian Candler).
659
+ raise subclass of DBI::DatabaseError, which depends on its error code.
660
+
661
+ 2003-03-08 KUBO Takehiro <kubo@jiubao.org>
662
+
663
+ * Makefile: update version to 0.1.2
664
+ * src/extconf.rb: use Oraconf#cc_is_gcc.
665
+ * src/oraconf.rb: support Solaris with gcc.
666
+ * src/handle.c: suppress warning about uninitialized instance variables.
667
+ * src/oranumber.c, test/test_oranumber.rb: fix serious bug of
668
+ conversion routine from Oracle internal number format to string.
669
+
670
+ 2003-02-01 KUBO Takehiro <kubo@jiubao.org>
671
+
672
+ * Makefile: update version to 0.1.1.
673
+ * src/oraconf.rb: added. Oracle specific features were moved from
674
+ src/extconf.rb, src/extunix.rb and src/extwin32.rb
675
+ * src/extunix.rb, src/extwin32.rb: deleted.
676
+ * src/extconf.rb: use oraconf.rb.
677
+ * src/error.c, src/oci8.h: use macro RBOCI_NORETURN not NORETURN.
678
+ * MANIFEST, Makefile: fix for added and deleted files.
679
+
680
+ 2002-09-12 KUBO Takehiro <kubo@jiubao.org>
681
+
682
+ * Makefile: update version to 0.1.0.
683
+ * README: support cygwin and mingw32.
684
+ * test/test_oradate.rb: delete test_now().
685
+ * src/extconf.rb: support mingw32.
686
+
687
+ 2002-09-12 Hitoshi Endoh <h-endoh@mbf.nifty.com>
688
+
689
+ * src/extwin32.rb: support cygwin.
690
+
691
+ 2002-09-12 KUBO Takehiro <kubo@jiubao.org>
692
+
693
+ * ChangeLog: Added.