1

私はember-skeletonで構築されたEmber.jsプロジェクト(重要な場合は約0.9.8.x)に取り組んでいます。最近、無計画に実行するというミスを犯し、bundle update私のバージョンのrake-pipelineが0.6.0から0.8.0にジャンプしました。開発サーバーにリクエストを送信すると、次のエラーが発生します。

NoMethodError at /
undefined method `invoke'for" Assetfile ":String

特定のエラーはここにあります:

〜/ .rvm / gems / ruby​​-1.9.3-p125@project/bundler/gems/rake-pipeline-ee992cbcda51/lib/rake-pipeline/middleware.rb:通話中、32行目

しかし、私はそれの本当の始まりは最初の数行にあると思いますconfig.ru

require 'rake-pipeline'
require 'rake-pipeline/middleware'
use Rake::Pipeline::Middleware, 'Assetfile'

スタックトレースが私のコードにまったく触れていないようです。実際、私がこのエラーを正しく理解していれば、それは私のにさえ触れませんAssetfile

これはバグですか、それともrake-pipelineで何か変更がありましたか?レーキパイプラインをダウングレードする方が簡単ですか(もしそうなら、どこにダウングレードしますか?)、または修正できるものはありますconfig.ruか?

ETA:rake-pipelineプロジェクトの履歴に戻って、一度に数十のコミットを行っています。10月末に戻ると、さまざまなエラーが発生します。

TypeErrorat/
はFixnumを文字列に変換できません

〜/ .rvm / gems / ruby​​-1.9.3-p125@project/bundler/gems/rake-pipeline-986129d378a6/lib/rake-pipeline/manifest_entry.rb:9:in `parse '

2012年4月までさかのぼると、動作するバージョンが表示されます。だから私のプロジェクトは再開しましたが、何が爆発したのか知りたいです。

4

1 に答える 1

2

問題は、rake-pipeline が文字列ではなく Rake::Pipeline::Project オブジェクトを引数として期待するようになったことです。config.ruその 3 行目をこれに置き換えると、機能します。

use Rake::Pipeline::Middleware, Rake::Pipeline::Project.new('Assetfile')

ありがとう、GitHub!

于 2013-01-25T02:01:08.170 に答える