创建新 rails 引擎时出现 gemspec 错误
gemspec error on creating new rails engine
我正在尝试使用以下 link 创建 rails 引擎:
http://guides.rubyonrails.org/engines.html
我收到以下错误
You have one or more invalid gemspecs that need to be fixed.
The gemspec at /home/shariq/Documents/plugin/blorgh/blorgh.gemspec is not valid. Please fix this gemspec.
验证错误为 '"FIXME" or "TODO" is not a description'
我已经尝试过捆绑更新和捆绑安装
这是我的全部作品
日志
shariq@SDEV-MACHINE:~/Documents/plugin$ ruby -v
ruby 2.3.1p112 (2016-04-26 revision 54768) [x86_64-linux]
shariq@SDEV-MACHINE:~/Documents/plugin$ rails -v
Rails 5.0.0.1
shariq@SDEV-MACHINE:~/Documents/plugin$ mysql --version
mysql Ver 14.14 Distrib 5.7.15, for Linux (x86_64) using EditLine wrapper
shariq@SDEV-MACHINE:~/Documents/plugin$ rails plugin new blorgh --mountable -d mysql
create
create README.md
create Rakefile
create blorgh.gemspec
create MIT-LICENSE
create .gitignore
create Gemfile
create app
create app/controllers/blorgh/application_controller.rb
create app/helpers/blorgh/application_helper.rb
create app/jobs/blorgh/application_job.rb
create app/mailers/blorgh/application_mailer.rb
create app/models/blorgh/application_record.rb
create app/views/layouts/blorgh/application.html.erb
create app/assets/images/blorgh
create app/assets/images/blorgh/.keep
create config/routes.rb
create lib/blorgh.rb
create lib/tasks/blorgh_tasks.rake
create lib/blorgh/version.rb
create lib/blorgh/engine.rb
create app/assets/config/blorgh_manifest.js
create app/assets/stylesheets/blorgh/application.css
create app/assets/javascripts/blorgh/application.js
create bin/rails
create test/test_helper.rb
create test/blorgh_test.rb
append Rakefile
create test/integration/navigation_test.rb
vendor_app test/dummy
run bundle install
You have one or more invalid gemspecs that need to be fixed.
The gemspec at /home/shariq/Documents/plugin/blorgh/blorgh.gemspec is not valid. Please fix this gemspec.
The validation error was '"FIXME" or "TODO" is not a description'
shariq@SDEV-MACHINE:~/Documents/plugin$
这是 gemspec 文件:
##### log #######
$:.push File.expand_path("../lib", __FILE__)
require "blorgh/version"
Gem::Specification.new do |s|
s.name = "blorgh"
s.version = Blorgh::VERSION
s.authors = ["Shariq"]
s.email = ["gr8shariq@live.com"]
s.homepage = "TODO"
s.summary = "TODO: Summary of Blorgh."
s.description = "TODO: Description of Blorgh."
s.license = "MIT"
s.files = Dir["{app,config,db,lib}/**/*", "MIT-LICENSE", "Rakefile", "README.md"]
s.add_dependency "rails", "~> 5.0.0", ">= 5.0.0.1"
end
错误不言自明。您必须用一些 "actual" 描述替换 gemspec 中的 "TODO" 字符串。
rails 存储库中有一个已经关闭的问题 #26474
:
rails plugin new
does not complete properly since bundler 1.12
Ruby Rails 团队成员 vipulnsward 说:
We don't bundle install now - fbd1e98
fbd1e98
的提交信息说明:
Do not run bundle install
when generating a new plugin.
Since bundler 1.12.0, the gemspec is validated so the bundle install
command will fail just after the gem is created causing confusion to the
users. This change was a bug fix to correctly validate gemspecs.
添加选项 -B
以跳过 bundle install
:
rails plugin new NAME -B
如果您需要 运行 捆绑器,您可以从 .gemspec
文件中删除所有出现的 TODO
和 FIXME
,然后 运行 bundle install
.
我今天遇到了这个问题。这就是我所做的(git diff)让我活了下来。
@@ -9,15 +9,15 @@ Gem::Specification.new do |spec|
spec.version = Blorgh::VERSION
spec.authors = ["Torvalds Du"]
spec.email = ["torvalds@ekohe.com"]
- spec.homepage = "TODO"
- spec.summary = "TODO: Summary of Blorgh."
- spec.description = "TODO: Description of Blorgh."
+ spec.homepage = ""
+ spec.summary = "Summary of Blorgh."
+ spec.description = "Description of Blorgh."
spec.license = "MIT"
# Prevent pushing this gem to RubyGems.org. To allow pushes either set the 'allowed_push_host'
# to allow pushing to a single host or delete this section to allow pushing to any host.
if spec.respond_to?(:metadata)
- spec.metadata["allowed_push_host"] = "TODO: Set to 'http://mygemserver.com'"
+ spec.metadata["allowed_push_host"] = "http://mygemserver.com"
else
raise "RubyGems 2.0 or newer is required to protect against " \
"public gem pushes."
因此,您必须删除 gem_name.gemspec
中的所有文本 TODO
。
祝你好运。
我正在尝试使用以下 link 创建 rails 引擎: http://guides.rubyonrails.org/engines.html
我收到以下错误
You have one or more invalid gemspecs that need to be fixed. The gemspec at /home/shariq/Documents/plugin/blorgh/blorgh.gemspec is not valid. Please fix this gemspec.
验证错误为 '"FIXME" or "TODO" is not a description'
我已经尝试过捆绑更新和捆绑安装
这是我的全部作品
日志shariq@SDEV-MACHINE:~/Documents/plugin$ ruby -v
ruby 2.3.1p112 (2016-04-26 revision 54768) [x86_64-linux]
shariq@SDEV-MACHINE:~/Documents/plugin$ rails -v
Rails 5.0.0.1
shariq@SDEV-MACHINE:~/Documents/plugin$ mysql --version
mysql Ver 14.14 Distrib 5.7.15, for Linux (x86_64) using EditLine wrapper
shariq@SDEV-MACHINE:~/Documents/plugin$ rails plugin new blorgh --mountable -d mysql
create
create README.md
create Rakefile
create blorgh.gemspec
create MIT-LICENSE
create .gitignore
create Gemfile
create app
create app/controllers/blorgh/application_controller.rb
create app/helpers/blorgh/application_helper.rb
create app/jobs/blorgh/application_job.rb
create app/mailers/blorgh/application_mailer.rb
create app/models/blorgh/application_record.rb
create app/views/layouts/blorgh/application.html.erb
create app/assets/images/blorgh
create app/assets/images/blorgh/.keep
create config/routes.rb
create lib/blorgh.rb
create lib/tasks/blorgh_tasks.rake
create lib/blorgh/version.rb
create lib/blorgh/engine.rb
create app/assets/config/blorgh_manifest.js
create app/assets/stylesheets/blorgh/application.css
create app/assets/javascripts/blorgh/application.js
create bin/rails
create test/test_helper.rb
create test/blorgh_test.rb
append Rakefile
create test/integration/navigation_test.rb
vendor_app test/dummy
run bundle install
You have one or more invalid gemspecs that need to be fixed.
The gemspec at /home/shariq/Documents/plugin/blorgh/blorgh.gemspec is not valid. Please fix this gemspec.
The validation error was '"FIXME" or "TODO" is not a description'
shariq@SDEV-MACHINE:~/Documents/plugin$
这是 gemspec 文件:
##### log #######
$:.push File.expand_path("../lib", __FILE__)
require "blorgh/version"
Gem::Specification.new do |s|
s.name = "blorgh"
s.version = Blorgh::VERSION
s.authors = ["Shariq"]
s.email = ["gr8shariq@live.com"]
s.homepage = "TODO"
s.summary = "TODO: Summary of Blorgh."
s.description = "TODO: Description of Blorgh."
s.license = "MIT"
s.files = Dir["{app,config,db,lib}/**/*", "MIT-LICENSE", "Rakefile", "README.md"]
s.add_dependency "rails", "~> 5.0.0", ">= 5.0.0.1"
end
错误不言自明。您必须用一些 "actual" 描述替换 gemspec 中的 "TODO" 字符串。
rails 存储库中有一个已经关闭的问题 #26474
:
rails plugin new
does not complete properly since bundler 1.12
Ruby Rails 团队成员 vipulnsward 说:
We don't bundle install now - fbd1e98
fbd1e98
的提交信息说明:
Do not run
bundle install
when generating a new plugin.Since bundler 1.12.0, the gemspec is validated so the
bundle install
command will fail just after the gem is created causing confusion to the users. This change was a bug fix to correctly validate gemspecs.
添加选项 -B
以跳过 bundle install
:
rails plugin new NAME -B
如果您需要 运行 捆绑器,您可以从 .gemspec
文件中删除所有出现的 TODO
和 FIXME
,然后 运行 bundle install
.
我今天遇到了这个问题。这就是我所做的(git diff)让我活了下来。
@@ -9,15 +9,15 @@ Gem::Specification.new do |spec|
spec.version = Blorgh::VERSION
spec.authors = ["Torvalds Du"]
spec.email = ["torvalds@ekohe.com"]
- spec.homepage = "TODO"
- spec.summary = "TODO: Summary of Blorgh."
- spec.description = "TODO: Description of Blorgh."
+ spec.homepage = ""
+ spec.summary = "Summary of Blorgh."
+ spec.description = "Description of Blorgh."
spec.license = "MIT"
# Prevent pushing this gem to RubyGems.org. To allow pushes either set the 'allowed_push_host'
# to allow pushing to a single host or delete this section to allow pushing to any host.
if spec.respond_to?(:metadata)
- spec.metadata["allowed_push_host"] = "TODO: Set to 'http://mygemserver.com'"
+ spec.metadata["allowed_push_host"] = "http://mygemserver.com"
else
raise "RubyGems 2.0 or newer is required to protect against " \
"public gem pushes."
因此,您必须删除 gem_name.gemspec
中的所有文本 TODO
。
祝你好运。