edge_rider 2.0.0 → 2.1.0

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: ac872c959e9c692146c7091a63248e501f780a8d065b15e65548a1d9a7ac4e46
4
- data.tar.gz: '018be393dda77b87b8cf91c6466699af80baced864640e56735ddd86e6a8601b'
3
+ metadata.gz: 92243002f87dbe03f00014b107beb57f9e024b9f77b3d16f134e20532e8c3c7e
4
+ data.tar.gz: f18dd9916e2226870cc2ff97fa64437097df10ef18c2b548a2c7f98d32a9633d
5
5
  SHA512:
6
- metadata.gz: bbf53aff09715db33e03146bdca2f4277f5b89560952a853089e046fd7a1480796c2e31e046f3f4d783be38d92ed9850529c10e822ad04e4faf1b5acac9db782
7
- data.tar.gz: b3ea5bfe76ceb8d177107bf306920bf957bda6268f34cfdedbf6e053d18133d67c4d5d51e9a641b537d74333fd576cf557c412b2e5981029dbdb6c8dddc8e664
6
+ metadata.gz: f5056092d3c444feab3997beeb2f6278ce260f1690c1a78517cecbb278ccb3c0811d4578f2eba66a80553391df86c29964ba2ab66fc09c2bfff34fe06cc8e1b0
7
+ data.tar.gz: a39f21a754769f355cf1ee76d3261e0556096d0d600468e604e4dc66a7203922c0387bc506cd586626bc40b0bad079ddf5b2c921f43c17e18bd2f23d380f02d3
@@ -41,7 +41,8 @@ jobs:
41
41
  ruby-version: "${{ matrix.ruby }}"
42
42
  - name: Setup database
43
43
  run: |
44
- sudo apt-get install -y mysql-client libmariadbclient-dev
44
+ sudo apt-get update
45
+ sudo apt-get install -y mariadb-client libmariadbclient-dev
45
46
  mysql -e 'create database IF NOT EXISTS test;' -u root --password=password -P 3306 -h 127.0.0.1
46
47
  - name: Bundle
47
48
  run: |
@@ -79,6 +80,10 @@ jobs:
79
80
  gemfile: Gemfile.6.1.pg
80
81
  - ruby: 3.0.2
81
82
  gemfile: Gemfile.6.1.pg
83
+ - ruby: 2.7.4
84
+ gemfile: Gemfile.7.0.pg
85
+ - ruby: 3.0.2
86
+ gemfile: Gemfile.7.0.pg
82
87
  env:
83
88
  BUNDLE_GEMFILE: "${{ matrix.gemfile }}"
84
89
  steps:
data/CHANGELOG.md CHANGED
@@ -10,10 +10,18 @@ This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html
10
10
  ### Compatible changes
11
11
 
12
12
 
13
- ## 1.1.0 - 2021-08-24
13
+ ## 2.1.0 - 2022-02-24
14
+
15
+ ### Compatible changes
16
+ - Add support for Rails 7.0
17
+ - Activate Rubygems MFA
18
+
19
+
20
+ ## 2.0.0 - 2021-08-24
14
21
 
15
22
  ### Breaking changes
16
23
  - Drop support for Ruby < 2.5.0
24
+ - Drop support for Rails < 3.2
17
25
 
18
26
  ### Compatible changes
19
27
  - Add support for Rails 6.1
data/Gemfile.4.2.mysql2 CHANGED
@@ -11,6 +11,7 @@ gem 'has_defaults' # used by test models
11
11
  gem 'rspec'
12
12
  gem 'gemika', '>=0.5.0'
13
13
  gem 'pry-byebug'
14
+ gem 'db-query-matchers'
14
15
 
15
16
  # Gem under test
16
17
  gem 'edge_rider', path: '.'
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- edge_rider (2.0.0)
4
+ edge_rider (2.1.0)
5
5
  activerecord (>= 3.2)
6
6
 
7
7
  GEM
@@ -25,6 +25,9 @@ GEM
25
25
  coderay (1.1.2)
26
26
  concurrent-ruby (1.1.9)
27
27
  database_cleaner (1.0.1)
28
+ db-query-matchers (0.10.0)
29
+ activesupport (>= 4.0, < 7)
30
+ rspec (~> 3.0)
28
31
  diff-lcs (1.2.5)
29
32
  gemika (0.6.1)
30
33
  has_defaults (0.4.4)
@@ -64,6 +67,7 @@ PLATFORMS
64
67
  DEPENDENCIES
65
68
  activerecord (~> 4.2.0)
66
69
  database_cleaner
70
+ db-query-matchers
67
71
  edge_rider!
68
72
  gemika (>= 0.5.0)
69
73
  has_defaults
@@ -73,4 +77,4 @@ DEPENDENCIES
73
77
  rspec
74
78
 
75
79
  BUNDLED WITH
76
- 2.2.26
80
+ 2.2.32
data/Gemfile.4.2.pg CHANGED
@@ -11,6 +11,7 @@ gem 'rspec'
11
11
  gem 'has_defaults' # used by test models
12
12
  gem 'gemika', '>=0.5.0'
13
13
  gem 'pry-byebug'
14
+ gem 'db-query-matchers'
14
15
 
15
16
  # Gem under test
16
17
  gem 'edge_rider', path: '.'
data/Gemfile.4.2.pg.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- edge_rider (2.0.0)
4
+ edge_rider (2.1.0)
5
5
  activerecord (>= 3.2)
6
6
 
7
7
  GEM
@@ -25,6 +25,9 @@ GEM
25
25
  coderay (1.1.2)
26
26
  concurrent-ruby (1.1.9)
27
27
  database_cleaner (1.5.3)
28
+ db-query-matchers (0.10.0)
29
+ activesupport (>= 4.0, < 7)
30
+ rspec (~> 3.0)
28
31
  diff-lcs (1.2.5)
29
32
  gemika (0.6.1)
30
33
  has_defaults (0.4.4)
@@ -64,6 +67,7 @@ PLATFORMS
64
67
  DEPENDENCIES
65
68
  activerecord (~> 4.2.0)
66
69
  database_cleaner
70
+ db-query-matchers
67
71
  edge_rider!
68
72
  gemika (>= 0.5.0)
69
73
  has_defaults
@@ -73,4 +77,4 @@ DEPENDENCIES
73
77
  rspec
74
78
 
75
79
  BUNDLED WITH
76
- 2.2.26
80
+ 2.2.32
data/Gemfile.5.2.mysql2 CHANGED
@@ -12,6 +12,7 @@ gem 'rspec'
12
12
  gem 'has_defaults' # used by test models
13
13
  gem 'gemika', '>=0.5.0'
14
14
  gem 'pry-byebug'
15
+ gem 'db-query-matchers'
15
16
 
16
17
  # Gem under test
17
18
  gem 'edge_rider', path: '.'
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- edge_rider (2.0.0)
4
+ edge_rider (2.1.0)
5
5
  activerecord (>= 3.2)
6
6
 
7
7
  GEM
@@ -23,6 +23,9 @@ GEM
23
23
  coderay (1.1.2)
24
24
  concurrent-ruby (1.1.5)
25
25
  database_cleaner (1.6.1)
26
+ db-query-matchers (0.10.0)
27
+ activesupport (>= 4.0, < 7)
28
+ rspec (~> 3.0)
26
29
  diff-lcs (1.3)
27
30
  gemika (0.5.0)
28
31
  has_defaults (0.4.4)
@@ -62,6 +65,7 @@ PLATFORMS
62
65
  DEPENDENCIES
63
66
  activerecord (~> 5.2.3)
64
67
  database_cleaner
68
+ db-query-matchers
65
69
  edge_rider!
66
70
  gemika (>= 0.5.0)
67
71
  has_defaults
@@ -72,4 +76,4 @@ DEPENDENCIES
72
76
  rspec
73
77
 
74
78
  BUNDLED WITH
75
- 2.2.26
79
+ 2.2.32
data/Gemfile.5.2.pg CHANGED
@@ -12,6 +12,7 @@ gem 'has_defaults' # used by test models
12
12
  gem 'rspec'
13
13
  gem 'gemika', '>=0.5.0'
14
14
  gem 'pry-byebug'
15
+ gem 'db-query-matchers'
15
16
 
16
17
  # Gem under test
17
18
  gem 'edge_rider', path: '.'
data/Gemfile.5.2.pg.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- edge_rider (2.0.0)
4
+ edge_rider (2.1.0)
5
5
  activerecord (>= 3.2)
6
6
 
7
7
  GEM
@@ -23,6 +23,9 @@ GEM
23
23
  coderay (1.1.2)
24
24
  concurrent-ruby (1.1.5)
25
25
  database_cleaner (1.6.1)
26
+ db-query-matchers (0.10.0)
27
+ activesupport (>= 4.0, < 7)
28
+ rspec (~> 3.0)
26
29
  diff-lcs (1.3)
27
30
  gemika (0.5.0)
28
31
  has_defaults (0.4.4)
@@ -62,6 +65,7 @@ PLATFORMS
62
65
  DEPENDENCIES
63
66
  activerecord (~> 5.2.3)
64
67
  database_cleaner
68
+ db-query-matchers
65
69
  edge_rider!
66
70
  gemika (>= 0.5.0)
67
71
  has_defaults
@@ -72,4 +76,4 @@ DEPENDENCIES
72
76
  rspec
73
77
 
74
78
  BUNDLED WITH
75
- 2.2.26
79
+ 2.2.32
data/Gemfile.6.1.pg CHANGED
@@ -11,6 +11,7 @@ gem 'has_defaults' # used by test models
11
11
  gem 'rspec'
12
12
  gem 'gemika', '>=0.5.0'
13
13
  gem 'pry-byebug'
14
+ gem 'db-query-matchers'
14
15
 
15
16
  # Gem under test
16
17
  gem 'edge_rider', path: '.'
data/Gemfile.6.1.pg.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- edge_rider (2.0.0)
4
+ edge_rider (2.1.0)
5
5
  activerecord (>= 3.2)
6
6
 
7
7
  GEM
@@ -27,6 +27,9 @@ GEM
27
27
  activerecord (>= 5.a)
28
28
  database_cleaner-core (~> 2.0.0)
29
29
  database_cleaner-core (2.0.1)
30
+ db-query-matchers (0.10.0)
31
+ activesupport (>= 4.0, < 7)
32
+ rspec (~> 3.0)
30
33
  diff-lcs (1.4.4)
31
34
  gemika (0.5.0)
32
35
  has_defaults (0.4.4)
@@ -66,6 +69,7 @@ PLATFORMS
66
69
  DEPENDENCIES
67
70
  activerecord (~> 6.1.3)
68
71
  database_cleaner
72
+ db-query-matchers
69
73
  edge_rider!
70
74
  gemika (>= 0.5.0)
71
75
  has_defaults
@@ -75,4 +79,4 @@ DEPENDENCIES
75
79
  rspec
76
80
 
77
81
  BUNDLED WITH
78
- 2.2.26
82
+ 2.3.4
data/Gemfile.7.0.pg ADDED
@@ -0,0 +1,17 @@
1
+ source 'https://rubygems.org'
2
+
3
+ # Runtime dependencies
4
+ gem 'activerecord', '~>7.0.1'
5
+ gem 'pg'
6
+
7
+ # Development dependencies
8
+ gem 'rake'
9
+ gem 'database_cleaner'
10
+ gem 'has_defaults' # used by test models
11
+ gem 'rspec'
12
+ gem 'gemika', '>=0.5.0'
13
+ gem 'pry-byebug'
14
+ gem 'db-query-matchers'
15
+
16
+ # Gem under test
17
+ gem 'edge_rider', path: '.'
@@ -0,0 +1,78 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ edge_rider (2.1.0)
5
+ activerecord (>= 3.2)
6
+
7
+ GEM
8
+ remote: https://rubygems.org/
9
+ specs:
10
+ activemodel (7.0.1)
11
+ activesupport (= 7.0.1)
12
+ activerecord (7.0.1)
13
+ activemodel (= 7.0.1)
14
+ activesupport (= 7.0.1)
15
+ activesupport (7.0.1)
16
+ concurrent-ruby (~> 1.0, >= 1.0.2)
17
+ i18n (>= 1.6, < 2)
18
+ minitest (>= 5.1)
19
+ tzinfo (~> 2.0)
20
+ byebug (11.1.3)
21
+ coderay (1.1.3)
22
+ concurrent-ruby (1.1.9)
23
+ database_cleaner (2.0.1)
24
+ database_cleaner-active_record (~> 2.0.0)
25
+ database_cleaner-active_record (2.0.1)
26
+ activerecord (>= 5.a)
27
+ database_cleaner-core (~> 2.0.0)
28
+ database_cleaner-core (2.0.1)
29
+ db-query-matchers (0.8.0)
30
+ diff-lcs (1.5.0)
31
+ gemika (0.6.1)
32
+ has_defaults (1.0.0)
33
+ activerecord
34
+ i18n (1.8.11)
35
+ concurrent-ruby (~> 1.0)
36
+ method_source (1.0.0)
37
+ minitest (5.15.0)
38
+ pg (1.2.3)
39
+ pry (0.13.1)
40
+ coderay (~> 1.1)
41
+ method_source (~> 1.0)
42
+ pry-byebug (3.9.0)
43
+ byebug (~> 11.0)
44
+ pry (~> 0.13.0)
45
+ rake (13.0.6)
46
+ rspec (3.10.0)
47
+ rspec-core (~> 3.10.0)
48
+ rspec-expectations (~> 3.10.0)
49
+ rspec-mocks (~> 3.10.0)
50
+ rspec-core (3.10.1)
51
+ rspec-support (~> 3.10.0)
52
+ rspec-expectations (3.10.1)
53
+ diff-lcs (>= 1.2.0, < 2.0)
54
+ rspec-support (~> 3.10.0)
55
+ rspec-mocks (3.10.2)
56
+ diff-lcs (>= 1.2.0, < 2.0)
57
+ rspec-support (~> 3.10.0)
58
+ rspec-support (3.10.3)
59
+ tzinfo (2.0.4)
60
+ concurrent-ruby (~> 1.0)
61
+
62
+ PLATFORMS
63
+ x86_64-linux
64
+
65
+ DEPENDENCIES
66
+ activerecord (~> 7.0.1)
67
+ database_cleaner
68
+ db-query-matchers
69
+ edge_rider!
70
+ gemika (>= 0.5.0)
71
+ has_defaults
72
+ pg
73
+ pry-byebug
74
+ rake
75
+ rspec
76
+
77
+ BUNDLED WITH
78
+ 2.3.4
data/README.md CHANGED
@@ -235,7 +235,7 @@ Now run `bundle install` and restart your server.
235
235
  ## Development
236
236
 
237
237
  - There are tests in `spec`. We only accept PRs with tests.
238
- - We currently develop using the Ruby version in `.ruby-version`. It is required to change the Ruby Version to cover all Rails version or just use Travis CI.
238
+ - We currently develop using the Ruby version in `.ruby-version`. It is required to change the Ruby Version to cover all Rails version or just use Github Actions.
239
239
  - Put your database credentials into `spec/support/database.yml`. There's a `database.sample.yml` you can use as a template.
240
240
  - Create a database `edge_rider_test` in both MySQL and PostgreSQL.
241
241
  - There are gem bundles in the project root for each combination of ActiveRecord version and database type that we support.
data/edge_rider.gemspec CHANGED
@@ -13,6 +13,7 @@ Gem::Specification.new do |spec|
13
13
  spec.description = spec.summary
14
14
  spec.homepage = 'https://github.com/makandra/edge_rider'
15
15
  spec.license = 'MIT'
16
+ spec.metadata = { 'rubygems_mfa_required' => 'true' }
16
17
 
17
18
  # Specify which files should be added to the gem when it is released.
18
19
  # The `git ls-files -z` loads the files in the RubyGem that have been added into git.
@@ -9,24 +9,19 @@ module EdgeRider
9
9
  def preload_associations(*args)
10
10
  preloader = ActiveRecord::Associations::Preloader
11
11
 
12
- if preloader.method_defined?(:preload) # Rails 4
13
- preloader.new.preload(*args)
14
- else
12
+ if preloader.method_defined?(:run) # Rails 3.2 / Rails 4
15
13
  preloader.new(*args).run
14
+ elsif preloader.method_defined?(:preload) # Rails 5 to Rails 6.1
15
+ preloader.new.preload(*args)
16
+ else # Rails 7+
17
+ records = args.first
18
+ associations = args.second
19
+ options = args[2] || {}
20
+ preloader.new(records: records, associations: associations, **options).call
16
21
  end
17
22
  end
18
23
 
19
- if ActiveRecord::Base.respond_to?(:preload_associations, true) # Rails 2/3.0
20
- ActiveRecord::Base.class_eval do
21
- class << self
22
- public :preload_associations
23
- end
24
- end
25
- else # Rails 3.2+
26
- ActiveRecord::Base.send(:extend, self)
27
- end
28
-
24
+ ActiveRecord::Base.send(:extend, self)
29
25
  ActiveRecord::Base.send(:include, PreloadAssociationsInstanceMethod)
30
-
31
26
  end
32
27
  end
@@ -1,3 +1,3 @@
1
1
  module EdgeRider
2
- VERSION = '2.0.0'
2
+ VERSION = '2.1.0'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: edge_rider
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.0
4
+ version: 2.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Henning Koch
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-08-25 00:00:00.000000000 Z
11
+ date: 2022-03-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activerecord
@@ -47,6 +47,8 @@ files:
47
47
  - Gemfile.5.2.pg.lock
48
48
  - Gemfile.6.1.pg
49
49
  - Gemfile.6.1.pg.lock
50
+ - Gemfile.7.0.pg
51
+ - Gemfile.7.0.pg.lock
50
52
  - Gemfile.lock
51
53
  - LICENSE
52
54
  - README.md
@@ -66,7 +68,8 @@ files:
66
68
  homepage: https://github.com/makandra/edge_rider
67
69
  licenses:
68
70
  - MIT
69
- metadata: {}
71
+ metadata:
72
+ rubygems_mfa_required: 'true'
70
73
  post_install_message:
71
74
  rdoc_options: []
72
75
  require_paths:
@@ -82,7 +85,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
82
85
  - !ruby/object:Gem::Version
83
86
  version: '0'
84
87
  requirements: []
85
- rubygems_version: 3.2.26
88
+ rubygems_version: 3.2.32
86
89
  signing_key:
87
90
  specification_version: 4
88
91
  summary: Power tools for ActiveRecord relations (scopes)