flog 4.6.5 → 4.7.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: 57b6b9d470979f410d87a27dd593d85a9c3b526f65bc519d8795a5c0703a7b74
4
- data.tar.gz: 3d0ad63ea53a0e69f3768ef311f981239fe3397d53b7c2514d97cc453f895d88
3
+ metadata.gz: bde1a28d5e030ce021a8f20e9d7e877714e2c91e030b7560c3da7337a8a1e916
4
+ data.tar.gz: 6b4dffe1d2a47f688deb1665a0a31a4c9ef5b901add108aac37489c97cb8f7ee
5
5
  SHA512:
6
- metadata.gz: 5615430b290aa01b6fd46b0154fdec668561ec0f0c044807ea09a0373a78b74984ad68504034fd99b75d307128bf4c21e187810aba5165cc257c582bf19b1e8d
7
- data.tar.gz: 7b862060c2c4489cd4e43e38c5be5cdfbc79afc871feee741ada47d1a45d4bd590b2fcc01c0f3982d39ef305d2b76dc7417fbcd67c66bfcad758e6611523f7bb
6
+ metadata.gz: 56c6a3005252c00d8d61257f35f6eb9bf3d07b232acb316ebf5807dee9144c6bc76f24478ba64a000885677e1ba04d3d0af5ad8677934f90a5f8a965a2227f87
7
+ data.tar.gz: 876c48e4a05cf087fb924f5c10977870facdec0f07c3cabd09eccee03360fca82d19a3b5a708e2a9bd51cd57f109d525b29cc50d22399fac17df3062b0d3c272
checksums.yaml.gz.sig CHANGED
@@ -1 +1 @@
1
- �.�![m�0H�;�/�ᐘFt�s��L� vʀ�����F?c�*���lMWĜ��K�ҘM�%F��>a��[T>;4$-_<�S:�m�/祼���I_I}c����Ȟ��xr��~~oC���rR��i�:�ס� ���}��f�̞d��[�y/bw D)IF>3Dc3<�M+��qԥ�捌�%n��P( ��-y
1
+ -�2�\��*��&�+��)������C���fY�v��B��g `\5; K��M�'O+������ ns�{Je�.�dwq{h����g� �~*������;� ���/�/ɄD�)X#�pz�o��δ(������\��w���$n��zG3>3_\f�$ǘ.y��ymaeȽɰ YGW���:�>.�r�k�yh�M�(���Y:�1�P��6�j��OP�/ ����i� ���~HS0L�
data/History.rdoc CHANGED
@@ -1,3 +1,22 @@
1
+ === 4.7.0 / 2023-07-18
2
+
3
+ * 3 minor enhancements:
4
+
5
+ * Extend flog to process complex numbers. (petergoldstein)
6
+ * Only penalize magic numbers if they're not assigned to a const (excludes 0/-1).
7
+ * Renamed :lit_fixnum to :magic_number.
8
+
9
+ === 4.6.6 / 2022-07-03
10
+
11
+ * 1 minor enhancement:
12
+
13
+ * Added support for to_proc w/ hash(?!?). (t-kinoshita)
14
+
15
+ * 2 bug fixes:
16
+
17
+ * Removed to_proc_normal (eg &:sym/call) as benchmarks are much better.
18
+ * ruby3: Fixed anonymous block pass. (prtngn)
19
+
1
20
  === 4.6.5 / 2022-04-09
2
21
 
3
22
  * 1 minor enhancement:
data/Rakefile CHANGED
@@ -54,9 +54,12 @@ task :debug do
54
54
  exit 0
55
55
  end
56
56
  flog.flog file
57
- else
57
+ elsif ruby
58
58
  flog.flog_ruby ruby, "-"
59
59
  flog.calculate_total_scores
60
+ else
61
+ flog.flog
62
+ flog.calculate_total_scores
60
63
  end
61
64
 
62
65
  flog.report
data/lib/flog.rb CHANGED
@@ -11,7 +11,7 @@ class File
11
11
  end
12
12
 
13
13
  class Flog < MethodBasedSexpProcessor
14
- VERSION = "4.6.5" # :nodoc:
14
+ VERSION = "4.7.0" # :nodoc:
15
15
 
16
16
  ##
17
17
  # Cut off point where the report should stop unless --all given.
@@ -40,21 +40,11 @@ class Flog < MethodBasedSexpProcessor
40
40
  :block_pass => 1,
41
41
  :block_call => 1,
42
42
  :branch => 1,
43
- :lit_fixnum => 0.25,
43
+ :magic_number => 0.25,
44
44
  :sclass => 5,
45
45
  :super => 1,
46
46
  :to_proc_icky! => 10,
47
47
  :to_proc_lasgn => 15,
48
- :to_proc_normal => case RUBY_VERSION
49
- when /^1\.8\.7/ then
50
- 2
51
- when /^1\.9/ then
52
- 1.5
53
- when /^[23]\./ then
54
- 1
55
- else
56
- raise "Unhandled version #{RUBY_VERSION}"
57
- end,
58
48
  :yield => 1,
59
49
  }
60
50
 
@@ -176,9 +166,9 @@ class Flog < MethodBasedSexpProcessor
176
166
 
177
167
  def flog(*files)
178
168
  files.each do |file|
179
- next unless file == '-' or File.readable? file
169
+ next unless file == "-" or File.readable? file
180
170
 
181
- ruby = file == '-' ? $stdin.read : File.binread(file)
171
+ ruby = file == "-" ? $stdin.read : File.binread(file)
182
172
 
183
173
  flog_ruby ruby, file
184
174
  end
@@ -199,7 +189,7 @@ class Flog < MethodBasedSexpProcessor
199
189
  q = option[:quiet]
200
190
  if e.inspect =~ /<\%|%\>/ or ruby =~ /<\%|%\>/ then
201
191
  return if q
202
- warn "#{e.inspect} at #{e.backtrace.first(5).join(', ')}"
192
+ warn "#{e.inspect} at #{e.backtrace.first(5).join(", ")}"
203
193
  warn "\n...stupid lemmings and their bad erb templates... skipping"
204
194
  else
205
195
  warn "ERROR: parsing ruby file #{file}" unless q
@@ -365,18 +355,23 @@ class Flog < MethodBasedSexpProcessor
365
355
 
366
356
  add_to_score :block_pass
367
357
 
358
+ return s() unless arg
359
+
368
360
  case arg.sexp_type
369
361
  when :lvar, :dvar, :ivar, :cvar, :self, :const, :colon2, :nil then # f(&b)
370
362
  # do nothing
371
- when :lit, :call then # f(&:b)
372
- add_to_score :to_proc_normal
363
+ when :lit then # f(&:b)
364
+ # do nothing -- this now costs about the same as a block
365
+ when :call then # f(&x.b)
366
+ # do nothing -- I don't like the indirection, but that's already scored
373
367
  when :lasgn then # f(&l=b)
374
368
  add_to_score :to_proc_lasgn
375
- when :iter, :dsym, :dstr, *BRANCHING then # below
369
+ when :iter, :dsym, :dstr, :hash, *BRANCHING then # below
376
370
  # f(&proc { ... })
377
371
  # f(&"#{...}")
378
372
  # f(&:"#{...}")
379
373
  # f(&if ... then ... end") and all other branching forms
374
+ # f(&{ a: 42 }) WHY?!?
380
375
  add_to_score :to_proc_icky!
381
376
  else
382
377
  raise({:block_pass_even_ickier! => arg}.inspect)
@@ -513,9 +508,9 @@ class Flog < MethodBasedSexpProcessor
513
508
  when 0, -1 then
514
509
  # ignore those because they're used as array indicies instead of
515
510
  # first/last
516
- when Integer, Rational then
517
- add_to_score :lit_fixnum
518
- when Float, Symbol, Regexp, Range then
511
+ when Integer, Float, Rational, Complex then
512
+ add_to_score :magic_number unless context[1] == :cdecl
513
+ when Symbol, Regexp, Range then
519
514
  # do nothing
520
515
  else
521
516
  raise "Unhandled lit: #{value.inspect}:#{value.class}"
data/test/test_flog.rb CHANGED
@@ -44,7 +44,7 @@ class TestFlog < FlogTest
44
44
  def test_flog
45
45
  setup_flog
46
46
 
47
- exp = { "main#none" => { :+ => 1.0, :lit_fixnum => 0.6 } }
47
+ exp = { "main#none" => { :+ => 1.0, :magic_number => 0.6 } }
48
48
  assert_equal exp, @flog.calls
49
49
 
50
50
  assert_in_epsilon 1.6, @flog.total_score unless @flog.option[:methods]
@@ -58,7 +58,7 @@ class TestFlog < FlogTest
58
58
  @flog.flog_ruby ruby, file
59
59
  @flog.calculate_total_scores
60
60
 
61
- exp = { "main#none" => { :+ => 1.0, :lit_fixnum => 0.6 } }
61
+ exp = { "main#none" => { :+ => 1.0, :magic_number => 0.6 } }
62
62
  assert_equal exp, @flog.calls
63
63
 
64
64
  assert_in_epsilon 1.6, @flog.total_score unless @flog.option[:methods]
@@ -127,25 +127,24 @@ class TestFlog < FlogTest
127
127
  assert_process sexp, 1.1, :branch => 1.1 # 10% penalty over process_and
128
128
  end
129
129
 
130
- def test_process_block_pass
130
+ def test_process_block_pass__call
131
131
  sexp = s(:call, nil, :a,
132
132
  s(:block_pass,
133
133
  s(:call, nil, :b)))
134
134
 
135
- bonus = case RUBY_VERSION
136
- when /^1\.8\.7/ then 0.4
137
- when /^1\.9/ then 0.3
138
- when /^[23]\./ then 0.2
139
- else raise "Unhandled version #{RUBY_VERSION}"
140
- end
135
+ assert_process(sexp, 3.4,
136
+ :a => 1.0,
137
+ :block_pass => 1.2,
138
+ :b => 1.2)
139
+ end
141
140
 
142
- bonus += Flog::OTHER_SCORES[:to_proc_normal]
141
+ def test_process_block_pass__to_proc
142
+ sexp = s(:call, nil, :a,
143
+ s(:block_pass, s(:lit, :to_i)))
143
144
 
144
- assert_process(sexp, 3.4 + bonus,
145
+ assert_process(sexp, 2.2,
145
146
  :a => 1.0,
146
- :block_pass => 1.2,
147
- :b => 1.2,
148
- :to_proc_normal => 0.0 + bonus)
147
+ :block_pass => 1.2)
149
148
  end
150
149
 
151
150
  def test_process_block_pass_colon2
@@ -158,12 +157,23 @@ class TestFlog < FlogTest
158
157
  :block_pass => 1.2)
159
158
  end
160
159
 
160
+ def test_process_block_pass__hash_wtf
161
+ sexp = s(:call, nil, :a,
162
+ s(:block_pass,
163
+ s(:hash, s(:lit, :a), s(:lit, :b))))
164
+
165
+ assert_process(sexp, 14.2,
166
+ :a => 1.0,
167
+ :block_pass => 1.2,
168
+ :to_proc_icky! => 12.0)
169
+ end
170
+
161
171
  def test_process_block_pass_iter
162
172
  sexp = s(:block_pass,
163
173
  s(:iter, s(:call, nil, :lambda), nil, s(:lit, 1)))
164
174
 
165
175
  assert_process(sexp, 12.316,
166
- :lit_fixnum => 0.275,
176
+ :magic_number => 0.275,
167
177
  :block_pass => 1.0,
168
178
  :lambda => 1.0,
169
179
  :block_call => 1.0,
@@ -177,7 +187,7 @@ class TestFlog < FlogTest
177
187
  s(:iter, s(:call, nil, :lambda), nil, s(:lit, 1))))
178
188
 
179
189
  assert_process(sexp, 17.333,
180
- :lit_fixnum => 0.275,
190
+ :magic_number => 0.275,
181
191
  :block_pass => 1.0,
182
192
  :lambda => 1.0,
183
193
  :assignment => 1.0,
@@ -185,6 +195,13 @@ class TestFlog < FlogTest
185
195
  :to_proc_lasgn => 15.0)
186
196
  end
187
197
 
198
+ def test_process_block_pass__nil
199
+ sexp = s(:block_pass)
200
+
201
+ assert_process(sexp, 1.0,
202
+ :block_pass => 1.0)
203
+ end
204
+
188
205
  def test_process_call
189
206
  sexp = s(:call, nil, :a) # a
190
207
  assert_process sexp, 1.0, :a => 1.0
@@ -233,7 +250,7 @@ class TestFlog < FlogTest
233
250
  s(:colon2, s(:const, :X), :Y), nil,
234
251
  s(:scope, s(:lit, 42)))
235
252
 
236
- assert_process sexp, 0.25, :lit_fixnum => 0.25
253
+ assert_process sexp, 0.25, :magic_number => 0.25
237
254
  end
238
255
 
239
256
  # TODO:
@@ -258,7 +275,7 @@ class TestFlog < FlogTest
258
275
  s(:block,
259
276
  s(:lit, 42))))
260
277
 
261
- assert_process sexp, 0.275, :lit_fixnum => 0.275
278
+ assert_process sexp, 0.275, :magic_number => 0.275
262
279
  end
263
280
 
264
281
  def test_process_defn_in_self
@@ -271,7 +288,7 @@ class TestFlog < FlogTest
271
288
  @flog.process sexp
272
289
  @flog.calculate_total_scores
273
290
 
274
- exp = {'main::x' => {:lit_fixnum => 0.375}, 'main#none' => {:sclass => 5.0}}
291
+ exp = {'main::x' => {:magic_number => 0.375}, 'main#none' => {:sclass => 5.0}}
275
292
  assert_equal exp, @flog.calls
276
293
 
277
294
  assert_in_delta 5.375, @flog.total_score
@@ -288,7 +305,7 @@ class TestFlog < FlogTest
288
305
  @flog.process sexp
289
306
  @flog.calculate_total_scores
290
307
 
291
- exp = {'main::x' => {:lit_fixnum => 0.375}, 'main#none' => {:sclass => 12.5}}
308
+ exp = {'main::x' => {:magic_number => 0.375}, 'main#none' => {:sclass => 12.5}}
292
309
  assert_equal exp, @flog.calls
293
310
 
294
311
  assert_in_delta 12.875, @flog.total_score
@@ -303,7 +320,7 @@ class TestFlog < FlogTest
303
320
  s(:block,
304
321
  s(:lit, 42))))
305
322
 
306
- assert_process sexp, 0.275, :lit_fixnum => 0.275
323
+ assert_process sexp, 0.275, :magic_number => 0.275
307
324
  end
308
325
 
309
326
  # FIX: huh? over-refactored?
@@ -369,7 +386,7 @@ class TestFlog < FlogTest
369
386
 
370
387
  @klass, @meth = "task", "#woot"
371
388
 
372
- assert_process sexp, 2.3, :something => 1.0, :task => 1.0, :lit_fixnum => 0.3
389
+ assert_process sexp, 2.3, :something => 1.0, :task => 1.0, :magic_number => 0.3
373
390
  end
374
391
 
375
392
  def test_process_iter_dsl_hash_when_hash_empty
@@ -406,7 +423,7 @@ class TestFlog < FlogTest
406
423
  hash = {
407
424
  "namespace(blah)::task#woot" => {
408
425
  :something => 1.0,
409
- :lit_fixnum => 0.3,
426
+ :magic_number => 0.3,
410
427
  :task => 1.0,
411
428
  },
412
429
  "namespace#blah" => {
@@ -429,14 +446,29 @@ class TestFlog < FlogTest
429
446
 
430
447
  def test_process_lit_int
431
448
  sexp = s(:lit, 42)
432
- assert_process sexp, 0.25, :lit_fixnum => 0.25
449
+ assert_process sexp, 0.25, :magic_number => 0.25
450
+ end
451
+
452
+ def test_process_lit_int__const
453
+ sexp = s(:cdecl, :X, s(:lit, 42))
454
+ assert_process sexp, 0.0
433
455
  end
434
456
 
435
457
  def test_process_lit_float # and other lits
436
- sexp = s(:lit, 3.1415) # TODO: consider penalizing floats if not in cdecl
458
+ sexp = s(:lit, 3.1415)
459
+ assert_process sexp, 0.25, :magic_number => 0.25
460
+ end
461
+
462
+ def test_process_lit_float__const
463
+ sexp = s(:cdecl, :X, s(:lit, 3.1415))
437
464
  assert_process sexp, 0.0
438
465
  end
439
466
 
467
+ def test_process_lit_complex
468
+ sexp = s(:lit, (0+1i))
469
+ assert_process sexp, 0.25
470
+ end
471
+
440
472
  def test_process_lit_bad
441
473
  assert_raises RuntimeError do
442
474
  @flog.process s(:lit, Object.new)
@@ -458,12 +490,12 @@ class TestFlog < FlogTest
458
490
  s(:colon2, s(:const, :X), :Y),
459
491
  s(:scope, s(:lit, 42)))
460
492
 
461
- assert_process sexp, 0.25, :lit_fixnum => 0.25
493
+ assert_process sexp, 0.25, :magic_number => 0.25
462
494
  end
463
495
 
464
496
  def test_process_sclass
465
497
  sexp = s(:sclass, s(:self), s(:scope, s(:lit, 42)))
466
- assert_process sexp, 5.375, :sclass => 5.0, :lit_fixnum => 0.375
498
+ assert_process sexp, 5.375, :sclass => 5.0, :magic_number => 0.375
467
499
  end
468
500
 
469
501
  def test_process_super
@@ -471,7 +503,7 @@ class TestFlog < FlogTest
471
503
  assert_process sexp, 1.0, :super => 1.0
472
504
 
473
505
  sexp = s(:super, s(:lit, 42))
474
- assert_process sexp, 1.25, :super => 1.0, :lit_fixnum => 0.25
506
+ assert_process sexp, 1.25, :super => 1.0, :magic_number => 0.25
475
507
  end
476
508
 
477
509
  def test_process_while
@@ -488,10 +520,10 @@ class TestFlog < FlogTest
488
520
  assert_process sexp, 1.00, :yield => 1.0
489
521
 
490
522
  sexp = s(:yield, s(:lit, 4))
491
- assert_process sexp, 1.25, :yield => 1.0, :lit_fixnum => 0.25
523
+ assert_process sexp, 1.25, :yield => 1.0, :magic_number => 0.25
492
524
 
493
525
  sexp = s(:yield, s(:lit, 42), s(:lit, 24))
494
- assert_process sexp, 1.50, :yield => 1.0, :lit_fixnum => 0.50
526
+ assert_process sexp, 1.50, :yield => 1.0, :magic_number => 0.50
495
527
  end
496
528
 
497
529
  def test_score_method
@@ -600,7 +632,7 @@ class TestFlog < FlogTest
600
632
  @flog.calculate_total_scores
601
633
  @flog.calculate
602
634
 
603
- assert_equal({ 'User#blah' => 'user.rb:3-4' }, @flog.method_locations)
635
+ assert_equal({ 'User#blah' => 'user.rb:3-5' }, @flog.method_locations)
604
636
  assert_equal({ "User#blah" => 2.2 }, @flog.totals)
605
637
  assert_in_epsilon(2.2, @flog.total_score)
606
638
  assert_in_epsilon(1.0, @flog.multiplier)
@@ -622,7 +654,7 @@ class TestFlog < FlogTest
622
654
  @flog.calculate_total_scores
623
655
  @flog.calculate
624
656
 
625
- assert_equal({ 'Coder#happy?' => 'coder.rb:3-4' }, @flog.method_locations)
657
+ assert_equal({ 'Coder#happy?' => 'coder.rb:3-5' }, @flog.method_locations)
626
658
  assert_equal({ "Coder#happy?" => 1.0 }, @flog.totals)
627
659
  assert_in_epsilon(1.0, @flog.total_score)
628
660
  assert_in_epsilon(1.0, @flog.multiplier)
@@ -135,7 +135,7 @@ class TestFlogCLI < FlogTest
135
135
 
136
136
  expected = "\n 1.6: main#none
137
137
  1.0: +
138
- 0.6: lit_fixnum
138
+ 0.6: magic_number
139
139
 
140
140
  "
141
141
 
@@ -165,7 +165,7 @@ class TestFlogCLI < FlogTest
165
165
 
166
166
  @flog.flog "-"
167
167
 
168
- exp = { "main#none" => { :+ => 1.0, :lit_fixnum => 0.6 } }
168
+ exp = { "main#none" => { :+ => 1.0, :magic_number => 0.6 } }
169
169
  assert_equal exp, @flog.calls
170
170
 
171
171
  @flog.option[:all] = true
data.tar.gz.sig CHANGED
@@ -1 +1 @@
1
-  �&�ȣ�#�XM�����b�����=���֭+h_���1����(yb1F W@V�!��r*fp?0(.O�9'��KK<M�����6mN�D���nJ��n����y]cfxSI�����N����)D7/���+b���Q�W:������LDE��%��v>��"8S�T���C�����f��a��0-���sJ]LzX'c5t ��(C��jY3n�λC���aqE�ˑ��^1�Qi�
1
+ ��k>`DQLkߓO1�ߜ�=�2�w��ͺ�N�#���0${���CLw6��w���{�$z{pKOE5a ��pX֘)A<��} �'<�y���=\d՚.������ɡ@ j+���m���<�TXBW5#��4RuG��W�hENT+�ۏ�>�����l���!5WUH�/�/�� �74̃)�&��1{[��L�+(`6AQ?��ZFP7�P~Rv��Gzg�����1�#&�K�v1�ڔ��
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: flog
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.6.5
4
+ version: 4.7.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ryan Davis
@@ -10,9 +10,9 @@ bindir: bin
10
10
  cert_chain:
11
11
  - |
12
12
  -----BEGIN CERTIFICATE-----
13
- MIIDPjCCAiagAwIBAgIBBjANBgkqhkiG9w0BAQsFADBFMRMwEQYDVQQDDApyeWFu
13
+ MIIDPjCCAiagAwIBAgIBBzANBgkqhkiG9w0BAQsFADBFMRMwEQYDVQQDDApyeWFu
14
14
  ZC1ydWJ5MRkwFwYKCZImiZPyLGQBGRYJemVuc3BpZGVyMRMwEQYKCZImiZPyLGQB
15
- GRYDY29tMB4XDTIxMTIyMzIzMTkwNFoXDTIyMTIyMzIzMTkwNFowRTETMBEGA1UE
15
+ GRYDY29tMB4XDTIzMDEwMTA3NTExN1oXDTI0MDEwMTA3NTExN1owRTETMBEGA1UE
16
16
  AwwKcnlhbmQtcnVieTEZMBcGCgmSJomT8ixkARkWCXplbnNwaWRlcjETMBEGCgmS
17
17
  JomT8ixkARkWA2NvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALda
18
18
  b9DCgK+627gPJkB6XfjZ1itoOQvpqH1EXScSaba9/S2VF22VYQbXU1xQXL/WzCkx
@@ -22,14 +22,14 @@ cert_chain:
22
22
  qhtV7HJxNKuPj/JFH0D2cswvzznE/a5FOYO68g+YCuFi5L8wZuuM8zzdwjrWHqSV
23
23
  gBEfoTEGr7Zii72cx+sCAwEAAaM5MDcwCQYDVR0TBAIwADALBgNVHQ8EBAMCBLAw
24
24
  HQYDVR0OBBYEFEfFe9md/r/tj/Wmwpy+MI8d9k/hMA0GCSqGSIb3DQEBCwUAA4IB
25
- AQCKB5jfsuSnKb+t/Wrh3UpdkmX7TrEsjVmERC0pPqzQ5GQJgmEXDD7oMgaKXaAq
26
- x2m+KSZDrqk7c8uho5OX6YMqg4KdxehfSLqqTZGoeV78qwf/jpPQZKTf+W9gUSJh
27
- zsWpo4K50MP+QtdSbKXZwjAafpQ8hK0MnnZ/aeCsW9ov5vdXpYbf3dpg6ADXRGE7
28
- lQY2y1tJ5/chqu6h7dQmnm2ABUqx9O+JcN9hbCYoA5i/EeubUEtFIh2w3SpO6YfB
29
- JFmxn4h9YO/pVdB962BdBNNDia0kgIjI3ENnkLq0dKpYU3+F3KhEuTksLO0L6X/V
30
- YsuyUzsMz6GQA4khyaMgKNSD
25
+ AQAkg3y+PBnBAPWdxxITm5sPHqdWQgSyCpRA20o4LTuWr8BWhSXBkfQNa7cY6fOn
26
+ xyM34VPzBFbExv6XOGDfOMFBVaYTHuN9peC/5/umL7kLl+nflXzL2QA7K6LYj5Bg
27
+ sM574Onr0dZDM6Vn69bzQ7rBIFDfK/OhlPzqKZad4nsdcsVH8ODCiT+ATMIZyz5K
28
+ WCnNtqlyiWXI8tdTpahDgcUwfcN/oN7v4K8iU5IbLJX6HQ5DKgmKjfb6XyMth16k
29
+ ROfWo9Uyp8ba/j9eVG14KkYRaLydAY1MNQk2yd3R5CGfeOpD1kttxjoypoUJ2dOG
30
+ nsNBRuQJ1UfiCG97a6DNm+Fr
31
31
  -----END CERTIFICATE-----
32
- date: 2022-04-09 00:00:00.000000000 Z
32
+ date: 2023-07-18 00:00:00.000000000 Z
33
33
  dependencies:
34
34
  - !ruby/object:Gem::Dependency
35
35
  name: sexp_processor
@@ -119,14 +119,14 @@ dependencies:
119
119
  requirements:
120
120
  - - "~>"
121
121
  - !ruby/object:Gem::Version
122
- version: '3.23'
122
+ version: '4.0'
123
123
  type: :development
124
124
  prerelease: false
125
125
  version_requirements: !ruby/object:Gem::Requirement
126
126
  requirements:
127
127
  - - "~>"
128
128
  - !ruby/object:Gem::Version
129
- version: '3.23'
129
+ version: '4.0'
130
130
  description: |-
131
131
  Flog reports the most tortured code in an easy to read pain
132
132
  report. The higher the score, the more pain the code is in.
@@ -175,7 +175,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
175
175
  - !ruby/object:Gem::Version
176
176
  version: '0'
177
177
  requirements: []
178
- rubygems_version: 3.3.3
178
+ rubygems_version: 3.4.10
179
179
  signing_key:
180
180
  specification_version: 4
181
181
  summary: Flog reports the most tortured code in an easy to read pain report
metadata.gz.sig CHANGED
Binary file