pursuit 1.1.0 → 1.1.1

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 70e763ac9fa96f98268f46e1824852e5908874fd7b667a8e5e8df5049ad14cd1
4
- data.tar.gz: a375cf25c07d547f4bf8321796de8537881a05c740a198269ab6b4dac6c90ad9
3
+ metadata.gz: 0fd2623d40aac824c4fe3eb64b15432e4f48743b4a8f71f7baed05592065f21b
4
+ data.tar.gz: e8d33f3c5c633c9e0fb3de388803e66034ada5b5d780cee1f80e33e60bb9f2fa
5
5
  SHA512:
6
- metadata.gz: 317ec03777606abbc9c800b728a99305855ae7e4702a64eba53c68ba402e7645de7c21d91ac2d41c8cfd953c3f9a9f1ff9878776c058ab6f39a303d216858c4c
7
- data.tar.gz: ca1240b3907b70541a9a26fd54a9c97088deef1d227eb26694085ed99f8c84782cb65b7a22ee9c97d2854b9329ceb30bf6a98ab7900d077fb99047961d0b72b9
6
+ metadata.gz: 684b9b7a1ad04114feba9204bb6c8d6d6db4b31c826cb27695b3d2eed12be4f27453a803551f572e796be9ae574b9cdd23eab598a67921f34fc9c27d2ff8427f
7
+ data.tar.gz: b05e96b1733b99b0b271acbb50d836396df10043978904be0605d49cbb63f984e487d2ccf7f99a21f5b0e0cc27b567042459543a8087acb92036ea3dc49ee5b1
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ source 'https://rubygems.org'
4
+
5
+ gemspec path: '../../'
6
+
7
+ gem 'activerecord', '~> 6.1.0'
8
+ gem 'activesupport', '~> 6.1.0'
9
+ gem 'combustion', '~> 1.5.0'
10
+ gem 'concurrent-ruby', '1.3.4'
11
+ gem 'rake', '~> 13.2.0'
12
+ gem 'rspec-rails', '~> 6.1.0'
13
+ gem 'rspec', '~> 3.13.0'
14
+ gem 'sqlite3', '~> 1.5.0'
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ source 'https://rubygems.org'
4
+
5
+ gemspec path: '../../'
6
+
7
+ gem 'activerecord', '~> 7.1.0'
8
+ gem 'activesupport', '~> 7.1.0'
9
+ gem 'combustion', '~> 1.5.0'
10
+ gem 'rake', '~> 13.2.0'
11
+ gem 'rspec-rails', '~> 7.1.0'
12
+ gem 'rspec', '~> 3.13.0'
13
+ gem 'sqlite3', '~> 1.6.0'
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ source 'https://rubygems.org'
4
+
5
+ gemspec path: '../../'
6
+
7
+ gem 'activerecord', '~> 7.1.0'
8
+ gem 'activesupport', '~> 7.1.0'
9
+ gem 'combustion', '~> 1.5.0'
10
+ gem 'rake', '~> 13.2.0'
11
+ gem 'rspec-rails', '~> 7.1.0'
12
+ gem 'rspec', '~> 3.13.0'
13
+ gem 'sqlite3', '~> 2.0.0'
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ source 'https://rubygems.org'
4
+
5
+ gemspec path: '../../'
6
+
7
+ gem 'activerecord', '~> 7.2.0'
8
+ gem 'activesupport', '~> 7.2.0'
9
+ gem 'combustion', '~> 1.5.0'
10
+ gem 'rake', '~> 13.2.0'
11
+ gem 'rspec-rails', '~> 7.1.0'
12
+ gem 'rspec', '~> 3.13.0'
13
+ gem 'sqlite3', '~> 2.6.0'
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ source 'https://rubygems.org'
4
+
5
+ gemspec path: '../../'
6
+
7
+ gem 'activerecord', '~> 8.0.0'
8
+ gem 'activesupport', '~> 8.0.0'
9
+ gem 'combustion', '~> 1.5.0'
10
+ gem 'rake', '~> 13.2.0'
11
+ gem 'rspec-rails', '~> 7.1.0'
12
+ gem 'rspec', '~> 3.13.0'
13
+ gem 'sqlite3', '~> 2.6.0'
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ source 'https://rubygems.org'
4
+
5
+ gemspec path: '../../'
6
+
7
+ gem 'activerecord', '~> 8.0.0'
8
+ gem 'activesupport', '~> 8.0.0'
9
+ gem 'combustion', '~> 1.5.0'
10
+ gem 'rake', '~> 13.2.0'
11
+ gem 'rspec-rails', '~> 7.1.0'
12
+ gem 'rspec', '~> 3.13.0'
13
+ gem 'sqlite3', '~> 2.6.0'
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ source 'https://rubygems.org'
4
+
5
+ gemspec path: '../../'
6
+
7
+ gem 'activerecord', '~> 8.0.0'
8
+ gem 'activesupport', '~> 8.0.0'
9
+ gem 'combustion', '~> 1.5.0'
10
+ gem 'rake', '~> 13.2.0'
11
+ gem 'rspec-rails', '~> 7.1.0'
12
+ gem 'rspec', '~> 3.13.0'
13
+ gem 'sqlite3', '~> 2.6.0'
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ source 'https://rubygems.org'
4
+
5
+ gemspec path: '../../'
6
+
7
+ gem 'activerecord', '~> 8.0.0'
8
+ gem 'activesupport', '~> 8.0.0'
9
+ gem 'combustion', '~> 1.5.0'
10
+ gem 'rake', '~> 13.2.0'
11
+ gem 'rspec-rails', '~> 7.1.0'
12
+ gem 'rspec', '~> 3.13.0'
13
+ gem 'sqlite3', '~> 2.6.0'
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ source 'https://rubygems.org'
4
+
5
+ gemspec path: '../../'
6
+
7
+ gem 'activerecord', '~> 8.0.0'
8
+ gem 'activesupport', '~> 8.0.0'
9
+ gem 'combustion', '~> 1.5.0'
10
+ gem 'rake', '~> 13.2.0'
11
+ gem 'rspec-rails', '~> 7.1.0'
12
+ gem 'rspec', '~> 3.13.0'
13
+ gem 'sqlite3', '~> 2.6.0'
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ source 'https://rubygems.org'
4
+
5
+ gemspec path: '../../'
6
+
7
+ gem 'activerecord', '~> 8.0.0'
8
+ gem 'activesupport', '~> 8.0.0'
9
+ gem 'combustion', '~> 1.5.0'
10
+ gem 'rake', '~> 13.2.0'
11
+ gem 'rspec-rails', '~> 7.1.0'
12
+ gem 'rspec', '~> 3.13.0'
13
+ gem 'sqlite3', '~> 2.6.0'
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ source 'https://rubygems.org'
4
+
5
+ gemspec path: '../../'
6
+
7
+ gem 'activerecord', '~> 8.0.0'
8
+ gem 'activesupport', '~> 8.0.0'
9
+ gem 'combustion', '~> 1.5.0'
10
+ gem 'rake', '~> 13.2.0'
11
+ gem 'rspec-rails', '~> 7.1.0'
12
+ gem 'rspec', '~> 3.13.0'
13
+ gem 'sqlite3', '~> 2.6.0'
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ source 'https://rubygems.org'
4
+
5
+ gemspec path: '../../'
6
+
7
+ gem 'activerecord', '~> 8.0.0'
8
+ gem 'activesupport', '~> 8.0.0'
9
+ gem 'combustion', '~> 1.5.0'
10
+ gem 'rake', '~> 13.2.0'
11
+ gem 'rspec-rails', '~> 7.1.0'
12
+ gem 'rspec', '~> 3.13.0'
13
+ gem 'sqlite3', '~> 2.6.0'
@@ -0,0 +1,65 @@
1
+ name: Continuous Integration
2
+
3
+ on:
4
+ workflow_dispatch:
5
+ push:
6
+
7
+ concurrency:
8
+ group: ${{ github.workflow }}-${{ github.ref }}
9
+ cancel-in-progress: true
10
+
11
+ jobs:
12
+ rubocop:
13
+ name: RuboCop
14
+ runs-on: ubuntu-latest
15
+ steps:
16
+ - name: Checkout Source Code
17
+ uses: actions/checkout@v4
18
+ - name: Setup Ruby
19
+ uses: ruby/setup-ruby@v1
20
+ - name: Setup RubyGems
21
+ run: bundle install
22
+ - name: RuboCop
23
+ run: bundle exec rubocop --parallel --format progress --format html --out rubocop-report.html
24
+ - name: Upload Report
25
+ uses: actions/upload-artifact@v4
26
+ with:
27
+ name: RuboCop Report
28
+ path: rubocop-report.html
29
+
30
+ rspec:
31
+ name: RSpec
32
+ runs-on: ${{ matrix.os }}
33
+ env:
34
+ BUNDLE_GEMFILE: ${{ github.workspace }}/.github/gemfiles/ruby-${{ matrix.ruby-version }}.gemfile
35
+ strategy:
36
+ fail-fast: false
37
+ matrix:
38
+ os:
39
+ - macos-latest
40
+ - ubuntu-latest
41
+ ruby-version:
42
+ - '2.6'
43
+ - '2.7'
44
+ - '3.0'
45
+ - '3.1'
46
+ - '3.2'
47
+ - '3.3'
48
+ - '3.4'
49
+ - head
50
+ steps:
51
+ - name: Checkout Source Code
52
+ uses: actions/checkout@v4
53
+ - name: Setup Ruby
54
+ uses: ruby/setup-ruby@v1
55
+ with:
56
+ ruby-version: ${{ matrix.ruby-version }}
57
+ - name: Setup RubyGems
58
+ run: bundle install
59
+ - name: RSpec
60
+ run: bundle exec rspec --format progress --format html --out rspec-report.html
61
+ - name: Upload Report
62
+ uses: actions/upload-artifact@v4
63
+ with:
64
+ name: RSpec Report (${{ runner.os }}, Ruby ${{ matrix.ruby-version }})
65
+ path: rspec-report.html
data/.rbenv-gemsets CHANGED
@@ -1 +1 @@
1
- pursuit
1
+ pursuit
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- 3.2.2
1
+ 3.4.2
data/Gemfile CHANGED
@@ -5,16 +5,16 @@ source 'https://rubygems.org'
5
5
  gemspec
6
6
 
7
7
  group :development do
8
- gem 'combustion', '~> 1.3'
8
+ gem 'combustion', '~> 1.5'
9
9
  gem 'guard', '~> 2.18'
10
10
  gem 'guard-rspec', '~> 4.7'
11
11
  gem 'pry', '~> 0.14'
12
- gem 'rake', '~> 13.0'
13
- gem 'rspec', '~> 3.12'
14
- gem 'rspec-rails', '~> 6.0'
15
- gem 'rubocop', '~> 1.57'
12
+ gem 'rake', '~> 13.2'
13
+ gem 'rspec', '~> 3.13'
14
+ gem 'rspec-rails', '~> 7.0'
15
+ gem 'rubocop', '~> 1.67'
16
16
  gem 'rubocop-rake', '~> 0.6'
17
- gem 'rubocop-rspec', '~> 2.25'
18
- gem 'sqlite3', '~> 1.6'
17
+ gem 'rubocop-rspec', '~> 3.2'
18
+ gem 'sqlite3', '~> 2.1'
19
19
  gem 'yard', '~> 0.9'
20
20
  end
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- pursuit (1.0.1)
4
+ pursuit (1.1.1)
5
5
  activerecord (>= 5.2.0, <= 8.0.0)
6
6
  activesupport (>= 5.2.0, <= 8.0.0)
7
7
  parslet (~> 2.0)
@@ -9,61 +9,71 @@ PATH
9
9
  GEM
10
10
  remote: https://rubygems.org/
11
11
  specs:
12
- actionpack (7.1.1)
13
- actionview (= 7.1.1)
14
- activesupport (= 7.1.1)
12
+ actionpack (8.0.0)
13
+ actionview (= 8.0.0)
14
+ activesupport (= 8.0.0)
15
15
  nokogiri (>= 1.8.5)
16
16
  rack (>= 2.2.4)
17
17
  rack-session (>= 1.0.1)
18
18
  rack-test (>= 0.6.3)
19
19
  rails-dom-testing (~> 2.2)
20
20
  rails-html-sanitizer (~> 1.6)
21
- actionview (7.1.1)
22
- activesupport (= 7.1.1)
21
+ useragent (~> 0.16)
22
+ actionview (8.0.0)
23
+ activesupport (= 8.0.0)
23
24
  builder (~> 3.1)
24
25
  erubi (~> 1.11)
25
26
  rails-dom-testing (~> 2.2)
26
27
  rails-html-sanitizer (~> 1.6)
27
- activemodel (7.1.1)
28
- activesupport (= 7.1.1)
29
- activerecord (7.1.1)
30
- activemodel (= 7.1.1)
31
- activesupport (= 7.1.1)
28
+ activemodel (8.0.0)
29
+ activesupport (= 8.0.0)
30
+ activerecord (8.0.0)
31
+ activemodel (= 8.0.0)
32
+ activesupport (= 8.0.0)
32
33
  timeout (>= 0.4.0)
33
- activesupport (7.1.1)
34
+ activesupport (8.0.0)
34
35
  base64
36
+ benchmark (>= 0.3)
35
37
  bigdecimal
36
- concurrent-ruby (~> 1.0, >= 1.0.2)
38
+ concurrent-ruby (~> 1.0, >= 1.3.1)
37
39
  connection_pool (>= 2.2.5)
38
40
  drb
39
41
  i18n (>= 1.6, < 2)
42
+ logger (>= 1.4.2)
40
43
  minitest (>= 5.1)
41
- mutex_m
42
- tzinfo (~> 2.0)
44
+ securerandom (>= 0.3)
45
+ tzinfo (~> 2.0, >= 2.0.5)
46
+ uri (>= 0.13.1)
43
47
  ast (2.4.2)
44
- base64 (0.1.1)
45
- bigdecimal (3.1.4)
46
- builder (3.2.4)
48
+ base64 (0.2.0)
49
+ benchmark (0.4.0)
50
+ bigdecimal (3.1.9)
51
+ builder (3.3.0)
47
52
  coderay (1.1.3)
48
- combustion (1.3.7)
53
+ combustion (1.5.0)
49
54
  activesupport (>= 3.0.0)
50
55
  railties (>= 3.0.0)
51
56
  thor (>= 0.14.6)
52
- concurrent-ruby (1.2.2)
53
- connection_pool (2.4.1)
57
+ concurrent-ruby (1.3.5)
58
+ connection_pool (2.5.0)
54
59
  crass (1.0.6)
55
- diff-lcs (1.5.0)
56
- drb (2.1.1)
57
- ruby2_keywords
58
- erubi (1.12.0)
59
- ffi (1.16.3)
60
+ date (3.4.1)
61
+ diff-lcs (1.6.0)
62
+ drb (2.2.1)
63
+ erubi (1.13.1)
64
+ ffi (1.17.1)
65
+ ffi (1.17.1-arm64-darwin)
66
+ ffi (1.17.1-x86_64-darwin)
67
+ ffi (1.17.1-x86_64-linux-gnu)
60
68
  formatador (1.1.0)
61
- guard (2.18.1)
69
+ guard (2.19.1)
62
70
  formatador (>= 0.2.4)
63
71
  listen (>= 2.7, < 4.0)
72
+ logger (~> 1.6)
64
73
  lumberjack (>= 1.0.12, < 2.0)
65
74
  nenv (~> 0.1)
66
75
  notiffany (~> 0.0)
76
+ ostruct (~> 0.6)
67
77
  pry (>= 0.13.0)
68
78
  shellany (~> 0.0)
69
79
  thor (>= 0.18.1)
@@ -72,162 +82,172 @@ GEM
72
82
  guard (~> 2.1)
73
83
  guard-compat (~> 1.1)
74
84
  rspec (>= 2.99.0, < 4.0)
75
- i18n (1.14.1)
85
+ i18n (1.14.7)
76
86
  concurrent-ruby (~> 1.0)
77
- io-console (0.6.0)
78
- irb (1.8.3)
79
- rdoc
80
- reline (>= 0.3.8)
81
- json (2.6.3)
82
- language_server-protocol (3.17.0.3)
83
- listen (3.8.0)
87
+ io-console (0.8.0)
88
+ irb (1.15.1)
89
+ pp (>= 0.6.0)
90
+ rdoc (>= 4.0.0)
91
+ reline (>= 0.4.2)
92
+ json (2.10.1)
93
+ language_server-protocol (3.17.0.4)
94
+ lint_roller (1.1.0)
95
+ listen (3.9.0)
84
96
  rb-fsevent (~> 0.10, >= 0.10.3)
85
97
  rb-inotify (~> 0.9, >= 0.9.10)
86
- loofah (2.21.4)
98
+ logger (1.6.6)
99
+ loofah (2.24.0)
87
100
  crass (~> 1.0.2)
88
101
  nokogiri (>= 1.12.0)
89
- lumberjack (1.2.9)
90
- method_source (1.0.0)
91
- minitest (5.20.0)
92
- mutex_m (0.1.2)
102
+ lumberjack (1.2.10)
103
+ method_source (1.1.0)
104
+ mini_portile2 (2.8.8)
105
+ minitest (5.25.4)
93
106
  nenv (0.3.0)
94
- nokogiri (1.15.4-arm-linux)
107
+ nokogiri (1.18.3)
108
+ mini_portile2 (~> 2.8.2)
95
109
  racc (~> 1.4)
96
- nokogiri (1.15.4-arm64-darwin)
110
+ nokogiri (1.18.3-arm64-darwin)
97
111
  racc (~> 1.4)
98
- nokogiri (1.15.4-x86_64-darwin)
112
+ nokogiri (1.18.3-x86_64-darwin)
99
113
  racc (~> 1.4)
100
- nokogiri (1.15.4-x86_64-linux)
114
+ nokogiri (1.18.3-x86_64-linux-gnu)
101
115
  racc (~> 1.4)
102
116
  notiffany (0.1.3)
103
117
  nenv (~> 0.1)
104
118
  shellany (~> 0.0)
105
- parallel (1.23.0)
106
- parser (3.2.2.4)
119
+ ostruct (0.6.1)
120
+ parallel (1.26.3)
121
+ parser (3.3.7.1)
107
122
  ast (~> 2.4.1)
108
123
  racc
109
124
  parslet (2.0.0)
110
- pry (0.14.2)
125
+ pp (0.6.2)
126
+ prettyprint
127
+ prettyprint (0.2.0)
128
+ pry (0.15.2)
111
129
  coderay (~> 1.1)
112
130
  method_source (~> 1.0)
113
- psych (5.1.1.1)
131
+ psych (5.2.3)
132
+ date
114
133
  stringio
115
- racc (1.7.2)
116
- rack (3.0.8)
117
- rack-session (2.0.0)
134
+ racc (1.8.1)
135
+ rack (3.1.11)
136
+ rack-session (2.1.0)
137
+ base64 (>= 0.1.0)
118
138
  rack (>= 3.0.0)
119
- rack-test (2.1.0)
139
+ rack-test (2.2.0)
120
140
  rack (>= 1.3)
121
- rackup (2.1.0)
141
+ rackup (2.2.1)
122
142
  rack (>= 3)
123
- webrick (~> 1.8)
124
143
  rails-dom-testing (2.2.0)
125
144
  activesupport (>= 5.0.0)
126
145
  minitest
127
146
  nokogiri (>= 1.6)
128
- rails-html-sanitizer (1.6.0)
147
+ rails-html-sanitizer (1.6.2)
129
148
  loofah (~> 2.21)
130
- nokogiri (~> 1.14)
131
- railties (7.1.1)
132
- actionpack (= 7.1.1)
133
- activesupport (= 7.1.1)
134
- irb
149
+ nokogiri (>= 1.15.7, != 1.16.7, != 1.16.6, != 1.16.5, != 1.16.4, != 1.16.3, != 1.16.2, != 1.16.1, != 1.16.0.rc1, != 1.16.0)
150
+ railties (8.0.0)
151
+ actionpack (= 8.0.0)
152
+ activesupport (= 8.0.0)
153
+ irb (~> 1.13)
135
154
  rackup (>= 1.0.0)
136
155
  rake (>= 12.2)
137
156
  thor (~> 1.0, >= 1.2.2)
138
157
  zeitwerk (~> 2.6)
139
158
  rainbow (3.1.1)
140
- rake (13.1.0)
159
+ rake (13.2.1)
141
160
  rb-fsevent (0.11.2)
142
- rb-inotify (0.10.1)
161
+ rb-inotify (0.11.1)
143
162
  ffi (~> 1.0)
144
- rdoc (6.5.0)
163
+ rdoc (6.12.0)
145
164
  psych (>= 4.0.0)
146
- regexp_parser (2.8.2)
147
- reline (0.3.9)
165
+ regexp_parser (2.10.0)
166
+ reline (0.6.0)
148
167
  io-console (~> 0.5)
149
- rexml (3.2.6)
150
- rspec (3.12.0)
151
- rspec-core (~> 3.12.0)
152
- rspec-expectations (~> 3.12.0)
153
- rspec-mocks (~> 3.12.0)
154
- rspec-core (3.12.2)
155
- rspec-support (~> 3.12.0)
156
- rspec-expectations (3.12.3)
168
+ rspec (3.13.0)
169
+ rspec-core (~> 3.13.0)
170
+ rspec-expectations (~> 3.13.0)
171
+ rspec-mocks (~> 3.13.0)
172
+ rspec-core (3.13.3)
173
+ rspec-support (~> 3.13.0)
174
+ rspec-expectations (3.13.3)
157
175
  diff-lcs (>= 1.2.0, < 2.0)
158
- rspec-support (~> 3.12.0)
159
- rspec-mocks (3.12.6)
176
+ rspec-support (~> 3.13.0)
177
+ rspec-mocks (3.13.2)
160
178
  diff-lcs (>= 1.2.0, < 2.0)
161
- rspec-support (~> 3.12.0)
162
- rspec-rails (6.0.3)
163
- actionpack (>= 6.1)
164
- activesupport (>= 6.1)
165
- railties (>= 6.1)
166
- rspec-core (~> 3.12)
167
- rspec-expectations (~> 3.12)
168
- rspec-mocks (~> 3.12)
169
- rspec-support (~> 3.12)
170
- rspec-support (3.12.1)
171
- rubocop (1.57.2)
179
+ rspec-support (~> 3.13.0)
180
+ rspec-rails (7.1.1)
181
+ actionpack (>= 7.0)
182
+ activesupport (>= 7.0)
183
+ railties (>= 7.0)
184
+ rspec-core (~> 3.13)
185
+ rspec-expectations (~> 3.13)
186
+ rspec-mocks (~> 3.13)
187
+ rspec-support (~> 3.13)
188
+ rspec-support (3.13.2)
189
+ rubocop (1.73.2)
172
190
  json (~> 2.3)
173
- language_server-protocol (>= 3.17.0)
191
+ language_server-protocol (~> 3.17.0.2)
192
+ lint_roller (~> 1.1.0)
174
193
  parallel (~> 1.10)
175
- parser (>= 3.2.2.4)
194
+ parser (>= 3.3.0.2)
176
195
  rainbow (>= 2.2.2, < 4.0)
177
- regexp_parser (>= 1.8, < 3.0)
178
- rexml (>= 3.2.5, < 4.0)
179
- rubocop-ast (>= 1.28.1, < 2.0)
196
+ regexp_parser (>= 2.9.3, < 3.0)
197
+ rubocop-ast (>= 1.38.0, < 2.0)
180
198
  ruby-progressbar (~> 1.7)
181
- unicode-display_width (>= 2.4.0, < 3.0)
182
- rubocop-ast (1.30.0)
183
- parser (>= 3.2.1.0)
184
- rubocop-capybara (2.19.0)
185
- rubocop (~> 1.41)
186
- rubocop-factory_bot (2.24.0)
187
- rubocop (~> 1.33)
188
- rubocop-rake (0.6.0)
189
- rubocop (~> 1.0)
190
- rubocop-rspec (2.25.0)
191
- rubocop (~> 1.40)
192
- rubocop-capybara (~> 2.17)
193
- rubocop-factory_bot (~> 2.22)
199
+ unicode-display_width (>= 2.4.0, < 4.0)
200
+ rubocop-ast (1.38.1)
201
+ parser (>= 3.3.1.0)
202
+ rubocop-rake (0.7.1)
203
+ lint_roller (~> 1.1)
204
+ rubocop (>= 1.72.1)
205
+ rubocop-rspec (3.5.0)
206
+ lint_roller (~> 1.1)
207
+ rubocop (~> 1.72, >= 1.72.1)
194
208
  ruby-progressbar (1.13.0)
195
- ruby2_keywords (0.0.5)
209
+ securerandom (0.4.1)
196
210
  shellany (0.0.1)
197
- sqlite3 (1.6.8-arm-linux)
198
- sqlite3 (1.6.8-arm64-darwin)
199
- sqlite3 (1.6.8-x86_64-darwin)
200
- sqlite3 (1.6.8-x86_64-linux)
201
- stringio (3.0.8)
202
- thor (1.3.0)
203
- timeout (0.4.0)
211
+ sqlite3 (2.6.0)
212
+ mini_portile2 (~> 2.8.0)
213
+ sqlite3 (2.6.0-arm64-darwin)
214
+ sqlite3 (2.6.0-x86_64-darwin)
215
+ sqlite3 (2.6.0-x86_64-linux-gnu)
216
+ stringio (3.1.5)
217
+ thor (1.3.2)
218
+ timeout (0.4.3)
204
219
  tzinfo (2.0.6)
205
220
  concurrent-ruby (~> 1.0)
206
- unicode-display_width (2.5.0)
207
- webrick (1.8.1)
208
- yard (0.9.34)
209
- zeitwerk (2.6.12)
221
+ unicode-display_width (3.1.4)
222
+ unicode-emoji (~> 4.0, >= 4.0.4)
223
+ unicode-emoji (4.0.4)
224
+ uri (1.0.3)
225
+ useragent (0.16.11)
226
+ yard (0.9.37)
227
+ zeitwerk (2.7.2)
210
228
 
211
229
  PLATFORMS
212
230
  arm64-darwin-22
231
+ arm64-darwin-23
232
+ arm64-darwin-24
213
233
  arm64-linux
214
234
  x86_64-darwin-22
215
235
  x86_64-linux
216
236
 
217
237
  DEPENDENCIES
218
- combustion (~> 1.3)
238
+ combustion (~> 1.5)
219
239
  guard (~> 2.18)
220
240
  guard-rspec (~> 4.7)
221
241
  pry (~> 0.14)
222
242
  pursuit!
223
- rake (~> 13.0)
224
- rspec (~> 3.12)
225
- rspec-rails (~> 6.0)
226
- rubocop (~> 1.57)
243
+ rake (~> 13.2)
244
+ rspec (~> 3.13)
245
+ rspec-rails (~> 7.0)
246
+ rubocop (~> 1.67)
227
247
  rubocop-rake (~> 0.6)
228
- rubocop-rspec (~> 2.25)
229
- sqlite3 (~> 1.6)
248
+ rubocop-rspec (~> 3.2)
249
+ sqlite3 (~> 2.1)
230
250
  yard (~> 0.9)
231
251
 
232
252
  BUNDLED WITH
233
- 2.4.12
253
+ 2.6.5
data/README.md CHANGED
@@ -6,7 +6,9 @@ Search your ActiveRecord objects with ease!
6
6
 
7
7
  You can install **Pursuit** using the following command:
8
8
 
9
- $ gem install pursuit
9
+ ```sh
10
+ $ gem install pursuit
11
+ ```
10
12
 
11
13
  Or, by adding the following to your `Gemfile`:
12
14
 
@@ -3,5 +3,5 @@
3
3
  module Pursuit
4
4
  # @return [String] The gem's semantic version number.
5
5
  #
6
- VERSION = '1.1.0'
6
+ VERSION = '1.1.1'
7
7
  end
@@ -162,7 +162,7 @@ module Pursuit
162
162
  attribute_name = context[:attribute].to_sym
163
163
  attribute = context.dig(:permitted_attributes, attribute_name)
164
164
  raise AttributeNotFound, attribute_name if attribute.blank?
165
- raise AggregateModifierRequired, attribute_name if attribute.name == Arel.star
165
+ raise AggregateModifierRequired, attribute_name if attribute.respond_to?(:name) && attribute.name == Arel.star
166
166
 
167
167
  attribute
168
168
  end
data/pursuit.gemspec CHANGED
@@ -6,16 +6,16 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
6
6
  require 'pursuit/constants'
7
7
 
8
8
  Gem::Specification.new do |spec|
9
- spec.name = 'pursuit'
10
- spec.version = Pursuit::VERSION
11
- spec.authors = ['Nialto Services']
12
- spec.email = ['support@nialtoservices.co.uk']
9
+ spec.name = 'pursuit'
10
+ spec.version = Pursuit::VERSION
11
+ spec.authors = ['Nialto Services']
12
+ spec.email = ['support@nialtoservices.co.uk']
13
13
 
14
- spec.summary = 'Advanced key-based searching for ActiveRecord objects.'
15
- spec.homepage = 'https://github.com/NialtoServices/pursuit'
16
- spec.license = 'Apache-2.0'
14
+ spec.summary = 'Advanced key-based searching for ActiveRecord objects.'
15
+ spec.homepage = 'https://github.com/NialtoServices/pursuit'
16
+ spec.license = 'Apache-2.0'
17
17
 
18
- spec.files = `git ls-files -z`.split("\x0")
18
+ spec.files = `git ls-files -z`.split("\x0")
19
19
  spec.require_paths = ['lib']
20
20
 
21
21
  spec.required_ruby_version = '>= 2.6.0'
@@ -23,7 +23,7 @@ Gem::Specification.new do |spec|
23
23
  spec.metadata['rubygems_mfa_required'] = 'true'
24
24
  spec.metadata['yard.run'] = 'yri'
25
25
 
26
- spec.add_runtime_dependency 'activerecord', '>= 5.2.0', '<= 8.0.0'
27
- spec.add_runtime_dependency 'activesupport', '>= 5.2.0', '<= 8.0.0'
28
- spec.add_runtime_dependency 'parslet', '~> 2.0'
26
+ spec.add_dependency 'activerecord', '>= 5.2.0', '<= 8.0.0'
27
+ spec.add_dependency 'activesupport', '>= 5.2.0', '<= 8.0.0'
28
+ spec.add_dependency 'parslet', '~> 2.0'
29
29
  end
@@ -5,7 +5,11 @@ class ProductVariation < ApplicationRecord
5
5
 
6
6
  belongs_to :product
7
7
 
8
- enum stock_status: { in_stock: 1, low_stock: 2, out_of_stock: 3 }
8
+ if Gem::Version.new(Rails.version) >= Gem::Version.new('7.0.0')
9
+ enum :stock_status, { in_stock: 1, low_stock: 2, out_of_stock: 3 }
10
+ else
11
+ enum stock_status: { in_stock: 1, low_stock: 2, out_of_stock: 3 }
12
+ end
9
13
 
10
14
  validates :title, presence: true
11
15
 
@@ -20,7 +20,8 @@ RSpec.describe Pursuit::PredicateTransform do
20
20
  variations: ProductVariation.arel_table[Arel.star],
21
21
  variation_title: ProductVariation.arel_table[:title],
22
22
  variation_currency: ProductVariation.arel_table[:currency],
23
- variation_amount: ProductVariation.arel_table[:amount]
23
+ variation_amount: ProductVariation.arel_table[:amount],
24
+ variation_count: ProductVariation.arel_table[Arel.star].count
24
25
  }.with_indifferent_access
25
26
  end
26
27
 
@@ -340,6 +341,20 @@ RSpec.describe Pursuit::PredicateTransform do
340
341
  it { expect { apply }.to raise_exception(Pursuit::AggregateModifierRequired) }
341
342
  end
342
343
 
344
+ context 'when passed a comparison with an attribute representing a custom node' do
345
+ let(:tree) do
346
+ {
347
+ attribute: { string_no_quotes: 'variation_count' },
348
+ comparator: '=',
349
+ value: { integer: '123' }
350
+ }
351
+ end
352
+
353
+ it 'is expected to equal the correct ARel node' do
354
+ expect(apply).to eq(ProductVariation.arel_table[Arel.star].count.eq(123))
355
+ end
356
+ end
357
+
343
358
  context 'when passed an aggregate comparison with the "=" comparator' do
344
359
  let(:tree) do
345
360
  {
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pursuit
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0
4
+ version: 1.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nialto Services
8
- autorequire:
9
8
  bindir: bin
10
9
  cert_chain: []
11
- date: 2023-11-03 00:00:00.000000000 Z
10
+ date: 2025-03-08 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: activerecord
@@ -64,14 +63,25 @@ dependencies:
64
63
  - - "~>"
65
64
  - !ruby/object:Gem::Version
66
65
  version: '2.0'
67
- description:
68
66
  email:
69
67
  - support@nialtoservices.co.uk
70
68
  executables: []
71
69
  extensions: []
72
70
  extra_rdoc_files: []
73
71
  files:
74
- - ".github/workflows/rubygem.yaml"
72
+ - ".github/gemfiles/ruby-2.6.gemfile"
73
+ - ".github/gemfiles/ruby-2.7.gemfile"
74
+ - ".github/gemfiles/ruby-3.0.gemfile"
75
+ - ".github/gemfiles/ruby-3.1.gemfile"
76
+ - ".github/gemfiles/ruby-3.2.gemfile"
77
+ - ".github/gemfiles/ruby-3.3.gemfile"
78
+ - ".github/gemfiles/ruby-3.4.gemfile"
79
+ - ".github/gemfiles/ruby-head.gemfile"
80
+ - ".github/gemfiles/ruby-jruby-head.gemfile"
81
+ - ".github/gemfiles/ruby-jruby.gemfile"
82
+ - ".github/gemfiles/ruby-truffleruby-head.gemfile"
83
+ - ".github/gemfiles/ruby-truffleruby.gemfile"
84
+ - ".github/workflows/continuous-integration.yaml"
75
85
  - ".gitignore"
76
86
  - ".rbenv-gemsets"
77
87
  - ".rspec"
@@ -121,14 +131,12 @@ files:
121
131
  - spec/lib/pursuit/term_transform_spec.rb
122
132
  - spec/lib/pursuit_spec.rb
123
133
  - spec/spec_helper.rb
124
- - travis/gemfiles/7.1.gemfile
125
134
  homepage: https://github.com/NialtoServices/pursuit
126
135
  licenses:
127
136
  - Apache-2.0
128
137
  metadata:
129
138
  rubygems_mfa_required: 'true'
130
139
  yard.run: yri
131
- post_install_message:
132
140
  rdoc_options: []
133
141
  require_paths:
134
142
  - lib
@@ -143,8 +151,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
143
151
  - !ruby/object:Gem::Version
144
152
  version: '0'
145
153
  requirements: []
146
- rubygems_version: 3.4.10
147
- signing_key:
154
+ rubygems_version: 3.6.2
148
155
  specification_version: 4
149
156
  summary: Advanced key-based searching for ActiveRecord objects.
150
157
  test_files: []
@@ -1,46 +0,0 @@
1
- name: RubyGem
2
-
3
- on:
4
- workflow_dispatch:
5
- push:
6
-
7
- jobs:
8
- rubocop:
9
- name: RuboCop
10
- runs-on: ubuntu-latest
11
- steps:
12
- - name: Checkout Source Code
13
- uses: actions/checkout@v3
14
- - name: Setup Ruby
15
- uses: ruby/setup-ruby@v1
16
- - name: Setup RubyGems
17
- run: |
18
- bundle install
19
- - name: RuboCop
20
- run: |
21
- bundle exec rubocop --parallel --format progress --format html --out rubocop-report.html
22
- - name: Upload Report
23
- uses: actions/upload-artifact@v3
24
- with:
25
- name: RuboCop Report
26
- path: rubocop-report.html
27
-
28
- rspec:
29
- name: RSpec
30
- runs-on: ubuntu-latest
31
- steps:
32
- - name: Checkout Source Code
33
- uses: actions/checkout@v3
34
- - name: Setup Ruby
35
- uses: ruby/setup-ruby@v1
36
- - name: Setup RubyGems
37
- run: |
38
- bundle install
39
- - name: RSpec
40
- run: |
41
- bundle exec rspec --format progress --format html --out rspec-report.html
42
- - name: Upload Report
43
- uses: actions/upload-artifact@v3
44
- with:
45
- name: RSpec Report
46
- path: rspec-report.html
@@ -1,8 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- source 'https://rubygems.org'
4
-
5
- gemspec path: '../../'
6
-
7
- gem 'activerecord', '~> 7.1.0'
8
- gem 'activesupport', '~> 7.1.0'