Skip to content

Commit ef10d54

Browse files
committed
Refactor gemspec and reduce min. Ruby version
This refactors the `terta.gemspec` file to modernize it. Furthermore, the minimum Ruby version is 3.2 instead of 3.4.
1 parent 34e4b30 commit ef10d54

3 files changed

Lines changed: 44 additions & 40 deletions

File tree

.rubocop.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ plugins:
77

88
AllCops:
99
NewCops: enable
10-
TargetRubyVersion: 3.4
10+
TargetRubyVersion: 3.2
1111
Exclude:
1212
- "lib/template/*.spec"
1313
- "vendor/**/*"

Gemfile.lock

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ PATH
33
specs:
44
tetra (2.0.8)
55
clamp (~> 1.3.2)
6-
erb (~> 6.0)
76
json_pure (>= 2.6.3, < 2.9.0)
87
rexml (>= 3.2.9, < 3.5.0)
98
rubyzip (~> 3.2)
@@ -51,7 +50,6 @@ GEM
5150
cucumber-tag-expressions (8.1.0)
5251
diff-lcs (1.6.2)
5352
docile (1.4.1)
54-
erb (6.0.1)
5553
ffi (1.17.3)
5654
ffi (1.17.3-aarch64-linux-gnu)
5755
ffi (1.17.3-aarch64-linux-musl)
@@ -181,7 +179,6 @@ CHECKSUMS
181179
cucumber-tag-expressions (8.1.0) sha256=9bd8c4b6654f8e5bf2a9c99329b6f32136a75e50cd39d4cfb3927d0fa9f52e21
182180
diff-lcs (1.6.2) sha256=9ae0d2cba7d4df3075fe8cd8602a8604993efc0dfa934cff568969efb1909962
183181
docile (1.4.1) sha256=96159be799bfa73cdb721b840e9802126e4e03dfc26863db73647204c727f21e
184-
erb (6.0.1) sha256=28ecdd99c5472aebd5674d6061e3c6b0a45c049578b071e5a52c2a7f13c197e5
185182
ffi (1.17.3) sha256=0e9f39f7bb3934f77ad6feab49662be77e87eedcdeb2a3f5c0234c2938563d4c
186183
ffi (1.17.3-aarch64-linux-gnu) sha256=28ad573df26560f0aedd8a90c3371279a0b2bd0b4e834b16a2baa10bd7a97068
187184
ffi (1.17.3-aarch64-linux-musl) sha256=020b33b76775b1abacc3b7d86b287cef3251f66d747092deec592c7f5df764b2

tetra.gemspec

Lines changed: 43 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -1,50 +1,57 @@
11
# frozen_string_literal: true
22

3-
$LOAD_PATH.unshift(File.join(__dir__, "lib"))
4-
require "tetra/version"
3+
require_relative "lib/tetra/version"
54

6-
Gem::Specification.new do |s|
7-
s.name = "tetra"
8-
s.version = Tetra::VERSION
9-
s.authors = ["Dominik Gedon", "Silvio Moioli"]
10-
s.email = "dgedon@suse.de"
11-
s.homepage = "https://github.com/uyuni-project/tetra"
12-
s.summary = "A tool to package Java projects"
13-
s.description = <<~TEXT
5+
Gem::Specification.new do |spec|
6+
spec.name = "tetra"
7+
spec.version = Tetra::VERSION
8+
spec.authors = ["Dominik Gedon", "Silvio Moioli"]
9+
spec.email = ["dominik.gedon@suse.com"]
10+
spec.homepage = "https://github.com/uyuni-project/tetra"
11+
spec.summary = "A tool to package Java projects"
12+
spec.description = <<~TEXT
1413
Tetra simplifies the creation of spec files and archives
15-
to distribute Java projects in RPM format
14+
to distribute Java projects in RPM format.
1615
TEXT
1716

18-
s.license = "MIT"
19-
s.metadata = {
17+
spec.license = "MIT"
18+
spec.metadata = {
2019
"bug_tracker_uri" => "https://github.com/uyuni-project/tetra/issues",
21-
"homepage_uri" => s.homepage,
20+
"homepage_uri" => spec.homepage,
2221
"source_code_uri" => "https://github.com/uyuni-project/tetra",
23-
"rubygems_mfa_required" => "true"
22+
"rubygems_mfa_required" => "true",
23+
"allowed_push_host" => "https://rubygems.org"
2424
}
2525

26-
s.files = `git ls-files`.split("\n")
27-
s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
28-
s.executables = `git ls-files -- bin/*`.split("\n").map { |f| File.basename(f) }
29-
s.require_paths = ["lib"]
30-
s.rdoc_options << "--exclude=lib/template/bundled"
26+
spec.required_ruby_version = ">= 3.2"
27+
spec.files = Dir.glob(
28+
[
29+
"bin/*",
30+
"lib/**/*",
31+
"*.md",
32+
"LICENSE",
33+
"COPYING"
34+
]
35+
).select { |f| File.file?(f) }
3136

32-
s.required_ruby_version = ">= 3.4.0"
37+
spec.executables = spec.files.grep(%r{\Abin/}) { |f| File.basename(f) }
38+
spec.require_paths = ["lib"]
39+
spec.rdoc_options << "--exclude=lib/template/bundled"
3340

34-
s.add_development_dependency "aruba", "~> 2.3"
35-
s.add_development_dependency "rake", "~> 13.3"
36-
s.add_development_dependency "rspec", "~> 3.13"
37-
s.add_development_dependency "rubocop", "~> 1.82.1"
38-
s.add_development_dependency "rubocop-performance", "~> 1.26"
39-
s.add_development_dependency "rubocop-rake", "~> 0.7.1"
40-
s.add_development_dependency "rubocop-rspec", "~> 3.9.0"
41-
s.add_development_dependency "simplecov", "~> 0.22"
42-
s.add_development_dependency "simplecov-cobertura", "~> 3.1"
41+
# Dependencies
42+
spec.add_runtime_dependency "clamp", "~> 1.3.2"
43+
spec.add_runtime_dependency "json_pure", ">= 2.6.3", "< 2.9.0"
44+
spec.add_runtime_dependency "rexml", ">= 3.2.9", "< 3.5.0"
45+
spec.add_runtime_dependency "rubyzip", "~> 3.2"
46+
spec.add_runtime_dependency "text", "~> 1.3.1"
4347

44-
s.add_runtime_dependency "clamp", "~> 1.3.2"
45-
s.add_runtime_dependency "erb", "~> 6.0"
46-
s.add_runtime_dependency "json_pure", ">= 2.6.3", "< 2.9.0"
47-
s.add_runtime_dependency "rexml", ">= 3.2.9", "< 3.5.0"
48-
s.add_runtime_dependency "rubyzip", "~> 3.2"
49-
s.add_runtime_dependency "text", "~> 1.3.1"
48+
spec.add_development_dependency "aruba", "~> 2.3"
49+
spec.add_development_dependency "rake", "~> 13.3"
50+
spec.add_development_dependency "rspec", "~> 3.13"
51+
spec.add_development_dependency "rubocop", "~> 1.82.1"
52+
spec.add_development_dependency "rubocop-performance", "~> 1.26"
53+
spec.add_development_dependency "rubocop-rake", "~> 0.7.1"
54+
spec.add_development_dependency "rubocop-rspec", "~> 3.9.0"
55+
spec.add_development_dependency "simplecov", "~> 0.22"
56+
spec.add_development_dependency "simplecov-cobertura", "~> 3.1"
5057
end

0 commit comments

Comments
 (0)