gem_sorter 0.3.0 → 0.3.1
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/lib/gem_sorter/version.rb +1 -1
- data/lib/gem_sorter.rb +13 -9
- 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: bbae0106b44090db037979017493686a388123413febf17d5de70a3770edd1b1
|
4
|
+
data.tar.gz: 5fa00b9f9509c83ffd9022b8631b669c66e32f00663b2433cfc66d9d1c14a2e4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1cbf29f10ec73e50adeac3c18a2495c84c25633c6b82bf70ab834185995080534d7faee772910787f503694445838efbb1dd73497eb79ee720ff54b1e66d0e34
|
7
|
+
data.tar.gz: '0930ef6b73d42328c04d1d6f34740d94186db7cee60c26ada9d7352830d35161aa7037116985f440588d191aeb67f610052f07a5434a2b2e1bc7676b3b45fb18'
|
data/lib/gem_sorter/version.rb
CHANGED
data/lib/gem_sorter.rb
CHANGED
@@ -49,33 +49,33 @@ module GemSorter
|
|
49
49
|
def update_version_text(gems)
|
50
50
|
@versions ||= fetch_versions_from_lockfile("#{@filepath}.lock")
|
51
51
|
gems.each do |gem_block|
|
52
|
-
gem_name =
|
52
|
+
gem_name = extract_gem_name(gem_block[:gem_line])
|
53
53
|
next if @config.ignore_gems.include?(gem_name) || @config.ignore_gem_versions.include?(gem_name)
|
54
54
|
|
55
55
|
version = @versions[gem_name]
|
56
56
|
extra_params = extract_params(gem_block[:gem_line])
|
57
57
|
base = version ? "#{fetch_gemfile_text(gem_name, version, gem_block[:gem_line])}" : gem_block[:gem_line]
|
58
|
-
|
59
|
-
|
60
|
-
|
58
|
+
if base != gem_block[:gem_line]
|
59
|
+
gem_block[:gem_line] = [base.strip, extra_params].select { |value| !value.nil? && !value.empty? }.join(',')
|
60
|
+
end
|
61
61
|
end
|
62
62
|
end
|
63
63
|
|
64
64
|
def extract_params(gem_line)
|
65
|
-
return nil unless gem_line =~ /gem\s
|
65
|
+
return nil unless gem_line =~ /gem\s+['"][^'"]+['"]/
|
66
66
|
|
67
|
-
if gem_line =~ /gem\s
|
67
|
+
if gem_line =~ /gem\s+['"][^'"]+['"]\s*,\s*(.*)/
|
68
68
|
additional_params = $1.strip
|
69
69
|
return nil if additional_params.empty?
|
70
|
-
params_with_colon = additional_params.scan(/(\w+:\s*[^,]+)/).flatten
|
71
|
-
return params_with_colon.join(', ') unless params_with_colon.empty?
|
70
|
+
params_with_colon = additional_params.scan(/(\w+:\s*[^,]+(?:,\s*[^,]+)*|\w+:\s*['"][^'"]+['"])/).flatten
|
71
|
+
return " #{params_with_colon.join(', ')}" unless params_with_colon.empty?
|
72
72
|
end
|
73
73
|
nil
|
74
74
|
end
|
75
75
|
|
76
76
|
def update_gem_summaries(gems)
|
77
77
|
gems.each do |gem_block|
|
78
|
-
gem_name = gem_block[:gem_line]
|
78
|
+
gem_name = extract_gem_name(gem_block[:gem_line])
|
79
79
|
next if @config.ignore_gems.include?(gem_name) || @config.ignore_gem_comments.include?(gem_name)
|
80
80
|
|
81
81
|
if summary = get_summary(gem_name, false)
|
@@ -84,6 +84,10 @@ module GemSorter
|
|
84
84
|
end
|
85
85
|
end
|
86
86
|
|
87
|
+
def extract_gem_name(gem_line)
|
88
|
+
gem_line.match(/gem\s+['"]([^'"]+)['"]/)[1]
|
89
|
+
end
|
90
|
+
|
87
91
|
def process_main_section(section)
|
88
92
|
lines = section.split("\n").map(&:strip).reject(&:empty?)
|
89
93
|
source_line = lines.shift
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gem_sorter
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Renan Garcia
|
8
8
|
bindir: bin
|
9
9
|
cert_chain: []
|
10
|
-
date: 2025-01-
|
10
|
+
date: 2025-01-09 00:00:00.000000000 Z
|
11
11
|
dependencies:
|
12
12
|
- !ruby/object:Gem::Dependency
|
13
13
|
name: rake
|