activerecord_bulkoperation 0.1.0 → 0.2.3
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/activerecord_bulkoperation.gemspec +1 -1
- data/gemfiles/6.0.gemfile +1 -1
- data/gemfiles/6.1.gemfile +7 -0
- data/lib/activerecord_bulkoperation/active_record/associations/associations.rb +26 -15
- data/lib/activerecord_bulkoperation/base.rb +3 -1
- data/lib/activerecord_bulkoperation/version.rb +1 -1
- data/test/database.yml +1 -1
- data/test/test_helper.rb +6 -1
- metadata +7 -12
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8cd1a3f72c3b4baf9436779bc459ab59bcb3f7c7911b2f0e841aec228a32f66e
|
4
|
+
data.tar.gz: 7bd30bb4fdcb5ad7bc288a9fc157296fa719c521386677c6d1828a200bfa96db
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
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"
|
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
@@ -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
|
-
|
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
|
11
|
-
record =
|
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
|
-
|
159
|
-
|
160
|
-
|
161
|
-
|
162
|
-
|
163
|
-
|
164
|
-
|
165
|
-
|
166
|
-
|
167
|
-
|
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
|
-
|
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
|
data/test/database.yml
CHANGED
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
|
-
|
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.
|
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:
|
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.
|
153
|
-
signing_key:
|
147
|
+
rubygems_version: 3.2.3
|
148
|
+
signing_key:
|
154
149
|
specification_version: 4
|
155
150
|
summary: ''
|
156
151
|
test_files:
|