igorkasyanchuk/rails_cached_method

There is an error after upgrade rails to 7.1 with `marshal_dump`

オープン

#1 opened on 2024/10/02

 (1 件のコメント) (0 件のリアクション) (0 人の担当者)Ruby (0 件のフォーク)github user discovery
help wanted

Repository metrics

Stars
 (11 個のスター)
PR merge metrics
 (30d に merged PR はありません)

説明

Looks like the problem in these chunk of code:

old = $VERBOSE.dup
$VERBOSE = nil
Object.methods.each do |e|
  delegate e, to: :@__object__
end
$VERBOSE = old

The error looks like:

Failure/Error: page = Page.cached.find_by(identifier: identifier)
     
ActionView::Template::Error:
 RailsCachedMethod::CacheProxy#marshal_dump returned same class instance
# /.../rails_cached_method/lib/rails_cached_method.rb:47:in `method_missing'
# ./app/models/page.rb:56:in `find_page'
# ./app/models/page.rb:48:in `[]'

So, to conclude - the code works pretty fine for rails 7.0, but after upgrade to 7.1 it shows me previously shown error.

コントリビューターガイド