ruby-plsql 0.5.3 → 0.8.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (57) hide show
  1. checksums.yaml +5 -5
  2. data/.github/stale.yml +37 -0
  3. data/.github/workflows/rubocop.yml +37 -0
  4. data/.github/workflows/test.yml +69 -0
  5. data/.rubocop.yml +147 -0
  6. data/.travis.yml +88 -0
  7. data/.travis/oracle/download.sh +15 -0
  8. data/.travis/oracle/install.sh +32 -0
  9. data/.travis/setup_accounts.sh +9 -0
  10. data/Gemfile +17 -9
  11. data/History.txt +76 -0
  12. data/README.md +29 -6
  13. data/Rakefile +31 -26
  14. data/VERSION +1 -1
  15. data/Vagrantfile +4 -4
  16. data/ci/network/admin/tnsnames.ora +7 -0
  17. data/ci/setup_accounts.sh +9 -0
  18. data/gemfiles/Gemfile.activerecord-5.0 +21 -0
  19. data/gemfiles/Gemfile.activerecord-5.1 +21 -0
  20. data/gemfiles/Gemfile.activerecord-5.2 +21 -0
  21. data/gemfiles/Gemfile.activerecord-6.0 +21 -0
  22. data/gemfiles/Gemfile.activerecord-6.1 +21 -0
  23. data/gemfiles/Gemfile.activerecord-main +21 -0
  24. data/lib/plsql/connection.rb +19 -22
  25. data/lib/plsql/helpers.rb +1 -3
  26. data/lib/plsql/jdbc_connection.rb +70 -68
  27. data/lib/plsql/oci8_patches.rb +2 -2
  28. data/lib/plsql/oci_connection.rb +62 -77
  29. data/lib/plsql/package.rb +61 -46
  30. data/lib/plsql/procedure.rb +358 -78
  31. data/lib/plsql/procedure_call.rb +508 -463
  32. data/lib/plsql/schema.rb +96 -101
  33. data/lib/plsql/sequence.rb +10 -13
  34. data/lib/plsql/sql_statements.rb +9 -11
  35. data/lib/plsql/table.rb +60 -63
  36. data/lib/plsql/type.rb +71 -76
  37. data/lib/plsql/variable.rb +90 -94
  38. data/lib/plsql/version.rb +1 -1
  39. data/lib/plsql/view.rb +16 -19
  40. data/ruby-plsql.gemspec +55 -35
  41. data/spec/plsql/connection_spec.rb +72 -66
  42. data/spec/plsql/package_spec.rb +63 -14
  43. data/spec/plsql/procedure_spec.rb +603 -261
  44. data/spec/plsql/schema_spec.rb +47 -23
  45. data/spec/plsql/sequence_spec.rb +2 -2
  46. data/spec/plsql/sql_statements_spec.rb +6 -6
  47. data/spec/plsql/table_spec.rb +84 -79
  48. data/spec/plsql/type_spec.rb +24 -30
  49. data/spec/plsql/variable_spec.rb +80 -88
  50. data/spec/plsql/version_spec.rb +4 -4
  51. data/spec/plsql/view_spec.rb +42 -42
  52. data/spec/spec_helper.rb +38 -35
  53. data/spec/support/create_arunit_user.sql +2 -0
  54. data/spec/support/custom_config.rb.sample +14 -0
  55. data/spec/support/test_db.rb +12 -13
  56. data/spec/support/unlock_and_setup_hr_user.sql +2 -0
  57. metadata +111 -34
@@ -0,0 +1,9 @@
1
+ #!/bin/bash
2
+
3
+ set -ev
4
+
5
+ "$ORACLE_HOME/bin/sqlplus" -L -S / AS SYSDBA <<SQL
6
+ @@spec/support/unlock_and_setup_hr_user.sql
7
+ @@spec/support/create_arunit_user.sql
8
+ exit
9
+ SQL
data/Gemfile CHANGED
@@ -1,16 +1,24 @@
1
- source 'http://rubygems.org'
1
+ source "http://rubygems.org"
2
2
 
3
3
  group :development do
4
- gem 'jeweler', '~> 2.0.1'
5
- gem 'rspec', '~> 3.1'
4
+ gem "juwelier", "~> 2.0"
5
+ gem "rspec_junit_formatter"
6
+ gem "rubocop", "0.81", require: false
7
+ gem "rubocop-performance", require: false
8
+ gem "rubocop-rails", require: false
9
+ end
10
+
11
+ group :test, :development do
12
+ gem "rake", ">= 10.0"
13
+ gem "rspec", "~> 3.1"
6
14
 
7
- unless ENV['NO_ACTIVERECORD']
8
- gem 'activerecord', '>= 3.2.3', '< 4.3.0'
9
- gem 'activerecord-oracle_enhanced-adapter', '>= 1.4.1', '< 1.6.0'
10
- gem 'simplecov', '>= 0'
15
+ unless ENV["NO_ACTIVERECORD"]
16
+ gem "activerecord", "~> 5.0"
17
+ gem "activerecord-oracle_enhanced-adapter", "~> 1.7"
18
+ gem "simplecov", ">= 0"
11
19
  end
12
20
 
13
- platforms :ruby do
14
- gem 'ruby-oci8', '~> 2.1.2'
21
+ platforms :ruby, :mswin, :mingw do
22
+ gem "ruby-oci8", "~> 2.1"
15
23
  end
16
24
  end
data/History.txt CHANGED
@@ -1,3 +1,79 @@
1
+ == 0.8.0 2021-08-10
2
+ * Improvements and fixes
3
+ * Support Rails 6.1 [#193]
4
+ * Support Rails 6.0 [#178]
5
+ * Support Oracle Database 18c or higher [#196]
6
+ * case-insensitive table names and proc params [#185]
7
+ * Use OCI driver type for RUBY_ENGINE TruffleRuby [#190]
8
+ * Replace NativeException with Java::JavaSql::SQLException [#192]
9
+ * Fixnum and Bignum are deprecated in Ruby 2.4 [#191]
10
+
11
+ * CI
12
+ * Run CI with GitHub Actions [#198]
13
+ * CI against Rails 6.1 [#193]
14
+ * CI against Rails 6.0 [#178]
15
+ * CI against Ruby 3.0.2, 2.7.4 and 2.6.8 [#197]
16
+ * Exclude jruby-head with Rails main [#194]
17
+ * Exclude jruby-head with Rails main [#194]
18
+ * Bump RuboCop version to 0.81.0 [#186]
19
+ * Run RuboCop using GitHub Actions [#180, #182]
20
+ * Remove .codeclimate.yml [#181]
21
+ * Fallback to bundler 1.7.13 [#171]
22
+ * Terminate CI against Ruby 2.2.x [#172]
23
+ * Use Ubuntu Xenial at Travis CI [#176]
24
+
25
+ == 0.7.1 2018-09-03
26
+ * Fix
27
+ * Address incorrect versions in Gemfile
28
+
29
+ == 0.7.0 2018-09-03
30
+ * Improvements and fixes
31
+
32
+ * Support Rails 5.0, 5.1 and 5.2
33
+ * Drop Rails 4.1 and 4.2 support
34
+ * Drop JRuby 1.7 support
35
+ * Drop JRuby 9.0 support
36
+ * Drop CRuby 2.1 or lower support
37
+ * Allow calling procedures in INVALID status
38
+ * Bignum, Fixnum, Integer fixes for Ruby 2.4
39
+ * Replace deprecated BigDecimal.new() with BigDecimal()
40
+ * Suppress warning `BigDecimal.new` is deprecated
41
+ * Avoid using `OCI8#describe_synonym`
42
+ * Allow ojdbc7.jar when Java version is 1.7 or higher
43
+ * Fix unguarded OCIError (breaks on JRuby)
44
+ * Suppress `warning: instance variable @dbms_output_stream not initialized`
45
+ * Suppress `warning: assigned but unused variable`
46
+ * Suppress `warning: shadowing outer local variable - column`
47
+ * Add license to gemspec
48
+ * Migrate from jeweler to juwelier
49
+ * CI against JRuby 9.1.8 and CRuby 2.4 and 2.5
50
+ * CI against jruby-head and ruby-head
51
+ * Enable RuboCop
52
+ * Set `disk_asynch_io` to `false`
53
+ * Skip XMLType specs if Oracle Database version is 12c or higher
54
+
55
+ == 0.6.0 2016-03-13
56
+ * Improvements
57
+ * Add support for records with boolean attributes - as input and output parameters and as return values of stored procedures
58
+ * Add support for VARCHAR, SIMPLE_INTEGER+subtypes
59
+ * Accessing to package objects via #[]
60
+ * Add XMLTYPE support for procedures and functions
61
+ * New procedure argument metadata option 'defaulted'
62
+ * Use current_schema in PLSQL::Schema#schema_name
63
+ * Add support for ruby-oci8 ~> 2.1 (was ~> 2.1.2) - as ruby-oci8 2.2.x is already available
64
+ * Add support for Oracle enhanced adapter 1.6.x
65
+ * Bug fixes
66
+ * Time-zone configuration support fixes and improvements. Support for Session timezone from ENV['TZ'] removed
67
+ * Fix thread safety problem in PLSQL::OCIConnection::Cursor
68
+ * Fix: JRuby PLS_INTEGER, BINARY_INTEGER NULL value becomes 0
69
+ * Internal (development) improvements
70
+ * Travis CI setup for the project
71
+ * Allow reporting of Unit Tests on Jenkins CI with "RspecJunitFormatter"
72
+ * Vagrant box CentOS version updated to v7.2
73
+ * Unit tests setup/teardown fixes for procedure_spec
74
+ * Documentation
75
+ * Add reference to ruby-plsql cheat sheet
76
+
1
77
  == 0.5.3 2015-05-07
2
78
 
3
79
  * Improvements
data/README.md CHANGED
@@ -1,3 +1,5 @@
1
+ [![Build Status](https://travis-ci.com/rsim/ruby-plsql.svg?branch=master)](https://travis-ci.com/rsim/ruby-plsql)
2
+
1
3
  ruby-plsql
2
4
  ==========
3
5
 
@@ -8,9 +10,9 @@ DESCRIPTION
8
10
 
9
11
  ruby-plsql gem provides simple Ruby API for calling Oracle PL/SQL procedures. It could be used both for accessing Oracle PL/SQL API procedures in legacy applications as well as it could be used to create PL/SQL unit tests using Ruby testing libraries.
10
12
 
11
- NUMBER, BINARY_INTEGER, PLS_INTEGER, VARCHAR2, NVARCHAR2, CHAR, NCHAR, DATE, TIMESTAMP, CLOB, BLOB, BOOLEAN, PL/SQL RECORD, TABLE, VARRAY, OBJECT and CURSOR types are supported for input and output parameters and return values of PL/SQL procedures and functions.
13
+ NUMBER, BINARY_INTEGER, PLS_INTEGER, NATURAL, NATURALN, POSITIVE, POSITIVEN, SIGNTYPE, SIMPLE_INTEGER, VARCHAR, VARCHAR2, NVARCHAR2, CHAR, NCHAR, DATE, TIMESTAMP, CLOB, BLOB, BOOLEAN, PL/SQL RECORD, TABLE, VARRAY, OBJECT and CURSOR types are supported for input and output parameters and return values of PL/SQL procedures and functions.
12
14
 
13
- ruby-plsql supports Ruby 1.8.7, 1.9.3, 2.1.3 and JRuby 1.6.7, 1.7.16 implementations.
15
+ ruby-plsql supports Ruby 2.2, 2.3, 2.4, 2.5 (ruby-oci8 2.2.3+ is needed for Ruby 2.4) and JRuby 9.1 implementations.
14
16
 
15
17
  USAGE
16
18
  -----
@@ -117,6 +119,11 @@ plsql.activerecord_class = ActiveRecord::Base
117
119
 
118
120
  and then you do not need to specify plsql.connection (this is also safer when ActiveRecord reestablishes connection to database).
119
121
 
122
+
123
+ ### Cheat Sheet:
124
+
125
+ You may have a look at this [Cheat Sheet](http://cheatography.com/jgebal/cheat-sheets/ruby-plsql-cheat-sheet/) for instructions on how to use ruby-plsql
126
+
120
127
  INSTALLATION
121
128
  ------------
122
129
 
@@ -128,15 +135,31 @@ or include gem in Gemfile if using bundler.
128
135
 
129
136
  In addition install either ruby-oci8 (for MRI/YARV) or copy Oracle JDBC driver to $JRUBY_HOME/lib (for JRuby).
130
137
 
131
- If you are using MRI 1.8, 1.9 or 2.x Ruby implementation then you need to install ruby-oci8 gem (version 2.0.x or 2.1.x)
138
+ If you are using MRI Ruby implementation then you need to install ruby-oci8 gem (version 2.0.x or 2.1.x)
132
139
  as well as Oracle client, e.g. [Oracle Instant Client](http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html).
133
140
 
134
- If you are using JRuby then you need to download latest [Oracle JDBC driver](http://www.oracle.com/technetwork/database/enterprise-edition/jdbc-112010-090769.html) - either ojdbc6.jar for Java 6, 7, 8 or ojdbc5.jar for Java 5. And copy this file to one of these locations:
141
+ If you are using JRuby then you need to download latest [Oracle JDBC driver](http://www.oracle.com/technetwork/database/enterprise-edition/jdbc-112010-090769.html) - either ojdbc7.jar for Java 8 and 7, ojdbc6.jar for Java 6, 7, 8 or ojdbc5.jar for Java 5. You can refer [the support matrix](http://www.oracle.com/technetwork/database/enterprise-edition/jdbc-faq-090281.html#01_03) for details.
142
+
143
+ And copy this file to one of these locations. JDBC driver will be searched in this order:
135
144
 
136
- * in `./lib` directory of Rails application and require it manually
137
- * in some directory which is in `PATH`
138
145
  * in `JRUBY_HOME/lib` directory
146
+ * in `./lib` directory of Rails application
139
147
  * or include path to JDBC driver jar file in Java `CLASSPATH`
148
+ * in some directory which is in `PATH`
149
+
150
+ If you put multiple versions of JDBC driver in the same directory the higher version one will be used.
151
+
152
+ Make sure to setup the following Oracle-specific environment variables properly
153
+
154
+ * [NLS_LANG](http://www.orafaq.com/wiki/NLS_LANG) - preferred value `NLS_LANG=AMERICAN_AMERICA.AL32UTF8`
155
+ * [ORA_SDTZ](http://docs.oracle.com/cd/E18283_01/server.112/e10729/ch4datetime.htm#CBBEEAFB) The setting should point a machine timezone like: `ORA_SDTZ=Europe/Riga`, otherwise Oracle by default uses a Fixed-offset timezone (like `03:00`) that is not daylight saving (DST) aware, which will lead to wrong translations of the timestamp values between Ruby code (DTS-aware) and Oracle session (non-DST-aware).
156
+ * [ORACLE_HOME](http://www.orafaq.com/wiki/ORACLE_HOME)
157
+
158
+ You may either alter your environment settings or set the values in file `spec/support/custom_config.rb`. Sample file `custom_config.rb.sample` shows how to do that.
159
+
160
+
161
+ Make sure you use correct version of Oracle client for database you're connecting to. Otherwise you may encounter TimeZone errors like [this](http://stackoverflow.com/questions/7678485/oracle-ora-01805-on-oracle-11g-database)
162
+
140
163
 
141
164
  TESTS
142
165
  -----
data/Rakefile CHANGED
@@ -1,5 +1,5 @@
1
- require 'rubygems'
2
- require 'bundler'
1
+ require "rubygems"
2
+ require "bundler"
3
3
  begin
4
4
  Bundler.setup(:default, :development)
5
5
  rescue Bundler::BundlerError => e
@@ -8,41 +8,46 @@ rescue Bundler::BundlerError => e
8
8
  exit e.status_code
9
9
  end
10
10
 
11
- require 'rake'
11
+ require "rake"
12
12
 
13
- require 'jeweler'
14
- Jeweler::Tasks.new do |gem|
15
- gem.name = "ruby-plsql"
16
- gem.summary = "Ruby API for calling Oracle PL/SQL procedures."
17
- gem.description = <<-EOS
18
- ruby-plsql gem provides simple Ruby API for calling Oracle PL/SQL procedures.
19
- It could be used both for accessing Oracle PL/SQL API procedures in legacy applications
20
- as well as it could be used to create PL/SQL unit tests using Ruby testing libraries.
21
- EOS
22
- gem.email = "raimonds.simanovskis@gmail.com"
23
- gem.homepage = "http://github.com/rsim/ruby-plsql"
24
- gem.authors = ["Raimonds Simanovskis"]
25
- gem.extra_rdoc_files = ['README.md']
13
+ begin
14
+ require "juwelier"
15
+ Juwelier::Tasks.new do |gem|
16
+ gem.name = "ruby-plsql"
17
+ gem.summary = "Ruby API for calling Oracle PL/SQL procedures."
18
+ gem.description = <<-EOS
19
+ ruby-plsql gem provides simple Ruby API for calling Oracle PL/SQL procedures.
20
+ It could be used both for accessing Oracle PL/SQL API procedures in legacy applications
21
+ as well as it could be used to create PL/SQL unit tests using Ruby testing libraries.
22
+ EOS
23
+ gem.email = "raimonds.simanovskis@gmail.com"
24
+ gem.homepage = "http://github.com/rsim/ruby-plsql"
25
+ gem.license = "MIT".freeze
26
+ gem.authors = ["Raimonds Simanovskis"]
27
+ gem.extra_rdoc_files = ["README.md"]
28
+ end
29
+ Juwelier::RubygemsDotOrgTasks.new
30
+ rescue LoadError
31
+ # juwelier not installed
26
32
  end
27
- Jeweler::RubygemsDotOrgTasks.new
28
33
 
29
- require 'rspec/core/rake_task'
34
+ require "rspec/core/rake_task"
30
35
  RSpec::Core::RakeTask.new(:spec)
31
36
 
32
37
  desc "Code coverage detail"
33
38
  task :simplecov do
34
- ENV['COVERAGE'] = "true"
35
- Rake::Task['spec'].execute
39
+ ENV["COVERAGE"] = "true"
40
+ Rake::Task["spec"].execute
36
41
  end
37
42
 
38
- task :default => :spec
43
+ task default: :spec
39
44
 
40
- require 'rdoc/task'
45
+ require "rdoc/task"
41
46
  Rake::RDocTask.new do |rdoc|
42
- version = File.exist?('VERSION') ? File.read('VERSION') : ""
47
+ version = File.exist?("VERSION") ? File.read("VERSION") : ""
43
48
 
44
- rdoc.rdoc_dir = 'doc'
49
+ rdoc.rdoc_dir = "doc"
45
50
  rdoc.title = "ruby-plsql #{version}"
46
- rdoc.rdoc_files.include('README*')
47
- rdoc.rdoc_files.include('lib/**/*.rb')
51
+ rdoc.rdoc_files.include("README*")
52
+ rdoc.rdoc_files.include("lib/**/*.rb")
48
53
  end
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.5.3
1
+ 0.8.0
data/Vagrantfile CHANGED
@@ -4,7 +4,7 @@ VAGRANTFILE_API_VERSION = "2"
4
4
  Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
5
5
 
6
6
  # Every Vagrant virtual environment requires a box to build off of.
7
- config.vm.box = "chef/centos-6.6"
7
+ config.vm.box = "boxcutter/centos72"
8
8
  config.vm.hostname = "vagrant.oracle"
9
9
  config.vm.network :forwarded_port, guest: 1521, host: 1521
10
10
 
@@ -23,13 +23,13 @@ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
23
23
  config.vm.provision :shell, inline: "yum update -y"
24
24
  config.vm.provision :shell, inline: "yum install -y libaio bc flex unzip"
25
25
  config.vm.provision :shell, inline: "mkdir -p /opt/oracle"
26
- config.vm.provision :shell, inline: "unzip -q -d /opt/oracle /vagrant/oracle-xe-11.2.0-1.0.x86_64.rpm.zip"
26
+ config.vm.provision :shell, inline: "unzip -o -q -d /opt/oracle /vagrant/oracle-xe-11.2.0-1.0.x86_64.rpm.zip"
27
27
  config.vm.provision :shell, inline: "cd /opt/oracle/Disk1 && rpm -ivh oracle-xe-11.2.0-1.0.x86_64.rpm"
28
- config.vm.provision :shell, inline: %q{sed -i -E "s/<value required>/oracle/" /opt/oracle/Disk1/response/xe.rsp}
28
+ config.vm.provision :shell, inline: 'sed -i -E "s/<value required>/oracle/" /opt/oracle/Disk1/response/xe.rsp'
29
29
  config.vm.provision :shell, inline: "/etc/init.d/oracle-xe configure responseFile=/opt/oracle/Disk1/response/xe.rsp >> /opt/oracle/XEsilentinstall.log"
30
30
  config.vm.provision :shell, inline: ". /u01/app/oracle/product/11.2.0/xe/bin/oracle_env.sh"
31
31
  config.vm.provision :shell, inline: "touch /etc/profile.d/oracle_profile.sh && cat /u01/app/oracle/product/11.2.0/xe/bin/oracle_env.sh >> /etc/profile.d/oracle_profile.sh"
32
- config.vm.provision :shell, inline: %q{sed -i -E "s/HOST = [^)]+/HOST = $HOSTNAME/g" /u01/app/oracle/product/11.2.0/xe/network/admin/listener.ora}
32
+ config.vm.provision :shell, inline: 'sed -i -E "s/HOST = [^)]+/HOST = $HOSTNAME/g" /u01/app/oracle/product/11.2.0/xe/network/admin/listener.ora'
33
33
  config.vm.provision :shell, inline: %q{sed -i -E "s/<ORACLE_BASE>/\/u01\/app\/oracle/" /u01/app/oracle/product/11.2.0/xe/dbs/init.ora}
34
34
 
35
35
  # Change password for Oracle user
@@ -0,0 +1,7 @@
1
+ XEPDB1 =
2
+ (DESCRIPTION =
3
+ (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
4
+ (CONNECT_DATA =
5
+ (SERVICE_NAME = XEPDB1)
6
+ )
7
+ )
@@ -0,0 +1,9 @@
1
+ #!/bin/bash
2
+
3
+ set -ev
4
+
5
+ ${ORACLE_HOME}/bin/sqlplus system/${DATABASE_SYS_PASSWORD}@${DATABASE_NAME} <<SQL
6
+ @@spec/support/unlock_and_setup_hr_user.sql
7
+ @@spec/support/create_arunit_user.sql
8
+ exit
9
+ SQL
@@ -0,0 +1,21 @@
1
+ source 'http://rubygems.org'
2
+
3
+ group :development do
4
+ gem 'juwelier', '~> 2.0'
5
+ gem 'rspec_junit_formatter'
6
+ end
7
+
8
+ group :test, :development do
9
+ gem 'rake', '>= 10.0'
10
+ gem 'rspec', '~> 3.1'
11
+
12
+ unless ENV['NO_ACTIVERECORD']
13
+ gem 'activerecord', '~> 5.0.0'
14
+ gem 'activerecord-oracle_enhanced-adapter', '~> 1.7.0'
15
+ gem 'simplecov', '>= 0'
16
+ end
17
+
18
+ platforms :ruby, :mswin, :mingw do
19
+ gem 'ruby-oci8', '~> 2.1'
20
+ end
21
+ end
@@ -0,0 +1,21 @@
1
+ source 'http://rubygems.org'
2
+
3
+ group :development do
4
+ gem 'juwelier', '~> 2.0'
5
+ gem 'rspec_junit_formatter'
6
+ end
7
+
8
+ group :test, :development do
9
+ gem 'rake', '>= 10.0'
10
+ gem 'rspec', '~> 3.1'
11
+
12
+ unless ENV['NO_ACTIVERECORD']
13
+ gem 'activerecord', '~> 5.1.0'
14
+ gem 'activerecord-oracle_enhanced-adapter', '~> 1.8.0'
15
+ gem 'simplecov', '>= 0'
16
+ end
17
+
18
+ platforms :ruby, :mswin, :mingw do
19
+ gem 'ruby-oci8', '~> 2.1'
20
+ end
21
+ end
@@ -0,0 +1,21 @@
1
+ source 'http://rubygems.org'
2
+
3
+ group :development do
4
+ gem 'juwelier', '~> 2.0'
5
+ gem 'rspec_junit_formatter'
6
+ end
7
+
8
+ group :test, :development do
9
+ gem 'rake', '>= 10.0'
10
+ gem 'rspec', '~> 3.1'
11
+
12
+ unless ENV['NO_ACTIVERECORD']
13
+ gem 'activerecord', '~> 5.2.0.beta'
14
+ gem 'activerecord-oracle_enhanced-adapter', '~> 5.2.0.beta'
15
+ gem 'simplecov', '>= 0'
16
+ end
17
+
18
+ platforms :ruby, :mswin, :mingw do
19
+ gem 'ruby-oci8', '~> 2.1'
20
+ end
21
+ end
@@ -0,0 +1,21 @@
1
+ source 'http://rubygems.org'
2
+
3
+ group :development do
4
+ gem 'juwelier', '~> 2.0'
5
+ gem 'rspec_junit_formatter'
6
+ end
7
+
8
+ group :test, :development do
9
+ gem 'rake', '>= 10.0'
10
+ gem 'rspec', '~> 3.1'
11
+
12
+ unless ENV['NO_ACTIVERECORD']
13
+ gem 'activerecord', '~> 6.0.0.rc1'
14
+ gem 'activerecord-oracle_enhanced-adapter', '~>6.0.0.rc1'
15
+ gem 'simplecov', '>= 0'
16
+ end
17
+
18
+ platforms :ruby, :mswin, :mingw do
19
+ gem 'ruby-oci8', '~> 2.1'
20
+ end
21
+ end
@@ -0,0 +1,21 @@
1
+ source 'http://rubygems.org'
2
+
3
+ group :development do
4
+ gem 'juwelier', '~> 2.0'
5
+ gem 'rspec_junit_formatter'
6
+ end
7
+
8
+ group :test, :development do
9
+ gem 'rake', '>= 10.0'
10
+ gem 'rspec', '~> 3.1'
11
+
12
+ unless ENV['NO_ACTIVERECORD']
13
+ gem 'activerecord', '~> 6.1.0'
14
+ gem 'activerecord-oracle_enhanced-adapter', '~>6.1.0'
15
+ gem 'simplecov', '>= 0'
16
+ end
17
+
18
+ platforms :ruby, :mswin, :mingw do
19
+ gem 'ruby-oci8', '~> 2.1'
20
+ end
21
+ end
@@ -0,0 +1,21 @@
1
+ source 'http://rubygems.org'
2
+
3
+ group :development do
4
+ gem 'juwelier', '~> 2.0'
5
+ gem 'rspec_junit_formatter'
6
+ end
7
+
8
+ group :test, :development do
9
+ gem 'rake', '>= 10.0'
10
+ gem 'rspec', '~> 3.1'
11
+
12
+ unless ENV['NO_ACTIVERECORD']
13
+ gem 'activerecord', github: 'rails/rails', branch: 'main'
14
+ gem 'activerecord-oracle_enhanced-adapter', github: 'rsim/oracle-enhanced', branch: 'master'
15
+ gem 'simplecov', '>= 0'
16
+ end
17
+
18
+ platforms :ruby, :mswin, :mingw do
19
+ gem 'ruby-oci8', '~> 2.1'
20
+ end
21
+ end