ruby-plsql 0.5.3 → 0.8.0

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.
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