Как безопасно исправить «неверный формат даты в спецификации» для webrobots-0.0.10.gemspec - PullRequest
2 голосов
/ 09 августа 2011

Для каждого gem выполнения я получаю следующую ошибку:

Invalid gemspec in [...rvm/gems/ruby-1.9.2-p136/specifications/webrobots-0.0.10.gemspec]: invalid date format in specification: "2011-07-01 00:00:00.000000000Z"

Я не сопровождающий веб-роботов и не могу удалить этот драгоценный камень.

Существует ли какое-либо безопасное действие для исправления этой проблемы на рабочем сервере?

Ответы [ 3 ]

4 голосов
/ 09 августа 2011

В наши дни с Github и Bundler вам не нужно быть сопровождающим, чтобы исправить проблемы в используемых вами драгоценных камнях. Просто разветвите проект на Github, исправьте любую проблему, и они просто укажут Bundler на ваш форк. Если это удобное расширение для драгоценного камня, а не просто хак для себя, вы также можете рассмотреть возможность сделать запрос на получение оригинального сопровождающего, чтобы внести изменения в официальный драгоценный камень.

Сказав все это, проблема, которая может вызвать эту проблему , по-видимому, отсутствует в gemspec версии веб-роботов версии 0.0.10. Эта проблема может возникнуть, когда дата в gemspec имеет формат, который вы используете в вашей ошибке, например ::

"2011-07-01 00:00:00.000000000Z"

Глядя на фрагмент gemspec, хотя мы имеем:

s.authors = [%q{Akinori MUSHA}]
s.date = %q{2011-07-01}
s.description = %q{This library helps write robots.txt compliant web robots in Ruby.

Так что, похоже, это правильно. Еще одной проблемой, которая, как известно, является причиной этой проблемы, является проблема синтаксического анализатора YAML, для устранения которой необходимо принудительно использовать определенный синтаксический анализатор YAML (psych). Вам нужно где-то определить следующее:

require 'yaml'
YAML::ENGINE.yamler = 'syck'

Наконец, вы можете очистить локальную установку, а затем выполнить повторное развертывание, которое может разобрать вас. Еще раз, если вы используете Bundler что-то вроде этого:

gem update --system
rvm gemset empty mygemset
gem install bundler
gem install
2 голосов
/ 19 августа 2011

Вот как я могу исправить ошибку «неверный формат даты в спецификации»:

1.) Перейдите в папку со спецификациями, расположенную по адресу:

/ USR / местные / Библиотека / рубин / драгоценные камни / 1,8 / характеристики /

2.) Найдите спецификацию, которая вызывает проблему.

3.) Измените "s.date =% q {2011-05-21 00: 00: 00.000000000Z}" на "s.date =% q {2011-05-21}" *

Это ПОБЕДА для меня! Удачи

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

Возможно, вы используете старую версию gem.Увидимся текущей версии gem -v.Обновите свой драгоценный камень до последней

gem update --system

и снова установите свой драгоценный файл с новым драгоценным камнем.gem install <gem-name> или bundle install

...