activerecord_bulkoperation 0.1.0 → 0.2.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 12fc174b11b0a39fa81778b9c0d0b66d7f698956777c747390aa14873521d91c
4
- data.tar.gz: 89dd91a3338c3057fb91ba2d54e2ffe95a60b8d2764bd90427ce79e9e63c50c8
3
+ metadata.gz: 8cd1a3f72c3b4baf9436779bc459ab59bcb3f7c7911b2f0e841aec228a32f66e
4
+ data.tar.gz: 7bd30bb4fdcb5ad7bc288a9fc157296fa719c521386677c6d1828a200bfa96db
5
5
  SHA512:
6
- metadata.gz: f8db1e56b50b1e5e1a58f779bbfe93df7c2f7d9055a08c29b6bee5a13a193476b36813d023d0e8155a8d3a3aa1feb8065e7dd7e3e34d6884ec8b84a7fc7a500f
7
- data.tar.gz: f4450aaf3303b8fc9b4ba7f0c5704b9fef2fd1e170d574bec83b5c52f7be3057c53ec628c7cc749a827a96a6bd403f9723fb3778a2034ec975660b15bdbc46bf
6
+ metadata.gz: ccc9feeb4fe97d6b1ac4565caea284a30df03915c7a21952b9302a3369b317a34e32f359162f9416a52bf59ea1f42cd5fb6878be722f2530f330eb44ba52b583
7
+ data.tar.gz: 056b5188abd6b43920aaf54052d6e405ff6536d8e2f54f1baf8c03932d3f50b8806f4a6c8e2023c23db5ff7aa69bae64faf8569cc2ac6879a9d00566b6dbf5c7
@@ -18,7 +18,7 @@ Gem::Specification.new do |gem|
18
18
 
19
19
  gem.required_ruby_version = ">=2.3"
20
20
 
21
- gem.add_runtime_dependency "activerecord", ">=4.2", "<6"
21
+ gem.add_runtime_dependency "activerecord", ">=4.2"
22
22
  gem.add_development_dependency "rake"
23
23
  gem.add_development_dependency "mocha"
24
24
  gem.add_development_dependency "minitest"
data/gemfiles/6.0.gemfile CHANGED
@@ -4,4 +4,4 @@ platforms :ruby do
4
4
  gem 'ruby-oci8', '~> 2.2'
5
5
  end
6
6
 
7
- gem 'activerecord', '~> 6.0'
7
+ gem 'activerecord', '~> 6.0.4'
@@ -0,0 +1,7 @@
1
+ gem 'activerecord-oracle_enhanced-adapter', '~> 6.0'
2
+
3
+ platforms :ruby do
4
+ gem 'ruby-oci8', '~> 2.2'
5
+ end
6
+
7
+ gem 'activerecord', '~> 6.1.4'
@@ -1,17 +1,26 @@
1
1
  require 'active_record/associations'
2
2
 
3
3
  module ActiveRecord
4
-
5
4
  module Persistence
6
5
  module ClassMethods
6
+
7
+ alias_method :instantiate_without_save_original, :instantiate
8
+
9
+ def instantiate(attributes, column_types = {})
10
+ record = instantiate_without_save_original(attributes, column_types)
11
+ record.save_original
12
+ record
13
+ end
7
14
 
8
- alias_method :instantiate_without_save_original, :instantiate
15
+ if ActiveRecord.gem_version >= Gem::Version.new('6.0')
16
+ alias_method :instantiate_instant_of_without_save_original, :instantiate_instance_of
9
17
 
10
- def instantiate(attributes, column_types = {})
11
- record = instantiate_without_save_original(attributes, column_types)
18
+ def instantiate_instance_of(klass, attributes, column_types = {}, &block)
19
+ record = instantiate_instant_of_without_save_original(klass, attributes, column_types)
12
20
  record.save_original
13
- record
21
+ record
14
22
  end
23
+ end
15
24
  end
16
25
  end
17
26
 
@@ -155,16 +164,18 @@ module ActiveRecord
155
164
 
156
165
  class JoinBase
157
166
  attr_accessor :cached_record
158
- def extract_record(row,column_names_with_alias)
159
- # if the :select option is set, only the selected field should be extracted
160
- # column_names_with_alias.inject({}){|record, (cn, an)| record[cn] = row[an] if row.has_key?(an); record}
161
- record = {}
162
- column_names_with_alias.each { |(cn, an)| record[cn] = row[an] if row.key?(an) }
163
- record
164
- end
165
- alias_method :instantiate_without_save_original, :instantiate
166
- def instantiate(row, aliases)
167
- instantiate_without_save_original(row, aliases)
167
+ if ActiveRecord.gem_version < Gem::Version.new('6.0')
168
+ def extract_record(row,column_names_with_alias)
169
+ # if the :select option is set, only the selected field should be extracted
170
+ # column_names_with_alias.inject({}){|record, (cn, an)| record[cn] = row[an] if row.has_key?(an); record}
171
+ record = {}
172
+ column_names_with_alias.each { |(cn, an)| record[cn] = row[an] if row.key?(an) }
173
+ record
174
+ end
175
+ alias_method :instantiate_without_save_original, :instantiate
176
+ def instantiate(row, aliases)
177
+ instantiate_without_save_original(row, aliases)
178
+ end
168
179
  end
169
180
  end
170
181
  end
@@ -24,7 +24,9 @@ module ActiveRecord
24
24
 
25
25
  # Loads the import functionality for the passed in ActiveRecord connection
26
26
  def self.load_from_connection_pool(connection_pool)
27
- require_adapter connection_pool.spec.config[:adapter]
27
+ # currently only oracle_enhanced_adapter is supported and connection_pool.spec does not work with Rails 6.1.
28
+ # require_adapter connection_pool.spec.config[:adapter]
29
+ require_adapter('oracle_enhanced')
28
30
  end
29
31
  end
30
32
  end
@@ -1,5 +1,5 @@
1
1
  module ActiveRecord
2
2
  module Bulkoperation
3
- VERSION = '0.1.0'
3
+ VERSION = '0.2.3'
4
4
  end
5
5
  end
data/test/database.yml CHANGED
@@ -1,4 +1,4 @@
1
- oracle_enhanced:
1
+ test:
2
2
  adapter: oracle_enhanced
3
3
  # url: jdbc:oracle:thin:@localhost:1521:XEPDB1
4
4
  username: <%=ENV['DB_USER'] ||= "sample" %>
data/test/test_helper.rb CHANGED
@@ -25,7 +25,12 @@ adapter = ENV["DB_ADAPTER"] || "oracle_enhanced"
25
25
  FileUtils.mkdir_p 'log'
26
26
  ActiveRecord::Base.logger = Logger.new("log/test.log")
27
27
  ActiveRecord::Base.logger.level = Logger::DEBUG
28
- ActiveRecord::Base.configurations['test'] = YAML.load(ERB.new(File.read(test_dir.join("database.yml"))).result)[adapter]
28
+
29
+ if ActiveRecord.gem_version >= Gem::Version.new('6.1')
30
+ ActiveRecord::Base.configurations = ActiveRecord::DatabaseConfigurations.new(YAML.load(ERB.new(File.read(test_dir.join("database.yml"))).result))
31
+ else
32
+ ActiveRecord::Base.configurations['test'] = YAML.load(ERB.new(File.read(test_dir.join("database.yml"))).result)['test']
33
+ end
29
34
  ActiveRecord::Base.default_timezone = :utc
30
35
 
31
36
  require "activerecord_bulkoperation"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: activerecord_bulkoperation
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.2.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - OSP
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-11-04 00:00:00.000000000 Z
11
+ date: 2021-10-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activerecord
@@ -17,9 +17,6 @@ dependencies:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
19
  version: '4.2'
20
- - - "<"
21
- - !ruby/object:Gem::Version
22
- version: '6'
23
20
  type: :runtime
24
21
  prerelease: false
25
22
  version_requirements: !ruby/object:Gem::Requirement
@@ -27,9 +24,6 @@ dependencies:
27
24
  - - ">="
28
25
  - !ruby/object:Gem::Version
29
26
  version: '4.2'
30
- - - "<"
31
- - !ruby/object:Gem::Version
32
- version: '6'
33
27
  - !ruby/object:Gem::Dependency
34
28
  name: rake
35
29
  requirement: !ruby/object:Gem::Requirement
@@ -89,6 +83,7 @@ files:
89
83
  - gemfiles/5.1.gemfile
90
84
  - gemfiles/5.2.gemfile
91
85
  - gemfiles/6.0.gemfile
86
+ - gemfiles/6.1.gemfile
92
87
  - lib/activerecord_bulkoperation.rb
93
88
  - lib/activerecord_bulkoperation/active_record/adapters/abstract_adapter.rb
94
89
  - lib/activerecord_bulkoperation/active_record/adapters/oracle_enhanced_adapter.rb
@@ -134,7 +129,7 @@ homepage: ''
134
129
  licenses:
135
130
  - Ruby
136
131
  metadata: {}
137
- post_install_message:
132
+ post_install_message:
138
133
  rdoc_options: []
139
134
  require_paths:
140
135
  - lib
@@ -149,8 +144,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
149
144
  - !ruby/object:Gem::Version
150
145
  version: '0'
151
146
  requirements: []
152
- rubygems_version: 3.0.4
153
- signing_key:
147
+ rubygems_version: 3.2.3
148
+ signing_key:
154
149
  specification_version: 4
155
150
  summary: ''
156
151
  test_files: