igorkasyanchuk/rails_cached_method

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

开放

#1 创建于 2024年10月2日

 (1 条评论) (0 个反应) (0 位负责人)Ruby (0 个派生)github user discovery
help wanted

仓库指标

星标
 (11 个星标)
PR 合并指标
 (30 天内没有已合并 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.

贡献者指南