igorkasyanchuk/rails_cached_method

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

Aperta

#1 aperta il 2 ott 2024

 (1 commento) (0 reazioni) (0 assegnatari)Ruby (0 fork)github user discovery
help wanted

Metriche repository

Star
 (11 stelle)
Metriche merge PR
 (Nessuna PR mergiata in 30 g)

Descrizione

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.

Guida contributor