goldiloader 0.0.10 → 0.0.11
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/.travis.yml +15 -15
- data/CHANGELOG.md +8 -1
- data/README.md +9 -9
- data/goldiloader.gemspec +3 -2
- data/lib/goldiloader/active_record_patches.rb +30 -1
- data/lib/goldiloader/association_loader.rb +2 -2
- data/lib/goldiloader/compatibility.rb +2 -1
- data/lib/goldiloader/version.rb +1 -1
- data/spec/db/schema.rb +2 -0
- data/spec/goldiloader/goldiloader_spec.rb +32 -0
- metadata +43 -57
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 526a23489a3e8b11cc8f0f54bbad2d172aab998c
|
4
|
+
data.tar.gz: 65d84a61f5f1d7c1efee2ac66e46b4661cdbc8ac
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7b689413962ae9ae86dcec25f2a27a3472f7c406a3b932f7b20f4f92dade3900c8a6d20e5eca79f7e6762c886d5520d1512904479aa28f428b3e519983b2ac9c
|
7
|
+
data.tar.gz: 363b20372285117f68e22281b823586ca0136417b0449cf94f47a345ecad372e6cc2f3d09336911d476d4c15b080bdc0c421d91074fe78f16c0c472822cd8b18
|
data/.travis.yml
CHANGED
@@ -1,28 +1,28 @@
|
|
1
1
|
language: ruby
|
2
2
|
sudo: false
|
3
3
|
env:
|
4
|
-
- RAILS_VERSION="~> 3.2.22" JRUBY_OPTS="$JRUBY_OPTS --debug"
|
4
|
+
- RAILS_VERSION="~> 3.2.22.2" JRUBY_OPTS="$JRUBY_OPTS --debug"
|
5
5
|
- RAILS_VERSION="~> 4.0.13" JRUBY_OPTS="$JRUBY_OPTS --debug"
|
6
|
-
- RAILS_VERSION="~> 4.1.
|
7
|
-
- RAILS_VERSION="~> 4.2.
|
8
|
-
- RAILS_VERSION="~> 5.0.
|
6
|
+
- RAILS_VERSION="~> 4.1.16" JRUBY_OPTS="$JRUBY_OPTS --debug"
|
7
|
+
- RAILS_VERSION="~> 4.2.7.1" JRUBY_OPTS="$JRUBY_OPTS --debug"
|
8
|
+
- RAILS_VERSION="~> 5.0.1" JRUBY_OPTS="$JRUBY_OPTS --debug"
|
9
9
|
rvm:
|
10
10
|
- 1.9.3
|
11
11
|
- 2.0.0
|
12
|
-
- 2.1.
|
13
|
-
- 2.2.
|
14
|
-
- 2.3.
|
12
|
+
- 2.1.10
|
13
|
+
- 2.2.6
|
14
|
+
- 2.3.3
|
15
15
|
- jruby-19mode
|
16
|
-
- jruby-9.
|
16
|
+
- jruby-9.1.7.0
|
17
17
|
matrix:
|
18
18
|
exclude:
|
19
19
|
- rvm: 1.9.3
|
20
|
-
env: RAILS_VERSION="~> 5.0.
|
20
|
+
env: RAILS_VERSION="~> 5.0.1" JRUBY_OPTS="$JRUBY_OPTS --debug"
|
21
21
|
- rvm: 2.0.0
|
22
|
-
env: RAILS_VERSION="~> 5.0.
|
23
|
-
- rvm: 2.1.
|
24
|
-
env: RAILS_VERSION="~> 5.0.
|
22
|
+
env: RAILS_VERSION="~> 5.0.1" JRUBY_OPTS="$JRUBY_OPTS --debug"
|
23
|
+
- rvm: 2.1.10
|
24
|
+
env: RAILS_VERSION="~> 5.0.1" JRUBY_OPTS="$JRUBY_OPTS --debug"
|
25
25
|
- rvm: jruby-19mode
|
26
|
-
env: RAILS_VERSION="~> 5.0.
|
27
|
-
- rvm: jruby-9.
|
28
|
-
env: RAILS_VERSION="~> 5.0.
|
26
|
+
env: RAILS_VERSION="~> 5.0.1" JRUBY_OPTS="$JRUBY_OPTS --debug"
|
27
|
+
- rvm: jruby-9.1.7.0
|
28
|
+
env: RAILS_VERSION="~> 5.0.1" JRUBY_OPTS="$JRUBY_OPTS --debug"
|
data/CHANGELOG.md
CHANGED
@@ -1,6 +1,12 @@
|
|
1
1
|
# Changelog
|
2
2
|
|
3
|
-
### 0.0.
|
3
|
+
### 0.0.11 (unreleased)
|
4
|
+
* Fix [issue 34](https://github.com/salsify/goldiloader/issues/34) - HABTM associations now honor
|
5
|
+
the auto_include option.
|
6
|
+
* Fix [issue 39](https://github.com/salsify/goldiloader/issues/39) - `CollectionProxy#exists?` should return false
|
7
|
+
for a new model's association with no values.
|
8
|
+
|
9
|
+
### 0.0.10
|
4
10
|
* Fix [issue 13](https://github.com/salsify/goldiloader/issues/13) - Eager load associations with unscope
|
5
11
|
in Rails 4.1.9+ now that the underlying Rails bug has been fixed.
|
6
12
|
* Fix [issue 11](https://github.com/salsify/goldiloader/issues/11) - Eager load associations with joins in
|
@@ -8,6 +14,7 @@
|
|
8
14
|
* Initial support for Rails 5. There are no known issues but see
|
9
15
|
[issue 27](https://github.com/salsify/goldiloader/issues/27) for remaining tasks.
|
10
16
|
* MRI 2.3.0 support.
|
17
|
+
* JRuby 9000 support.
|
11
18
|
|
12
19
|
### 0.0.9
|
13
20
|
* Merge [pull request](https://github.com/salsify/goldiloader/pull/24) - Optimization: Cache compatibility
|
data/README.md
CHANGED
@@ -14,7 +14,7 @@ Wouldn't it be awesome if ActiveRecord didn't make you think about eager loading
|
|
14
14
|
|
15
15
|
Consider the following models:
|
16
16
|
|
17
|
-
```
|
17
|
+
```ruby
|
18
18
|
class Blog < ActiveRecord::Base
|
19
19
|
has_many :posts
|
20
20
|
end
|
@@ -26,7 +26,7 @@ end
|
|
26
26
|
|
27
27
|
Here are some sample queries without the Goldiloader:
|
28
28
|
|
29
|
-
```
|
29
|
+
```ruby
|
30
30
|
> blogs = Blogs.limit(5).to_a
|
31
31
|
# SELECT * FROM blogs LIMIT 5
|
32
32
|
|
@@ -40,7 +40,7 @@ Here are some sample queries without the Goldiloader:
|
|
40
40
|
|
41
41
|
Here are the same queries with the Goldiloader:
|
42
42
|
|
43
|
-
```
|
43
|
+
```ruby
|
44
44
|
> blogs = Blogs.limit(5).to_a
|
45
45
|
# SELECT * FROM blogs LIMIT 5
|
46
46
|
|
@@ -78,7 +78,7 @@ Goldiloader supports a few options on ActiveRecord associations to customize its
|
|
78
78
|
|
79
79
|
You can disable automatic eager loading on specific associations with the `auto_include` option:
|
80
80
|
|
81
|
-
```
|
81
|
+
```ruby
|
82
82
|
class Blog < ActiveRecord::Base
|
83
83
|
has_many :posts, auto_include: false
|
84
84
|
end
|
@@ -102,7 +102,7 @@ There are several association methods that ActiveRecord can either execute on in
|
|
102
102
|
|
103
103
|
This can cause problems for certain usage patterns if we're no longer specifying eager loads:
|
104
104
|
|
105
|
-
```
|
105
|
+
```ruby
|
106
106
|
> blogs = Blogs.limit(5).to_a
|
107
107
|
# SELECT * FROM blogs LIMIT 5
|
108
108
|
|
@@ -118,7 +118,7 @@ This can cause problems for certain usage patterns if we're no longer specifying
|
|
118
118
|
|
119
119
|
Notice the first call to `blog.posts.exists?` was executed via SQL because the `posts` association wasn't yet loaded. The `fully_load` option can be used to force ActiveRecord to fully load the association (and do any necessary automatic eager loading) when evaluating methods like `exists?`:
|
120
120
|
|
121
|
-
```
|
121
|
+
```ruby
|
122
122
|
class Blog < ActiveRecord::Base
|
123
123
|
has_many :posts, fully_load: true
|
124
124
|
end
|
@@ -132,7 +132,7 @@ Goldiloader leverages the ActiveRecord eager loader so it shares some of the sam
|
|
132
132
|
|
133
133
|
You should not try to auto eager load (or regular eager load) `has_one` associations that actually correspond to multiple records and rely on a SQL limit to only return one record. Consider the following example:
|
134
134
|
|
135
|
-
```
|
135
|
+
```ruby
|
136
136
|
class Blog < ActiveRecord::Base
|
137
137
|
has_many :posts
|
138
138
|
has_one :most_recent_post, -> { order(published_at: desc) }, class_name: 'Post'
|
@@ -141,13 +141,13 @@ end
|
|
141
141
|
|
142
142
|
With standard Rails lazy loading the `most_recent_post` association is loaded with a query like this:
|
143
143
|
|
144
|
-
```
|
144
|
+
```sql
|
145
145
|
SELECT * FROM posts WHERE blog_id = 1 ORDER BY published_at DESC LIMIT 1
|
146
146
|
```
|
147
147
|
|
148
148
|
With auto eager loading (or regular eager loading) the `most_recent_post` association is loaded with a query like this:
|
149
149
|
|
150
|
-
```
|
150
|
+
```sql
|
151
151
|
SELECT * FROM posts WHERE blog_id IN (1,2,3,4,5) ORDER BY published_at DESC
|
152
152
|
```
|
153
153
|
|
data/goldiloader.gemspec
CHANGED
@@ -23,13 +23,14 @@ Gem::Specification.new do |spec|
|
|
23
23
|
spec.add_development_dependency 'coveralls'
|
24
24
|
spec.add_development_dependency 'database_cleaner', '>= 1.2'
|
25
25
|
spec.add_development_dependency 'rake'
|
26
|
-
spec.add_development_dependency 'rspec', '~>
|
26
|
+
spec.add_development_dependency 'rspec', '~> 3'
|
27
27
|
spec.add_development_dependency 'simplecov', '~> 0.7.1'
|
28
28
|
# mime-type 3 requires Ruby >= 2.0
|
29
29
|
spec.add_development_dependency 'mime-types', '~> 2'
|
30
30
|
|
31
31
|
if RUBY_PLATFORM == 'java'
|
32
|
-
|
32
|
+
# jdbc-sqlite3 > 3.8 doesn't work with JRuby 1.7
|
33
|
+
spec.add_development_dependency 'jdbc-sqlite3', '~> 3.8.11'
|
33
34
|
spec.add_development_dependency 'activerecord-jdbcsqlite3-adapter'
|
34
35
|
else
|
35
36
|
spec.add_development_dependency 'sqlite3'
|
@@ -138,6 +138,29 @@ if ActiveRecord::VERSION::MAJOR < 4
|
|
138
138
|
end
|
139
139
|
end
|
140
140
|
|
141
|
+
# In Rails >= 4.1 has_and_belongs_to_many associations create a has_many associations
|
142
|
+
# under the covers so we need to make sure to propagate the auto_include option to that
|
143
|
+
# association
|
144
|
+
if Goldiloader::Compatibility::ACTIVE_RECORD_VERSION >= ::Gem::Version.new('4.1')
|
145
|
+
ActiveRecord::Associations::ClassMethods.class_eval do
|
146
|
+
|
147
|
+
def has_and_belongs_to_many_with_auto_include_option(name, scope = nil, options = {}, &extension)
|
148
|
+
if scope.is_a?(Hash)
|
149
|
+
options = scope
|
150
|
+
scope = nil
|
151
|
+
end
|
152
|
+
|
153
|
+
result = has_and_belongs_to_many_without_auto_include_option(name, scope, options, &extension)
|
154
|
+
if options.include?(:auto_include)
|
155
|
+
_reflect_on_association(name).options[:auto_include] = options[:auto_include]
|
156
|
+
end
|
157
|
+
result
|
158
|
+
end
|
159
|
+
|
160
|
+
Goldiloader::Compatibility.alias_method_chain self, :has_and_belongs_to_many, :auto_include_option
|
161
|
+
end
|
162
|
+
end
|
163
|
+
|
141
164
|
# The CollectionProxy just forwards exists? to the underlying scope so we need to intercept this and
|
142
165
|
# force it to use size which handles fully_load properly.
|
143
166
|
ActiveRecord::Associations::CollectionProxy.class_eval do
|
@@ -145,6 +168,12 @@ ActiveRecord::Associations::CollectionProxy.class_eval do
|
|
145
168
|
# We don't fully_load the association when arguments are passed to exists? since Rails always
|
146
169
|
# pushes this query into the database without any caching (and it likely not a common
|
147
170
|
# scenario worth optimizing).
|
148
|
-
args.empty? && @association.fully_load?
|
171
|
+
if args.empty? && @association.fully_load?
|
172
|
+
size > 0
|
173
|
+
elsif Goldiloader::Compatibility::RAILS_3
|
174
|
+
scoped.exists?(*args)
|
175
|
+
else
|
176
|
+
scope.exists?(*args)
|
177
|
+
end
|
149
178
|
end
|
150
179
|
end
|
@@ -10,8 +10,8 @@ module Goldiloader
|
|
10
10
|
end
|
11
11
|
|
12
12
|
eager_load(models, association_name)
|
13
|
-
|
14
|
-
# Workaround Rails #15853 by setting models read only
|
13
|
+
|
14
|
+
# Workaround Rails #15853 for Rails < 4.2.0 by setting models read only
|
15
15
|
if read_only?(models, association_name)
|
16
16
|
associated_models = associated_models(models, association_name)
|
17
17
|
mark_read_only(associated_models)
|
@@ -4,7 +4,8 @@ module Goldiloader
|
|
4
4
|
module Compatibility
|
5
5
|
|
6
6
|
ACTIVE_RECORD_VERSION = ::Gem::Version.new(::ActiveRecord::VERSION::STRING)
|
7
|
-
|
7
|
+
RAILS_3 = ACTIVE_RECORD_VERSION < ::Gem::Version.new('4')
|
8
|
+
MASS_ASSIGNMENT_SECURITY = RAILS_3 || defined?(::ActiveRecord::MassAssignmentSecurity)
|
8
9
|
ASSOCIATION_FINDER_SQL = ACTIVE_RECORD_VERSION < ::Gem::Version.new('4.1')
|
9
10
|
UNSCOPE_QUERY_METHOD = ACTIVE_RECORD_VERSION >= ::Gem::Version.new('4.1')
|
10
11
|
JOINS_EAGER_LOADABLE = ACTIVE_RECORD_VERSION >= ::Gem::Version.new('4.2')
|
data/lib/goldiloader/version.rb
CHANGED
data/spec/db/schema.rb
CHANGED
@@ -120,6 +120,8 @@ class Post < ActiveRecord::Base
|
|
120
120
|
has_and_belongs_to_many :unique_tags_has_and_belongs, join_table: :post_tags, class_name: 'Tag', uniq: true
|
121
121
|
end
|
122
122
|
|
123
|
+
has_and_belongs_to_many :tags_without_auto_include, join_table: :post_tags, class_name: 'Tag', auto_include: false
|
124
|
+
|
123
125
|
after_destroy :after_post_destroy
|
124
126
|
|
125
127
|
if Goldiloader::Compatibility.mass_assignment_security_enabled?
|
@@ -732,6 +732,17 @@ describe Goldiloader do
|
|
732
732
|
end
|
733
733
|
end
|
734
734
|
|
735
|
+
it "doesn't auto eager load has_and_belongs_to_many associations" do
|
736
|
+
posts = Post.all.to_a
|
737
|
+
|
738
|
+
# Force the first post's tags to load
|
739
|
+
posts.first.tags_without_auto_include.to_a
|
740
|
+
|
741
|
+
posts.drop(1).each do |post|
|
742
|
+
expect(post.association(:tags_without_auto_include)).to_not be_loaded
|
743
|
+
end
|
744
|
+
end
|
745
|
+
|
735
746
|
it "still auto eager loads nested associations" do
|
736
747
|
posts = Post.order(:title).to_a
|
737
748
|
# Force the first post's blog to load
|
@@ -752,4 +763,25 @@ describe Goldiloader do
|
|
752
763
|
end
|
753
764
|
end
|
754
765
|
end
|
766
|
+
|
767
|
+
describe "CollectionProxy#exists?" do
|
768
|
+
it "returns true for collections with values" do
|
769
|
+
expect(parent_tag1.children).to exist
|
770
|
+
end
|
771
|
+
|
772
|
+
it "returns false for collections without values" do
|
773
|
+
expect(child_tag1.children).not_to exist
|
774
|
+
end
|
775
|
+
|
776
|
+
if Goldiloader::Compatibility::RAILS_3
|
777
|
+
# Make sure we mimic the broken behavior of Rails 3
|
778
|
+
it "returns true for new models with empty associations" do
|
779
|
+
expect(Tag.new.children).to exist
|
780
|
+
end
|
781
|
+
else
|
782
|
+
it "returns false for new models with empty associations" do
|
783
|
+
expect(Tag.new.children).not_to exist
|
784
|
+
end
|
785
|
+
end
|
786
|
+
end
|
755
787
|
end
|
metadata
CHANGED
@@ -1,18 +1,18 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: goldiloader
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.11
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Joel Turkel
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2017-01-25 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activerecord
|
15
|
-
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
17
|
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
@@ -20,7 +20,9 @@ dependencies:
|
|
20
20
|
- - "<"
|
21
21
|
- !ruby/object:Gem::Version
|
22
22
|
version: '5.1'
|
23
|
-
|
23
|
+
type: :runtime
|
24
|
+
prerelease: false
|
25
|
+
version_requirements: !ruby/object:Gem::Requirement
|
24
26
|
requirements:
|
25
27
|
- - ">="
|
26
28
|
- !ruby/object:Gem::Version
|
@@ -28,11 +30,9 @@ dependencies:
|
|
28
30
|
- - "<"
|
29
31
|
- !ruby/object:Gem::Version
|
30
32
|
version: '5.1'
|
31
|
-
prerelease: false
|
32
|
-
type: :runtime
|
33
33
|
- !ruby/object:Gem::Dependency
|
34
34
|
name: activesupport
|
35
|
-
|
35
|
+
requirement: !ruby/object:Gem::Requirement
|
36
36
|
requirements:
|
37
37
|
- - ">="
|
38
38
|
- !ruby/object:Gem::Version
|
@@ -40,7 +40,9 @@ dependencies:
|
|
40
40
|
- - "<"
|
41
41
|
- !ruby/object:Gem::Version
|
42
42
|
version: '5.1'
|
43
|
-
|
43
|
+
type: :runtime
|
44
|
+
prerelease: false
|
45
|
+
version_requirements: !ruby/object:Gem::Requirement
|
44
46
|
requirements:
|
45
47
|
- - ">="
|
46
48
|
- !ruby/object:Gem::Version
|
@@ -48,120 +50,104 @@ dependencies:
|
|
48
50
|
- - "<"
|
49
51
|
- !ruby/object:Gem::Version
|
50
52
|
version: '5.1'
|
51
|
-
prerelease: false
|
52
|
-
type: :runtime
|
53
53
|
- !ruby/object:Gem::Dependency
|
54
54
|
name: coveralls
|
55
|
-
|
55
|
+
requirement: !ruby/object:Gem::Requirement
|
56
56
|
requirements:
|
57
57
|
- - ">="
|
58
58
|
- !ruby/object:Gem::Version
|
59
59
|
version: '0'
|
60
|
-
|
60
|
+
type: :development
|
61
|
+
prerelease: false
|
62
|
+
version_requirements: !ruby/object:Gem::Requirement
|
61
63
|
requirements:
|
62
64
|
- - ">="
|
63
65
|
- !ruby/object:Gem::Version
|
64
66
|
version: '0'
|
65
|
-
prerelease: false
|
66
|
-
type: :development
|
67
67
|
- !ruby/object:Gem::Dependency
|
68
68
|
name: database_cleaner
|
69
|
-
|
69
|
+
requirement: !ruby/object:Gem::Requirement
|
70
70
|
requirements:
|
71
71
|
- - ">="
|
72
72
|
- !ruby/object:Gem::Version
|
73
73
|
version: '1.2'
|
74
|
-
|
74
|
+
type: :development
|
75
|
+
prerelease: false
|
76
|
+
version_requirements: !ruby/object:Gem::Requirement
|
75
77
|
requirements:
|
76
78
|
- - ">="
|
77
79
|
- !ruby/object:Gem::Version
|
78
80
|
version: '1.2'
|
79
|
-
prerelease: false
|
80
|
-
type: :development
|
81
81
|
- !ruby/object:Gem::Dependency
|
82
82
|
name: rake
|
83
|
-
|
83
|
+
requirement: !ruby/object:Gem::Requirement
|
84
84
|
requirements:
|
85
85
|
- - ">="
|
86
86
|
- !ruby/object:Gem::Version
|
87
87
|
version: '0'
|
88
|
-
|
88
|
+
type: :development
|
89
|
+
prerelease: false
|
90
|
+
version_requirements: !ruby/object:Gem::Requirement
|
89
91
|
requirements:
|
90
92
|
- - ">="
|
91
93
|
- !ruby/object:Gem::Version
|
92
94
|
version: '0'
|
93
|
-
prerelease: false
|
94
|
-
type: :development
|
95
95
|
- !ruby/object:Gem::Dependency
|
96
96
|
name: rspec
|
97
|
-
version_requirements: !ruby/object:Gem::Requirement
|
98
|
-
requirements:
|
99
|
-
- - "~>"
|
100
|
-
- !ruby/object:Gem::Version
|
101
|
-
version: '2'
|
102
97
|
requirement: !ruby/object:Gem::Requirement
|
103
98
|
requirements:
|
104
99
|
- - "~>"
|
105
100
|
- !ruby/object:Gem::Version
|
106
|
-
version: '
|
107
|
-
prerelease: false
|
101
|
+
version: '3'
|
108
102
|
type: :development
|
109
|
-
|
110
|
-
name: simplecov
|
103
|
+
prerelease: false
|
111
104
|
version_requirements: !ruby/object:Gem::Requirement
|
112
105
|
requirements:
|
113
106
|
- - "~>"
|
114
107
|
- !ruby/object:Gem::Version
|
115
|
-
version:
|
108
|
+
version: '3'
|
109
|
+
- !ruby/object:Gem::Dependency
|
110
|
+
name: simplecov
|
116
111
|
requirement: !ruby/object:Gem::Requirement
|
117
112
|
requirements:
|
118
113
|
- - "~>"
|
119
114
|
- !ruby/object:Gem::Version
|
120
115
|
version: 0.7.1
|
121
|
-
prerelease: false
|
122
116
|
type: :development
|
123
|
-
|
124
|
-
name: mime-types
|
117
|
+
prerelease: false
|
125
118
|
version_requirements: !ruby/object:Gem::Requirement
|
126
119
|
requirements:
|
127
120
|
- - "~>"
|
128
121
|
- !ruby/object:Gem::Version
|
129
|
-
version:
|
122
|
+
version: 0.7.1
|
123
|
+
- !ruby/object:Gem::Dependency
|
124
|
+
name: mime-types
|
130
125
|
requirement: !ruby/object:Gem::Requirement
|
131
126
|
requirements:
|
132
127
|
- - "~>"
|
133
128
|
- !ruby/object:Gem::Version
|
134
129
|
version: '2'
|
135
|
-
prerelease: false
|
136
130
|
type: :development
|
137
|
-
|
138
|
-
name: jdbc-sqlite3
|
131
|
+
prerelease: false
|
139
132
|
version_requirements: !ruby/object:Gem::Requirement
|
140
133
|
requirements:
|
141
|
-
- - "
|
134
|
+
- - "~>"
|
142
135
|
- !ruby/object:Gem::Version
|
143
|
-
version: '
|
136
|
+
version: '2'
|
137
|
+
- !ruby/object:Gem::Dependency
|
138
|
+
name: sqlite3
|
144
139
|
requirement: !ruby/object:Gem::Requirement
|
145
140
|
requirements:
|
146
141
|
- - ">="
|
147
142
|
- !ruby/object:Gem::Version
|
148
143
|
version: '0'
|
149
|
-
prerelease: false
|
150
144
|
type: :development
|
151
|
-
|
152
|
-
name: activerecord-jdbcsqlite3-adapter
|
145
|
+
prerelease: false
|
153
146
|
version_requirements: !ruby/object:Gem::Requirement
|
154
147
|
requirements:
|
155
148
|
- - ">="
|
156
149
|
- !ruby/object:Gem::Version
|
157
150
|
version: '0'
|
158
|
-
requirement: !ruby/object:Gem::Requirement
|
159
|
-
requirements:
|
160
|
-
- - ">="
|
161
|
-
- !ruby/object:Gem::Version
|
162
|
-
version: '0'
|
163
|
-
prerelease: false
|
164
|
-
type: :development
|
165
151
|
description: Automatically eager loads Rails associations as associations are traversed
|
166
152
|
email:
|
167
153
|
- jturkel@salsify.com
|
@@ -195,7 +181,7 @@ homepage: https://github.com/salsify/goldiloader
|
|
195
181
|
licenses:
|
196
182
|
- MIT
|
197
183
|
metadata: {}
|
198
|
-
post_install_message:
|
184
|
+
post_install_message:
|
199
185
|
rdoc_options: []
|
200
186
|
require_paths:
|
201
187
|
- lib
|
@@ -210,14 +196,14 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
210
196
|
- !ruby/object:Gem::Version
|
211
197
|
version: '0'
|
212
198
|
requirements: []
|
213
|
-
rubyforge_project:
|
214
|
-
rubygems_version: 2.
|
215
|
-
signing_key:
|
199
|
+
rubyforge_project:
|
200
|
+
rubygems_version: 2.5.1
|
201
|
+
signing_key:
|
216
202
|
specification_version: 4
|
217
203
|
summary: Automatic Rails association eager loading
|
218
204
|
test_files:
|
219
|
-
- spec/spec_helper.rb
|
220
205
|
- spec/db/database.yml
|
221
206
|
- spec/db/schema.rb
|
222
207
|
- spec/goldiloader/auto_include_context_spec.rb
|
223
208
|
- spec/goldiloader/goldiloader_spec.rb
|
209
|
+
- spec/spec_helper.rb
|