Deprecation: #85970 - FILE content object

See Issue #85970

Description

The cObject FILE mixed concerns (rendering an image, or dumping file contents), and rather became low-level since Fluid’s rise in rendering Frontend.

FILE shows an image if the file is jpg,jpeg,gif,png (but not SVG). If a different file ending is detected, it will check if the file is less than 1MB, and will get its contents and output that. If the file is 1 byte bigger, nothing is done. Fluid offers more flexibility nowadays.

Thus, cObject FILE will be removed in TYPO3 v10.

Impact

Instances using the TypoScript cObject FILE will find PHP E_USER_DEPRECATED errors for each usage.

Affected Installations

Instances using the TypoScript cObject FILE .

Migration

Use IMAGE to show images instead.

For realising TEMPLATE , migrate to using FLUIDTEMPLATE . It comes with all the benefits Fluid offers.

However due to the flexibility of custom cObjects, an extension author could just re-implement the functionality in a custom extension within minutes. See this example for ext:frontend where the registration resides in ext_localconf.php .

$GLOBALS['TYPO3_CONF_VARS']['FE']['ContentObjects'] = array_merge(
   $GLOBALS['TYPO3_CONF_VARS']['FE']['ContentObjects'],
   [
      'FILE' => \TYPO3\CMS\Frontend\ContentObject\FileContentObject::class,
   ],
);