rufo 0.16.1 → 0.16.3
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 +18 -0
- data/lib/rufo/erb_formatter.rb +9 -2
- data/lib/rufo/formatter.rb +9 -1
- data/lib/rufo/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: 3d409deea0a4597c0cab778d78b5d055ef0efe09246063f94d4902b92967590a
|
4
|
+
data.tar.gz: c49924d1209e5ae8e0387ba93596273dfca7e71ae788dc17820fecbf286f62a6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 21b4a9ce483440f4a0765b13e2ee5b2101ed9556d59ddc5714df046a773b9060d97d84c7ddfc76e9320f72cb76c5ec4ee304876c77c193108e7e29c7ab630f8e
|
7
|
+
data.tar.gz: f09a85d28f35f086d980ed9d4db3d27503bb6b71ad35d8298d812464d0118f02b28ec25968ebbb822f1266254271970e3960c31cc6de0cd1b04961c7fa1fa250
|
data/CHANGELOG.md
CHANGED
@@ -12,6 +12,24 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
|
|
12
12
|
|
13
13
|
### Added
|
14
14
|
|
15
|
+
## [0.16.3] - 2023-11-09
|
16
|
+
|
17
|
+
### Fixed
|
18
|
+
- Fix Bug: Support hash literal pattern with quoted key ([#312](https://github.com/ruby-formatter/rufo/issues/312))
|
19
|
+
|
20
|
+
### Changed
|
21
|
+
|
22
|
+
### Added
|
23
|
+
|
24
|
+
## [0.16.2] - 2023-07-29
|
25
|
+
|
26
|
+
### Fixed
|
27
|
+
- Fix Bug: Unexpected EOF with blocks in .html.erb ([#297](https://github.com/ruby-formatter/rufo/issues/297))
|
28
|
+
|
29
|
+
### Changed
|
30
|
+
|
31
|
+
### Added
|
32
|
+
|
15
33
|
## [0.16.1] - 2023-05-04
|
16
34
|
|
17
35
|
### Fixed
|
data/lib/rufo/erb_formatter.rb
CHANGED
@@ -125,9 +125,16 @@ class Rufo::ErbFormatter
|
|
125
125
|
string
|
126
126
|
end
|
127
127
|
|
128
|
+
CODE_BLOCK_KEYWORDS = %w[BEGIN END begin case class def do else elsif end ensure for if module rescue unless until while]
|
129
|
+
|
130
|
+
def code_block_token?(token)
|
131
|
+
_, kind, value = token
|
132
|
+
kind == :on_kw && CODE_BLOCK_KEYWORDS.include?(value)
|
133
|
+
end
|
134
|
+
|
128
135
|
def determine_code_wrappers(code_str)
|
129
|
-
keywords = Ripper.lex("#{code_str}").filter { |lex_token| lex_token
|
130
|
-
lexical_tokens = keywords.
|
136
|
+
keywords = Ripper.lex("#{code_str}").filter { |lex_token| code_block_token?(lex_token) }
|
137
|
+
lexical_tokens = keywords.map { |lex_token| lex_token[3].to_s }
|
131
138
|
state_tally = lexical_tokens.group_by(&:itself).transform_values(&:count)
|
132
139
|
beg_token = state_tally["BEG"] || state_tally["EXPR_BEG"] || 0
|
133
140
|
end_token = state_tally["END"] || state_tally["EXPR_END"] || 0
|
data/lib/rufo/formatter.rb
CHANGED
@@ -3310,7 +3310,15 @@ class Rufo::Formatter
|
|
3310
3310
|
|
3311
3311
|
visit_literal_elements elements, inside_hash: true, token_column: token_column, keep_final_newline: expected_right_token.nil? do |element|
|
3312
3312
|
key, value = element
|
3313
|
-
|
3313
|
+
|
3314
|
+
if current_token_kind == :on_tstring_beg
|
3315
|
+
consume_token :on_tstring_beg
|
3316
|
+
visit key
|
3317
|
+
consume_token :on_label_end
|
3318
|
+
else
|
3319
|
+
visit key
|
3320
|
+
end
|
3321
|
+
|
3314
3322
|
if value
|
3315
3323
|
consume_space
|
3316
3324
|
visit value
|
data/lib/rufo/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rufo
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.16.
|
4
|
+
version: 0.16.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ary Borenszweig
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-
|
11
|
+
date: 2023-11-08 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|