rubocop-mangrove 0.3.0 → 0.5.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: 6d005a7e2f7abf4cdcbc58bc14612bc57479ebfdcb4bb72c46257a5c279e7867
4
- data.tar.gz: 331e0a3a034b04099ac5116b1d7df2fd693250e601fd916aed42e4f9ecc3330d
3
+ metadata.gz: 0baf6a02bc0cbe3c026bff151185d49dce664450114472a79ee2e1d6b5dae5b9
4
+ data.tar.gz: 4e23a3a32cdae7827b6691a987ae7afa04129e93280a0ca4db47fdc967edec3a
5
5
  SHA512:
6
- metadata.gz: 076f632cb78d370250fc17b8e23b1a4df862ca94629c8398a28d7d6def1292d5147b197e1a78c268d19cb372648f1fefd865fd216f6d626782e53322263f5ea6
7
- data.tar.gz: 73df7cfd7b663ad9ebdb8d314407532fdf57823da6c86ec122b5410ae07884ee4c4ba5b26153a82150c93964cc09ce1a81485d25c459427eba817e925c2d7fd8
6
+ metadata.gz: b9fb565772b8f68f49486faefc6583d130e678500d470d22af54cb4c3b4da403966c9caa0b8b530b0b53d302ccc1f57f98a3dbd4ee86536ab0b8cf7ded5034e7
7
+ data.tar.gz: 2676c6cc80fd80c713bb9c919d1dc9fec6ac86ae65d15458b44ee7513940279f7e5556dbda8ebde2c058d7777d3373fd0f6b4f1870704b4cd20ac8ef4f3ef463
data/.rubocop.yml CHANGED
@@ -3,7 +3,7 @@ Naming/FileName:
3
3
  - lib/rubocop-mangrove.rb
4
4
 
5
5
  AllCops:
6
- TargetRubyVersion: 3.2
6
+ TargetRubyVersion: 3.1
7
7
 
8
8
  Layout/FirstArrayElementIndentation:
9
9
  EnforcedStyle: consistent
@@ -1,6 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require "parser/current"
4
3
  require "unparser"
5
4
 
6
5
  module RuboCop
@@ -55,14 +54,24 @@ module RuboCop
55
54
  return if rescuing_control_signal
56
55
 
57
56
  add_offense(node) { |corrector|
58
- source = node.source
59
- ast = ::Parser::CurrentRuby.parse(source)
60
- source_buffer = ::Parser::Source::Buffer.new("", source: node.source)
57
+ source = ::RuboCop::ProcessedSource.new(
58
+ node.source,
59
+ processed_source.ruby_version,
60
+ parser_engine: processed_source.parser_engine
61
+ )
61
62
  rewriter = ::RuboCop::Cop::Mangrove::UnhandledUnwrap::Rewriter.new
62
- corrector.replace(node, rewriter.rewrite(source_buffer, ast))
63
+ corrector.replace(node, rewriter.rewrite(source.buffer, parser_node(source.ast)))
63
64
  }
64
65
  end
65
66
 
67
+ # Unparser expects plain parser nodes, not RuboCop's specialized subclasses.
68
+ def parser_node(node)
69
+ return node unless node.is_a?(::Parser::AST::Node)
70
+
71
+ children = node.children.map { |child| parser_node(child) }
72
+ ::Parser::AST::Node.new(node.type, children, location: node.location)
73
+ end
74
+
66
75
  class Rewriter < Parser::TreeRewriter
67
76
  def on_def(node)
68
77
  indent = node.location.expression.begin.column
@@ -2,6 +2,6 @@
2
2
 
3
3
  module RuboCop
4
4
  module Mangrove
5
- VERSION = "0.3.0"
5
+ VERSION = "0.5.0"
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rubocop-mangrove
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kazuma Murata
8
- autorequire:
9
8
  bindir: exe
10
9
  cert_chain: []
11
- date: 2023-10-18 00:00:00.000000000 Z
10
+ date: 2026-10-20 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: parser
@@ -30,28 +29,42 @@ dependencies:
30
29
  requirements:
31
30
  - - ">="
32
31
  - !ruby/object:Gem::Version
33
- version: '0'
32
+ version: 1.62.0
34
33
  type: :runtime
35
34
  prerelease: false
36
35
  version_requirements: !ruby/object:Gem::Requirement
37
36
  requirements:
38
37
  - - ">="
39
38
  - !ruby/object:Gem::Version
40
- version: '0'
39
+ version: 1.62.0
40
+ - !ruby/object:Gem::Dependency
41
+ name: rubocop-ast
42
+ requirement: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - ">="
45
+ - !ruby/object:Gem::Version
46
+ version: 1.49.0
47
+ type: :runtime
48
+ prerelease: false
49
+ version_requirements: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - ">="
52
+ - !ruby/object:Gem::Version
53
+ version: 1.49.0
41
54
  - !ruby/object:Gem::Dependency
42
55
  name: unparser
43
56
  requirement: !ruby/object:Gem::Requirement
44
57
  requirements:
45
58
  - - ">="
46
59
  - !ruby/object:Gem::Version
47
- version: '0'
60
+ version: 0.8.1
48
61
  type: :runtime
49
62
  prerelease: false
50
63
  version_requirements: !ruby/object:Gem::Requirement
51
64
  requirements:
52
65
  - - ">="
53
66
  - !ruby/object:Gem::Version
54
- version: '0'
67
+ version: 0.8.1
55
68
  description: Type Utility for Ruby.
56
69
  email:
57
70
  - kazzix14@gmail.com
@@ -76,7 +89,6 @@ licenses: []
76
89
  metadata:
77
90
  homepage_uri: https://github.com/kazzix14/mangrove
78
91
  source_code_uri: https://github.com/kazzix14/rubocop-mangrove
79
- post_install_message:
80
92
  rdoc_options: []
81
93
  require_paths:
82
94
  - lib
@@ -84,15 +96,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
84
96
  requirements:
85
97
  - - ">="
86
98
  - !ruby/object:Gem::Version
87
- version: 3.2.0
99
+ version: 3.1.2
88
100
  required_rubygems_version: !ruby/object:Gem::Requirement
89
101
  requirements:
90
102
  - - ">="
91
103
  - !ruby/object:Gem::Version
92
104
  version: '0'
93
105
  requirements: []
94
- rubygems_version: 3.4.18
95
- signing_key:
106
+ rubygems_version: 3.6.2
96
107
  specification_version: 4
97
108
  summary: Type Utility for Ruby.
98
109
  test_files: []