flog 4.9.0 → 4.9.2

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: 7262d5d6a50a7734f984039e83079bdd31f2b58f1c43325485b8a19288b1fe04
4
- data.tar.gz: f4049fc93e849c6c3c9f08c0778dd5f0e46dece30a65bbb44ffa2aa4b07d15c7
3
+ metadata.gz: 79aa339ba2ed65cdd83437fad88ae503bff7a4392255d9dd9920e2ca400d164d
4
+ data.tar.gz: 6b69169958fec009c2b6e106d98089d4a581821bf26f6568a488d91bb0043abf
5
5
  SHA512:
6
- metadata.gz: b6974339f191d9f1ac348707fd6e5efcf5fbf5bb453aa53d91d91f4933fe18f07f47cca5065a378da049c3703cc399edccc3ff621bc714c04e366d0da9036e62
7
- data.tar.gz: 998f2be74a01618e3187d94340c97e0149dff71a02e5924dab23f6519fa5c905d601ba7cc7dfcdcb25fc4b39329bfaaf62a78fef672eea06a50f62cba9bd259d
6
+ metadata.gz: 21d6a21c74691972cb98cec49cbe1289b5c870d6874d1606b4c2451431e3ec63d261f22a235927b80ffeea15273bb1d31a6aa18530fdbb346ca5e74e882ec94f
7
+ data.tar.gz: e713d2e30e361ac522f889d77efd0f291a6f38c47fb3c84c777c8879f770fc928e7e919318e816eca9c8347e110b1591edb17b4b3a5863ad17bc9f43279557f5
checksums.yaml.gz.sig CHANGED
Binary file
data/History.rdoc CHANGED
@@ -1,3 +1,19 @@
1
+ === 4.9.2 / 2026-01-04
2
+
3
+ * 2 bug fixes:
4
+
5
+ * Duplicate passed in options in case frozen.
6
+ * Oops! Fixed --legacy option definition.
7
+
8
+ === 4.9.1 / 2025-12-20
9
+
10
+ * 4 bug fixes:
11
+
12
+ * Bumped dependency to prism to get some upstreamed fixes.
13
+ * Dropped ruby_parser dependency (now considered soft dep for --legacy flag).
14
+ * Minor cleanup of some of the upstreamed fixes.
15
+ * Re-add ruby_parser dependency until I can get a patch into prism to loosen it up.
16
+
1
17
  === 4.9.0 / 2025-12-11
2
18
 
3
19
  * 2 minor enhancements:
data/Rakefile CHANGED
@@ -3,9 +3,7 @@
3
3
  require 'rubygems'
4
4
  require 'hoe'
5
5
 
6
- Hoe.add_include_dirs("../../ruby_parser/dev/lib",
7
- "../../RubyInline/dev/lib",
8
- "../../sexp_processor/dev/lib",
6
+ Hoe.add_include_dirs("../../sexp_processor/dev/lib",
9
7
  "../../ZenTest/dev/lib",
10
8
  "../../path_expander/dev/lib",
11
9
  "lib")
@@ -24,10 +22,8 @@ Hoe.spec 'flog' do
24
22
  license "MIT"
25
23
 
26
24
  dependency "sexp_processor", "~> 4.8"
27
- dependency "prism", "~> 1.5"
25
+ dependency "prism", "~> 1.7"
28
26
  dependency "path_expander", "~> 2.0"
29
-
30
- dependency "minitest", "~> 5.0", :dev
31
27
  end
32
28
 
33
29
  task :debug do
data/lib/flog.rb CHANGED
@@ -2,11 +2,9 @@ require "sexp_processor"
2
2
  require "prism"
3
3
  require "prism/translation/ruby_parser"
4
4
  require "timeout"
5
+ require "racc" # for Racc::ParseError
5
6
 
6
- class Prism::Translation::RubyParser # compatibility layer
7
- def process(ruby, file, timeout=nil) =
8
- Timeout.timeout(timeout) { parse ruby, file }
9
- end
7
+ NotRubyParser = Class.new Prism::Translation::RubyParser
10
8
 
11
9
  ##
12
10
  # Flog is a SexpProcessor that calculates a ABC (assignments,
@@ -18,7 +16,7 @@ end
18
16
  # thoroughly test.
19
17
 
20
18
  class Flog < MethodBasedSexpProcessor
21
- VERSION = "4.9.0" # :nodoc:
19
+ VERSION = "4.9.2" # :nodoc:
22
20
 
23
21
  ##
24
22
  # Cut off point where the report should stop unless --all given.
@@ -232,11 +230,11 @@ class Flog < MethodBasedSexpProcessor
232
230
 
233
231
  def initialize option = {}
234
232
  super()
235
- @option = option
233
+ @option = option.dup
236
234
  @mass = {}
237
235
  @parser = nil
238
236
  @threshold = option[:threshold] || DEFAULT_THRESHOLD
239
- option[:parser] ||= Prism::Translation::RubyParser
237
+ option[:parser] ||= NotRubyParser
240
238
  self.auto_shift_type = true
241
239
  self.reset
242
240
  end
data/lib/flog_cli.rb CHANGED
@@ -130,7 +130,7 @@ class FlogCLI
130
130
  option[:score] = true
131
131
  end
132
132
 
133
- opts.on "--legacy" "Use RubyParser for parsing." do
133
+ opts.on "--legacy", "Use RubyParser for parsing." do
134
134
  require "ruby_parser"
135
135
  option[:parser] = RubyParser
136
136
  end
data/test/test_flog.rb CHANGED
@@ -19,7 +19,7 @@ end
19
19
 
20
20
  class TestFlog < FlogTest
21
21
  def setup
22
- @flog = Flog.new :parser => RubyParser
22
+ @flog = Flog.new parser: NotRubyParser
23
23
  end
24
24
 
25
25
  def test_add_to_score
@@ -9,7 +9,7 @@ end
9
9
 
10
10
  class TestFlogCLI < FlogTest
11
11
  def setup
12
- @flog = FlogCLI.new :parser => RubyParser
12
+ @flog = FlogCLI.new parser: NotRubyParser
13
13
  end
14
14
 
15
15
  def test_cls_parse_options
data.tar.gz.sig CHANGED
Binary file
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.9.0
4
+ version: 4.9.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ryan Davis
@@ -50,14 +50,14 @@ dependencies:
50
50
  requirements:
51
51
  - - "~>"
52
52
  - !ruby/object:Gem::Version
53
- version: '1.5'
53
+ version: '1.7'
54
54
  type: :runtime
55
55
  prerelease: false
56
56
  version_requirements: !ruby/object:Gem::Requirement
57
57
  requirements:
58
58
  - - "~>"
59
59
  - !ruby/object:Gem::Version
60
- version: '1.5'
60
+ version: '1.7'
61
61
  - !ruby/object:Gem::Dependency
62
62
  name: path_expander
63
63
  requirement: !ruby/object:Gem::Requirement
@@ -72,54 +72,40 @@ dependencies:
72
72
  - - "~>"
73
73
  - !ruby/object:Gem::Version
74
74
  version: '2.0'
75
- - !ruby/object:Gem::Dependency
76
- name: minitest
77
- requirement: !ruby/object:Gem::Requirement
78
- requirements:
79
- - - "~>"
80
- - !ruby/object:Gem::Version
81
- version: '5.0'
82
- type: :development
83
- prerelease: false
84
- version_requirements: !ruby/object:Gem::Requirement
85
- requirements:
86
- - - "~>"
87
- - !ruby/object:Gem::Version
88
- version: '5.0'
89
75
  - !ruby/object:Gem::Dependency
90
76
  name: rdoc
91
77
  requirement: !ruby/object:Gem::Requirement
92
78
  requirements:
93
79
  - - ">="
94
80
  - !ruby/object:Gem::Version
95
- version: '4.0'
81
+ version: '6.0'
96
82
  - - "<"
97
83
  - !ruby/object:Gem::Version
98
- version: '7'
84
+ version: '8'
99
85
  type: :development
100
86
  prerelease: false
101
87
  version_requirements: !ruby/object:Gem::Requirement
102
88
  requirements:
103
89
  - - ">="
104
90
  - !ruby/object:Gem::Version
105
- version: '4.0'
91
+ version: '6.0'
106
92
  - - "<"
107
93
  - !ruby/object:Gem::Version
108
- version: '7'
94
+ version: '8'
109
95
  - !ruby/object:Gem::Dependency
110
96
  name: hoe
111
97
  requirement: !ruby/object:Gem::Requirement
112
98
  requirements:
113
99
  - - "~>"
114
100
  - !ruby/object:Gem::Version
115
- version: '4.3'
101
+ version: '4.5'
116
102
  type: :development
117
103
  prerelease: false
118
104
  version_requirements: !ruby/object:Gem::Requirement
119
105
  requirements:
120
106
  - - "~>"
121
107
  - !ruby/object:Gem::Version
122
- version: '4.3'
108
+ version: '4.5'
123
109
  description: |-
124
110
  Flog reports the most tortured code in an easy to read pain
125
111
  report. The higher the score, the more pain the code is in.
metadata.gz.sig CHANGED
Binary file