Fatal Error caused by bad folder names in Concrete upgrade.

Permalink 1 user found helpful
Hey All,

I just wanted to post so someone searching was aware, that apparently if you didn't follow the C5 naming conventions for your blocks very precisely, the will cause a Fatal error when upgrading.

I'm guessing this is a side affect of the new autoloading stuff... But here are the exact details...

Prior to 5.6, you could get away with the following with a block:

Effective Block Handle: ArchiveForYou
Folder path: /siteroot/blocks/ArchiveForYou/..
Classname: ArchiveforyouBlockController

With the upgrade, it seems that for the upgrade to succeed, you must follow the normal concrete5 standard of using all lowercase letters for your foldername, and underscores if you want to force capital letters in your class name...

Just thought I would mention it as it seems one of my developers failed to do this, and as such, we were getting fatal errors when upgrading. Once we redid all the blocks in 5.5, and tried the upgrade again, everything went fine.

Just for full inclusion, the fatal error you get looks something like this:

Fatal error: require_once() [function.require]: Failed opening required 'PATHTOBLOCK' ..[Insert server specific stuff]. /concrete/core/libraries/loader.php on line 205

Just as a note, this might have something to do with the JSON file having trouble loading (see:http://www.concrete5.org/community/forums/installation/5.6-upgrade-... but I haven't dived in much past the loader to see why my blocks were failing. Not sure why it would be related... except that they both might have to do with Capital letters beIng iN the WroNg sPot for the loader and it's camelcase/uncamelcase.

Hope this helps someone!

View Replies: