loga 2.8.0 → 2.9.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.
Files changed (80) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/build-and-test.yml +72 -0
  3. data/.github/workflows/publish-gem.yml +28 -0
  4. data/.rubocop.yml +10 -11
  5. data/.rubocop_todo.yml +265 -0
  6. data/Appraisals +83 -22
  7. data/CHANGELOG.md +14 -0
  8. data/Gemfile +24 -0
  9. data/README.md +1 -1
  10. data/gemfiles/rails52.gemfile +23 -1
  11. data/gemfiles/rails60.gemfile +24 -0
  12. data/gemfiles/rails61.gemfile +24 -0
  13. data/gemfiles/rails70.gemfile +27 -0
  14. data/gemfiles/rails71.gemfile +38 -0
  15. data/gemfiles/rails72.gemfile +38 -0
  16. data/gemfiles/rails80.gemfile +38 -0
  17. data/gemfiles/sidekiq51.gemfile +25 -0
  18. data/gemfiles/sidekiq60.gemfile +25 -0
  19. data/gemfiles/sidekiq61.gemfile +25 -0
  20. data/gemfiles/sidekiq62.gemfile +25 -0
  21. data/gemfiles/sidekiq63.gemfile +25 -0
  22. data/gemfiles/sidekiq64.gemfile +25 -0
  23. data/gemfiles/sidekiq65.gemfile +25 -0
  24. data/gemfiles/sidekiq70.gemfile +25 -0
  25. data/gemfiles/sidekiq71.gemfile +25 -0
  26. data/gemfiles/sidekiq72.gemfile +36 -0
  27. data/gemfiles/sidekiq73.gemfile +36 -0
  28. data/gemfiles/sidekiq80.gemfile +36 -0
  29. data/gemfiles/sinatra14.gemfile +25 -0
  30. data/gemfiles/sinatra2.gemfile +36 -0
  31. data/gemfiles/sinatra3.gemfile +36 -0
  32. data/gemfiles/sinatra4.gemfile +36 -0
  33. data/gemfiles/unit.gemfile +24 -0
  34. data/lib/loga/parameter_filter.rb +0 -2
  35. data/lib/loga/rack/request.rb +2 -2
  36. data/lib/loga/rack/request_id.rb +2 -2
  37. data/lib/loga/railtie.rb +3 -3
  38. data/lib/loga/sidekiq.rb +11 -0
  39. data/lib/loga/sidekiq8/job_logger.rb +13 -0
  40. data/lib/loga/tagged_logging.rb +2 -2
  41. data/lib/loga/version.rb +1 -1
  42. data/loga.gemspec +0 -15
  43. data/spec/fixtures/{rails50.rb → rails71.rb} +1 -1
  44. data/spec/fixtures/{rails42.rb → rails72.rb} +3 -3
  45. data/spec/fixtures/rails80.rb +80 -0
  46. data/spec/integration/rails/action_mailer_spec.rb +2 -0
  47. data/spec/integration/rails/railtie_spec.rb +13 -3
  48. data/spec/integration/rails/request_spec.rb +4 -2
  49. data/spec/integration/sidekiq5_spec.rb +15 -13
  50. data/spec/integration/sidekiq60_spec.rb +3 -3
  51. data/spec/integration/sidekiq61_spec.rb +6 -4
  52. data/spec/integration/sidekiq65_spec.rb +1 -1
  53. data/spec/integration/sidekiq8_spec.rb +193 -0
  54. data/spec/integration/sinatra_spec.rb +18 -8
  55. data/spec/loga/sidekiq5/job_logger_spec.rb +2 -0
  56. data/spec/loga/sidekiq6/job_logger_spec.rb +3 -1
  57. data/spec/loga/sidekiq_latest/job_logger_spec.rb +138 -0
  58. data/spec/loga/sidekiq_spec.rb +17 -3
  59. data/spec/spec_helper.rb +14 -5
  60. data/spec/support/gethostname_shared.rb +3 -1
  61. data/spec/support/helpers.rb +10 -0
  62. data/spec/support/request_spec.rb +90 -81
  63. data/spec/support/timecop_shared.rb +3 -1
  64. data/spec/unit/loga/configuration_spec.rb +11 -9
  65. data/spec/unit/loga/event_spec.rb +4 -2
  66. data/spec/unit/loga/formatters/gelf_formatter_spec.rb +22 -14
  67. data/spec/unit/loga/formatters/simple_formatter_spec.rb +27 -10
  68. data/spec/unit/loga/log_subscribers/action_mailer_spec.rb +6 -4
  69. data/spec/unit/loga/parameter_filter_spec.rb +2 -0
  70. data/spec/unit/loga/rack/logger_spec.rb +18 -16
  71. data/spec/unit/loga/rack/request_spec.rb +2 -0
  72. data/spec/unit/loga/service_version_strategies_spec.rb +2 -0
  73. data/spec/unit/loga/utilities_spec.rb +2 -0
  74. data/spec/unit/loga_spec.rb +3 -1
  75. metadata +26 -212
  76. data/.circleci/config.yml +0 -112
  77. data/gemfiles/rails42.gemfile +0 -11
  78. data/gemfiles/rails50.gemfile +0 -11
  79. data/gemfiles/sidekiq7.gemfile +0 -11
  80. data/spec/loga/sidekiq7/job_logger_spec.rb +0 -125
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: dc1346e981871beb7504038280a989df0b08f8758de0aafbc2ad6353bf15b37b
4
- data.tar.gz: 7cca9a16fd0d79616445d8b497d28064b4e62c5b9ec075594787e069020d031c
3
+ metadata.gz: 7e11fa37ae99b22da0660ae302429dd471c8100da3dddfe389ca6967f8e2ad00
4
+ data.tar.gz: bdb01a105b34001856b13142277ed132437e815a20c944951f5739d60a05634b
5
5
  SHA512:
6
- metadata.gz: 9b644025cbf6f8ff20b5980d8c261146a3832b2ea0e18eec3efabd1c8d7fbb75b540591fe5eb480a3475c8e646a85fd274a2352c9ed95baebf84ec01c29c8a8b
7
- data.tar.gz: 5b5b9ae15e5383bb6b8b48e2a990b340134c2e77391fef261a275ae47e41b95538a9ba95553820d335634bdd8cbd1530f839bae8dade08b8bfd57af18dfd15aa
6
+ metadata.gz: 30b3faaa2bc499958f2d229a12e91e730b5917865546f0b4e2ac1c326d2ff0e854ee2bceef550ea20482fba418cb07888f9cee81a2518a7d56b73d5c43cb094d
7
+ data.tar.gz: dd5b678b54742064b8fe5e10c3ca03030db25a3daaf5d8699c6472211e7ee7d979fb6cf064be28f1be9c334e38a5142104b779bc80dc536fa800bf8136b8443e
@@ -0,0 +1,72 @@
1
+ name: Build & Test
2
+ run-name: Build & Test - ${{ github.ref_name }}
3
+
4
+ on:
5
+ push:
6
+ branches: [ master ]
7
+ pull_request:
8
+
9
+ jobs:
10
+ version-check:
11
+ runs-on: ubuntu-latest
12
+ if: "!contains(github.ref, 'master')"
13
+ steps:
14
+ - name: Checkout commit
15
+ uses: actions/checkout@v4
16
+ with:
17
+ fetch-depth: 0
18
+
19
+ - name: Gem versioned correctly
20
+ shell: sh
21
+ run: |
22
+ CHANGED=$(git diff origin/master HEAD --name-only | grep 'lib/loga') || exit 0
23
+ [[ -z "$CHANGED" ]] || (echo "$CHANGED" | grep 'version.rb') || exit 1
24
+
25
+ rubocop:
26
+ runs-on: ubuntu-latest
27
+ steps:
28
+ - name: Check out repository code
29
+ uses: actions/checkout@v4
30
+
31
+ - name: Set up Ruby
32
+ uses: ruby/setup-ruby@v1
33
+ with:
34
+ ruby-version: '3.4'
35
+ bundler-cache: true
36
+
37
+ - name: Run RuboCop
38
+ run: bundle exec rubocop
39
+
40
+ build-and-test:
41
+ runs-on: ubuntu-latest
42
+ services:
43
+ redis:
44
+ image: redis:7
45
+ options: >-
46
+ --health-cmd "redis-cli ping"
47
+ --health-interval 10s
48
+ --health-timeout 5s
49
+ --health-retries 5
50
+ ports:
51
+ - 6379:6379
52
+ strategy:
53
+ matrix:
54
+ ruby-version: ['2.7', '3.0', '3.1', '3.2', '3.3', '3.4', 'head']
55
+ steps:
56
+ - name: Check out repository code
57
+ uses: actions/checkout@v4
58
+
59
+ - name: Set up Ruby ${{ matrix.ruby-version }}
60
+ uses: ruby/setup-ruby@v1
61
+ with:
62
+ ruby-version: ${{ matrix.ruby-version }}
63
+ bundler-cache: true
64
+
65
+ - name: Install appraisal gems
66
+ run: bundle exec appraisal install
67
+
68
+ - name: Test with RACK_ENV=development
69
+ run: RACK_ENV=development bundle exec appraisal rspec
70
+
71
+ - name: Test with RACK_ENV=production
72
+ run: RACK_ENV=production bundle exec appraisal rspec
@@ -0,0 +1,28 @@
1
+ name: Deploy to RubyGems
2
+ run-name: ${{ github.actor }} is publishing a new version
3
+
4
+ on:
5
+ release:
6
+ types: [published]
7
+
8
+ jobs:
9
+ publish-gem:
10
+ runs-on: ubuntu-latest
11
+ steps:
12
+ - name: Check out repository code
13
+ uses: actions/checkout@v4
14
+
15
+ - name: Set up Ruby
16
+ uses: ruby/setup-ruby@v1
17
+ with:
18
+ ruby-version: '3.4'
19
+ bundler-cache: true
20
+
21
+ - name: Build gem
22
+ run: gem build loga.gemspec
23
+
24
+ - name: Publish gem
25
+ env:
26
+ GEM_HOST_API_KEY: ${{ secrets.RUBYGEMS_API_KEY }}
27
+ run: |
28
+ gem push loga-*.gem
data/.rubocop.yml CHANGED
@@ -1,4 +1,8 @@
1
+ inherit_from: .rubocop_todo.yml
2
+
1
3
  AllCops:
4
+ TargetRubyVersion: 2.7
5
+ NewCops: enable
2
6
  Exclude:
3
7
  - '*.gemspec'
4
8
  - 'gemfiles/*'
@@ -6,9 +10,9 @@ AllCops:
6
10
  - 'vendor/bundle/**/*'
7
11
  - 'gemfiles/vendor/bundle/**/*'
8
12
 
9
- require: rubocop-rspec
13
+ plugins: rubocop-rspec
10
14
 
11
- Documentation:
15
+ Style/Documentation:
12
16
  Enabled: false
13
17
 
14
18
  Layout/ExtraSpacing:
@@ -17,6 +21,10 @@ Layout/ExtraSpacing:
17
21
  Layout/SpaceAroundOperators:
18
22
  Enabled: false
19
23
 
24
+ Layout/LineLength:
25
+ Enabled: true
26
+ Max: 90
27
+
20
28
  Metrics/AbcSize:
21
29
  Enabled: false
22
30
 
@@ -24,10 +32,6 @@ Metrics/BlockLength:
24
32
  Exclude:
25
33
  - spec/**/*_spec.rb
26
34
 
27
- Metrics/LineLength:
28
- Enabled: true
29
- Max: 90
30
-
31
35
  Metrics/MethodLength:
32
36
  Enabled: true
33
37
  Max: 15
@@ -38,11 +42,6 @@ RSpec/DescribeClass:
38
42
  RSpec/ExampleLength:
39
43
  Enabled: false
40
44
 
41
- RSpec/FilePath:
42
- Exclude:
43
- - spec/integration/rails/action_mailer_spec.rb
44
- - spec/integration/rails/railtie_spec.rb
45
-
46
45
  RSpec/MultipleExpectations:
47
46
  Enabled: false
48
47
 
data/.rubocop_todo.yml ADDED
@@ -0,0 +1,265 @@
1
+ # This configuration was generated by
2
+ # `rubocop --auto-gen-config --exclude-limit 10000000`
3
+ # on 2025-08-29 07:24:21 UTC using RuboCop version 1.80.1.
4
+ # The point is for the user to remove these configuration records
5
+ # one by one as the offenses are removed from the code base.
6
+ # Note that changes in the inspected code, or installation of new
7
+ # versions of RuboCop, may require this file to be generated again.
8
+
9
+ # Offense count: 2
10
+ # This cop supports safe autocorrection (--autocorrect).
11
+ # Configuration parameters: TreatCommentsAsGroupSeparators, ConsiderPunctuation.
12
+ Bundler/OrderedGems:
13
+ Exclude:
14
+ - 'Gemfile'
15
+
16
+ # Offense count: 1
17
+ # This cop supports safe autocorrection (--autocorrect).
18
+ Layout/EmptyLineAfterGuardClause:
19
+ Exclude:
20
+ - 'lib/loga/formatters/gelf_formatter.rb'
21
+
22
+ # Offense count: 34
23
+ # This cop supports safe autocorrection (--autocorrect).
24
+ # Configuration parameters: AllowMultipleStyles, EnforcedHashRocketStyle, EnforcedColonStyle, EnforcedLastArgumentHashStyle.
25
+ # SupportedHashRocketStyles: key, separator, table
26
+ # SupportedColonStyles: key, separator, table
27
+ # SupportedLastArgumentHashStyles: always_inspect, always_ignore, ignore_implicit, ignore_explicit
28
+ Layout/HashAlignment:
29
+ Exclude:
30
+ - 'lib/loga/configuration.rb'
31
+ - 'lib/loga/formatters/gelf_formatter.rb'
32
+ - 'lib/loga/rack/logger.rb'
33
+ - 'lib/loga/railtie.rb'
34
+ - 'lib/loga/sidekiq6/job_logger.rb'
35
+
36
+ # Offense count: 1
37
+ # This cop supports safe autocorrection (--autocorrect).
38
+ # Configuration parameters: AllowDoxygenCommentStyle, AllowGemfileRubyComment, AllowRBSInlineAnnotation, AllowSteepAnnotation.
39
+ Layout/LeadingCommentSpace:
40
+ Exclude:
41
+ - 'lib/loga/railtie.rb'
42
+
43
+ # Offense count: 1
44
+ # This cop supports safe autocorrection (--autocorrect).
45
+ # Configuration parameters: Max, AllowHeredoc, AllowURI, AllowQualifiedName, URISchemes, IgnoreCopDirectives, AllowedPatterns, SplitStrings.
46
+ # URISchemes: http, https
47
+ Layout/LineLength:
48
+ Exclude:
49
+ - 'spec/loga/sidekiq_latest/job_logger_spec.rb'
50
+
51
+ # Offense count: 2
52
+ Lint/CopDirectiveSyntax:
53
+ Exclude:
54
+ - 'spec/unit/loga/rack/logger_spec.rb'
55
+
56
+ # Offense count: 2
57
+ # Configuration parameters: AllowComments, AllowEmptyLambdas.
58
+ Lint/EmptyBlock:
59
+ Exclude:
60
+ - 'Appraisals'
61
+ - 'spec/integration/sinatra_spec.rb'
62
+
63
+ # Offense count: 1
64
+ # Configuration parameters: AllowedParentClasses.
65
+ Lint/MissingSuper:
66
+ Exclude:
67
+ - 'lib/loga/formatters/gelf_formatter.rb'
68
+
69
+ # Offense count: 1
70
+ # This cop supports safe autocorrection (--autocorrect).
71
+ Lint/RedundantCopDisableDirective:
72
+ Exclude:
73
+ - 'lib/loga/railtie.rb'
74
+
75
+ # Offense count: 2
76
+ # This cop supports safe autocorrection (--autocorrect).
77
+ Lint/SendWithMixinArgument:
78
+ Exclude:
79
+ - 'lib/loga/railtie.rb'
80
+
81
+ # Offense count: 2
82
+ Lint/UselessConstantScoping:
83
+ Exclude:
84
+ - 'lib/loga/rack/request.rb'
85
+
86
+ # Offense count: 2
87
+ # This cop supports safe autocorrection (--autocorrect).
88
+ # Configuration parameters: CheckForMethodsWithNoSideEffects.
89
+ Lint/Void:
90
+ Exclude:
91
+ - 'lib/loga/railtie.rb'
92
+
93
+ # Offense count: 1
94
+ # Configuration parameters: AllowedMethods, AllowedPatterns.
95
+ Metrics/CyclomaticComplexity:
96
+ Max: 8
97
+
98
+ # Offense count: 1
99
+ # Configuration parameters: AllowedMethods, AllowedPatterns.
100
+ Metrics/PerceivedComplexity:
101
+ Max: 9
102
+
103
+ # Offense count: 1
104
+ # This cop supports safe autocorrection (--autocorrect).
105
+ Migration/DepartmentName:
106
+ Exclude:
107
+ - 'lib/loga/railtie.rb'
108
+
109
+ # Offense count: 1
110
+ # This cop supports safe autocorrection (--autocorrect).
111
+ # Configuration parameters: PreferredName.
112
+ Naming/RescuedExceptionsVariableName:
113
+ Exclude:
114
+ - 'lib/loga/sidekiq5/job_logger.rb'
115
+
116
+ # Offense count: 3
117
+ # Configuration parameters: Prefixes, AllowedPatterns.
118
+ # Prefixes: when, with, without
119
+ RSpec/ContextWording:
120
+ Exclude:
121
+ - 'spec/support/gethostname_shared.rb'
122
+ - 'spec/support/timecop_shared.rb'
123
+ - 'spec/unit/loga/configuration_spec.rb'
124
+
125
+ # Offense count: 1
126
+ RSpec/DescribeMethod:
127
+ Exclude:
128
+ - 'spec/loga/sidekiq_latest/job_logger_spec.rb'
129
+
130
+ # Offense count: 22
131
+ # This cop supports safe autocorrection (--autocorrect).
132
+ RSpec/IncludeExamples:
133
+ Exclude:
134
+ - 'spec/integration/rails/request_spec.rb'
135
+ - 'spec/integration/sinatra_spec.rb'
136
+ - 'spec/unit/loga/formatters/gelf_formatter_spec.rb'
137
+ - 'spec/unit/loga/parameter_filter_spec.rb'
138
+ - 'spec/unit/loga/rack/logger_spec.rb'
139
+
140
+ # Offense count: 41
141
+ # Configuration parameters: AllowSubject.
142
+ RSpec/MultipleMemoizedHelpers:
143
+ Max: 12
144
+
145
+ # Offense count: 9
146
+ # Configuration parameters: AllowedPatterns.
147
+ # AllowedPatterns: ^expect_, ^assert_
148
+ RSpec/NoExpectationExample:
149
+ Exclude:
150
+ - 'spec/integration/sidekiq60_spec.rb'
151
+ - 'spec/integration/sidekiq61_spec.rb'
152
+ - 'spec/integration/sidekiq65_spec.rb'
153
+ - 'spec/integration/sidekiq7_spec.rb'
154
+ - 'spec/integration/sidekiq8_spec.rb'
155
+
156
+ # Offense count: 2
157
+ # Configuration parameters: CustomTransform, IgnoreMethods, IgnoreMetadata.
158
+ RSpec/SpecFilePathFormat:
159
+ Exclude:
160
+ - '**/spec/routing/**/*'
161
+ - 'spec/integration/rails/action_mailer_spec.rb'
162
+ - 'spec/integration/rails/railtie_spec.rb'
163
+
164
+ # Offense count: 1
165
+ RSpec/SubjectDeclaration:
166
+ Exclude:
167
+ - 'spec/unit/loga/event_spec.rb'
168
+
169
+ # Offense count: 1
170
+ # This cop supports unsafe autocorrection (--autocorrect-all).
171
+ # Configuration parameters: AllowedReceivers.
172
+ Style/CollectionCompact:
173
+ Exclude:
174
+ - 'lib/loga/configuration.rb'
175
+
176
+ # Offense count: 1
177
+ # This cop supports safe autocorrection (--autocorrect).
178
+ # Configuration parameters: Keywords, RequireColon.
179
+ # Keywords: TODO, FIXME, OPTIMIZE, HACK, REVIEW, NOTE
180
+ Style/CommentAnnotation:
181
+ Exclude:
182
+ - 'lib/loga/configuration.rb'
183
+
184
+ # Offense count: 2
185
+ # This cop supports unsafe autocorrection (--autocorrect-all).
186
+ Style/FileNull:
187
+ Exclude:
188
+ - 'lib/loga/ext/rails/rack/logger.rb'
189
+ - 'spec/unit/loga/rack/logger_spec.rb'
190
+
191
+ # Offense count: 25
192
+ # This cop supports unsafe autocorrection (--autocorrect-all).
193
+ # Configuration parameters: EnforcedStyle.
194
+ # SupportedStyles: always, always_true, never
195
+ Style/FrozenStringLiteralComment:
196
+ Exclude:
197
+ - '**/*.arb'
198
+ - 'Appraisals'
199
+ - 'Gemfile'
200
+ - 'Guardfile'
201
+ - 'Rakefile'
202
+ - 'lib/loga.rb'
203
+ - 'lib/loga/configuration.rb'
204
+ - 'lib/loga/event.rb'
205
+ - 'lib/loga/ext/core/tempfile.rb'
206
+ - 'lib/loga/ext/rails/rack/debug_exceptions.rb'
207
+ - 'lib/loga/ext/rails/rack/logger.rb'
208
+ - 'lib/loga/ext/rails/rack/logger3.rb'
209
+ - 'lib/loga/formatters/gelf_formatter.rb'
210
+ - 'lib/loga/formatters/simple_formatter.rb'
211
+ - 'lib/loga/log_subscribers/action_mailer.rb'
212
+ - 'lib/loga/parameter_filter.rb'
213
+ - 'lib/loga/rack/logger.rb'
214
+ - 'lib/loga/rack/request.rb'
215
+ - 'lib/loga/rack/request_id.rb'
216
+ - 'lib/loga/railtie.rb'
217
+ - 'lib/loga/service_version_strategies.rb'
218
+ - 'lib/loga/sidekiq5/job_logger.rb'
219
+ - 'lib/loga/sidekiq6/job_logger.rb'
220
+ - 'lib/loga/tagged_logging.rb'
221
+ - 'lib/loga/utilities.rb'
222
+ - 'lib/loga/version.rb'
223
+
224
+ # Offense count: 1
225
+ # This cop supports unsafe autocorrection (--autocorrect-all).
226
+ Style/GlobalStdStream:
227
+ Exclude:
228
+ - 'lib/loga/configuration.rb'
229
+
230
+ # Offense count: 1
231
+ # This cop supports unsafe autocorrection (--autocorrect-all).
232
+ Style/HashSlice:
233
+ Exclude:
234
+ - 'lib/loga/sidekiq7/job_logger.rb'
235
+
236
+ # Offense count: 1
237
+ # This cop supports unsafe autocorrection (--autocorrect-all).
238
+ # Configuration parameters: EnforcedStyle.
239
+ # SupportedStyles: literals, strict
240
+ Style/MutableConstant:
241
+ Exclude:
242
+ - 'lib/loga/rack/request.rb'
243
+
244
+ # Offense count: 2
245
+ Style/OpenStructUse:
246
+ Exclude:
247
+ - 'spec/unit/loga/formatters/gelf_formatter_spec.rb'
248
+
249
+ # Offense count: 3
250
+ # This cop supports safe autocorrection (--autocorrect).
251
+ Style/RedundantFileExtensionInRequire:
252
+ Exclude:
253
+ - 'lib/loga/railtie.rb'
254
+
255
+ # Offense count: 1
256
+ # This cop supports safe autocorrection (--autocorrect).
257
+ Style/RedundantFreeze:
258
+ Exclude:
259
+ - 'lib/loga/sidekiq7/job_logger.rb'
260
+
261
+ # Offense count: 1
262
+ # This cop supports safe autocorrection (--autocorrect).
263
+ Style/RedundantRegexpEscape:
264
+ Exclude:
265
+ - 'lib/loga/rack/request_id.rb'
data/Appraisals CHANGED
@@ -1,75 +1,136 @@
1
- if Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.7.0')
2
- appraise 'rails42' do
3
- gem 'rails', '~> 4.2.0'
4
- end
5
-
6
- appraise 'rails50' do
7
- gem 'rails', '~> 5.0.0'
8
- end
9
-
1
+ if Gem::Version.new(RUBY_VERSION) < Gem::Version.new('3.0.0')
10
2
  appraise 'rails52' do
3
+ gem 'concurrent-ruby', '1.3.4'
11
4
  gem 'rails', '~> 5.2.0'
12
5
  end
13
6
  end
14
7
 
15
8
  appraise 'sinatra14' do
9
+ gem 'concurrent-ruby', '1.3.4'
16
10
  gem 'sinatra', '~> 1.4.0'
17
11
  end
18
12
 
19
- if Gem::Version.new(RUBY_VERSION) > Gem::Version.new('2.5.0')
20
- appraise 'rails60' do
21
- gem 'rails', '~> 6.0.0'
13
+ appraise 'sinatra2' do
14
+ gem 'concurrent-ruby', '1.3.4'
15
+ gem 'sinatra', '~> 2.2.4'
16
+ end
17
+
18
+ appraise 'sinatra3' do
19
+ gem 'concurrent-ruby', '1.3.4'
20
+ gem 'sinatra', '~> 3.2.0'
21
+ end
22
+
23
+ appraise 'sinatra4' do
24
+ gem 'concurrent-ruby', '1.3.4'
25
+ gem 'sinatra', '~> 4.0.0'
26
+ end
27
+
28
+ if Gem::Version.new(RUBY_VERSION) < Gem::Version.new('3.5.0')
29
+ appraise 'sidekiq51' do
30
+ gem 'concurrent-ruby', '1.3.4'
31
+ gem 'sidekiq', '~> 5.1.0'
22
32
  end
23
33
 
24
34
  appraise 'sidekiq60' do
35
+ gem 'concurrent-ruby', '1.3.4'
25
36
  gem 'sidekiq', '~> 6.0.0'
26
37
  end
27
38
 
28
39
  appraise 'sidekiq61' do
40
+ gem 'concurrent-ruby', '1.3.4'
29
41
  gem 'sidekiq', '~> 6.1.0'
30
42
  end
31
43
 
32
44
  appraise 'sidekiq62' do
45
+ gem 'concurrent-ruby', '1.3.4'
33
46
  gem 'sidekiq', '~> 6.2.0'
34
47
  end
35
48
 
36
49
  appraise 'sidekiq63' do
50
+ gem 'concurrent-ruby', '1.3.4'
37
51
  gem 'sidekiq', '~> 6.3.0'
38
52
  end
39
53
 
40
54
  appraise 'sidekiq64' do
55
+ gem 'concurrent-ruby', '1.3.4'
41
56
  gem 'sidekiq', '~> 6.4.0'
42
57
  end
43
58
 
44
59
  appraise 'sidekiq65' do
60
+ gem 'concurrent-ruby', '1.3.4'
45
61
  gem 'sidekiq', '~> 6.5.0'
46
62
  end
47
63
  end
48
64
 
49
- if Gem::Version.new(RUBY_VERSION) > Gem::Version.new('2.7.0')
65
+ appraise 'sidekiq70' do
66
+ gem 'concurrent-ruby', '1.3.4'
67
+ gem 'sidekiq', '~> 7.0.0'
68
+ end
69
+
70
+ appraise 'sidekiq71' do
71
+ gem 'concurrent-ruby', '1.3.4'
72
+ gem 'sidekiq', '~> 7.1.0'
73
+ end
74
+
75
+ if Gem::Version.new(RUBY_VERSION) < Gem::Version.new('3.2.0')
76
+ appraise 'rails60' do
77
+ gem 'concurrent-ruby', '1.3.4'
78
+ gem 'rails', '~> 6.0.0'
79
+ end
80
+
50
81
  appraise 'rails61' do
82
+ gem 'concurrent-ruby', '1.3.4'
51
83
  gem 'rails', '~> 6.1.4.4'
52
84
  end
85
+ end
53
86
 
87
+ if Gem::Version.new(RUBY_VERSION) > Gem::Version.new('3.0.0')
54
88
  appraise 'rails70' do
89
+ gem 'concurrent-ruby', '1.3.4'
55
90
  gem 'rails', '~> 7.0.0'
91
+ gem 'base64'
92
+ gem 'mutex_m'
93
+ end
94
+
95
+ appraise 'rails71' do
96
+ gem 'concurrent-ruby', '~> 1.3'
97
+ gem 'rails', '~> 7.1.0'
98
+ gem 'base64'
99
+ gem 'mutex_m'
56
100
  end
101
+ end
57
102
 
58
- appraise 'sidekiq7' do
59
- gem 'sidekiq', '~> 7.0'
103
+ if Gem::Version.new(RUBY_VERSION) > Gem::Version.new('3.1.0')
104
+ appraise 'rails72' do
105
+ gem 'concurrent-ruby', '~> 1.3'
106
+ gem 'rails', '~> 7.2.0'
107
+ gem 'base64'
108
+ gem 'mutex_m'
60
109
  end
110
+ end
61
111
 
62
- appraise 'sidekiq70' do
63
- gem 'sidekiq', '~> 7.0.0'
112
+ if Gem::Version.new(RUBY_VERSION) > Gem::Version.new('3.2.0')
113
+ appraise 'rails80' do
114
+ gem 'concurrent-ruby', '~> 1.3'
115
+ gem 'rails', '~> 8.0.0'
116
+ gem 'base64'
117
+ gem 'mutex_m'
64
118
  end
65
119
 
66
- appraise 'sidekiq71' do
67
- gem 'sidekiq', '~> 7.1.0'
120
+ appraise 'sidekiq72' do
121
+ gem 'concurrent-ruby', '1.3.4'
122
+ gem 'sidekiq', '~> 7.2.0'
68
123
  end
69
- end
70
124
 
71
- appraise 'sidekiq51' do
72
- gem 'sidekiq', '~> 5.1.0'
125
+ appraise 'sidekiq73' do
126
+ gem 'concurrent-ruby', '1.3.4'
127
+ gem 'sidekiq', '~> 7.3.0'
128
+ end
129
+
130
+ appraise 'sidekiq80' do
131
+ gem 'concurrent-ruby', '1.3.4'
132
+ gem 'sidekiq', '~> 8.0.0'
133
+ end
73
134
  end
74
135
 
75
136
  appraise 'unit' do
data/CHANGELOG.md CHANGED
@@ -4,6 +4,20 @@ All notable changes to this project will be documented in this file.
4
4
  The format is based on [Keep a Changelog](http://keepachangelog.com/)
5
5
  and this project adheres to [Semantic Versioning](http://semver.org/).
6
6
 
7
+ ## [2.9.0] - 2025-08-29
8
+ ### Added
9
+ - Test against rails 7.2
10
+ - Support for rails 8.0
11
+ - Support for sidekiq 8
12
+ ### Fixed
13
+ - Fix tests for ruby 3.4 and head
14
+
15
+ ## [2.8.1] - 2023-02-12
16
+ ### Added
17
+ - Improve CI pipeline
18
+ ### Fixed
19
+ - Support for rails 7.1
20
+
7
21
  ## [2.8.0] - 2023-11-14
8
22
  ### Added
9
23
  - Support open-telemetry and add trace_id and span_id to logs events
data/Gemfile CHANGED
@@ -3,6 +3,30 @@ source 'https://rubygems.org'
3
3
  # Specify your gem's dependencies in loga.gemspec
4
4
  gemspec
5
5
 
6
+ group :development do
7
+ gem 'appraisal'
8
+ gem 'benchmark'
9
+ gem 'bigdecimal'
10
+ gem 'bundler', '>= 1.6'
11
+ gem 'byebug'
12
+ gem 'fakeredis'
13
+ gem 'guard-rspec'
14
+ gem 'guard-rubocop'
15
+ gem 'guard'
16
+ gem 'net-imap'
17
+ gem 'net-pop'
18
+ gem 'net-smtp'
19
+ gem 'ostruct'
20
+ gem 'pry'
21
+ gem 'psych'
22
+ gem 'rack-test'
23
+ gem 'rake'
24
+ gem 'rspec', '~> 3.7'
25
+ gem 'rubocop-rspec'
26
+ gem 'rubocop'
27
+ gem 'timecop'
28
+ end
29
+
6
30
  group :test do
7
31
  gem 'simplecov', '~> 0.17.0'
8
32
  end
data/README.md CHANGED
@@ -1,7 +1,7 @@
1
1
  # Loga
2
2
 
3
3
  [![Gem Version](https://badge.fury.io/rb/loga.svg)](https://badge.fury.io/rb/loga)
4
- [![Build Status](https://circleci.com/gh/FundingCircle/loga/tree/master.svg?style=shield&circle-token=9b81c3cf8468a8c3dc760f4c0398cf8914cb27d4)](https://circleci.com/gh/FundingCircle/loga/tree/master)
4
+ ![CI Build status](https://github.com/FundingCircle/loga/actions/workflows/build-and-test.yml/badge.svg?branch=master)
5
5
  [![Code Quality](https://codeclimate.com/repos/5563694f6956805723005d2f/badges/8eecb9144730614fb39e/gpa.svg)](https://codeclimate.com/repos/5563694f6956805723005d2f/feed)
6
6
  [![Test Coverage](https://codeclimate.com/repos/5563694f6956805723005d2f/badges/8eecb9144730614fb39e/coverage.svg)](https://codeclimate.com/repos/5563694f6956805723005d2f/coverage)
7
7
  [![Dependency Status](https://img.shields.io/librariesio/release/rubygems/loga)](https://libraries.io/rubygems/loga)
@@ -4,8 +4,30 @@ source "https://rubygems.org"
4
4
 
5
5
  gem "rails", "~> 5.2.0"
6
6
 
7
+ group :development do
8
+ gem "appraisal"
9
+ gem "bundler", ">= 1.6"
10
+ gem "byebug"
11
+ gem "guard"
12
+ gem "guard-rspec"
13
+ gem "guard-rubocop"
14
+ gem "pry"
15
+ gem "rack-test"
16
+ gem "rake"
17
+ gem "fakeredis"
18
+ gem "rspec", "~> 3.7"
19
+ gem "rubocop"
20
+ gem "rubocop-rspec"
21
+ gem "timecop"
22
+ gem "psych"
23
+ gem "net-smtp"
24
+ gem "net-pop"
25
+ gem "net-imap"
26
+ gem "bigdecimal"
27
+ end
28
+
7
29
  group :test do
8
- gem "simplecov"
30
+ gem "simplecov", "~> 0.17.0"
9
31
  end
10
32
 
11
33
  gemspec path: "../"