Rails: Gemspec is not valid. Please fix this gemspec

Bishma Stornelli picture Bishma Stornelli · Oct 24, 2012 · Viewed 13.1k times · Source

When I install a gem from github it gives me the error:

number_internationalizer at /usr/local/rvm/gems/ruby-1.9.3-p194@number_internationalizer/bundler/gems/number_internationalizer-c0d642b04e87 did not have a valid gemspec.
This prevents bundler from installing bins or native extensions, but that may not affect its functionality.
The validation message from Rubygems was:
  "FIXME" or "TODO" is not a description

The gemspec is:

# -*- encoding: utf-8 -*-
lib = File.expand_path('../lib', __FILE__)
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
require 'number_internationalizer/version'

Gem::Specification.new do |gem|
  gem.name          = "number_internationalizer"
  gem.version       = NumberInternationalizer::VERSION
  gem.authors       = ["Myself"]
  gem.email         = ["[email protected]"]
  gem.description   = %q{Internationalize numbers adding normalization, validation and modifying the number field to restor the value to its original if validation fails}
  gem.summary       = gem.description
  gem.homepage      = ""

  gem.files         = `git ls-files`.split($/)
  gem.executables   = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
  gem.test_files    = gem.files.grep(%r{^(test|spec|features)/})
  gem.require_paths = ["lib"]
end

How can I fix that error?

Answer

mguymon picture mguymon · Oct 24, 2012

The error seems out of sync with the gemspec you show, the error indicates the gem.descripton is invalid. According to the error, you are using the Gem from git, which has a commit fixing the invalid gem.description.

Have Bundler update to the latest number_internationalizer commit:

bundle update