For what it's worth, I'm running r6785 of the http://svn.doctrine-project.org/tags/1.2.0-BETA3 tag, and the absence of the false argument is causing me some annoying issues.
Based on the documentation/parameters/etc., I'm assuming both of the following use cases are supposed to be possible:
A. The ModelNameVersion class is generated on-the-fly as necessary, and never stored in the filesystem.
B. The ModelNameVersion class is generated once, stored in the filesystem, and subsequently autoloaded from there.
Now, from what I can tell, both use cases work correctly even without the false argument on line 159; however, in case A, a PHP warning can be generated if one of the registered autoloaders doesn't check to see if the file exists before including it. This appears to be the case with Zend_Loader_Autoloader_Resource, for instance; my guess is that it's designed that way such that non-existing files produce the same warnings you'd get if you tried to include them manually ...but it doesn't play nice with Doctrine's expectations here (and heck, it may well be a bug on their part to write it that way).
These warnings don't appear to affect any functionality ...the line 159 conditional still turns up false, allowing the class to be generated on the fly. All the same, I'd prefer not to have to turn off E_WARNING on my development machine just to avoid seeing these. Since Doctrine can't really guarantee that all of the autoloaders registered with SPL are properly
avoiding such blind includes, it may make more sense to leave the false argument in place and avoid the warnings.
Of course, I don't know what effect that would have on use case B; my guess is that it'd break, since that's what this issue was originally about
Is there another solution available that satisfies both use cases without raising any errors?
Thanks!
Adam
Hmm. I remember once upon a time this was this way for a reason. Can you show some code for what you're doing so I can test this myself. Are you writing the generated files to disk somewhere?