59 lines
2.4 KiB
Plaintext
59 lines
2.4 KiB
Plaintext
# frozen_string_literal: true
|
|
|
|
require_relative "lib/<%=config[:namespaced_path]%>/version"
|
|
|
|
Gem::Specification.new do |spec|
|
|
spec.name = <%= config[:name].inspect %>
|
|
spec.version = <%= config[:constant_name] %>::VERSION
|
|
spec.authors = [<%= config[:author].inspect %>]
|
|
spec.email = [<%= config[:email].inspect %>]
|
|
|
|
spec.summary = "TODO: Write a short summary, because RubyGems requires one."
|
|
spec.description = "TODO: Write a longer description or delete this line."
|
|
spec.homepage = "<%= config[:homepage_uri] %>"
|
|
<%- if config[:mit] -%>
|
|
spec.license = "MIT"
|
|
<%- end -%>
|
|
spec.required_ruby_version = ">= <%= config[:required_ruby_version] %>"
|
|
spec.metadata["allowed_push_host"] = "TODO: Set to your gem server 'https://example.com'"
|
|
spec.metadata["homepage_uri"] = spec.homepage
|
|
spec.metadata["source_code_uri"] = "<%= config[:source_code_uri] %>"
|
|
<%- if config[:changelog] -%>
|
|
spec.metadata["changelog_uri"] = "<%= config[:changelog_uri] %>"
|
|
<%- end -%>
|
|
|
|
# Uncomment the line below to require MFA for gem pushes.
|
|
# This helps protect your gem from supply chain attacks by ensuring
|
|
# no one can publish a new version without multi-factor authentication.
|
|
# See: https://guides.rubygems.org/mfa-requirement-opt-in/
|
|
# spec.metadata["rubygems_mfa_required"] = "true"
|
|
|
|
# Specify which files should be added to the gem when it is released.
|
|
# The `git ls-files -z` loads the files in the RubyGem that have been added into git.
|
|
gemspec = File.basename(__FILE__)
|
|
spec.files = IO.popen(%w[git ls-files -z], chdir: __dir__, err: IO::NULL) do |ls|
|
|
ls.readlines("\x0", chomp: true).reject do |f|
|
|
(f == gemspec) ||
|
|
f.start_with?(*%w[<%= config[:ignore_paths].join(" ") %>])
|
|
end
|
|
end
|
|
spec.bindir = "exe"
|
|
spec.executables = spec.files.grep(%r{\Aexe/}) { |f| File.basename(f) }
|
|
spec.require_paths = ["lib"]
|
|
<%- if %w(c rust go).include?(config[:ext]) -%>
|
|
spec.extensions = ["ext/<%= config[:underscored_name] %>/extconf.rb"]
|
|
<%- end -%>
|
|
|
|
# Uncomment to register a new dependency of your gem
|
|
# spec.add_dependency "example-gem", "~> 1.0"
|
|
<%- if config[:ext] == 'rust' -%>
|
|
spec.add_dependency "rb_sys", "~> 0.9.128"
|
|
<%- end -%>
|
|
<%- if config[:ext] == 'go' -%>
|
|
spec.add_dependency "go_gem", "~> 0.2"
|
|
<%- end -%>
|
|
|
|
# For more information and examples about making a new gem, check out our
|
|
# guide at: https://guides.rubygems.org/make-your-own-gem/
|
|
end
|