ibm_db 5.3.2-x86-mingw32 → 5.4.0-x86-mingw32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
 - data/README +1 -1
 - data/debug.log +1 -0
 - data/ext/Makefile +20 -18
 - data/ext/ibm_db.c +5 -9
 - data/ext/ibm_db.o +0 -0
 - data/ext/ibm_db.so +0 -0
 - data/ext/mkmf.log +5 -5
 - data/ext/ruby_ibm_db_cli.o +0 -0
 - data/lib/active_record/connection_adapters/ibm_db_adapter.rb +65 -11
 - data/lib/mswin32/ibm_db.rb +3 -1
 - data/lib/mswin32/rb3x/i386/ruby31/ibm_db.so +0 -0
 - metadata +8 -6
 
    
        checksums.yaml
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            ---
         
     | 
| 
       2 
2 
     | 
    
         
             
            SHA256:
         
     | 
| 
       3 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       4 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 3 
     | 
    
         
            +
              metadata.gz: 53ebbd59f14d4e0274c0833df140ec787ebf91bf9a972a8253ca1116b8f600c9
         
     | 
| 
      
 4 
     | 
    
         
            +
              data.tar.gz: 0a58578883d5ab1a48ce28adc24a50cb8cbf44928b5ef8847af571de53e7a898
         
     | 
| 
       5 
5 
     | 
    
         
             
            SHA512:
         
     | 
| 
       6 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       7 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 6 
     | 
    
         
            +
              metadata.gz: e349b375fffd4e049ed8dc10811dfbfc1829d044d660596cbdd5f8a10fa51e7e056676c5a234c327d90cb75243f05f8f1482215c54b81543ba9f9f9567c6f947
         
     | 
| 
      
 7 
     | 
    
         
            +
              data.tar.gz: 12fc93d1bc0f44c8dd641c07a7ef461a7896ecc4ba5332a4272c4e7f9cf177c60fdcb5f1b26510703e5cd4b1960ada1719a31dd1ffc3a9b9ab60b268f247beb6
         
     | 
    
        data/README
    CHANGED
    
    | 
         @@ -1,5 +1,5 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            =====================================================================
         
     | 
| 
       2 
     | 
    
         
            -
            README for the IBM_DB Adapter  
     | 
| 
      
 2 
     | 
    
         
            +
            README for the IBM_DB Adapter >= 5.0.0 and Driver >= 3.0.5
         
     | 
| 
       3 
3 
     | 
    
         
             
            For ActiveRecord Version >= 5.0.7 (and Rails >= 5.0.7)
         
     | 
| 
       4 
4 
     | 
    
         
             
            =====================================================================
         
     | 
| 
       5 
5 
     | 
    
         | 
    
        data/debug.log
    ADDED
    
    | 
         @@ -0,0 +1 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # Logfile created on 2023-03-28 15:47:54 -0400 by logger.rb/v1.5.0
         
     | 
    
        data/ext/Makefile
    CHANGED
    
    | 
         @@ -3,6 +3,7 @@ SHELL = /bin/sh 
     | 
|
| 
       3 
3 
     | 
    
         | 
| 
       4 
4 
     | 
    
         
             
            # V=0 quiet, V=1 verbose.  other values don't work.
         
     | 
| 
       5 
5 
     | 
    
         
             
            V = 0
         
     | 
| 
      
 6 
     | 
    
         
            +
            V0 = $(V:0=)
         
     | 
| 
       6 
7 
     | 
    
         
             
            Q1 = $(V:1=)
         
     | 
| 
       7 
8 
     | 
    
         
             
            Q = $(Q1:0=@)
         
     | 
| 
       8 
9 
     | 
    
         
             
            ECHO1 = $(V:1=@ :)
         
     | 
| 
         @@ -12,12 +13,12 @@ NULLCMD = : 
     | 
|
| 
       12 
13 
     | 
    
         
             
            #### Start of system configuration section. ####
         
     | 
| 
       13 
14 
     | 
    
         | 
| 
       14 
15 
     | 
    
         
             
            srcdir = .
         
     | 
| 
       15 
     | 
    
         
            -
            topdir = / 
     | 
| 
      
 16 
     | 
    
         
            +
            topdir = /C/Ruby31/include/ruby-3.1.0
         
     | 
| 
       16 
17 
     | 
    
         
             
            hdrdir = $(topdir)
         
     | 
| 
       17 
     | 
    
         
            -
            arch_hdrdir =  
     | 
| 
      
 18 
     | 
    
         
            +
            arch_hdrdir = /C/Ruby31/include/ruby-3.1.0/i386-mingw32
         
     | 
| 
       18 
19 
     | 
    
         
             
            PATH_SEPARATOR = :
         
     | 
| 
       19 
20 
     | 
    
         
             
            VPATH = $(srcdir):$(arch_hdrdir)/ruby:$(hdrdir)/ruby
         
     | 
| 
       20 
     | 
    
         
            -
            prefix = $(DESTDIR)/ 
     | 
| 
      
 21 
     | 
    
         
            +
            prefix = $(DESTDIR)/C/Ruby31
         
     | 
| 
       21 
22 
     | 
    
         
             
            rubysitearchprefix = $(rubylibprefix)/$(sitearch)
         
     | 
| 
       22 
23 
     | 
    
         
             
            rubyarchprefix = $(rubylibprefix)/$(arch)
         
     | 
| 
       23 
24 
     | 
    
         
             
            rubylibprefix = $(libdir)/$(RUBY_BASE_NAME)
         
     | 
| 
         @@ -52,6 +53,7 @@ infodir = $(datarootdir)/info 
     | 
|
| 
       52 
53 
     | 
    
         
             
            docdir = $(datarootdir)/doc/$(PACKAGE)
         
     | 
| 
       53 
54 
     | 
    
         
             
            oldincludedir = $(DESTDIR)/usr/include
         
     | 
| 
       54 
55 
     | 
    
         
             
            includedir = $(prefix)/include
         
     | 
| 
      
 56 
     | 
    
         
            +
            runstatedir = $(localstatedir)/run
         
     | 
| 
       55 
57 
     | 
    
         
             
            localstatedir = $(prefix)/var
         
     | 
| 
       56 
58 
     | 
    
         
             
            sharedstatedir = $(prefix)/com
         
     | 
| 
       57 
59 
     | 
    
         
             
            sysconfdir = $(DESTDIR)
         
     | 
| 
         @@ -64,8 +66,8 @@ archdir = $(rubyarchdir) 
     | 
|
| 
       64 
66 
     | 
    
         | 
| 
       65 
67 
     | 
    
         | 
| 
       66 
68 
     | 
    
         
             
            CC_WRAPPER = 
         
     | 
| 
       67 
     | 
    
         
            -
            CC =  
     | 
| 
       68 
     | 
    
         
            -
            CXX =  
     | 
| 
      
 69 
     | 
    
         
            +
            CC = gcc
         
     | 
| 
      
 70 
     | 
    
         
            +
            CXX = g++
         
     | 
| 
       69 
71 
     | 
    
         
             
            LIBRUBY = lib$(RUBY_SO_NAME).dll.a
         
     | 
| 
       70 
72 
     | 
    
         
             
            LIBRUBY_A = lib$(RUBY_SO_NAME)-static.a
         
     | 
| 
       71 
73 
     | 
    
         
             
            LIBRUBYARG_SHARED = -l$(RUBY_SO_NAME)
         
     | 
| 
         @@ -78,18 +80,18 @@ CSRCFLAG = $(empty) 
     | 
|
| 
       78 
80 
     | 
    
         
             
            RUBY_EXTCONF_H = unicode_support_version.h
         
     | 
| 
       79 
81 
     | 
    
         
             
            cflags   = $(optflags) $(debugflags) $(warnflags)
         
     | 
| 
       80 
82 
     | 
    
         
             
            cxxflags = 
         
     | 
| 
       81 
     | 
    
         
            -
            optflags = -O3 -fno-omit-frame-pointer
         
     | 
| 
      
 83 
     | 
    
         
            +
            optflags = -O3 -fno-omit-frame-pointer -fno-fast-math
         
     | 
| 
       82 
84 
     | 
    
         
             
            debugflags = -ggdb3
         
     | 
| 
       83 
     | 
    
         
            -
            warnflags = -Wall -Wextra -Wdeprecated-declarations -Wduplicated-cond -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wwrite-strings -Wimplicit-fallthrough=0 -Wmissing-noreturn -Wno-cast-function-type -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-packed-bitfield-compat -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wsuggest-attribute=format -Wsuggest-attribute=noreturn -Wunused-variable
         
     | 
| 
      
 85 
     | 
    
         
            +
            warnflags = -Wall -Wextra -Wdeprecated-declarations -Wduplicated-cond -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wwrite-strings -Wimplicit-fallthrough=0 -Wmissing-noreturn -Wno-cast-function-type -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-packed-bitfield-compat -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wsuggest-attribute=format -Wsuggest-attribute=noreturn -Wunused-variable -Wundef
         
     | 
| 
       84 
86 
     | 
    
         
             
            cppflags = 
         
     | 
| 
       85 
87 
     | 
    
         
             
            CCDLFLAGS = 
         
     | 
| 
       86 
88 
     | 
    
         
             
            CFLAGS   = $(CCDLFLAGS) -O3 -fno-fast-math -fstack-protector-strong $(ARCH_FLAG)
         
     | 
| 
       87 
89 
     | 
    
         
             
            INCFLAGS = -I. -I$(arch_hdrdir) -I$(hdrdir)/ruby/backward -I$(hdrdir) -I$(srcdir)
         
     | 
| 
       88 
90 
     | 
    
         
             
            DEFS     = -D_FILE_OFFSET_BITS=64
         
     | 
| 
       89 
91 
     | 
    
         
             
            CPPFLAGS = -DRUBY_EXTCONF_H=\"$(RUBY_EXTCONF_H)\" -IC:/Users/pnarayanappa/ruby-ibmdb/IBM_DB_Adapter/ibm_db/ext/../lib/clidriver/include -D__USE_MINGW_ANSI_STDIO=1 -DFD_SETSIZE=2048 -D_WIN32_WINNT=0x0600 -D__MINGW_USE_VC2005_COMPAT $(DEFS) $(cppflags)
         
     | 
| 
       90 
     | 
    
         
            -
            CXXFLAGS = $(CCDLFLAGS) -march= 
     | 
| 
       91 
     | 
    
         
            -
            ldflags  = -L. -pipe -s -fstack-protector-strong
         
     | 
| 
       92 
     | 
    
         
            -
            dldflags = -pipe -s -fstack-protector-strong -Wl,--enable-auto-image-base,--enable-auto-import $(DEFFILE) 
     | 
| 
      
 92 
     | 
    
         
            +
            CXXFLAGS = $(CCDLFLAGS) -march=pentium4 -mtune=generic -O2 -pipe $(ARCH_FLAG)
         
     | 
| 
      
 93 
     | 
    
         
            +
            ldflags  = -L. -pipe -s -fstack-protector-strong -Wl,--no-as-needed
         
     | 
| 
      
 94 
     | 
    
         
            +
            dldflags = -pipe -s -fstack-protector-strong -Wl,--enable-auto-image-base,--enable-auto-import $(DEFFILE)
         
     | 
| 
       93 
95 
     | 
    
         
             
            ARCH_FLAG = 
         
     | 
| 
       94 
96 
     | 
    
         
             
            DLDFLAGS = $(ldflags) $(dldflags) $(ARCH_FLAG)
         
     | 
| 
       95 
97 
     | 
    
         
             
            LDSHARED = $(CC) -shared
         
     | 
| 
         @@ -98,7 +100,7 @@ AR = i686-w64-mingw32-gcc-ar 
     | 
|
| 
       98 
100 
     | 
    
         
             
            EXEEXT = .exe
         
     | 
| 
       99 
101 
     | 
    
         | 
| 
       100 
102 
     | 
    
         
             
            RUBY_INSTALL_NAME = $(RUBY_BASE_NAME)
         
     | 
| 
       101 
     | 
    
         
            -
            RUBY_SO_NAME = msvcrt- 
     | 
| 
      
 103 
     | 
    
         
            +
            RUBY_SO_NAME = msvcrt-ruby310
         
     | 
| 
       102 
104 
     | 
    
         
             
            RUBYW_INSTALL_NAME = $(RUBYW_BASE_NAME)
         
     | 
| 
       103 
105 
     | 
    
         
             
            RUBY_VERSION_NAME = $(RUBY_BASE_NAME)-$(ruby_version)
         
     | 
| 
       104 
106 
     | 
    
         
             
            RUBYW_BASE_NAME = rubyw
         
     | 
| 
         @@ -106,13 +108,13 @@ RUBY_BASE_NAME = ruby 
     | 
|
| 
       106 
108 
     | 
    
         | 
| 
       107 
109 
     | 
    
         
             
            arch = i386-mingw32
         
     | 
| 
       108 
110 
     | 
    
         
             
            sitearch = i386-msvcrt
         
     | 
| 
       109 
     | 
    
         
            -
            ruby_version = 3. 
     | 
| 
      
 111 
     | 
    
         
            +
            ruby_version = 3.1.0
         
     | 
| 
       110 
112 
     | 
    
         
             
            ruby = $(bindir)/$(RUBY_BASE_NAME)
         
     | 
| 
       111 
113 
     | 
    
         
             
            RUBY = $(ruby)
         
     | 
| 
       112 
114 
     | 
    
         
             
            ruby_headers = $(hdrdir)/ruby.h $(hdrdir)/ruby/backward.h $(hdrdir)/ruby/ruby.h $(hdrdir)/ruby/defines.h $(hdrdir)/ruby/missing.h $(hdrdir)/ruby/intern.h $(hdrdir)/ruby/st.h $(hdrdir)/ruby/subst.h $(arch_hdrdir)/ruby/config.h $(RUBY_EXTCONF_H)
         
     | 
| 
       113 
115 
     | 
    
         | 
| 
       114 
116 
     | 
    
         
             
            RM = rm -f
         
     | 
| 
       115 
     | 
    
         
            -
            RM_RF =  
     | 
| 
      
 117 
     | 
    
         
            +
            RM_RF = rm -fr
         
     | 
| 
       116 
118 
     | 
    
         
             
            RMDIRS = rmdir --ignore-fail-on-non-empty -p
         
     | 
| 
       117 
119 
     | 
    
         
             
            MAKEDIRS = /usr/bin/mkdir -p
         
     | 
| 
       118 
120 
     | 
    
         
             
            INSTALL = /usr/bin/install -c
         
     | 
| 
         @@ -136,7 +138,7 @@ extout = 
     | 
|
| 
       136 
138 
     | 
    
         
             
            extout_prefix = 
         
     | 
| 
       137 
139 
     | 
    
         
             
            target_prefix = 
         
     | 
| 
       138 
140 
     | 
    
         
             
            LOCAL_LIBS = 
         
     | 
| 
       139 
     | 
    
         
            -
            LIBS = $(LIBRUBYARG_SHARED) -ldb2cli  -lshell32 -lws2_32 -liphlpapi -limagehlp -lshlwapi  
         
     | 
| 
      
 141 
     | 
    
         
            +
            LIBS = $(LIBRUBYARG_SHARED) -ldb2cli  -lshell32 -lws2_32 -liphlpapi -limagehlp -lshlwapi -lbcrypt  
         
     | 
| 
       140 
142 
     | 
    
         
             
            ORIG_SRCS = ibm_db.c ruby_ibm_db_cli.c
         
     | 
| 
       141 
143 
     | 
    
         
             
            SRCS = $(ORIG_SRCS) 
         
     | 
| 
       142 
144 
     | 
    
         
             
            OBJS = ibm_db.o ruby_ibm_db_cli.o
         
     | 
| 
         @@ -154,11 +156,11 @@ BINDIR        = $(bindir) 
     | 
|
| 
       154 
156 
     | 
    
         
             
            RUBYCOMMONDIR = $(sitedir)$(target_prefix)
         
     | 
| 
       155 
157 
     | 
    
         
             
            RUBYLIBDIR    = $(sitelibdir)$(target_prefix)
         
     | 
| 
       156 
158 
     | 
    
         
             
            RUBYARCHDIR   = $(sitearchdir)$(target_prefix)
         
     | 
| 
       157 
     | 
    
         
            -
            HDRDIR        = $( 
     | 
| 
       158 
     | 
    
         
            -
            ARCHHDRDIR    = $( 
     | 
| 
      
 159 
     | 
    
         
            +
            HDRDIR        = $(sitehdrdir)$(target_prefix)
         
     | 
| 
      
 160 
     | 
    
         
            +
            ARCHHDRDIR    = $(sitearchhdrdir)$(target_prefix)
         
     | 
| 
       159 
161 
     | 
    
         
             
            TARGET_SO_DIR =
         
     | 
| 
       160 
162 
     | 
    
         
             
            TARGET_SO     = $(TARGET_SO_DIR)$(DLLIB)
         
     | 
| 
       161 
     | 
    
         
            -
            CLEANLIBS     = $(TARGET_SO) 
         
     | 
| 
      
 163 
     | 
    
         
            +
            CLEANLIBS     = $(TARGET_SO) false
         
     | 
| 
       162 
164 
     | 
    
         
             
            CLEANOBJS     = *.o  *.bak
         
     | 
| 
       163 
165 
     | 
    
         | 
| 
       164 
166 
     | 
    
         
             
            all:    $(DLLIB)
         
     | 
| 
         @@ -171,7 +173,7 @@ clean-rb-default:: 
     | 
|
| 
       171 
173 
     | 
    
         
             
            clean-rb::
         
     | 
| 
       172 
174 
     | 
    
         
             
            clean-so::
         
     | 
| 
       173 
175 
     | 
    
         
             
            clean: clean-so clean-static clean-rb-default clean-rb
         
     | 
| 
       174 
     | 
    
         
            -
            		-$(Q)$( 
     | 
| 
      
 176 
     | 
    
         
            +
            		-$(Q)$(RM_RF) $(CLEANLIBS) $(CLEANOBJS) $(CLEANFILES) .*.time
         
     | 
| 
       175 
177 
     | 
    
         | 
| 
       176 
178 
     | 
    
         
             
            distclean-rb-default::
         
     | 
| 
       177 
179 
     | 
    
         
             
            distclean-rb::
         
     | 
    
        data/ext/ibm_db.c
    CHANGED
    
    | 
         @@ -12,7 +12,7 @@ 
     | 
|
| 
       12 
12 
     | 
    
         
             
              +----------------------------------------------------------------------+
         
     | 
| 
       13 
13 
     | 
    
         
             
            */
         
     | 
| 
       14 
14 
     | 
    
         | 
| 
       15 
     | 
    
         
            -
            #define MODULE_RELEASE "3.0 
     | 
| 
      
 15 
     | 
    
         
            +
            #define MODULE_RELEASE "3.1.0"
         
     | 
| 
       16 
16 
     | 
    
         | 
| 
       17 
17 
     | 
    
         
             
            #ifdef HAVE_CONFIG_H
         
     | 
| 
       18 
18 
     | 
    
         
             
            #include "config.h"
         
     | 
| 
         @@ -2507,8 +2507,7 @@ static VALUE _ruby_ibm_db_connect_helper( int argc, VALUE *argv, int isPersisten 
     | 
|
| 
       2507 
2507 
     | 
    
         
             
              }
         
     | 
| 
       2508 
2508 
     | 
    
         
             
              /* Call the function where the actual logic is being run*/
         
     | 
| 
       2509 
2509 
     | 
    
         
             
              #ifdef UNICODE_SUPPORT_VERSION_H
         
     | 
| 
       2510 
     | 
    
         
            -
             
     | 
| 
       2511 
     | 
    
         
            -
            	
         
     | 
| 
      
 2510 
     | 
    
         
            +
                _ruby_ibm_db_connect_helper2( helper_args );
         
     | 
| 
       2512 
2511 
     | 
    
         | 
| 
       2513 
2512 
     | 
    
         
             
                conn_res = helper_args->conn_res;
         
     | 
| 
       2514 
2513 
     | 
    
         | 
| 
         @@ -6988,8 +6987,7 @@ VALUE ibm_db_execute(int argc, VALUE *argv, VALUE self) 
     | 
|
| 
       6988 
6987 
     | 
    
         
             
                bind_array->error             =  &error;
         
     | 
| 
       6989 
6988 
     | 
    
         | 
| 
       6990 
6989 
     | 
    
         
             
                #ifdef UNICODE_SUPPORT_VERSION_H
         
     | 
| 
       6991 
     | 
    
         
            -
             
     | 
| 
       6992 
     | 
    
         
            -
                                        RUBY_UBF_IO, NULL );
         
     | 
| 
      
 6990 
     | 
    
         
            +
                  _ruby_ibm_db_execute_helper( bind_array );
         
     | 
| 
       6993 
6991 
     | 
    
         
             
            	  ret_value = bind_array->return_value;
         
     | 
| 
       6994 
6992 
     | 
    
         
             
                #else
         
     | 
| 
       6995 
6993 
     | 
    
         
             
                  ret_value = _ruby_ibm_db_execute_helper( bind_array );
         
     | 
| 
         @@ -10078,8 +10076,7 @@ VALUE ibm_db_fetch_row(int argc, VALUE *argv, VALUE self) 
     | 
|
| 
       10078 
10076 
     | 
    
         
             
              helper_args->error       =  &error;
         
     | 
| 
       10079 
10077 
     | 
    
         | 
| 
       10080 
10078 
     | 
    
         
             
              #ifdef UNICODE_SUPPORT_VERSION_H
         
     | 
| 
       10081 
     | 
    
         
            -
             
     | 
| 
       10082 
     | 
    
         
            -
                                    RUBY_UBF_IO, NULL );
         
     | 
| 
      
 10079 
     | 
    
         
            +
                _ruby_ibm_db_fetch_row_helper( helper_args );
         
     | 
| 
       10083 
10080 
     | 
    
         
             
            	ret_val = helper_args->return_value;
         
     | 
| 
       10084 
10081 
     | 
    
         
             
              #else
         
     | 
| 
       10085 
10082 
     | 
    
         
             
                ret_val = _ruby_ibm_db_fetch_row_helper( helper_args );
         
     | 
| 
         @@ -10247,8 +10244,7 @@ VALUE ibm_db_fetch_assoc(int argc, VALUE *argv, VALUE self) { 
     | 
|
| 
       10247 
10244 
     | 
    
         
             
              helper_args->funcType   =  FETCH_ASSOC;
         
     | 
| 
       10248 
10245 
     | 
    
         | 
| 
       10249 
10246 
     | 
    
         
             
              #ifdef UNICODE_SUPPORT_VERSION_H
         
     | 
| 
       10250 
     | 
    
         
            -
             
     | 
| 
       10251 
     | 
    
         
            -
                                     RUBY_UBF_IO, NULL );
         
     | 
| 
      
 10247 
     | 
    
         
            +
                _ruby_ibm_db_bind_fetch_helper( helper_args );
         
     | 
| 
       10252 
10248 
     | 
    
         
             
            	ret_val = helper_args->return_value;
         
     | 
| 
       10253 
10249 
     | 
    
         | 
| 
       10254 
10250 
     | 
    
         
             
              #else
         
     | 
    
        data/ext/ibm_db.o
    CHANGED
    
    | 
         Binary file 
     | 
    
        data/ext/ibm_db.so
    CHANGED
    
    | 
         Binary file 
     | 
    
        data/ext/mkmf.log
    CHANGED
    
    | 
         @@ -14,7 +14,7 @@ unicode_support_version.h is: 
     | 
|
| 
       14 
14 
     | 
    
         | 
| 
       15 
15 
     | 
    
         
             
            have_library: checking for SQLConnect() in -ldb2cli... -------------------- yes
         
     | 
| 
       16 
16 
     | 
    
         | 
| 
       17 
     | 
    
         
            -
            " 
     | 
| 
      
 17 
     | 
    
         
            +
            PATH=".;C:/Ruby31/lib;C:\Users\pnarayanappa\Python\Python310\Scripts\;C:\Users\pnarayanappa\Python\Python310\;C:\Program Files\Python37\Scripts\;C:\Program Files\Python37\;C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\ibm\gsk8\lib64;C:\Program Files (x86)\ibm\gsk8\lib;C:\Program Files\Java\jre1.8.0_231\bin;C:\Program Files\Microsoft SQL Server\130\Tools\Binn\;C:\Program Files\PuTTY\;C:\Program Files\Git\cmd;C:\Program Files\OpenSSH-Win64;C:\Program Files\Microsoft SQL Server\110\Tools\Binn\;C:\Program Files\Microsoft SQL Server\120\Tools\Binn\;C:\Users\pnarayanappa\AppData\Roaming\Python\Python37\Scripts\;C:\Users\pnarayanappa\eclipse-workspace-git-Dj-3_2_9_Py-3_10_5\myvenv\Lib\site-packages;C:\PROGRA~1\IBM\SQLLIB\BIN;C:\PROGRA~1\IBM\SQLLIB\FUNCTION;C:\PROGRA~1\IBM\SQLLIB\SAMPLES\REPL;C:\Program Files\dotnet\;C:\Program Files\Microsoft SQL Server\Client SDK\ODBC\170\Tools\Binn\;C:\Program Files (x86)\Microsoft SDKs\TypeScript\1.0\;C:\Ruby31\bin;C:\mingw-w64\i686-8.1.0-posix-dwarf-rt_v6-rev0\mingw32\bin;C:\Users\pnarayanappa\AppData\Local\Programs\Microsoft VS Code\bin;C:\Users\pnarayanappa\.dotnet\tools" "gcc -o conftest.exe -IC:/Ruby31/include/ruby-3.1.0/i386-mingw32 -IC:/Ruby31/include/ruby-3.1.0/ruby/backward -IC:/Ruby31/include/ruby-3.1.0 -I. -IC:/Users/pnarayanappa/ruby-ibmdb/IBM_DB_Adapter/ibm_db/ext/../lib/clidriver/include -D__USE_MINGW_ANSI_STDIO=1 -DFD_SETSIZE=2048 -D_WIN32_WINNT=0x0600 -D__MINGW_USE_VC2005_COMPAT -D_FILE_OFFSET_BITS=64  -O3 -fno-fast-math -fstack-protector-strong conftest.c  -L. -LC:/Ruby31/lib -LC:/Users/pnarayanappa/ruby-ibmdb/IBM_DB_Adapter/ibm_db/ext/../lib/clidriver/lib -L. -pipe -s -fstack-protector-strong -Wl,--no-as-needed     -lmsvcrt-ruby310  -lshell32 -lws2_32 -liphlpapi -limagehlp -lshlwapi -lbcrypt  "
         
     | 
| 
       18 
18 
     | 
    
         
             
            checked program was:
         
     | 
| 
       19 
19 
     | 
    
         
             
            /* begin */
         
     | 
| 
       20 
20 
     | 
    
         
             
            1: #include "ruby.h"
         
     | 
| 
         @@ -27,7 +27,7 @@ checked program was: 
     | 
|
| 
       27 
27 
     | 
    
         
             
            8: }
         
     | 
| 
       28 
28 
     | 
    
         
             
            /* end */
         
     | 
| 
       29 
29 
     | 
    
         | 
| 
       30 
     | 
    
         
            -
            " 
     | 
| 
      
 30 
     | 
    
         
            +
            PATH=".;C:/Ruby31/lib;C:\Users\pnarayanappa\Python\Python310\Scripts\;C:\Users\pnarayanappa\Python\Python310\;C:\Program Files\Python37\Scripts\;C:\Program Files\Python37\;C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\ibm\gsk8\lib64;C:\Program Files (x86)\ibm\gsk8\lib;C:\Program Files\Java\jre1.8.0_231\bin;C:\Program Files\Microsoft SQL Server\130\Tools\Binn\;C:\Program Files\PuTTY\;C:\Program Files\Git\cmd;C:\Program Files\OpenSSH-Win64;C:\Program Files\Microsoft SQL Server\110\Tools\Binn\;C:\Program Files\Microsoft SQL Server\120\Tools\Binn\;C:\Users\pnarayanappa\AppData\Roaming\Python\Python37\Scripts\;C:\Users\pnarayanappa\eclipse-workspace-git-Dj-3_2_9_Py-3_10_5\myvenv\Lib\site-packages;C:\PROGRA~1\IBM\SQLLIB\BIN;C:\PROGRA~1\IBM\SQLLIB\FUNCTION;C:\PROGRA~1\IBM\SQLLIB\SAMPLES\REPL;C:\Program Files\dotnet\;C:\Program Files\Microsoft SQL Server\Client SDK\ODBC\170\Tools\Binn\;C:\Program Files (x86)\Microsoft SDKs\TypeScript\1.0\;C:\Ruby31\bin;C:\mingw-w64\i686-8.1.0-posix-dwarf-rt_v6-rev0\mingw32\bin;C:\Users\pnarayanappa\AppData\Local\Programs\Microsoft VS Code\bin;C:\Users\pnarayanappa\.dotnet\tools" "gcc -o conftest.exe -IC:/Ruby31/include/ruby-3.1.0/i386-mingw32 -IC:/Ruby31/include/ruby-3.1.0/ruby/backward -IC:/Ruby31/include/ruby-3.1.0 -I. -IC:/Users/pnarayanappa/ruby-ibmdb/IBM_DB_Adapter/ibm_db/ext/../lib/clidriver/include -D__USE_MINGW_ANSI_STDIO=1 -DFD_SETSIZE=2048 -D_WIN32_WINNT=0x0600 -D__MINGW_USE_VC2005_COMPAT -D_FILE_OFFSET_BITS=64  -O3 -fno-fast-math -fstack-protector-strong conftest.c  -L. -LC:/Ruby31/lib -LC:/Users/pnarayanappa/ruby-ibmdb/IBM_DB_Adapter/ibm_db/ext/../lib/clidriver/lib -L. -pipe -s -fstack-protector-strong -Wl,--no-as-needed     -lmsvcrt-ruby310 -ldb2cli  -lshell32 -lws2_32 -liphlpapi -limagehlp -lshlwapi -lbcrypt  "
         
     | 
| 
       31 
31 
     | 
    
         
             
            conftest.c: In function 't':
         
     | 
| 
       32 
32 
     | 
    
         
             
            conftest.c:17:57: error: 'SQLConnect' undeclared (first use in this function); did you mean 'WSAConnect'?
         
     | 
| 
       33 
33 
     | 
    
         
             
             int t(void) { void ((*volatile p)()); p = (void ((*)()))SQLConnect; return !p; }
         
     | 
| 
         @@ -55,7 +55,7 @@ checked program was: 
     | 
|
| 
       55 
55 
     | 
    
         
             
            17: int t(void) { void ((*volatile p)()); p = (void ((*)()))SQLConnect; return !p; }
         
     | 
| 
       56 
56 
     | 
    
         
             
            /* end */
         
     | 
| 
       57 
57 
     | 
    
         | 
| 
       58 
     | 
    
         
            -
            " 
     | 
| 
      
 58 
     | 
    
         
            +
            PATH=".;C:/Ruby31/lib;C:\Users\pnarayanappa\Python\Python310\Scripts\;C:\Users\pnarayanappa\Python\Python310\;C:\Program Files\Python37\Scripts\;C:\Program Files\Python37\;C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\ibm\gsk8\lib64;C:\Program Files (x86)\ibm\gsk8\lib;C:\Program Files\Java\jre1.8.0_231\bin;C:\Program Files\Microsoft SQL Server\130\Tools\Binn\;C:\Program Files\PuTTY\;C:\Program Files\Git\cmd;C:\Program Files\OpenSSH-Win64;C:\Program Files\Microsoft SQL Server\110\Tools\Binn\;C:\Program Files\Microsoft SQL Server\120\Tools\Binn\;C:\Users\pnarayanappa\AppData\Roaming\Python\Python37\Scripts\;C:\Users\pnarayanappa\eclipse-workspace-git-Dj-3_2_9_Py-3_10_5\myvenv\Lib\site-packages;C:\PROGRA~1\IBM\SQLLIB\BIN;C:\PROGRA~1\IBM\SQLLIB\FUNCTION;C:\PROGRA~1\IBM\SQLLIB\SAMPLES\REPL;C:\Program Files\dotnet\;C:\Program Files\Microsoft SQL Server\Client SDK\ODBC\170\Tools\Binn\;C:\Program Files (x86)\Microsoft SDKs\TypeScript\1.0\;C:\Ruby31\bin;C:\mingw-w64\i686-8.1.0-posix-dwarf-rt_v6-rev0\mingw32\bin;C:\Users\pnarayanappa\AppData\Local\Programs\Microsoft VS Code\bin;C:\Users\pnarayanappa\.dotnet\tools" "gcc -o conftest.exe -IC:/Ruby31/include/ruby-3.1.0/i386-mingw32 -IC:/Ruby31/include/ruby-3.1.0/ruby/backward -IC:/Ruby31/include/ruby-3.1.0 -I. -IC:/Users/pnarayanappa/ruby-ibmdb/IBM_DB_Adapter/ibm_db/ext/../lib/clidriver/include -D__USE_MINGW_ANSI_STDIO=1 -DFD_SETSIZE=2048 -D_WIN32_WINNT=0x0600 -D__MINGW_USE_VC2005_COMPAT -D_FILE_OFFSET_BITS=64  -O3 -fno-fast-math -fstack-protector-strong conftest.c  -L. -LC:/Ruby31/lib -LC:/Users/pnarayanappa/ruby-ibmdb/IBM_DB_Adapter/ibm_db/ext/../lib/clidriver/lib -L. -pipe -s -fstack-protector-strong -Wl,--no-as-needed     -lmsvcrt-ruby310 -ldb2cli  -lshell32 -lws2_32 -liphlpapi -limagehlp -lshlwapi -lbcrypt  "
         
     | 
| 
       59 
59 
     | 
    
         
             
            checked program was:
         
     | 
| 
       60 
60 
     | 
    
         
             
            /* begin */
         
     | 
| 
       61 
61 
     | 
    
         
             
             1: #include "ruby.h"
         
     | 
| 
         @@ -82,7 +82,7 @@ checked program was: 
     | 
|
| 
       82 
82 
     | 
    
         | 
| 
       83 
83 
     | 
    
         
             
            have_header: checking for gil_release_version.h... -------------------- yes
         
     | 
| 
       84 
84 
     | 
    
         | 
| 
       85 
     | 
    
         
            -
            " 
     | 
| 
      
 85 
     | 
    
         
            +
            PATH=".;C:/Ruby31/lib;C:\Users\pnarayanappa\Python\Python310\Scripts\;C:\Users\pnarayanappa\Python\Python310\;C:\Program Files\Python37\Scripts\;C:\Program Files\Python37\;C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\ibm\gsk8\lib64;C:\Program Files (x86)\ibm\gsk8\lib;C:\Program Files\Java\jre1.8.0_231\bin;C:\Program Files\Microsoft SQL Server\130\Tools\Binn\;C:\Program Files\PuTTY\;C:\Program Files\Git\cmd;C:\Program Files\OpenSSH-Win64;C:\Program Files\Microsoft SQL Server\110\Tools\Binn\;C:\Program Files\Microsoft SQL Server\120\Tools\Binn\;C:\Users\pnarayanappa\AppData\Roaming\Python\Python37\Scripts\;C:\Users\pnarayanappa\eclipse-workspace-git-Dj-3_2_9_Py-3_10_5\myvenv\Lib\site-packages;C:\PROGRA~1\IBM\SQLLIB\BIN;C:\PROGRA~1\IBM\SQLLIB\FUNCTION;C:\PROGRA~1\IBM\SQLLIB\SAMPLES\REPL;C:\Program Files\dotnet\;C:\Program Files\Microsoft SQL Server\Client SDK\ODBC\170\Tools\Binn\;C:\Program Files (x86)\Microsoft SDKs\TypeScript\1.0\;C:\Ruby31\bin;C:\mingw-w64\i686-8.1.0-posix-dwarf-rt_v6-rev0\mingw32\bin;C:\Users\pnarayanappa\AppData\Local\Programs\Microsoft VS Code\bin;C:\Users\pnarayanappa\.dotnet\tools" "gcc -IC:/Ruby31/include/ruby-3.1.0/i386-mingw32 -IC:/Ruby31/include/ruby-3.1.0/ruby/backward -IC:/Ruby31/include/ruby-3.1.0 -I. -IC:/Users/pnarayanappa/ruby-ibmdb/IBM_DB_Adapter/ibm_db/ext/../lib/clidriver/include -D__USE_MINGW_ANSI_STDIO=1 -DFD_SETSIZE=2048 -D_WIN32_WINNT=0x0600 -D__MINGW_USE_VC2005_COMPAT -D_FILE_OFFSET_BITS=64  -O3 -fno-fast-math -fstack-protector-strong   -c conftest.c"
         
     | 
| 
       86 
86 
     | 
    
         
             
            checked program was:
         
     | 
| 
       87 
87 
     | 
    
         
             
            /* begin */
         
     | 
| 
       88 
88 
     | 
    
         
             
            1: #include "ruby.h"
         
     | 
| 
         @@ -96,7 +96,7 @@ checked program was: 
     | 
|
| 
       96 
96 
     | 
    
         | 
| 
       97 
97 
     | 
    
         
             
            have_header: checking for unicode_support_version.h... -------------------- yes
         
     | 
| 
       98 
98 
     | 
    
         | 
| 
       99 
     | 
    
         
            -
            " 
     | 
| 
      
 99 
     | 
    
         
            +
            PATH=".;C:/Ruby31/lib;C:\Users\pnarayanappa\Python\Python310\Scripts\;C:\Users\pnarayanappa\Python\Python310\;C:\Program Files\Python37\Scripts\;C:\Program Files\Python37\;C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\ibm\gsk8\lib64;C:\Program Files (x86)\ibm\gsk8\lib;C:\Program Files\Java\jre1.8.0_231\bin;C:\Program Files\Microsoft SQL Server\130\Tools\Binn\;C:\Program Files\PuTTY\;C:\Program Files\Git\cmd;C:\Program Files\OpenSSH-Win64;C:\Program Files\Microsoft SQL Server\110\Tools\Binn\;C:\Program Files\Microsoft SQL Server\120\Tools\Binn\;C:\Users\pnarayanappa\AppData\Roaming\Python\Python37\Scripts\;C:\Users\pnarayanappa\eclipse-workspace-git-Dj-3_2_9_Py-3_10_5\myvenv\Lib\site-packages;C:\PROGRA~1\IBM\SQLLIB\BIN;C:\PROGRA~1\IBM\SQLLIB\FUNCTION;C:\PROGRA~1\IBM\SQLLIB\SAMPLES\REPL;C:\Program Files\dotnet\;C:\Program Files\Microsoft SQL Server\Client SDK\ODBC\170\Tools\Binn\;C:\Program Files (x86)\Microsoft SDKs\TypeScript\1.0\;C:\Ruby31\bin;C:\mingw-w64\i686-8.1.0-posix-dwarf-rt_v6-rev0\mingw32\bin;C:\Users\pnarayanappa\AppData\Local\Programs\Microsoft VS Code\bin;C:\Users\pnarayanappa\.dotnet\tools" "gcc -IC:/Ruby31/include/ruby-3.1.0/i386-mingw32 -IC:/Ruby31/include/ruby-3.1.0/ruby/backward -IC:/Ruby31/include/ruby-3.1.0 -I. -IC:/Users/pnarayanappa/ruby-ibmdb/IBM_DB_Adapter/ibm_db/ext/../lib/clidriver/include -D__USE_MINGW_ANSI_STDIO=1 -DFD_SETSIZE=2048 -D_WIN32_WINNT=0x0600 -D__MINGW_USE_VC2005_COMPAT -D_FILE_OFFSET_BITS=64  -O3 -fno-fast-math -fstack-protector-strong   -c conftest.c"
         
     | 
| 
       100 
100 
     | 
    
         
             
            checked program was:
         
     | 
| 
       101 
101 
     | 
    
         
             
            /* begin */
         
     | 
| 
       102 
102 
     | 
    
         
             
            1: #include "ruby.h"
         
     | 
    
        data/ext/ruby_ibm_db_cli.o
    CHANGED
    
    | 
         Binary file 
     | 
| 
         @@ -51,6 +51,12 @@ module ActiveRecord 
     | 
|
| 
       51 
51 
     | 
    
         
             
              module ConnectionAdapters
         
     | 
| 
       52 
52 
     | 
    
         
             
                class SchemaDumper
         
     | 
| 
       53 
53 
     | 
    
         
             
                  private
         
     | 
| 
      
 54 
     | 
    
         
            +
                    def header(stream)
         
     | 
| 
      
 55 
     | 
    
         
            +
                      stream.puts <<~HEADER          
         
     | 
| 
      
 56 
     | 
    
         
            +
                        ActiveRecord::Schema[#{ActiveRecord::Migration.current_version}].define(#{define_params}) do
         
     | 
| 
      
 57 
     | 
    
         
            +
                      HEADER
         
     | 
| 
      
 58 
     | 
    
         
            +
                    end
         
     | 
| 
      
 59 
     | 
    
         
            +
             
     | 
| 
       54 
60 
     | 
    
         
             
                    def default_primary_key?(column)
         
     | 
| 
       55 
61 
     | 
    
         
             
                      schema_type(column) == :integer
         
     | 
| 
       56 
62 
     | 
    
         
             
                    end
         
     | 
| 
         @@ -75,11 +81,11 @@ module ActiveRecord 
     | 
|
| 
       75 
81 
     | 
    
         
             
                      end
         
     | 
| 
       76 
82 
     | 
    
         | 
| 
       77 
83 
     | 
    
         
             
                      if supports_foreign_keys?
         
     | 
| 
       78 
     | 
    
         
            -
                        statements.concat(o.foreign_keys.map { | 
     | 
| 
      
 84 
     | 
    
         
            +
                        statements.concat(o.foreign_keys.map { |fk| accept fk })
         
     | 
| 
       79 
85 
     | 
    
         
             
                      end
         
     | 
| 
       80 
86 
     | 
    
         | 
| 
       81 
87 
     | 
    
         
             
                      if supports_check_constraints?
         
     | 
| 
       82 
     | 
    
         
            -
                        statements.concat(o.check_constraints.map { | 
     | 
| 
      
 88 
     | 
    
         
            +
                        statements.concat(o.check_constraints.map { |chk| accept chk })
         
     | 
| 
       83 
89 
     | 
    
         
             
                      end
         
     | 
| 
       84 
90 
     | 
    
         | 
| 
       85 
91 
     | 
    
         
             
                      create_sql << "(#{statements.join(', ')})" if statements.present?
         
     | 
| 
         @@ -423,7 +429,7 @@ module ActiveRecord 
     | 
|
| 
       423 
429 
     | 
    
         
             
                  end
         
     | 
| 
       424 
430 
     | 
    
         | 
| 
       425 
431 
     | 
    
         
             
                  def drop_table(table_name, options={})
         
     | 
| 
       426 
     | 
    
         
            -
                    puts_log "drop_table"
         
     | 
| 
      
 432 
     | 
    
         
            +
                    puts_log "drop_table - #{table_name}"
         
     | 
| 
       427 
433 
     | 
    
         
             
                    if options[:if_exists]
         
     | 
| 
       428 
434 
     | 
    
         
             
                      execute("DROP TABLE IF EXISTS #{quote_table_name(table_name)}")
         
     | 
| 
       429 
435 
     | 
    
         
             
                    else
         
     | 
| 
         @@ -833,7 +839,9 @@ module ActiveRecord 
     | 
|
| 
       833 
839 
     | 
    
         | 
| 
       834 
840 
     | 
    
         
             
                  def prepared_statements?
         
     | 
| 
       835 
841 
     | 
    
         
             
                    puts_log "prepared_statements?"
         
     | 
| 
       836 
     | 
    
         
            -
                    @prepared_statements && !prepared_statements_disabled_cache.include?(object_id)
         
     | 
| 
      
 842 
     | 
    
         
            +
                    prepare = @prepared_statements && !prepared_statements_disabled_cache.include?(object_id)
         
     | 
| 
      
 843 
     | 
    
         
            +
                    puts_log "prepare = #{prepare}"
         
     | 
| 
      
 844 
     | 
    
         
            +
                    prepare
         
     | 
| 
       837 
845 
     | 
    
         
             
                  end
         
     | 
| 
       838 
846 
     | 
    
         
             
                  alias :prepared_statements :prepared_statements?
         
     | 
| 
       839 
847 
     | 
    
         | 
| 
         @@ -1112,8 +1120,10 @@ module ActiveRecord 
     | 
|
| 
       1112 
1120 
     | 
    
         
             
                    end
         
     | 
| 
       1113 
1121 
     | 
    
         
             
                  end
         
     | 
| 
       1114 
1122 
     | 
    
         | 
| 
       1115 
     | 
    
         
            -
                  def select(sql, name = nil, binds = [])
         
     | 
| 
      
 1123 
     | 
    
         
            +
                  def select(sql, name = nil, binds = [], prepare: false, async: false)
         
     | 
| 
       1116 
1124 
     | 
    
         
             
                    puts_log "select #{sql}"
         
     | 
| 
      
 1125 
     | 
    
         
            +
                    puts_log "prepare = #{prepare}"
         
     | 
| 
      
 1126 
     | 
    
         
            +
             
     | 
| 
       1117 
1127 
     | 
    
         
             
                    # Replaces {"= NULL" with " IS NULL"} OR {"IN (NULL)" with " IS NULL"
         
     | 
| 
       1118 
1128 
     | 
    
         
             
                    begin
         
     | 
| 
       1119 
1129 
     | 
    
         
             
                      sql.gsub( /(=\s*NULL|IN\s*\(NULL\))/i, " IS NULL" )
         
     | 
| 
         @@ -1121,12 +1131,32 @@ module ActiveRecord 
     | 
|
| 
       1121 
1131 
     | 
    
         
             
                      # ...
         
     | 
| 
       1122 
1132 
     | 
    
         
             
                    end
         
     | 
| 
       1123 
1133 
     | 
    
         | 
| 
      
 1134 
     | 
    
         
            +
                    if async && async_enabled?
         
     | 
| 
      
 1135 
     | 
    
         
            +
                      if current_transaction.joinable?
         
     | 
| 
      
 1136 
     | 
    
         
            +
                        raise AsynchronousQueryInsideTransactionError, "Asynchronous queries are not allowed inside transactions"
         
     | 
| 
      
 1137 
     | 
    
         
            +
                      end
         
     | 
| 
      
 1138 
     | 
    
         
            +
             
     | 
| 
      
 1139 
     | 
    
         
            +
                      future_result = async.new(
         
     | 
| 
      
 1140 
     | 
    
         
            +
                        pool,
         
     | 
| 
      
 1141 
     | 
    
         
            +
                        sql,
         
     | 
| 
      
 1142 
     | 
    
         
            +
                        name,
         
     | 
| 
      
 1143 
     | 
    
         
            +
                        binds,
         
     | 
| 
      
 1144 
     | 
    
         
            +
                        prepare: prepare,
         
     | 
| 
      
 1145 
     | 
    
         
            +
                      )
         
     | 
| 
      
 1146 
     | 
    
         
            +
                      if supports_concurrent_connections? && current_transaction.closed?
         
     | 
| 
      
 1147 
     | 
    
         
            +
                        future_result.schedule!(ActiveRecord::Base.asynchronous_queries_session)
         
     | 
| 
      
 1148 
     | 
    
         
            +
                      else
         
     | 
| 
      
 1149 
     | 
    
         
            +
                        future_result.execute!(self)
         
     | 
| 
      
 1150 
     | 
    
         
            +
                      end
         
     | 
| 
      
 1151 
     | 
    
         
            +
                      return future_result
         
     | 
| 
      
 1152 
     | 
    
         
            +
                    end
         
     | 
| 
      
 1153 
     | 
    
         
            +
             
     | 
| 
       1124 
1154 
     | 
    
         
             
                    results = []
         
     | 
| 
       1125 
1155 
     | 
    
         | 
| 
       1126 
1156 
     | 
    
         
             
                    if(binds.nil? || binds.empty?)
         
     | 
| 
       1127 
1157 
     | 
    
         
             
                      stmt = execute(sql, name)
         
     | 
| 
       1128 
1158 
     | 
    
         
             
                    else
         
     | 
| 
       1129 
     | 
    
         
            -
                      stmt = exec_query_ret_stmt(sql, name, binds, prepare 
     | 
| 
      
 1159 
     | 
    
         
            +
                      stmt = exec_query_ret_stmt(sql, name, binds, prepare)
         
     | 
| 
       1130 
1160 
     | 
    
         
             
                    end
         
     | 
| 
       1131 
1161 
     | 
    
         | 
| 
       1132 
1162 
     | 
    
         
             
                    cols = IBM_DB.resultCols(stmt)
         
     | 
| 
         @@ -1452,7 +1482,8 @@ module ActiveRecord 
     | 
|
| 
       1452 
1482 
     | 
    
         
             
                  # the executed +sql+ statement.
         
     | 
| 
       1453 
1483 
     | 
    
         
             
                  # Here prepare argument is not used, by default this method creates prepared statment and execute.
         
     | 
| 
       1454 
1484 
     | 
    
         
             
                  def exec_query_ret_stmt(sql, name = 'SQL', binds = [], prepare = false)
         
     | 
| 
       1455 
     | 
    
         
            -
                    puts_log "exec_query_ret_stmt"
         
     | 
| 
      
 1485 
     | 
    
         
            +
                    puts_log "exec_query_ret_stmt #{sql}"
         
     | 
| 
      
 1486 
     | 
    
         
            +
                    sql = transform_query(sql)
         
     | 
| 
       1456 
1487 
     | 
    
         
             
                    check_if_write_query(sql)
         
     | 
| 
       1457 
1488 
     | 
    
         
             
                    materialize_transactions
         
     | 
| 
       1458 
1489 
     | 
    
         
             
                    mark_transaction_written_if_write(sql)
         
     | 
| 
         @@ -1461,6 +1492,8 @@ module ActiveRecord 
     | 
|
| 
       1461 
1492 
     | 
    
         
             
                      puts_log "Binds = #{binds}"
         
     | 
| 
       1462 
1493 
     | 
    
         
             
                      param_array = type_casted_binds(binds)
         
     | 
| 
       1463 
1494 
     | 
    
         
             
                      puts_log "Param array = #{param_array}"
         
     | 
| 
      
 1495 
     | 
    
         
            +
                      puts_log "Prepare flag = #{prepare}"
         
     | 
| 
      
 1496 
     | 
    
         
            +
                      puts_log "#{caller}"
         
     | 
| 
       1464 
1497 
     | 
    
         | 
| 
       1465 
1498 
     | 
    
         
             
                      stmt = @servertype.prepare(sql, name)
         
     | 
| 
       1466 
1499 
     | 
    
         
             
                      if prepare 
         
     | 
| 
         @@ -1526,6 +1559,7 @@ module ActiveRecord 
     | 
|
| 
       1526 
1559 
     | 
    
         
             
            	    #sql='INSERT INTO ar_internal_metadata (key, value, created_at, updated_at) VALUES ('10', '10', '10', '10')
         
     | 
| 
       1527 
1560 
     | 
    
         
             
                    puts_log "execute"
         
     | 
| 
       1528 
1561 
     | 
    
         
             
                    puts_log "#{sql}"
         
     | 
| 
      
 1562 
     | 
    
         
            +
                    sql = transform_query(sql)
         
     | 
| 
       1529 
1563 
     | 
    
         
             
                    check_if_write_query(sql)
         
     | 
| 
       1530 
1564 
     | 
    
         
             
                    materialize_transactions
         
     | 
| 
       1531 
1565 
     | 
    
         
             
                    mark_transaction_written_if_write(sql)
         
     | 
| 
         @@ -1725,6 +1759,9 @@ module ActiveRecord 
     | 
|
| 
       1725 
1759 
     | 
    
         | 
| 
       1726 
1760 
     | 
    
         
             
                  def quote_table_name(name)
         
     | 
| 
       1727 
1761 
     | 
    
         
             
                    puts_log "quote_table_name"
         
     | 
| 
      
 1762 
     | 
    
         
            +
                    if name.start_with?'0', '1', '2', '3', '4', '5', '6', '7', '8', '9'
         
     | 
| 
      
 1763 
     | 
    
         
            +
                      name = "\"#{name}\""
         
     | 
| 
      
 1764 
     | 
    
         
            +
                    end
         
     | 
| 
       1728 
1765 
     | 
    
         
             
                    name
         
     | 
| 
       1729 
1766 
     | 
    
         
             
                    #@servertype.check_reserved_words(name).gsub('"', '').gsub("'",'')
         
     | 
| 
       1730 
1767 
     | 
    
         
             
                  end
         
     | 
| 
         @@ -2378,7 +2415,9 @@ module ActiveRecord 
     | 
|
| 
       2378 
2415 
     | 
    
         
             
                          column_nullable = (col["nullable"] == 1) ? true : false
         
     | 
| 
       2379 
2416 
     | 
    
         
             
                          # Make sure the hidden column (db2_generated_rowid_for_lobs) in DB2 z/OS isn't added to the list
         
     | 
| 
       2380 
2417 
     | 
    
         
             
                          if !(column_name.match(/db2_generated_rowid_for_lobs/i))
         
     | 
| 
      
 2418 
     | 
    
         
            +
                            puts_log "Column type = #{column_type}"
         
     | 
| 
       2381 
2419 
     | 
    
         
             
            				ruby_type = simplified_type(column_type)
         
     | 
| 
      
 2420 
     | 
    
         
            +
                            puts_log "Ruby type after = #{ruby_type}"
         
     | 
| 
       2382 
2421 
     | 
    
         
             
            				precision = extract_precision(ruby_type)
         
     | 
| 
       2383 
2422 
     | 
    
         | 
| 
       2384 
2423 
     | 
    
         
             
                            if column_type.match(/timestamp|integer|bigint|date|time|blob/i)
         
     | 
| 
         @@ -2429,7 +2468,7 @@ module ActiveRecord 
     | 
|
| 
       2429 
2468 
     | 
    
         
             
                        else
         
     | 
| 
       2430 
2469 
     | 
    
         
             
                          error_msg = "An unexpected error occurred during retrieval of column metadata"
         
     | 
| 
       2431 
2470 
     | 
    
         
             
                          error_msg = error_msg + ": #{fetch_error.message}" if !fetch_error.message.empty?
         
     | 
| 
       2432 
     | 
    
         
            -
             
     | 
| 
      
 2471 
     | 
    
         
            +
            #             raise error_msg
         
     | 
| 
       2433 
2472 
     | 
    
         
             
                        end
         
     | 
| 
       2434 
2473 
     | 
    
         
             
                      ensure  # Free resources associated with the statement
         
     | 
| 
       2435 
2474 
     | 
    
         
             
                        IBM_DB.free_stmt(stmt) if stmt
         
     | 
| 
         @@ -2447,6 +2486,10 @@ module ActiveRecord 
     | 
|
| 
       2447 
2486 
     | 
    
         
             
                    return columns
         
     | 
| 
       2448 
2487 
     | 
    
         
             
                  end
         
     | 
| 
       2449 
2488 
     | 
    
         | 
| 
      
 2489 
     | 
    
         
            +
                  def extract_precision(sql_type)
         
     | 
| 
      
 2490 
     | 
    
         
            +
                    $1.to_i if sql_type =~ /\((\d+)(,\d+)?\)/
         
     | 
| 
      
 2491 
     | 
    
         
            +
                  end
         
     | 
| 
      
 2492 
     | 
    
         
            +
             
     | 
| 
       2450 
2493 
     | 
    
         
             
                  def extract_default_function(default_value, default)
         
     | 
| 
       2451 
2494 
     | 
    
         
             
                    default if has_default_function?(default_value, default)
         
     | 
| 
       2452 
2495 
     | 
    
         
             
                  end
         
     | 
| 
         @@ -2491,7 +2534,7 @@ module ActiveRecord 
     | 
|
| 
       2491 
2534 
     | 
    
         
             
                        else
         
     | 
| 
       2492 
2535 
     | 
    
         
             
                          error_msg = "An unexpected error occurred during retrieval of foreign key metadata"
         
     | 
| 
       2493 
2536 
     | 
    
         
             
                          error_msg = error_msg + ": #{fetch_error.message}" if !fetch_error.message.empty?
         
     | 
| 
       2494 
     | 
    
         
            -
             
     | 
| 
      
 2537 
     | 
    
         
            +
            #             raise error_msg
         
     | 
| 
       2495 
2538 
     | 
    
         
             
                        end
         
     | 
| 
       2496 
2539 
     | 
    
         
             
                      ensure  # Free resources associated with the statement
         
     | 
| 
       2497 
2540 
     | 
    
         
             
                        IBM_DB.free_stmt(stmt) if stmt
         
     | 
| 
         @@ -2578,6 +2621,7 @@ module ActiveRecord 
     | 
|
| 
       2578 
2621 
     | 
    
         
             
                    puts_log "add_column"
         
     | 
| 
       2579 
2622 
     | 
    
         
             
                    clear_cache!
         
     | 
| 
       2580 
2623 
     | 
    
         
             
                    puts_log "add_column info #{table_name}, #{column_name}, #{type}, #{options}"
         
     | 
| 
      
 2624 
     | 
    
         
            +
                    puts_log caller
         
     | 
| 
       2581 
2625 
     | 
    
         
             
                    if (!type.nil? && type.to_s == "primary_key") or (options.key?(:primary_key) and options[:primary_key] == true)
         
     | 
| 
       2582 
2626 
     | 
    
         
             
                      if !type.nil? and type.to_s != "primary_key"
         
     | 
| 
       2583 
2627 
     | 
    
         
             
                        execute "ALTER TABLE #{table_name} ADD COLUMN #{column_name} #{type} NOT NULL DEFAULT 0"
         
     | 
| 
         @@ -2685,6 +2729,15 @@ module ActiveRecord 
     | 
|
| 
       2685 
2729 
     | 
    
         
             
                    end
         
     | 
| 
       2686 
2730 
     | 
    
         
             
                  end
         
     | 
| 
       2687 
2731 
     | 
    
         | 
| 
      
 2732 
     | 
    
         
            +
                  def remove_columns(table_name, *column_names, type: nil, **options)
         
     | 
| 
      
 2733 
     | 
    
         
            +
                    if column_names.empty?
         
     | 
| 
      
 2734 
     | 
    
         
            +
                      raise ArgumentError.new("You must specify at least one column name. Example: remove_columns(:people, :first_name)")
         
     | 
| 
      
 2735 
     | 
    
         
            +
                    end
         
     | 
| 
      
 2736 
     | 
    
         
            +
             
     | 
| 
      
 2737 
     | 
    
         
            +
                    remove_column_fragments = remove_columns_for_alter(table_name, *column_names, type: type, **options)
         
     | 
| 
      
 2738 
     | 
    
         
            +
                    execute "ALTER TABLE #{quote_table_name(table_name)} #{remove_column_fragments.join(' ')}"
         
     | 
| 
      
 2739 
     | 
    
         
            +
                  end
         
     | 
| 
      
 2740 
     | 
    
         
            +
             
     | 
| 
       2688 
2741 
     | 
    
         
             
                  # Renames a table.
         
     | 
| 
       2689 
2742 
     | 
    
         
             
                  # ==== Example
         
     | 
| 
       2690 
2743 
     | 
    
         
             
                  # rename_table('octopuses', 'octopi')
         
     | 
| 
         @@ -2782,7 +2835,7 @@ module ActiveRecord 
     | 
|
| 
       2782 
2835 
     | 
    
         
             
                    puts_log "add_foreign_keyList = #{table_name}, #{column_name}, #{fkey_list}"
         
     | 
| 
       2783 
2836 
     | 
    
         
             
                    fkey_list.each do |fkey|
         
     | 
| 
       2784 
2837 
     | 
    
         
             
                      if fkey.options[:column] == column_name
         
     | 
| 
       2785 
     | 
    
         
            -
                        add_foreign_key(table_name, fkey.to_table, column: new_column_name)
         
     | 
| 
      
 2838 
     | 
    
         
            +
                        add_foreign_key(table_name, strip_table_name_prefix_and_suffix(fkey.to_table), column: new_column_name)
         
     | 
| 
       2786 
2839 
     | 
    
         
             
                      end
         
     | 
| 
       2787 
2840 
     | 
    
         
             
                    end
         
     | 
| 
       2788 
2841 
     | 
    
         
             
                  end
         
     | 
| 
         @@ -2917,6 +2970,7 @@ module ActiveRecord 
     | 
|
| 
       2917 
2970 
     | 
    
         | 
| 
       2918 
2971 
     | 
    
         
             
                  class SchemaDumper < ConnectionAdapters::SchemaDumper
         
     | 
| 
       2919 
2972 
     | 
    
         
             
                    def dump(stream)    # Like in abstract class, we no need to call header() & trailer().
         
     | 
| 
      
 2973 
     | 
    
         
            +
                      header(stream)
         
     | 
| 
       2920 
2974 
     | 
    
         
             
                      extensions(stream)
         
     | 
| 
       2921 
2975 
     | 
    
         
             
                      tables(stream)
         
     | 
| 
       2922 
2976 
     | 
    
         
             
                      stream
         
     | 
| 
         @@ -3724,7 +3778,7 @@ module Arel 
     | 
|
| 
       3724 
3778 
     | 
    
         
             
                      row.each_with_index do |value, k|
         
     | 
| 
       3725 
3779 
     | 
    
         
             
                      collector << ", " unless k == 0
         
     | 
| 
       3726 
3780 
     | 
    
         
             
                      case value
         
     | 
| 
       3727 
     | 
    
         
            -
                        when Nodes::SqlLiteral, Nodes::BindParam
         
     | 
| 
      
 3781 
     | 
    
         
            +
                        when Nodes::SqlLiteral, Nodes::BindParam, ActiveModel::Attribute
         
     | 
| 
       3728 
3782 
     | 
    
         
             
                          collector = visit(value, collector)
         
     | 
| 
       3729 
3783 
     | 
    
         
             
                          #collector << quote(value).to_s
         
     | 
| 
       3730 
3784 
     | 
    
         
             
                        else
         
     | 
    
        data/lib/mswin32/ibm_db.rb
    CHANGED
    
    | 
         @@ -87,8 +87,10 @@ machine_bits = ['ibm'].pack('p').size * 8 
     | 
|
| 
       87 
87 
     | 
    
         
             
            if machine_bits == 64		
         
     | 
| 
       88 
88 
     | 
    
         
             
            	raise NotImplementedError, "ibm_db with Ruby 64-bit on Windows platform is not supported. Refer to README for more details"
         
     | 
| 
       89 
89 
     | 
    
         
             
            else
         
     | 
| 
       90 
     | 
    
         
            -
            	if (RUBY_VERSION =~ /3/)
         
     | 
| 
      
 90 
     | 
    
         
            +
            	if (RUBY_VERSION =~ /3.0/)
         
     | 
| 
       91 
91 
     | 
    
         
             
            		require 'rb3x/i386/ruby30/ibm_db.so'
         
     | 
| 
      
 92 
     | 
    
         
            +
            	elsif (RUBY_VERSION =~ /3.1/)
         
     | 
| 
      
 93 
     | 
    
         
            +
            		require 'rb3x/i386/ruby31/ibm_db.so'
         
     | 
| 
       92 
94 
     | 
    
         
             
            	elsif (RUBY_VERSION =~ /2.7/)
         
     | 
| 
       93 
95 
     | 
    
         
             
            		require 'rb2x/i386/ruby27/ibm_db.so'
         
     | 
| 
       94 
96 
     | 
    
         
             
            	elsif (RUBY_VERSION =~ /2.6/)
         
     | 
| 
         Binary file 
     | 
    
        metadata
    CHANGED
    
    | 
         @@ -1,14 +1,14 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            --- !ruby/object:Gem::Specification
         
     | 
| 
       2 
2 
     | 
    
         
             
            name: ibm_db
         
     | 
| 
       3 
3 
     | 
    
         
             
            version: !ruby/object:Gem::Version
         
     | 
| 
       4 
     | 
    
         
            -
              version: 5. 
     | 
| 
      
 4 
     | 
    
         
            +
              version: 5.4.0
         
     | 
| 
       5 
5 
     | 
    
         
             
            platform: x86-mingw32
         
     | 
| 
       6 
6 
     | 
    
         
             
            authors:
         
     | 
| 
       7 
7 
     | 
    
         
             
            - IBM
         
     | 
| 
       8 
8 
     | 
    
         
             
            autorequire:
         
     | 
| 
       9 
9 
     | 
    
         
             
            bindir: bin
         
     | 
| 
       10 
10 
     | 
    
         
             
            cert_chain: []
         
     | 
| 
       11 
     | 
    
         
            -
            date:  
     | 
| 
      
 11 
     | 
    
         
            +
            date: 2023-03-28 00:00:00.000000000 Z
         
     | 
| 
       12 
12 
     | 
    
         
             
            dependencies:
         
     | 
| 
       13 
13 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       14 
14 
     | 
    
         
             
              name: zip
         
     | 
| 
         @@ -30,14 +30,14 @@ dependencies: 
     | 
|
| 
       30 
30 
     | 
    
         
             
                requirements:
         
     | 
| 
       31 
31 
     | 
    
         
             
                - - "<"
         
     | 
| 
       32 
32 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       33 
     | 
    
         
            -
                    version: ' 
     | 
| 
      
 33 
     | 
    
         
            +
                    version: '7.1'
         
     | 
| 
       34 
34 
     | 
    
         
             
              type: :runtime
         
     | 
| 
       35 
35 
     | 
    
         
             
              prerelease: false
         
     | 
| 
       36 
36 
     | 
    
         
             
              version_requirements: !ruby/object:Gem::Requirement
         
     | 
| 
       37 
37 
     | 
    
         
             
                requirements:
         
     | 
| 
       38 
38 
     | 
    
         
             
                - - "<"
         
     | 
| 
       39 
39 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       40 
     | 
    
         
            -
                    version: ' 
     | 
| 
      
 40 
     | 
    
         
            +
                    version: '7.1'
         
     | 
| 
       41 
41 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       42 
42 
     | 
    
         
             
              name: archive-zip
         
     | 
| 
       43 
43 
     | 
    
         
             
              requirement: !ruby/object:Gem::Requirement
         
     | 
| 
         @@ -67,6 +67,7 @@ files: 
     | 
|
| 
       67 
67 
     | 
    
         
             
            - MANIFEST
         
     | 
| 
       68 
68 
     | 
    
         
             
            - ParameterizedQueries README
         
     | 
| 
       69 
69 
     | 
    
         
             
            - README
         
     | 
| 
      
 70 
     | 
    
         
            +
            - debug.log
         
     | 
| 
       70 
71 
     | 
    
         
             
            - ext/Makefile
         
     | 
| 
       71 
72 
     | 
    
         
             
            - ext/Makefile.nt32
         
     | 
| 
       72 
73 
     | 
    
         
             
            - ext/Makefile.nt32.191
         
     | 
| 
         @@ -94,6 +95,7 @@ files: 
     | 
|
| 
       94 
95 
     | 
    
         
             
            - lib/mswin32/rb2x/i386/ruby26/ibm_db.so
         
     | 
| 
       95 
96 
     | 
    
         
             
            - lib/mswin32/rb2x/i386/ruby27/ibm_db.so
         
     | 
| 
       96 
97 
     | 
    
         
             
            - lib/mswin32/rb3x/i386/ruby30/ibm_db.so
         
     | 
| 
      
 98 
     | 
    
         
            +
            - lib/mswin32/rb3x/i386/ruby31/ibm_db.so
         
     | 
| 
       97 
99 
     | 
    
         
             
            - test/active_record/connection_adapters/fake_adapter.rb
         
     | 
| 
       98 
100 
     | 
    
         
             
            - test/activejob/destroy_association_async_test.rb
         
     | 
| 
       99 
101 
     | 
    
         
             
            - test/activejob/destroy_async_job_not_present_test.rb
         
     | 
| 
         @@ -847,8 +849,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement 
     | 
|
| 
       847 
849 
     | 
    
         
             
                - !ruby/object:Gem::Version
         
     | 
| 
       848 
850 
     | 
    
         
             
                  version: '0'
         
     | 
| 
       849 
851 
     | 
    
         
             
            requirements:
         
     | 
| 
       850 
     | 
    
         
            -
            - ActiveRecord, at least  
     | 
| 
       851 
     | 
    
         
            -
            rubygems_version: 3. 
     | 
| 
      
 852 
     | 
    
         
            +
            - ActiveRecord, at least 7.0
         
     | 
| 
      
 853 
     | 
    
         
            +
            rubygems_version: 3.3.3
         
     | 
| 
       852 
854 
     | 
    
         
             
            signing_key:
         
     | 
| 
       853 
855 
     | 
    
         
             
            specification_version: 4
         
     | 
| 
       854 
856 
     | 
    
         
             
            summary: 'Rails Driver and Adapter for IBM Data Servers: {DB2 on Linux/Unix/Windows,
         
     |