rfmt 1.3.4-x86_64-linux-musl → 1.4.0-x86_64-linux-musl
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/README.md +17 -19
- data/lib/rfmt/3.1/rfmt.so +0 -0
- data/lib/rfmt/3.2/rfmt.so +0 -0
- data/lib/rfmt/3.3/rfmt.so +0 -0
- data/lib/rfmt/cli.rb +6 -2
- data/lib/rfmt/version.rb +1 -1
- metadata +44 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: b64dd88761efe1273699b430194ce2ca938b5c8ab497e386beadf5be59da2408
|
|
4
|
+
data.tar.gz: 5c7a48c51cf3aaab461043c14d1dfe1208c5f2fa1b87b98cbf9704512efbeb49
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: bc1d559d4c5934887d9bac140151b44d4d50f6cd26b38ecd6c0336c9df6adac4d111f05aea94cfcc94bf4435601064c029cff0796c60909a73c993351dff2d43
|
|
7
|
+
data.tar.gz: 3f500a4c74804d31b417b457f0714fdad285378282dedecd0b034ab0d67918776225192d4d840387a320073a9a9d963aca4fcfe241c76b40395ee155e8b8f690
|
data/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,23 @@
|
|
|
1
1
|
## [Unreleased]
|
|
2
2
|
|
|
3
|
+
## [1.4.0] - 2026-01-17
|
|
4
|
+
|
|
5
|
+
### Added
|
|
6
|
+
- New `rfmt_fast` executable for optimized performance
|
|
7
|
+
- Automatic parallel processing detection logic
|
|
8
|
+
- Enhanced logging and summary display functionality
|
|
9
|
+
- CLI option mapping for `-v/--version` commands
|
|
10
|
+
|
|
11
|
+
### Fixed
|
|
12
|
+
- Fixed `-v` flag incorrectly triggering format instead of showing version
|
|
13
|
+
- Fixed `--diff` option dependency issues (added `diffy` and `diff-lcs` to gemspec)
|
|
14
|
+
- CLI option conflicts between verbose and version flags
|
|
15
|
+
|
|
16
|
+
### Changed
|
|
17
|
+
- Updated performance benchmarks documentation
|
|
18
|
+
- Code formatting improvements with Rubocop compliance
|
|
19
|
+
- Dependencies alphabetically sorted in gemspec
|
|
20
|
+
|
|
3
21
|
## [1.3.4] - 2026-01-17
|
|
4
22
|
|
|
5
23
|
### Added
|
data/README.md
CHANGED
|
@@ -46,33 +46,31 @@ Enforces code style rules:
|
|
|
46
46
|
- Quote style standardization
|
|
47
47
|
- Method definition formatting
|
|
48
48
|
|
|
49
|
-
## Performance
|
|
49
|
+
## Performance
|
|
50
50
|
|
|
51
|
-
|
|
51
|
+
rfmt delivers consistent, fast formatting across projects of any size:
|
|
52
52
|
|
|
53
|
-
|
|
|
54
|
-
|
|
55
|
-
|
|
|
56
|
-
|
|
|
57
|
-
|
|
|
53
|
+
| Project Size | Files | Execution Time | Throughput |
|
|
54
|
+
|-------------|-------|----------------|------------|
|
|
55
|
+
| Small | 9 files | ~105ms | 85 files/sec |
|
|
56
|
+
| Medium | 35 files | ~110ms | 315 files/sec |
|
|
57
|
+
| Large | 151 files | ~100ms | 1,560 files/sec |
|
|
58
58
|
|
|
59
|
-
**
|
|
60
|
-
- RuboCop times include startup overhead and loading all cops (linting rules)
|
|
61
|
-
- RuboCop was run with default configuration (all cops enabled)
|
|
62
|
-
- rfmt is a formatting-only tool with minimal overhead
|
|
63
|
-
- Both tools were measured in check mode (no file modifications)
|
|
64
|
-
- Results are averages from 10 runs per test
|
|
59
|
+
**Key Performance Characteristics:**
|
|
65
60
|
|
|
66
|
-
**
|
|
67
|
-
-
|
|
68
|
-
-
|
|
61
|
+
- **Constant Time**: Execution time stays around 100ms regardless of project size
|
|
62
|
+
- **Parallel Processing**: Automatic scaling with available CPU cores
|
|
63
|
+
- **High Throughput**: Up to 1,500+ files per second on large projects
|
|
64
|
+
- **Low Overhead**: Minimal startup time and memory usage
|
|
69
65
|
|
|
70
66
|
**Test Environment:**
|
|
71
67
|
- CPU: Apple Silicon (arm64)
|
|
72
|
-
- Ruby: 3.4.
|
|
73
|
-
-
|
|
68
|
+
- Ruby: 3.4.8
|
|
69
|
+
- Average of 5 runs per test
|
|
74
70
|
|
|
75
|
-
|
|
71
|
+
*Built with Rust for optimal performance and memory efficiency.*
|
|
72
|
+
|
|
73
|
+
For detailed performance comparisons and benchmarks, see [Performance Benchmarks](docs/benchmark.md).
|
|
76
74
|
|
|
77
75
|
## Installation
|
|
78
76
|
|
data/lib/rfmt/3.1/rfmt.so
CHANGED
|
Binary file
|
data/lib/rfmt/3.2/rfmt.so
CHANGED
|
Binary file
|
data/lib/rfmt/3.3/rfmt.so
CHANGED
|
Binary file
|
data/lib/rfmt/cli.rb
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
require 'thor'
|
|
4
4
|
|
|
5
5
|
# Check for verbose flag before loading rfmt to set debug mode early
|
|
6
|
-
ENV['RFMT_DEBUG'] = '1' if ARGV.include?('
|
|
6
|
+
ENV['RFMT_DEBUG'] = '1' if ARGV.include?('--verbose')
|
|
7
7
|
|
|
8
8
|
require 'rfmt'
|
|
9
9
|
require 'rfmt/configuration'
|
|
@@ -49,10 +49,14 @@ module Rfmt
|
|
|
49
49
|
PROGRESS_INTERVAL = 10 # Update progress every N files
|
|
50
50
|
|
|
51
51
|
class_option :config, type: :string, desc: 'Path to configuration file'
|
|
52
|
-
class_option :verbose, type: :boolean,
|
|
52
|
+
class_option :verbose, type: :boolean, desc: 'Verbose output'
|
|
53
53
|
|
|
54
54
|
default_command :format
|
|
55
55
|
|
|
56
|
+
# Map -v and --version to version command
|
|
57
|
+
map '-v' => 'version'
|
|
58
|
+
map '--version' => 'version'
|
|
59
|
+
|
|
56
60
|
desc 'format [FILES]', 'Format Ruby files (default command)'
|
|
57
61
|
option :write, type: :boolean, default: true, desc: 'Write formatted output'
|
|
58
62
|
option :check, type: :boolean, desc: "Check if files are formatted (don't write)"
|
data/lib/rfmt/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: rfmt
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.
|
|
4
|
+
version: 1.4.0
|
|
5
5
|
platform: x86_64-linux-musl
|
|
6
6
|
authors:
|
|
7
7
|
- fujitani sora
|
|
@@ -9,7 +9,49 @@ autorequire:
|
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
11
|
date: 2026-01-17 00:00:00.000000000 Z
|
|
12
|
-
dependencies:
|
|
12
|
+
dependencies:
|
|
13
|
+
- !ruby/object:Gem::Dependency
|
|
14
|
+
name: diff-lcs
|
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
|
16
|
+
requirements:
|
|
17
|
+
- - "~>"
|
|
18
|
+
- !ruby/object:Gem::Version
|
|
19
|
+
version: '1.5'
|
|
20
|
+
type: :runtime
|
|
21
|
+
prerelease: false
|
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
23
|
+
requirements:
|
|
24
|
+
- - "~>"
|
|
25
|
+
- !ruby/object:Gem::Version
|
|
26
|
+
version: '1.5'
|
|
27
|
+
- !ruby/object:Gem::Dependency
|
|
28
|
+
name: diffy
|
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
|
30
|
+
requirements:
|
|
31
|
+
- - "~>"
|
|
32
|
+
- !ruby/object:Gem::Version
|
|
33
|
+
version: '3.4'
|
|
34
|
+
type: :runtime
|
|
35
|
+
prerelease: false
|
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
37
|
+
requirements:
|
|
38
|
+
- - "~>"
|
|
39
|
+
- !ruby/object:Gem::Version
|
|
40
|
+
version: '3.4'
|
|
41
|
+
- !ruby/object:Gem::Dependency
|
|
42
|
+
name: thor
|
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
|
44
|
+
requirements:
|
|
45
|
+
- - "~>"
|
|
46
|
+
- !ruby/object:Gem::Version
|
|
47
|
+
version: '1.3'
|
|
48
|
+
type: :runtime
|
|
49
|
+
prerelease: false
|
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
51
|
+
requirements:
|
|
52
|
+
- - "~>"
|
|
53
|
+
- !ruby/object:Gem::Version
|
|
54
|
+
version: '1.3'
|
|
13
55
|
description: Write a longer description or delete this line.
|
|
14
56
|
email:
|
|
15
57
|
- fujitanisora0414@gmail.com
|