enumerate_it 4.0.0 → 4.2.0

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: 57b418cb6e9cf24f8b935c898004ddc62ba373f9c03b4c3df600339a26e7d16e
4
- data.tar.gz: 4625233483bf656e0e75d9d116dff98fb1801f31e348c54e643bd501081da1fd
3
+ metadata.gz: 9bfa9b8d0d7c06bf9c2d19dd7a41824a27a5e8e4ed6c8ba5cdc8a32b4ea1fb79
4
+ data.tar.gz: 1b34d10ee5220f0e123cfb3479bca25e319f78fd6d98a39edb35d73385d3d11d
5
5
  SHA512:
6
- metadata.gz: af19adb823775b00e138df51023b4a724219e9c12958218fb63cbea843fecb0ce8a97657a3ec6aceca2d2db4818b9415c6a94f5105bb31dbca415b542acf3158
7
- data.tar.gz: bbaab168f1ba3c5199eced5b46244dae3499b459a8941d9719a3f264cc5a08d46c2d5356aae9381a686c46bce0cc43df6a4230ae2e4fe8266f4bb5a8335ae708
6
+ metadata.gz: c2021954323a6cb5b9c16534998bf240036dad2ba1af4c78936af9048f6ee1dd105d99340300684e72a6182e9fe75134fe2df88a3da1fddf86564d078cfcb3f3
7
+ data.tar.gz: 339d92259a7fa059dd10e5a4531a76005524e0ce34fe921c6f11a4de0108efa3f94aa827ef30ebb4b1c75fbdbc07b7735195f0aae81fd7c569817ee85ddd937c
@@ -13,11 +13,33 @@ jobs:
13
13
  - 3.1
14
14
  - 3.2
15
15
  - 3.3
16
+ - 3.4
17
+ - 4.0
16
18
  gemfile:
17
19
  - gemfiles/rails_6.0.gemfile
18
20
  - gemfiles/rails_6.1.gemfile
19
21
  - gemfiles/rails_7.0.gemfile
20
22
  - gemfiles/rails_7.1.gemfile
23
+ - gemfiles/rails_7.2.gemfile
24
+ - gemfiles/rails_8.0.gemfile
25
+ - gemfiles/rails_8.1.gemfile
26
+ exclude:
27
+ # Rails 8+ requires Ruby 3.2 or newer
28
+ - ruby: 3.0
29
+ gemfile: gemfiles/rails_8.0.gemfile
30
+ - ruby: 3.0
31
+ gemfile: gemfiles/rails_8.1.gemfile
32
+ - ruby: 3.1
33
+ gemfile: gemfiles/rails_8.0.gemfile
34
+ - ruby: 3.1
35
+ gemfile: gemfiles/rails_8.1.gemfile
36
+ # Rails 6.x and 7.0 are EOL and don't support Ruby 4+
37
+ - ruby: 4.0
38
+ gemfile: gemfiles/rails_6.0.gemfile
39
+ - ruby: 4.0
40
+ gemfile: gemfiles/rails_6.1.gemfile
41
+ - ruby: 4.0
42
+ gemfile: gemfiles/rails_7.0.gemfile
21
43
 
22
44
  env:
23
45
  BUNDLE_GEMFILE: "${{ matrix.gemfile }}"
@@ -26,7 +48,7 @@ jobs:
26
48
 
27
49
  steps:
28
50
  - name: Checkout
29
- uses: actions/checkout@v4
51
+ uses: actions/checkout@v6
30
52
  - name: Set up Ruby
31
53
  uses: ruby/setup-ruby@v1
32
54
  with:
@@ -34,7 +56,7 @@ jobs:
34
56
  bundler-cache: true
35
57
 
36
58
  - name: Rubocop
37
- if: ${{ matrix.ruby == '3.3' }}
59
+ if: ${{ matrix.ruby == '4.0' }}
38
60
  run: "bundle exec rubocop"
39
61
 
40
62
  - name: Tests
data/.prettierrc.json ADDED
@@ -0,0 +1,4 @@
1
+ {
2
+ "printWidth": 80,
3
+ "proseWrap": "always"
4
+ }
data/.rubocop.yml CHANGED
@@ -1,4 +1,4 @@
1
- require:
1
+ plugins:
2
2
  - rubocop-rspec
3
3
  - rubocop-rake
4
4
 
@@ -8,7 +8,7 @@ inherit_mode:
8
8
 
9
9
  AllCops:
10
10
  NewCops: enable
11
- TargetRubyVersion: 3.0
11
+ TargetRubyVersion: 3.0 # Keep in sync with `required_ruby_version` in the gemspec.
12
12
 
13
13
  Exclude:
14
14
  - 'lib/generators/enumerate_it/enum/templates/**/*'
@@ -67,7 +67,11 @@ Style/HashTransformKeys:
67
67
  Style/HashTransformValues:
68
68
  Enabled: true
69
69
 
70
- Naming/PredicateName:
70
+ Style/OneClassPerFile:
71
+ Exclude:
72
+ - 'spec/support//**/*'
73
+
74
+ Naming/PredicatePrefix:
71
75
  Exclude:
72
76
  - 'lib/enumerate_it/class_methods.rb'
73
77
 
data/Appraisals CHANGED
@@ -2,9 +2,9 @@ require 'net/http'
2
2
  require 'json'
3
3
 
4
4
  rails_versions = JSON.parse(Net::HTTP.get(URI('https://rubygems.org/api/v1/versions/rails.json')))
5
- .group_by { |version| version['number'] }.keys.grep_v(/rc|racecar|beta|pre/)
5
+ .group_by { |version| version['number'] }.keys.grep_v(/rc|racecar|alpha|beta|pre/)
6
6
 
7
- %w[6.0 6.1 7.0 7.1].each do |rails_version|
7
+ %w[6.0 6.1 7.0 7.1 7.2 8.0 8.1].each do |rails_version|
8
8
  appraise "rails_#{rails_version}" do
9
9
  current_version = rails_versions
10
10
  .select { |key| key.match(/\A#{rails_version}/) }
@@ -13,6 +13,18 @@ rails_versions = JSON.parse(Net::HTTP.get(URI('https://rubygems.org/api/v1/versi
13
13
  gem 'activesupport', "~> #{current_version}"
14
14
  gem 'activerecord', "~> #{current_version}"
15
15
 
16
- gem 'sqlite3', '< 2' # v2.x isn't yet working. See: https://github.com/sparklemotion/sqlite3-ruby/issues/529
16
+ if Gem::Version.new(rails_version) > Gem::Version.new(7.0)
17
+ gem 'sqlite3'
18
+ else
19
+ gem 'sqlite3', '< 2' # Rails 6.x and 7.0 require sqlite3 v1.x
20
+ end
21
+
22
+ # The following is likely necessary due to this issue (or something related):
23
+ # https://stackoverflow.com/a/79385484/1445184
24
+ if Gem::Version.new(rails_version) < Gem::Version.new(7.1)
25
+ gem 'base64'
26
+ gem 'bigdecimal'
27
+ gem 'mutex_m'
28
+ end
17
29
  end
18
30
  end
data/Gemfile.lock CHANGED
@@ -1,107 +1,116 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- enumerate_it (4.0.0)
4
+ enumerate_it (4.2.0)
5
5
  activesupport (>= 6.0.0)
6
6
 
7
7
  GEM
8
8
  remote: https://rubygems.org/
9
9
  specs:
10
- activemodel (7.1.3.2)
11
- activesupport (= 7.1.3.2)
12
- activerecord (7.1.3.2)
13
- activemodel (= 7.1.3.2)
14
- activesupport (= 7.1.3.2)
10
+ activemodel (8.1.3)
11
+ activesupport (= 8.1.3)
12
+ activerecord (8.1.3)
13
+ activemodel (= 8.1.3)
14
+ activesupport (= 8.1.3)
15
15
  timeout (>= 0.4.0)
16
- activesupport (7.1.3.2)
16
+ activesupport (8.1.3)
17
17
  base64
18
18
  bigdecimal
19
- concurrent-ruby (~> 1.0, >= 1.0.2)
19
+ concurrent-ruby (~> 1.0, >= 1.3.1)
20
20
  connection_pool (>= 2.2.5)
21
21
  drb
22
22
  i18n (>= 1.6, < 2)
23
+ json
24
+ logger (>= 1.4.2)
23
25
  minitest (>= 5.1)
24
- mutex_m
25
- tzinfo (~> 2.0)
26
+ securerandom (>= 0.3)
27
+ tzinfo (~> 2.0, >= 2.0.5)
28
+ uri (>= 0.13.1)
26
29
  appraisal (2.5.0)
27
30
  bundler
28
31
  rake
29
32
  thor (>= 0.14.0)
30
- ast (2.4.2)
31
- base64 (0.2.0)
32
- bigdecimal (3.1.7)
33
+ ast (2.4.3)
34
+ base64 (0.3.0)
35
+ bigdecimal (4.1.2)
33
36
  coderay (1.1.3)
34
- concurrent-ruby (1.2.3)
35
- connection_pool (2.4.1)
36
- diff-lcs (1.5.1)
37
- drb (2.2.1)
38
- i18n (1.14.4)
37
+ concurrent-ruby (1.3.6)
38
+ connection_pool (3.0.2)
39
+ diff-lcs (1.6.2)
40
+ drb (2.2.3)
41
+ i18n (1.14.8)
39
42
  concurrent-ruby (~> 1.0)
40
- json (2.7.2)
41
- language_server-protocol (3.17.0.3)
43
+ io-console (0.8.2)
44
+ json (2.19.8)
45
+ language_server-protocol (3.17.0.5)
46
+ lint_roller (1.1.0)
47
+ logger (1.7.0)
42
48
  method_source (1.1.0)
43
- mini_portile2 (2.8.6)
44
- minitest (5.22.3)
45
- mutex_m (0.2.0)
46
- parallel (1.24.0)
47
- parser (3.3.1.0)
49
+ mini_portile2 (2.8.9)
50
+ minitest (6.0.6)
51
+ drb (~> 2.0)
52
+ prism (~> 1.5)
53
+ parallel (2.1.0)
54
+ parser (3.3.11.1)
48
55
  ast (~> 2.4.1)
49
56
  racc
50
- pry (0.14.2)
57
+ prism (1.9.0)
58
+ pry (0.16.0)
51
59
  coderay (~> 1.1)
52
60
  method_source (~> 1.0)
53
- racc (1.7.3)
61
+ reline (>= 0.6.0)
62
+ racc (1.8.1)
54
63
  rainbow (3.1.1)
55
- rake (13.2.1)
56
- regexp_parser (2.9.0)
57
- rexml (3.2.6)
58
- rspec (3.13.0)
64
+ rake (13.4.2)
65
+ regexp_parser (2.12.0)
66
+ reline (0.6.3)
67
+ io-console (~> 0.5)
68
+ rspec (3.13.2)
59
69
  rspec-core (~> 3.13.0)
60
70
  rspec-expectations (~> 3.13.0)
61
71
  rspec-mocks (~> 3.13.0)
62
- rspec-core (3.13.0)
72
+ rspec-core (3.13.6)
63
73
  rspec-support (~> 3.13.0)
64
- rspec-expectations (3.13.0)
74
+ rspec-expectations (3.13.5)
65
75
  diff-lcs (>= 1.2.0, < 2.0)
66
76
  rspec-support (~> 3.13.0)
67
- rspec-mocks (3.13.0)
77
+ rspec-mocks (3.13.8)
68
78
  diff-lcs (>= 1.2.0, < 2.0)
69
79
  rspec-support (~> 3.13.0)
70
- rspec-support (3.13.1)
71
- rubocop (1.63.3)
80
+ rspec-support (3.13.7)
81
+ rubocop (1.87.0)
72
82
  json (~> 2.3)
73
- language_server-protocol (>= 3.17.0)
74
- parallel (~> 1.10)
83
+ language_server-protocol (~> 3.17.0.2)
84
+ lint_roller (~> 1.1.0)
85
+ parallel (>= 1.10)
75
86
  parser (>= 3.3.0.2)
76
87
  rainbow (>= 2.2.2, < 4.0)
77
- regexp_parser (>= 1.8, < 3.0)
78
- rexml (>= 3.2.5, < 4.0)
79
- rubocop-ast (>= 1.31.1, < 2.0)
88
+ regexp_parser (>= 2.9.3, < 3.0)
89
+ rubocop-ast (>= 1.49.0, < 2.0)
80
90
  ruby-progressbar (~> 1.7)
81
- unicode-display_width (>= 2.4.0, < 3.0)
82
- rubocop-ast (1.31.2)
83
- parser (>= 3.3.0.4)
84
- rubocop-capybara (2.20.0)
85
- rubocop (~> 1.41)
86
- rubocop-factory_bot (2.25.1)
87
- rubocop (~> 1.41)
88
- rubocop-rake (0.6.0)
89
- rubocop (~> 1.0)
90
- rubocop-rspec (2.29.1)
91
- rubocop (~> 1.40)
92
- rubocop-capybara (~> 2.17)
93
- rubocop-factory_bot (~> 2.22)
94
- rubocop-rspec_rails (~> 2.28)
95
- rubocop-rspec_rails (2.28.3)
96
- rubocop (~> 1.40)
91
+ unicode-display_width (>= 2.4.0, < 4.0)
92
+ rubocop-ast (1.49.1)
93
+ parser (>= 3.3.7.2)
94
+ prism (~> 1.7)
95
+ rubocop-rake (0.7.1)
96
+ lint_roller (~> 1.1)
97
+ rubocop (>= 1.72.1)
98
+ rubocop-rspec (3.10.2)
99
+ lint_roller (~> 1.1)
100
+ regexp_parser (>= 2.0)
101
+ rubocop (~> 1.86, >= 1.86.2)
97
102
  ruby-progressbar (1.13.0)
98
- sqlite3 (1.7.3)
103
+ securerandom (0.4.1)
104
+ sqlite3 (2.9.5)
99
105
  mini_portile2 (~> 2.8.0)
100
- thor (1.3.1)
101
- timeout (0.4.1)
106
+ thor (1.5.0)
107
+ timeout (0.6.1)
102
108
  tzinfo (2.0.6)
103
109
  concurrent-ruby (~> 1.0)
104
- unicode-display_width (2.5.0)
110
+ unicode-display_width (3.2.0)
111
+ unicode-emoji (~> 4.1)
112
+ unicode-emoji (4.2.0)
113
+ uri (1.1.1)
105
114
 
106
115
  PLATFORMS
107
116
  ruby
@@ -117,7 +126,7 @@ DEPENDENCIES
117
126
  rubocop
118
127
  rubocop-rake
119
128
  rubocop-rspec
120
- sqlite3 (< 2)
129
+ sqlite3
121
130
 
122
131
  BUNDLED WITH
123
- 2.5.9
132
+ 4.0.3
data/LICENSE CHANGED
@@ -2,7 +2,7 @@ LICENSE
2
2
 
3
3
  The MIT License
4
4
 
5
- Copyright (c) 2010-2020 Cássio Marques and Lucas Caton
5
+ Copyright (c) 2010-2025 Cássio Marques and Lucas Caton
6
6
 
7
7
  Permission is hereby granted, free of charge, to any person obtaining
8
8
  a copy of this software and associated documentation files (the