userfrosting / UserFrosting

Modern PHP user login and management framework
https://www.userfrosting.com
Other
1.64k stars 366 forks source link

Fix PHP7.4+ compatibility #1193

Closed avsdev-cw closed 2 years ago

avsdev-cw commented 2 years ago

PHP 7.4 modified the method_exists behaviour so that it no longer works as required. Alternative is to use is_callable, however this always returns true when __call is present (which it is). Laravel kindly provides a method for checking if a macro exists, so use that instead.

This fixes the exception in #1143 but more work needs to be done for the UI to access soft-deleted items for hard deleting

avsdev-cw commented 2 years ago

see: See: https://www.php.net/manual/en/function.method-exists.php#124462 and: https://www.php.net/manual/en/function.is-callable.php Notes section

codecov[bot] commented 2 years ago

Codecov Report

Merging #1193 (4609904) into master (15d713a) will increase coverage by 0.01%. The diff coverage is 100.00%.

Impacted file tree graph

@@             Coverage Diff              @@
##             master    #1193      +/-   ##
============================================
+ Coverage     70.69%   70.70%   +0.01%     
  Complexity     1983     1983              
============================================
  Files           173      173              
  Lines          6903     6903              
============================================
+ Hits           4880     4881       +1     
+ Misses         2023     2022       -1     
Impacted Files Coverage Δ
app/sprinkles/core/src/Database/Models/Model.php 73.07% <100.00%> (+3.84%) :arrow_up:

Continue to review full report at Codecov.

Legend - Click here to learn more Δ = absolute <relative> (impact), ø = not affected, ? = missing data Powered by Codecov. Last update 15d713a...4609904. Read the comment docs.