rfmt 1.5.0-aarch64-linux → 1.5.1-aarch64-linux
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 +4 -4
- data/CHANGELOG.md +15 -0
- data/README.md +1 -0
- data/lib/rfmt/3.3/rfmt.so +0 -0
- data/lib/rfmt/3.4/rfmt.so +0 -0
- data/lib/rfmt/prism_bridge.rb +34 -10
- data/lib/rfmt/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: e5abf1bc063954128b9ac63d381f1626d70cc3dfadc22c47f65419b2b1013af5
|
|
4
|
+
data.tar.gz: e8f877f7aac68f8ab709a668d4cdb79e6abc2d5f8df52d140f1b278a8b2df75f
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: e4b93e44a1eec6bb836bbec52d00683a3698a22cbb06955444ccad7f26615121a97caa3083b88588e23e0a6a1bbdc54dbd17cdb2d05bd4099ab4f7d51fd2db89
|
|
7
|
+
data.tar.gz: f43b80d6aaae0368ca1420446d78634d31bad07fed22f1a0566327257f8342052476506e200f61d966ae2538a28b4ba77928e601473a41d40e1c5ac451d81e28
|
data/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,20 @@
|
|
|
1
1
|
## [Unreleased]
|
|
2
2
|
|
|
3
|
+
## [1.5.1] - 2026-02-21
|
|
4
|
+
|
|
5
|
+
### Fixed
|
|
6
|
+
- Fix inline modifier `if`/`unless` formatting (#87)
|
|
7
|
+
- Fix heredoc command incorrectly removed (#90, #86)
|
|
8
|
+
- Fix method chain command dependency handling (#89, #85)
|
|
9
|
+
|
|
10
|
+
### Added
|
|
11
|
+
- Heredoc comment deletion support
|
|
12
|
+
- Place block loop emission support
|
|
13
|
+
|
|
14
|
+
### Changed
|
|
15
|
+
- Update README.md
|
|
16
|
+
- Code formatting improvements (RuboCop compliance)
|
|
17
|
+
|
|
3
18
|
## [1.5.0] - 2026-01-25
|
|
4
19
|
|
|
5
20
|
### Added
|
data/README.md
CHANGED
|
@@ -23,6 +23,7 @@ A Ruby code formatter written in Rust
|
|
|
23
23
|
## What is rfmt?
|
|
24
24
|
|
|
25
25
|
[RubyGems reference](https://rubygems.org/gems/rfmt)
|
|
26
|
+
[DeepWiki rfmt](https://deepwiki.com/fs0414/rfmt)
|
|
26
27
|
|
|
27
28
|
**rfmt** is a Ruby code formatter that enforces consistent style across your codebase. Key characteristics:
|
|
28
29
|
|
data/lib/rfmt/3.3/rfmt.so
CHANGED
|
Binary file
|
data/lib/rfmt/3.4/rfmt.so
CHANGED
|
Binary file
|
data/lib/rfmt/prism_bridge.rb
CHANGED
|
@@ -125,16 +125,14 @@ module Rfmt
|
|
|
125
125
|
end
|
|
126
126
|
end
|
|
127
127
|
|
|
128
|
-
#
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
end_line = closing.end_line
|
|
137
|
-
end_column = closing.end_column
|
|
128
|
+
# Recursively check all descendant nodes for heredoc closing_loc
|
|
129
|
+
# Issue #74: handled direct children (e.g., LocalVariableWriteNode -> StringNode)
|
|
130
|
+
# Issue #86: handles deeper nesting (e.g., CallNode -> ArgumentsNode -> StringNode)
|
|
131
|
+
max_closing = find_max_closing_loc_recursive(node)
|
|
132
|
+
if max_closing && max_closing[:end_offset] > end_offset
|
|
133
|
+
end_offset = max_closing[:end_offset]
|
|
134
|
+
end_line = max_closing[:end_line]
|
|
135
|
+
end_column = max_closing[:end_column]
|
|
138
136
|
end
|
|
139
137
|
|
|
140
138
|
{
|
|
@@ -147,6 +145,32 @@ module Rfmt
|
|
|
147
145
|
}
|
|
148
146
|
end
|
|
149
147
|
|
|
148
|
+
# Recursively find the maximum closing_loc among all descendant nodes
|
|
149
|
+
# Returns nil if no closing_loc found, otherwise { end_offset:, end_line:, end_column: }
|
|
150
|
+
def self.find_max_closing_loc_recursive(node, depth: 0)
|
|
151
|
+
return nil if depth > 10
|
|
152
|
+
|
|
153
|
+
max_closing = nil
|
|
154
|
+
|
|
155
|
+
node.child_nodes.compact.each do |child|
|
|
156
|
+
if child.respond_to?(:closing_loc) && child.closing_loc
|
|
157
|
+
closing = child.closing_loc
|
|
158
|
+
if max_closing.nil? || closing.end_offset > max_closing[:end_offset]
|
|
159
|
+
max_closing = {
|
|
160
|
+
end_offset: closing.end_offset,
|
|
161
|
+
end_line: closing.end_line,
|
|
162
|
+
end_column: closing.end_column
|
|
163
|
+
}
|
|
164
|
+
end
|
|
165
|
+
end
|
|
166
|
+
|
|
167
|
+
child_max = find_max_closing_loc_recursive(child, depth: depth + 1)
|
|
168
|
+
max_closing = child_max if child_max && (max_closing.nil? || child_max[:end_offset] > max_closing[:end_offset])
|
|
169
|
+
end
|
|
170
|
+
|
|
171
|
+
max_closing
|
|
172
|
+
end
|
|
173
|
+
|
|
150
174
|
# Extract child nodes
|
|
151
175
|
def self.extract_children(node)
|
|
152
176
|
children = []
|
data/lib/rfmt/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: rfmt
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.5.
|
|
4
|
+
version: 1.5.1
|
|
5
5
|
platform: aarch64-linux
|
|
6
6
|
authors:
|
|
7
7
|
- fujitani sora
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2026-
|
|
11
|
+
date: 2026-02-20 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: diff-lcs
|