Неверный gemspec из-за формата даты в спецификации - PullRequest
89 голосов
/ 24 апреля 2011

Когда я добавляю драгоценный камень, который я сделал, благодаря Bundler (версия 1.0.12), в Gemfile, а затем я пытаюсь сгруппировать или разгрести так:

$ rake

У меня есть это сообщение об ошибке:

Invalid gemspec in [/Users/zagzag/.rvm/gems/ruby-1.9.2-p180@foobar/specifications/myplugin-1.0.0.gemspec]: invalid date format in specification: "2011-04-21 00:00:00.000000000Z"

Я на последней Mac OS X (10.6.4), с:

$ ruby -v
ruby 1.9.2p180 (2011-02-18 revision 30909) [x86_64-darwin10.4.0]

и

$ gem -v
Invalid gemspec in [/Users/zagzag/.rvm/gems/ruby-1.9.2-p180@foobar/specifications/myplugin-1.0.0.gemspec]: invalid date format in specification: "2011-04-21 00:00:00.000000000Z"
1.7.2

Я действительно не понимаю, как решить эту проблему. Спасибо за любые идеи.

Ответы [ 15 ]

1 голос
/ 25 января 2012

Как сказал Бен Холл, вы должны исправить файл gemspec, который может измениться для системы в систему.Чтобы узнать, что это за файл, посмотрите, какой файл указан в отчете об ошибке, например:

Недопустимый gemspec в [/var/lib/gems/1.8/specifications/svn2git-2.1.2.gemspec]: неверный формат даты в спецификации: "2011-12-28 00: 00: 00.000000000Z"

В этом примере вы должны отредактировать "/var/lib/gems/1.8/specifications/svn2git-2.1.2.gemspec "файл и изменение" 2011-12-28 00: 00: 00.000000000Z "для" 2011-12-28 "в параметре s.date.

1 голос
/ 29 сентября 2011

(До тех пор, пока исправление ошибки не попадет в стабильный выпуск Rubygems) Я решил эту проблему, переустановив ту же версию всех камней, генерирующих предупреждения, с помощью ключа --version команды gem.

0 голосов
/ 14 февраля 2013

Переустановка ваших драгоценных камней может быть решением во многих из этих немного разных состояний машины.

В моем случае:

cd /Library/Ruby/Gems/1.8/specifications &&
sudo rm -rf *

В моем случае другие более креативные решения потерпели неудачу.

Моя проблема получала Invalid gemspec при попытке использовать cocoapods. Я снова побежал gem install cocoapods и все было радужно.

0 голосов
/ 29 ноября 2011

Даже если вы устанавливаете самую последнюю версию гема с допустимым форматом даты, обязательно наберите gem cleanup GEMNAME после этого, поскольку gem все равно будет жаловаться на спецификации для более старых библиотек.

0 голосов
/ 13 сентября 2011

Это моя среда:

RubyGems Environment:
- RUBYGEMS VERSION: 1.8.10
- RUBY VERSION: 1.9.2 (2011-07-09 patchlevel 290) [x86_64-darwin11.1.0]
- INSTALLATION DIRECTORY: /Users/user/.rvm/gems/ruby-1.9.2-p290@app
- RUBY EXECUTABLE: /Users/user/.rvm/rubies/ruby-1.9.2-p290/bin/ruby
- EXECUTABLE DIRECTORY: /Users/user/.rvm/gems/ruby-1.9.2-p290@app/bin
- RUBYGEMS PLATFORMS:
  - ruby
  - x86_64-darwin-11
- GEM PATHS:
   - /Users/user/.rvm/gems/ruby-1.9.2-p290@app
   - /Users/user/.rvm/gems/ruby-1.9.2-p290@global
- GEM CONFIGURATION:
   - :update_sources => true
   - :verbose => true
   - :benchmark => false
   - :backtrace => false
   - :bulk_threshold => 1000
- REMOTE SOURCES:
   - http://rubygems.org/

Мне наконец удалось найти причину / способ предотвратить эти ошибки в моей системе. Я просто возвращаюсь к огуречным и огуречным рельсам версии 1.0.2. Используя последние версии, делал это ...

...