Stop suppressing E_DEPRECATED when WP_DEBUG
|Reported by:||nacin||Owned by:||nacin|
Our current code in wp_debug_mode() is not designed for PHP 5.4. When WP_DEBUG is on, we set the error reporting level to E_ALL minus E_DEPRECATED and minus E_STRICT.
Given that PHP 5.4 has turned many of these E_DEPRECATED situations (such as call-time pass-by-reference) into fatal or parse errors — removing deprecated features as they promised — plugin authors need to know their code will no longer be working.
I don't think it's a bad idea to continue to suppress E_STRICT, though we can make that decision at a later time. If a developer sees too many notices, they're going to ignore all of them. For this, we'll need to do a >= 5.4 check and then lump in E_STRICT, as E_STRICT is *not* included in E_ALL prior to 5.4 (thus our current check is already a little wonky).
Also, core is pretty solid when it comes to both E_STRICT and E_DEPRECATED issues, because we've been testing with the latest versions of PHP for some time now.
Change History (6)
- Owner set to nacin
- Resolution set to fixed
- Status changed from new to closed