Closed (won't fix)
Project:
Drupal core
Version:
6.x-dev
Component:
base system
Priority:
Normal
Category:
Task
Assigned:
Unassigned
Reporter:
Created:
5 Nov 2007 at 14:47 UTC
Updated:
20 Jun 2011 at 16:08 UTC
Jump to comment: Most recent
Comments
Comment #1
chx commentedLike http://drupal.org/cvs?commit=84985 .
Comment #2
gábor hojtsyWe did ship every beta with E_NOTICE messages hidden, so do we plan to do with later betas and release candidates, whatever comes.
Comment #3
chx commentedThen I remove this.
Comment #4
Crell commentedUrk. I hadn't even noticed that in the betas.
So we're disabling E_NOTICE flags on shipping versions of Drupal, which means that module developers will be developing against a shipping version that doesn't have E_ALL properly set, so modules will end up not being E_ALL because their authors won't know they have E_NOTICE problems.
HOW is this a good thing, exactly?
Comment #5
chx commentedI do not want to see this in the critical queue. Anyways, the problem here is that it's rather easy to make a notice-sized mistake, your code still works but when users see a big ugly error red message they will run screaming, no matter that's just a notice. And those notices can happen on rare cases and your code *still* works. So, forcing Drupal coders to write notice free code... I can't see that happen. Not to mention that even our best developers fscked up, not knowing when to use empty / isset.
Comment #6
Crell commentedThat's what the "write errors to log but not show on screen" setting is for. Any production site should be running in that mode anyway, so there will be no big red notice on screen.
Comment #7
gábor hojtsyRead this issue: http://drupal.org/node/99625#comment-471716
Comment #8
Crell commentedYes, I read the issue. I still stand by my sentiment in it: Contrib authors will not be able to develop to E_ALL unless they are running E_ALL, even if they want to. Setting releases of core to !E_NOTICE tells developers (1) We think you're too lazy/stupid to develop to E_ALL standards and (2) "real developers"(tm) develop their modules against a -dev release of core so that they get E_ALL.
Remember, many servers run E_ALL and Drupal overriding that itself doesn't work. (I've run into a couple like that, including the one I use.) Even if core is E_ALL-compliant, one contrib module that is not will still cause nasty-red-messages on that server no matter what we set core to by default. That forces the site admin to go back to setting cryptic error codes in .htaccess, a process that is not at all documented. Making sure contrib authors write E_ALL code will avoid that problem, and various bugs to boot.
webchick pointed out http://drupal.org/node/100249 in the original issue as an example of a bug that shouldn't have been, had E_ALL been set. Why make contrib authors' lives (and the lives of people running their code) harder by not giving them that sort of debug information?
Comment #9
Anonymous (not verified) commentedSubscribing and weighing in my vote for E_ALL for all releases. The quicker the contrib module issues are brought to light the better it will be for everyone.
Comment #10
Crell commentedChanging title to reflect the intent.
Comment #11
steven jones commentedAccording to http://drupal.org/node/34341 we did turn on E_ALL reporting in D7, and I'm thinking that we don't want to induce massive pain by changing the way that D6 reports errors, so marking this issue as 'won't fix'.